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