我正在用 C# 编写一个 COM 对象,我想使用它理解的机制向 vba/asp 客户端软件提出错误 - Err 对象。
在过去的好日子里,这意味着在 COM 对象上实现 ISupportErrorInfo,但我找不到有关如何在 C# 对象中实现该接口的任何信息。
有人可以帮忙吗?
谢谢!
我正在用 C# 编写一个 COM 对象,我想使用它理解的机制向 vba/asp 客户端软件提出错误 - Err 对象。
在过去的好日子里,这意味着在 COM 对象上实现 ISupportErrorInfo,但我找不到有关如何在 C# 对象中实现该接口的任何信息。
有人可以帮忙吗?
谢谢!
您应该能够通过从托管代码中抛出自定义异常来模拟这一点。所有 CCW 都会自动实现 ISupportErrorInfo ( Reference ) 并了解如何为抛出的异常返回错误信息。
您需要做的就是创建一个自定义异常(如果当前的异常不适合您)并通过设置基本 Exception.HResult 成员来提供适当的 HResult。