首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VSTO全局异常处理程序

VSTO全局异常处理程序
EN

Stack Overflow用户
提问于 2018-01-29 23:26:38
回答 1查看 461关注 0票数 4

我有一个VSTO应用程序,它使用Windows窗体用户控件来承载WPF窗体。我需要实现一个全局异常处理。尝试从顶级用户控件处理AppDomain.CurrentDomain.UnhandledException,但在引发异常时从不调用该函数。

在这种情况下,我可以在哪里/如何实现全局异常处理?

EN

回答 1

Stack Overflow用户

发布于 2018-08-14 14:30:18

下面是我在项目中使用的VB.NET示例。我使用一个类来处理错误。

错误处理程序类

代码语言:javascript
复制
Public Class ErrorHandler

    Public Shared Sub DisplayMessage(ex As Exception)
        Dim sf As New System.Diagnostics.StackFrame(1)
        Dim caller As System.Reflection.MethodBase = sf.GetMethod()
        Dim currentProcedure As String = (caller.Name).Trim()
        Dim errorMessageDescription As String = ex.ToString()
        Dim msg As String = "Contact your system administrator. " + Environment.NewLine
        msg += (Convert.ToString("Procedure: ") & currentProcedure) + Environment.NewLine
        msg += "Description: " + ex.ToString() + Environment.NewLine
        MessageBox.Show(msg, "Unexpected Error", MessageBoxButtons.OK, MessageBoxIcon.Error)

    End Sub

End Class

用法示例

代码语言:javascript
复制
Public Class Ribbon

    Public Sub YourProcedure()
        Try
            'try stuff here...

        Catch ex As Exception
            ErrorHandler.DisplayMessage(ex)

        Finally


        End Try

    End Sub

End Class
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48504639

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档