【问题标题】:Application definded or object define error when calling Err.Raise in vb6-Closed在 vb6-Closed 中调用 Err.Raise 时应用程序定义或对象定义错误
【发布时间】:2015-09-17 17:50:41
【问题描述】:

在我的 vb 应用程序中,当发生错误并且我想使用 err.raise 来引发它时,错误消息与我在描述中的内容完全不同,它在 Err.Raise 函数的同一行中说失败,之后搜索我上面提到的错误没有有用的信息有人可以检查我在哪里做错了

Public Sub ErrorHandler()
        '<EhHeader>
        On Error GoTo PROC_ERR
        '</EhHeader>

        Dim sSysMsg As String
100     sProcedureName = "[" & CONST_CLASS_NAME & "." & sProcedureName & "] "

102     If RaiseSystemError Then
104         Err.Raise CONST_CLASS_ERROR, , sErrorMessage & vbCrLf & sProcedureName
        Else
106         If Err <> 0 Then
108             sSysMsg = "[" & Error$(Err) & "] " & vbCrLf
            End If
110         sErrorMessage = sErrorMessage & vbCrLf & sSysMsg & sProcedureName
        End If

112     sProcedureName = ""
114     bMethodFailed = True
116     Err = 0

        '<EhFooter>
        PROC_EXIT:
        Exit Sub
        PROC_ERR:
        If modErr.iHandleError(Err, Erl(), "cWtSvr.ErrorHandler") = vbRetry Then Resume
        Resume Next
        '</EhFooter>
End Sub

错误指向第 104 行

"Error N0" 4444, Application-defined or object error occurred in function name of exe.name of the class.ErrorHandler at line 104"

请注意,错误 N0:4444 是我自己的自定义错误,而其余错误不是我需要输出的,所以不确定发生了什么

非常感谢

【问题讨论】:

  • 在第 104 行设置断点并单步执行代码。您将看到导致错误的行并且应该能够确定原因。
  • 我确实逐步完成了它,它引发了我需要的正确错误,但是当我制作文件并运行 exe 时出现错误,提示“错误 N0”4444,应用程序定义或对象错误发生在function ..ErrorHandler at line 104"。注意错误号 4444 是我传递给 Err.Raise 的自定义错误不是我的错误描述
  • 你没有显示你的错误描述声明,或者你在哪里以及如何设置它,所以我们只能猜测。
  • 对不起,我发现了我的问题,非常感谢

标签: error-handling vb6


【解决方案1】:

我能够找出原因是什么,以前我无法进入 Err.Raise 的代码,但在阅读了一些内容后,我能够更改 VB6 IDE 配置,了解如何进入引发的问题错误,我发现它在类代码中的问题。 非常感谢您的帮助

【讨论】:

  • 所以要确认一下,错误是由其他地方的错误程序发现并重置的?
猜你喜欢
  • 1970-01-01
  • 2018-12-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-28
  • 2013-05-04
  • 1970-01-01
相关资源
最近更新 更多