2011-02-12 3 views
1

원격 컴퓨터의 사용자 "AppData"에 액세스하려고합니다. 나는 필요한 모든 권리를 가진다. 나는이 시도 :먼 컴퓨터의 % appdata %에 액세스하십시오. .NET openremotebasekey

r = RegistryKey.OpenRemoteBaseKey(RegistryHive.Users, MachineName) 
r.OpenSubKey(SIDValue & "\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders") 
AppData = r.GetValue("AppData") 

사실은 내 자신의 APPDATA 폴더 ... 먼 컴퓨터의 계정 실제로 SID 값을 검색 함과 광산 (I 도메인에서 오전) 동일합니다. 나는 그것이 내 appdata 폴더를 얻는 이유인지 모른다.

어떻게해야합니까?

HKEY_Local_Machine을 탐색 할 때 원격 컴퓨터에 대한 정보를 가지고 있습니다. 그러나 HKEY_USERS를 탐색 할 때는 그렇지 않습니다.

답변

0

는 나 자신이, 덕분에 ...이 작업을 수행하는 방법에 관심이있는 사람들을 위해 가, 여기에 내가 어떻게했는지입니다 해답을 발견

HKLM를 통해 검색하는 것은 나에게 좋은 datas (에 사람을 주셨 는가으로 원격 컴퓨터)에서 HKLM \ Software \ Microsoft \ Windows NT \ CurrentVersion에있는 systemroot 값을 검색했습니다. APPDATA을 가져 은 이루어집니다 그런 식 후 : Windows XP의 다음

systemdrive = RegistryKey.OpenRemoteBaseKey(RegistryHive.LocalMachine, _ 
                  MachineName).OpenSubKey("Software\Microsoft\Windows NT\CurrentVersion").GetValue("SystemRoot").ToString.Substring(0, 3) 

:

appdata = systemdrive & "Documents and Settings\" & username & "\Application Data" 

Windows 7의 경우 :

appdata = systemdrive & "Users\" & username & "\AppData\Roaming" 
관련 문제