我有一个VB6 COM DLL,其函数声明如下:
Public Function testFunc(ByRef v1 As Long) As Boolean
当我尝试使用:
从Python2.7调用它时var1 = c_long()
VB6DLL.testFunc(X1)
如果X1是var1,那么我得到异常: “int()参数必须是字符串或数字,而不是'c_long'”
如果X1是yref(var1),那么我得到异常: “int()参数必须是字符串或数字,而不是'cArgObject'”
如果VB6函数使用ByVal参数并且我从Python发送了正确的参数,那么一切都很好。那么如何发送引用,因为我希望DLL修改值?为什么ByRef参数变成int()?