使用带有C dll的python ctypes从字节*获取完整的字符串

时间:2014-03-10 13:45:10

标签: python c dll ctypes

我必须从python3.3调用以下C dll函数,知道我必须为答案分配内存空间,这将是从 响应的地址开始的字节表中 指针:

LONG Read_Parameters(BYTE dst, BYTE src, SHORT* param_list, BYTE param_number, BYTE* response);

我使用像这样的ctypes

    Read_Parameters = getattr(lib2, "Read_Parameters")
    Read_Parameters.argtypes = [c_byte,c_byte, POINTER(c_short),c_byte,POINTER(c_byte)]
    Read_Parameters.restype = c_long
    param_list = (c_short) (0)
    answer=(c_byte)()
    l = Read_Parameters(32,0,param_list,1,(answer))
    print(str(chr((answer.value))))

使用此代码我只打印我想通过此dll调用读取的字符串的第一个字符。 如何从python中正确分配内存并读取正确的整个输出字符串值? 任何帮助都会非常感激

0 个答案:

没有答案