我是一个有用的助手,可以为您翻译文本。
我正在尝试在Python中使用COM对象,并遇到了小问题。
我使用的COM对象有一个名为SetCallback
的方法,它接受一个object
参数,该方法如下:
[id(0x60010010)]
void SetCallback([in] IDispatch* callbackobject);
来自MS OLE/COM对象查看器
现在,如果我在Python中创建我的COM应用程序的实例,一切都很好,直到我尝试将一个对象的实例传递给这个方法。
callback = Callback()
mycomobject.SetCallback(callback)
class Callback():
def SetStatusText(self,status):
print status
我在Python窗口中看到的错误是:TypeError:无法将Python实例转换为COM对象
在C#中执行相同操作时,我的类定义会像这样:
[ComVisible(True)]
public class Callback
{
//some methods here
}
同时,在 Python 版本中方法调用也是相同的。
在 Python 中,如果我想将一个对象实例作为 COM 对象的回调函数使用,是否需要执行类似的操作?