首先,我正在尝试从远程计算机读取注册表项。我已经看过this example如何做到这一点。所以我的代码看起来像这样:
string server = "myServer";
NetworkShare share = new NetworkShare(server, "ipc$");
share.Connect();
string name = "";
RegistryKey key = RegistryKey.OpenRemoteBaseKey(RegistryHive.CurrentUser, server);
if (key != null)
{
key = key.OpenSubKey(@"Software\Policies\Microsoft\Windows\System");
if (key != null)
{
name = key.GetValue("DisableCMD").ToString();
}
}
MessageBox.Show(name);
share.Disconnect();
但在行key = key.OpenSubKey(@"Software\Policies\Microsoft\Windows\System");
之后,RegistryKey key
设置为null
。我检查了关键路径 - 它存在。我无法弄清楚出了什么问题。
其次,我正在尝试编写远程注册表项。我认为它非常类似于阅读键。我尝试了SetValue()
方法,但这会引发System.UnauthorizedAccessException: Cannot write to the registry key
例外。
建议赞赏:)