我写了一个 atl COM dll,dual。并在 C# GUI 项目中使用了它的一个 intreace X。调用 X.F() 时,出现 System.InvalidCastException,无法将 namespace.XClass 转换为 namespace.IX,QueryInterface 失败:BADTYPE。这个电话是在我自己的线程中。
如果我将代码移动到 GUI 线程,它工作得很好。
请帮助我。非常感谢。
最佳答案
COM 对象通常是 STA,这意味着它们只能由创建它们的线程使用
关于c# - 使用 COM 接口(interface)时出现 System.InvalidCastException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2003982/