我用 C# 创建了一个 Com 服务器。项目类型是类库。 有没有办法在我的代码中为未处理的异常获取事件?我试过 AppDomain.CurrentDomain.UnhandledException 没有任何运气
最佳答案
不可能。 CLR 中的 COM 互操作支持代码实现了 COM 中的限制,即不允许异常从 COM 方法中逃逸。您的方法将通过 CLR 中的捕获所有异常处理程序来调用,该处理程序捕获您抛出的任何异常。它被转换为 COM 错误代码、HRESULT、任何 COM Automation 兼容接口(interface)方法的返回值。 Exception.HResult 的值。 COM 客户端代码使用该值来确定方法调用是否失败。
您还可以使用调试器并使其在出现任何异常时停止。 Debug + Exceptions,勾选 Thrown 复选框。调试器会自动中断“第一次机会”异常。
关于c# - .Net com 服务器捕获未处理的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5674197/