c# - AppDomain 未处理异常

标签 c# exception unhandled-exception

我正在处理一个 C# 项目,并希望利用 UnhandledException 事件来捕获我在我的项目中可能遗漏的任何异常(希望除了在同一侧之外不会有任何异常)。

我制作了相当多的软件,所以我想制作一个我的所有项目都将使用的类库,所以我想要一个函数来完成我所有项目的所有初始化工作,而无需我复制并将代码粘贴到每个项目中以完成相同的工作。

我想知道的是,我是否在类库中使用以下代码处理了未处理的异常事件

AppDomain currentDomain = AppDomain.CurrentDomain;
            currentDomain.UnhandledException += new UnhandledExceptionEventHandler(currentDomain_UnhandledException);

未处理的异常是否仅在类库中使用,或者此事件句柄是否也会从引用类库的任何项目中执行。

感谢您提供的任何帮助。

最佳答案

假设您的所有项目都在同一个应用程序域中运行,这将正常工作。我们将这段确切的代码封装在一个公共(public) DLL 中,该 DLL 可在众多应用程序之间共享。

附加建议:如果在 Windows 窗体应用程序中使用它,您可能还想为 System.Windows.Forms.Application.ThreadException 添加一个处理程序.例如,当有人忘记向控制事件添加异常处理时,这可以作为后盾。

关于c# - AppDomain 未处理异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14167746/

相关文章:

java - JNI : Catching Init-Time Exceptions

c# - try/catch 与 AppDomain.UnhandledException 记录应用程序并使应用程序崩溃

c# - 取消 token 抛出异常。无法捕获OperationCanceledException。我遇到了用户未处理的情况

c# - 发生未处理的异常后如何重新启动 Windows 服务

c# - 单击按钮为计时器添加时间

c# - 如何制作 C# DataTable 过滤器

c# - 在亚马逊S3中创建zip文件夹

javascript - 使用 Cordova 的 Windows 8 native 插件

.net - 仅使用Exception类作为传输机制?

node.js - 如何查找 Node.js UnhandledPromiseRejectionWarning 中哪些 Promise 未处理?