我正在尝试从 Python 调用 CAPL 函数,通过参考将 char 数组作为 Python 中的参数:Call CAPL function from Python
但它会引发错误
function1.Call(my_char_array) 文件“C:\Python27\lib\site-packages\win32com\gen_py\4CB02FC0-4F33-11D3-854D-00105A3E017Bx0x1x31.py”,第 1668 行,在 Call 中,p7、p8、p9、p10)文件“C:\Python27\lib\site-packages\win32com\client__init__.py”,第 467 行,在ApplyTypes self. oleobj .InvokeTypes(dispid, 0, wFlags, retType, argTypes, *args), pywintypes.com_error: (-2147352567, '发生异常。', (0, None, None, None, 0, -2147352571), 10)
我无法将函数中的字符从 Python 传递给 CAPL 函数。传递整数有效。任何帮助将非常感激。
代码片段:
Python:
var = 'ABCD'
my_char_array = array('c', var)
print my_char_array.tostring()
function1.Call(my_char_array)
CAPL:
void function1(char var1[])
{
write("function1() called with %s!", var1);
}