我尝试在VB.Net中读取注册表键值,但并没有太大的成功。
这是相关的键:
到目前为止,我已经发现问题在于键名之间的空格,因为我可以获取其他名称中没有空格的键的值。
我尝试在VB.Net中转义注册表键路径,但它要么返回值名称本身,要么抛出异常。
这不是因为退格或斜杠,因为以下操作有效。
HKEY_LOCAL_MACHINE\SOFTWARE\Intel\Setup and Configuration Software\INTEL-SA-00086 Discovery Tool\System Status
以下是代码片段:Dim key As String = "SOFTWARE\Intel\Setup And Configuration Software\INTEL-SA-00086 Discovery Tool\System Status"
Dim val As String = "System Risk"
MessageBox.Show(Microsoft.Win32.Registry.LocalMachine.GetValue(key, val, Nothing))
到目前为止,我已经发现问题在于键名之间的空格,因为我可以获取其他名称中没有空格的键的值。
我尝试在VB.Net中转义注册表键路径,但它要么返回值名称本身,要么抛出异常。
这不是因为退格或斜杠,因为以下操作有效。
Dim key As String = "SOFTWARE\Intel\PSIS\PSIS_DECODER"
Dim val As String = "SomeKey"
MessageBox.Show(Microsoft.Win32.Registry.LocalMachine.GetValue(key, val, Nothing))
当val值名称之间有空格时,此方法无法正常工作。
Dim key As String = "SOFTWARE\Intel\PSIS\PSIS_DECODER"
Dim val As String = "Some Key"
MessageBox.Show(Microsoft.Win32.Registry.LocalMachine.GetValue(key, val, Nothing))
我已经看了足够的Microsoft示例并在论坛上搜索,但仍然找不到帮助。在寻求替代方案之前,请您能提供一些魔法吗?
附加信息:
以下代码片段显示,如果键名或键值中有空格,则脚本将返回空值。
以下是名称中包含空格的键:
返回空值