我使用的函数似乎与VB严格选项不兼容 它会发出警告
后期绑定分辨率;可能会发生运行时错误。
Public Function RegRead(ByVal Path As String) As String
Dim ws As Object
On Error GoTo ErrHandler
ws = CreateObject("WScript.Shell")
RegRead = ws.RegRead(Path)
Return RegRead
Exit Function
ErrHandler:
RegRead = ""
End Function
它会提取与“ws.RegRead”相关的内容
有人可以告诉我如何将其修改为没有警告吗?
答案 0 :(得分:3)
你的问题是你有
Dim ws As Object
这意味着编译器不知道ws
上可用的方法,因此所有方法调用都将延迟绑定。由于编译器无法检查该方法调用是否正确(名称,参数类型是否正确),因此在运行时进行此检查。如果有任何错误,那么您将遇到运行时错误。使用Option Strict
时,它会向您发出警告。
相反,您应该使用为.NET设计的API,例如Registry
类。