我正在维护一个vb6项目(ActiveX DLL).调试时,应用程序运行以下功能:
Public Function HasValue(ByVal vValue) As Boolean
On Error GoTo Err
If IsMissing(vValue) Then
HasValue = False
ElseIf IsNull(vValue) Or Len(vValue) = 0 Then
HasValue = False
ElseIf isEmpty(vValue) Then
HasValue = False
Else
HasValue = True
End If
Exit Function
Err:
If IsArray(vValue) Or IsObject(vValue) Then
HasValue = True
Else
HasValue = False
End If
End Function
Run Code Online (Sandbox Code Playgroud)
它停在了线上
ElseIf IsNull(vValue)或Len(vValue)= 0然后
vValue是一个自定义对象,包含一些属性(显然,不是null).
虽然我没有在那里设置任何断点,但应用程序停在那里并警告错误对话框说"运行时错误'438':对象不支持此属性或方法".
我们有错误处理代码,但应用程序没有运行到错误处理代码.它只是停在导致错误的行,我不得不停止应用程序.
你对此有什么想法吗?非常感谢你.