你好,我有一个这样的函数
GetAllActivMessagestring(LPSTR pszStrMessages)在参数pszStrMessages中返回主动告警的字符串。字符串以25个字符组成的数组进行组织,每个字符串包含50个字符(49+nullterminator)
如何使用ctypes定义变量pszStrMessages并将其传递给函数,然后读取返回值?
感谢并致以问候
发布于 2021-05-04 16:41:16
我已经尝试了如下:
fun_one = ctypes.WinDLL('C:\Kvara\Exe\ErrorHand.dll')
text = ctypes.create_string_buffer(1250)
alarm_number = fun_one.EH_GetAllActiveMessagesStrings(text)
if alarm_number>0:
print('Active Messages :', alarm_number)
print('Message Sting :', text.value)alarm_number返回2,但text.value仅返回第一条消息
任何建议
发布于 2021-05-04 19:04:49
已解决,而不是text.value,我使用了text.raw,然后用b'\xoo‘拆分该行,并从结果列表Regards中获取值
https://stackoverflow.com/questions/67371503
复制相似问题