我需要获取用户默认配置文件目录,给定其用户名或SID。
我该怎么做?
GetUserProfileDirectory()似乎只适用于当前帐户。
答案 0 :(得分:1)
GetUserProfileDirectory和SHGetFolderPath都能够获取不同帐户的配置文件目录,唯一的问题是他们需要令牌句柄而不是SID。要获取令牌句柄,您需要知道用户密码并调用LogonUser,或者如果用户已经登录并且您作为服务运行,则可以获取其令牌。
我猜这些解决方案都不是你想要的,所以你必须进入无证件的土地:
读取“HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ ProfileList \%SID%”下的ProfileImagePath值