我在使用COM对象和Python时遇到了一些问题,并且遇到了一个小问题。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: The Python instance can not be converted to a COM object
在做在C#同样的事情,我曾经让我的类定义中,查找这样的:
[ComVisible(True)]
public class Callback
{
//some methods here
}
和方法调用与Python版本相同。
是否有这样的事情,我必须在Python中做,以便使用对象的实例作为COM对象的回调。
有趣的问题。 com系统在标准的python数据类型(int,strings,unicode ...)下工作良好。是否有可能创建一个解决方法,比如创建一个可以模仿SetCallback函数的监视类? – 2011-04-06 17:02:09