读取注册表项的值

slysmart 2019-11-05 12:44:01
Sub Button1Click(sender As Object, e As EventArgs)

Dim Root1 As RegistryKey = Registry.LocalMachine
Dim key1 As RegistryKey = Root1.OpenSubKey ( "SOFTWARE\Autodesk\CSP" ,true )
textBox1.Text =key1.GetValue("Oce TCS")
End Sub


调试时报错, "未处理NullReferenceException"

...全文
253 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
slysmart 2019-11-06
  • 打赏
  • 举报
回复
目前测试下来,currentUser键值能获取,但localmachine不能获取 感觉是权限问题了
slysmart 2019-11-06
  • 打赏
  • 举报
回复
引用 4 楼 slysmart 的回复:
[quote=引用 3 楼 yishumei 的回复:] [quote=引用 2 楼 slysmart 的回复:] [quote=引用 1 楼 yishumei 的回复:] 楼主先查一下注册表里有没有"LocalMachine\SOFTWARE\Autodesk\CSP"这个项吧
肯定有的,我还换过键值,错误一样[/quote] "LocalMachine\SOFTWARE\Autodesk\CSP"里有Oce TCS这个项吗? If (key1 Is Nothing) Then Else TextBox1.Text = key1.GetValue("ReleaseVersion") key1.Close() End If 楼主可以断点调试一下。[/quote] 谢谢你 调试key1确实为nothing,但注册表中值肯定存在的,不知道为什么为空值[/quote] 这段代码应该没问题,我换了个键值能获取到,就是不知道我原来键值为什么获取不到
slysmart 2019-11-06
  • 打赏
  • 举报
回复
引用 3 楼 yishumei 的回复:
[quote=引用 2 楼 slysmart 的回复:] [quote=引用 1 楼 yishumei 的回复:] 楼主先查一下注册表里有没有"LocalMachine\SOFTWARE\Autodesk\CSP"这个项吧
肯定有的,我还换过键值,错误一样[/quote] "LocalMachine\SOFTWARE\Autodesk\CSP"里有Oce TCS这个项吗? If (key1 Is Nothing) Then Else TextBox1.Text = key1.GetValue("ReleaseVersion") key1.Close() End If 楼主可以断点调试一下。[/quote] 谢谢你 调试key1确实为nothing,但注册表中值肯定存在的,不知道为什么为空值
yishumei 2019-11-05
  • 打赏
  • 举报
回复
引用 2 楼 slysmart 的回复:
[quote=引用 1 楼 yishumei 的回复:] 楼主先查一下注册表里有没有"LocalMachine\SOFTWARE\Autodesk\CSP"这个项吧
肯定有的,我还换过键值,错误一样[/quote] "LocalMachine\SOFTWARE\Autodesk\CSP"里有Oce TCS这个项吗? If (key1 Is Nothing) Then Else TextBox1.Text = key1.GetValue("ReleaseVersion") key1.Close() End If 楼主可以断点调试一下。
slysmart 2019-11-05
  • 打赏
  • 举报
回复
引用 1 楼 yishumei 的回复:
楼主先查一下注册表里有没有"LocalMachine\SOFTWARE\Autodesk\CSP"这个项吧
肯定有的,我还换过键值,错误一样
yishumei 2019-11-05
  • 打赏
  • 举报
回复
楼主先查一下注册表里有没有"LocalMachine\SOFTWARE\Autodesk\CSP"这个项吧

16,555

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧