c# - 挂接到事件时 C# 中的 COMException

标签 c# .net events com interop

我在尝试连接到 COM 对象上的事件时收到 COM 异常。这是我要执行的代码。

COMClass a = IComClass as ComClass; <br/> a.SomeEvent += new SomeEvent_EventHandler(MethodNameHere);

第二行抛出一个 COMException 类型的异常,信息如下:

System.Runtime.InteropServices.COMException 被捕获

Message="HRESULT 异常:0x80040202"

来源="mscorlib"

错误代码=-2147220990

堆栈跟踪: 在 System.Runtime.InteropServices.ComTypes.IConnectionPoint.Advise(对象 pUnkSink,Int32 和 pdwCookie)

有没有人知道为什么我无法挂接到 COM 事件或者是否有挂接到 COM 事件的解决方法?

最佳答案

问题是事件的接口(interface)没有注册。一旦我为事件接口(interface)添加了注册表项,问题就解决了。我能够使用 OLEViewer.exe 获取接口(interface) ID 信息

关于c# - 挂接到事件时 C# 中的 COMException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2246525/

相关文章:

database - AS3 SQLite DELETE 语句不给出结果

c# - 适合一对 List <string> 对象的数据类型,作为一个容器来容纳这两个对象

java - JAVA 中的 SOAP 服务器 <-> C# 中的 SOAP 客户端

c# - LinQtoExcel 使用 asp 文件上传

c# - 表单没有 DragMove() 方法?

c# - 如何防止 WCF 服务进入故障状态?

c# - 根据属性将列表分成多个列表

c# - 在 C# 中连接到外部 SQL 数据库

javascript - JS/jQuery 检查元素是否可输入

list - 如何在Flex 4的Spark List控件中处理click事件