This is not a really straightforward thing to do.
On Windows 7/Vista, User account pictures are stored here:
"C:\ProgramData\Microsoft\User Account Pictures\"
The default and guest picture bears the names "user.bmp", and
"guest.bmp". You can substitute any valid bitmap for these files to
change the defaults.
Each time a new user logs in to the system, a "dat" file gets
created in this directory for the user's account picture. This is a
metafile that contains a pointer to the original user account
picture, and a cached copy of the picture itself. Local account
pictures are stored as <username>.dat, while domain accounts
are stored as <domain>+<username>.dat. However, if a
user does not select a specific picture, the DAT file will be empty,
and the default user account picture will be used. If a user does
select a specific picture, the DAT file will be populated and
a copy of the picture will be cached here:
But none of this really helps you because the DAT file format is
proprietary, and cannot be hand-edited.
So what to do? I guess that depends on how important is it to you
to alter the picture. There is an API for altering the picture,
which you could access using VBScript, PowerShell, or the like.
Here is an example implementation using C# code, compilable with
And here is a perhaps more useful script implemented in VBScript:
On 1/29/2011 9:47 AM, Larry Kost wrote:
[log in to unmask]"
type="cite">Does anyone out there know how to change a user
account picture without going through the Control Panel/User
accounts/ etc? Can it be done in the registry or User's Profile?