Python - 如何将DLL返回的内存地址和大小解释为字节数组

时间:2017-09-06 13:07:32

标签: python memory-management dll

假设script.py使用func()调用 DLL ctypes [用C语言编写]

func()会返回两件事:

  1. 已分配的uint8_t 数组的本地虚拟地址
  2. 数组的大小
  3. 在没有内存复制的情况下,从这个uint8_t数组创建pythonic字节数组或列表的最佳方法是什么。换句话说,让Python知道将指定的内存块视为pythonic字节数组吗?

    由于

1 个答案:

答案 0 :(得分:0)

我不确定,如果有效,请试试这个:

localAddress, arraySize = func()
yourByteArray = bytearray(ctypes.string_at(localAddress, arraySize))