2010-04-20 70 views
6

我想在Windows 7中提取当前用户的帐户图片,但我似乎无法找出它所在的位置。我发现图片有时会写入用户的临时文件夹,但只能在执行特定操作后才能写入。它并不总是保证在那里。有没有人有幸提取这个图像?谢谢!如何提取当前用户的帐户图片?

更新:我想使用C++提取图像,但任何语言的帮助将是一大步。 :)

回答

1

它的描述here根据用户配置文件瓷砖在Windows 7。这看起来并不令人鼓舞。

+0

这就是我所发现的,不鼓励。 :( – 2010-04-20 19:20:42

3

每当的API调用所需要的UserTile,它被复制到%TEMP%\%USERNAME%.BMP,这通常是C:\ Users \用户名\应用程序数据\本地\ TEMP \ username.bmp

但是,如果您需要直接从SAM中提取它,则可以修改http://deployment.xtremeconsulting.com/2010/06/23/usertile-automation-part-1/中的详细信息,使程序能够读取HKLM \ SAM \ SAM \ Domains \ Account \ Users \ ???????? \ UserTile(在系统上下文中!),跳过12个字节,将4个字节读取到uint,然后将该字节读入一个文件。

编辑:我觉得我应该补充说,Windows XP中的资源管理器用于获取图标的API调用,是其中一个登录DLL的未命名地址(因此您不能自己调用​​它,因为该地址应该更改在版本之间),我不记得目前哪个确切的DLL。