Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/274.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 无法强制转换类型为';系统。共对象';到IRTDUpdateEvent的接口类型_C# - Fatal编程技术网

C# 无法强制转换类型为';系统。共对象';到IRTDUpdateEvent的接口类型

C# 无法强制转换类型为';系统。共对象';到IRTDUpdateEvent的接口类型,c#,C#,我花了很多时间试图弄清楚为什么在尝试运行RTD服务器(Excel RTD Server)时出现以下错误,这是我在通过RegAsm安装RTD服务器时开发的。如果我在我的dev machin上设置Register for COM interop标志,它就可以正常工作,但在使用RegAsm安装它时就不行了 System.InvalidCastException:无法将“System.\u ComObject”类型的COM对象强制转换为接口类型“IRTDUpdateEvent”。此操作失败,因为对IID

我花了很多时间试图弄清楚为什么在尝试运行RTD服务器(Excel RTD Server)时出现以下错误,这是我在通过RegAsm安装RTD服务器时开发的。如果我在我的dev machin上设置Register for COM interop标志,它就可以正常工作,但在使用RegAsm安装它时就不行了

System.InvalidCastException:无法将“System.\u ComObject”类型的COM对象强制转换为接口类型“IRTDUpdateEvent”。此操作失败,因为对IID为“{A43788C1-D91B-11D3-8F39-00C04F3651B8}”的接口的COM组件的QueryInterface调用由于以下错误而失败:不支持此类接口(HRESULT的异常:0x80004002(E_NOINTERFACE))

有什么想法吗?

你的界面“IRTDUpdateEvent”有这个Guid吗?

谢谢Arthur

我终于设法破解了它。问题是,在创建安装包时,我在自定义安装中引用了Assembley。运行RTD时,它显然不喜欢这样。RegAsm在我的custm安装中。我将Register for COM interop标志保留为选中状态,然后右键单击并选择Add-->Assembley,将Assembley添加到我的安装项目中,从而解决了这个问题


谢谢你的回复。是的,有。你能把所有的定义都贴出来吗?Assembly.cs、类定义(属性)和接口定义?