要点:
我需要使用RegistryKey.OpenRemoteBaseKey来查询HKEY_USERS的远程注册表
完整说明:
我目前正在尝试查询远程计算机上的注册表。我的RegistryKey.OpenRemoteBaseKey方法的代码如下。我知道的 “environmentKey = RegistryKey.OpenRemoteBaseKey(RegistryHive.CurrentUser,remoteName).OpenSubKey(”Environment“);” 来自registrykey.openremotebasekey 的原始示例中的行。但是,我需要查询将更改语句的HKEY_USERS RegistryKey environmentKey = RegistryKey.OpenRemoteBaseKey(RegistryHive.Users,remoteName); 这条线不起作用。
任何帮助或代码示例将不胜感激!我只需要查询远程系统上的HKEY_USERS注册表项。任何方法都适合我,我的代码只是因为它是我迄今为止找到的最好的方法,以获得我想要/需要的东西。我愿意改变:)
试 {
//打开HKEY_CURRENT_USER \ Environment //在远程计算机上。
string remoteName = host;
RegistryKey environmentKey = RegistryKey.OpenRemoteBaseKey(RegistryHive.Users, remoteName);
foreach (string valueName in environmentKey.GetValueNames())
{
string regy = (valueName + environmentKey.GetValue(valueName).ToString());
Output.AppendText(regy + "\n");
}
// Close the registry key.
environmentKey.Close();
}
catch
{
}
答案 0 :(得分:0)
List<string> hkey = new List<string>();
try
{
// Open HKEY_USERS
// on a remote computer.
string remoteName = host;
RegistryKey environmentKey = RegistryKey.OpenRemoteBaseKey(RegistryHive.Users, remoteName);
foreach (string subKeyName in environmentKey.GetSubKeyNames())
{
hkey.Add(subKeyName);
}
// Close the registry key.
environmentKey.Close();
}
catch
{
}