“在VB .Net中使用'new'关键字创建对象实例”错误

时间:2014-07-14 13:48:58

标签: vb.net

我收到此错误"使用' new'用于创建对象实例的关键字。 (对象引用未设置为对象的实例。)" 我在这个论坛上查了类似的问题,但找不到满意的答案。 我想要实现的是将字符串值1导入注册表子项HKEY_CURRENT_USER\Software\MyApp\TEST

我在调试过程中注意到的是" regkey"似乎在使用它的所有行都设置为Null。 我正在设置

regkey = Registry.LocalMachine.OpenSubKey("HKEY_CURRENT_USER\Software\MyApp\TEST", True) 

,仍然不确定为什么 程序没有提取价值。

如何实现New关键字来创建对象实例? 我正在使用" Imports Microsoft.Win32"在程序的顶层。

 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)  Handles Button1.Click
   Dim regkey As RegistryKey
   regkey = Registry.LocalMachine.OpenSubKey("HKEY_CURRENT_USER\Software\MyApp\TEST", True)
   regkey.SetValue("TEST", "1", RegistryValueKind.String)
   regkey.close()
 End Sub

1 个答案:

答案 0 :(得分:2)

您正在尝试打开不存在的HKEY_LOCAL_MACHINE\HKEY_CURENT_USER\Software\MyApp\TEST。因此,RegistryKey.OpenSubKey会返回nullNothing)。

你应该

  1. 修复您的代码(Registry.CurrentUser.OpenSubKey("Software\...")可能会执行您想要的操作)和
  2. 在第2行和第3行之间添加一个空检查(If regkey Is Nothing Then ...),以便正常处理问题。