2024-06-16 12:37:20 发布
网友
我正在从python2.5编程VIX API,但是现在我想将代码移植到python3.2
此函数用于打开虚拟机:
self.jobHandle = self.VixLib.vix.VixVM_Open(self.hostHandle, "C:\\MyVirtualMachine.vmx", None, None)
以前此函数是从Vix.dll使用此代码:
在2.5中这个代码是正确的,但是在3.2中它返回ctypes.ArgumentError
ctypes.ArgumentError
我能做什么?在
第二个参数必须编码成vixapi可以理解的格式,因为python3.x现在将所有字符串都创建为Unicode。最简单的方法是将第二个参数修改为:
"C:\\MyVirtualMachine.vmx".encode('ascii','ignore')
它应该给你一个字节类型的变量,它应该更适合VIX。在
第二个参数必须编码成vixapi可以理解的格式,因为python3.x现在将所有字符串都创建为Unicode。最简单的方法是将第二个参数修改为:
它应该给你一个字节类型的变量,它应该更适合VIX。在
相关问题 更多 >
编程相关推荐