.net - .net 远程获取注册表值
问题描述
我正在尝试使用 .net 从远程 PC 获取 Windows 10 次要版本号。这是我使用的 Powershell 命令:
[Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey([Microsoft.Win32.RegistryHive]::LocalMachine, 192.168.78.103).OpenSubKey('Software\Microsoft\Windows NT\CurrentVersion').GetValue('UBR')
乍一看似乎工作正常,但我刚刚意识到它实际上并没有获取远程 PC 的值,而是从我的本地 PC 获取的值。我四处搜索,很多人已经报告说这个命令工作正常,但它不适合我。
我以前没有真正使用过很多.net,我是否必须调整本地或远程计算机上的一些设置才能使其正常工作?
解决方案
第二个参数是一个字符串,所以需要用引号引起来:
[Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey([Microsoft.Win32.RegistryHive]::LocalMachine, "192.168.78.103").OpenSubKey('Software\Microsoft\Windows NT\CurrentVersion').GetValue('UBR')
RegistryKey.OpenRemoteBaseKey 方法
如果 machineName 为 String.Empty,则打开本地计算机注册表。请求的键必须是远程机器上的根键,并由相应的 RegistryHive 值标识。
推荐阅读
- windows - 'sed' 未被识别为内部或外部命令 (Windows 10)
- javascript - 我在哪里可以看到后台脚本的日志?
- r - 在用户输入之前“保留文本”的最佳方式是什么?
- c# - Twilio 消息发送在 ASP .NET 中不起作用
- python - 当我的循环范围相同时,为什么我的子 for 循环与主循环的值不同?
- python - 输入行号和列号,输出一串行和列
- ontology - Protege - OWL/XML 语法 - 为什么“内置数据类型”范围为红色(不可选择)?
- php - WebSocket 错误:net::ERR_SSL_PROTOCOL_ERROR
- javascript - 使用 node.js 和 express 到 API 的正确 URL 路径是什么?
- c# - 如何从 Bot Framework Emulator 中的用户回复的句子中获取特定单词或字符串?