这一次超越困惑......
最简单的代码行有时会工作,有时则不然.首先我认为问题是我试图读取DWORD的值,但是因为我可以从SOME键读取DWORD值,所以这不是问题.现在问题似乎是,如果密钥在名称中有空格,我无法从任何密钥读取.当然这不可能.我拒绝相信MS没有考虑注册表密钥路径和名称中的空格.
那么告诉我为什么这不起作用:
MsgBox(My.Computer.Registry.GetValue("HKEY_LOCAL_MACHINE\SOFTWARE\CA\CA ARCserve D2D\WebService", "Port", Nothing))
Run Code Online (Sandbox Code Playgroud)
它只是弹出一个空盒子.是的,注册表中确实存在一个值,是的,我有权读取密钥.
编辑:是的,一遍又一遍,似乎你无法从注册表中读取密钥名称中是否有空格.真的吗?!?
编辑再次:"Ramhound"说代码示例是愚蠢的.引人入胜的观点.但他自己的建议也失败了:
Dim key As RegistryKey = Registry.LocalMachine.OpenSubKey("SOFTWARE\ATI Technologies\CBT")
Dim objValue As Object
objValue = key.GetValue("ReleaseVersion")
MSGBOX(objValue.ToString())