
但是,传递给Exception构造函数的任何消息文本(或其他信息)是否也可用于调用C代码?如果是这样,如何获得,即哪种API方法?
例如如果在我的C#代码中我抛出新的ArgumentException(“电子邮件地址无效”)我将除了我的COM HRESulT为E_INVALIDARG但是我的自定义文本将被编组或者我只能查找E_INVALIDARG的文本描述吗?
解决方法 鲜为人知的是,IErrorInfo对象(由 GetErrorInfo返回)也实现了 _Exception COM接口,该接口将 System.Exception类的公共成员公开给非托管代码,包括 StackTrace等. 要从C访问_Exception,您需要导入正确版本的mscorlib.tlb,例如:
#import "C:\windows\Microsoft.NET\Framework\v4.0.30319\mscorlib.tlb" raw_interfaces_only总结
以上是内存溢出为你收集整理的C#COMponent引发的异常消息是否通过interop传递给C?全部内容,希望文章能够帮你解决C#COMponent引发的异常消息是否通过interop传递给C?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)