C# 向COM对象添加了一个新方法,该对象在调用时会发生异常
我在COM类中添加了一个方法,每次调用该方法时都会出现以下异常: 异常:System.Runtime.InteropServices.COMException(0x800706BE):远程过程调用失败。(来自HRESULT的异常:0x800706BE) 位于System.EnterpriseServices.IRemoteDispatch.RemoteDispatchNotAutoDone(字符串s)C# 向COM对象添加了一个新方法,该对象在调用时会发生异常,c#,com,C#,Com,我在COM类中添加了一个方法,每次调用该方法时都会出现以下异常: 异常:System.Runtime.InteropServices.COMException(0x800706BE):远程过程调用失败。(来自HRESULT的异常:0x800706BE) 位于System.EnterpriseServices.IRemoteDispatch.RemoteDispatchNotAutoDone(字符串s) 这个COM类中还有其他方法可以一直被调用,没有任何问题。这只发生在我的新方法上。在向COM对象
这个COM类中还有其他方法可以一直被调用,没有任何问题。这只发生在我的新方法上。在向COM对象添加新方法时,是否需要执行一些特殊操作?如果需要更多详细信息,请告诉我。更新COM对象后是否重新生成COM互操作包装器
如果我在这个澄清上错了,请澄清:我猜您是在引用托管C#lib中的COM库?当ref生成时,VS应该为您生成一个互操作包装,但我不确定它是否会检测到更改并重新生成包装,除非您手动重新引用COM dll或自己重新生成互操作。如果您从该方法中删除所有代码,会发生什么情况?它是否使用/公开其他方法未使用的任何新类型?我将尝试该方法。Damien:我的COM方法调用另一个方法,该方法使用了一个新的结构。我需要用什么东西装饰那座建筑吗?我想如果我按照约翰的建议去做,并且成功了,这可能意味着结构让它不开心。否则,代码只使用标准的.net简单对象.John,从方法中删除代码让它很高兴。有可能是我介绍的自定义结构对象吗?我猜出来了。谢谢。我有两个C#项目。一个是COM,另一个是COM的调用方。我再次将COM项目引用添加到调用方项目,运气不好。