【发布时间】:2010-09-15 21:32:11
【问题描述】:
我正在从 python 2.5 编程VIX API,但现在我想将代码移植到 python 3.2
这个函数打开虚拟机:
self.jobHandle = self.VixLib.vix.VixVM_Open(self.hostHandle,
"C:\\MyVirtualMachine.vmx", None, None)
之前这个函数是从 Vix.dll 中导入的,代码如下:
vix.VixVM_Open.restype = VixHandle
vix.VixVM_Open.argtypes = [VixHandle,c_char_p,POINTER(VixEventProc),c_void_p]
在 2.5 中此代码是正确的,但在 3.2 中它返回 ctypes.ArgumentError
我能做什么?
【问题讨论】:
-
我猜这与所有字符串在 3.0 中都是 unicode 的事实有关,但我不知道解决方案是什么。
-
包含整个堆栈跟踪可能很有用。
-
什么是整个堆栈跟踪???对不起,我是 python 初学者
-
这是解释器在遇到异常时向您转储的所有内容(围绕“ArgumentError”的所有内容)
标签: python unicode string python-3.x ctypes