提问人:John 提问时间:10/6/2020 更新时间:10/6/2020 访问量:50
vb.net - 读取 regkey 时异常处理不起作用
vb.net - exception handling not working when reading regkey
问:
我的代码中有一个函数“ReadRegValue”......
Public Function ReadRegValue(ByRef location As String, ByRef value As String)
Try
Console.WriteLine(location)
Dim thisvalue As String = My.Computer.Registry.GetValue(location, value, vbnull).ToString
Return thisvalue
Catch ex As Exception
Return vbNull
End Try
End Function
这一直工作正常,直到我在其中一个密钥不存在的设备上运行我的项目,因为该系统上没有安装特定程序。
在本例中,它引发了异常 - NullReferenceException:对象引用未设置为对象的实例。
我理解异常及其背后的原因,即密钥不存在,所以如何读取它;但我希望在键不存在或抛出任何其他异常的情况下它会返回 null。
谁能帮忙阐明为什么这个异常没有在 Try Catch 中被发现,或者我可能哪里出错了?
提前致谢。
答:
0赞
John
10/6/2020
#1
正在处理异常,但异常设置设置为在 nullreferenceexception 中断,因此它似乎正在轰炸,但实际上并没有行为异常。
评论
vbNull
ReadRegValue
vbNull
ReadRegValue
Option Strict On
ByRef
vbNull
Nothing