我正在尝试访问远程计算机上用户的“AppData”。我拥有所需的所有权利。我试过这个:
r = RegistryKey.OpenRemoteBaseKey(RegistryHive.Users, MachineName)
r.OpenSubKey(SIDValue & "\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders")
AppData = r.GetValue("AppData")
事实是它检索我自己的appdata文件夹...实际上远程计算机上和我的帐户的SID值是相同的(我在域下)。我不知道这是否是我获得自己的appdata文件夹的原因。
我该怎么办?
当我浏览HKEY_Local_Machine时,我设法获得有关远程计算机的信息。但是在浏览HKEY_USERS时却没有。
答案 0 :(得分:0)
我自己找到了答案,谢谢...... 对于那些对如何做到这一点感兴趣的人,我的方法如下:
通过HKLM浏览确实给了我好的数据(远程计算机上的数据),我只是搜索了HKLM \ Software \ Microsoft \ Windows NT \ CurrentVersion中的systemroot值。 在以下情况下检索appdata:
systemdrive = RegistryKey.OpenRemoteBaseKey(RegistryHive.LocalMachine, _
MachineName).OpenSubKey("Software\Microsoft\Windows NT\CurrentVersion").GetValue("SystemRoot").ToString.Substring(0, 3)
然后,对于Windows XP:
appdata = systemdrive & "Documents and Settings\" & username & "\Application Data"
对于Windows 7:
appdata = systemdrive & "Users\" & username & "\AppData\Roaming"