2
我使用Python中的調用C函數。它在由庫分配的內存中返回一個指向結構的指針(應用程序調用另一個函數以稍後釋放它)。我無法弄清楚如何按下函數調用以適應ctypes。該結構是這樣的:python ctypes中的未知數組長度
struct WLAN_INTERFACE_INFO_LIST {
DWORD dwNumberOfItems;
[...]
WLAN_INTERFACE_INFO InterfaceInfo[];
}
我一直在使用一個子類的結構看起來像這樣:
class WLAN_INTERFACE_INFO_LIST(Structure):
_fields_ = [
("NumberOfItems", DWORD),
[...]
("InterfaceInfo", WLAN_INTERFACE_INFO * 1)
]
我怎麼能告訴ctypes的讓我訪問InterfaceInfo陣列中第n項?
我不能使用Scott's excellent customresize()
function,因爲我沒有內存(Memory cannot be resized because this object doesn't own it
)。
你能解釋一下這是怎麼使用?我嘗試調整大小,但返回了:'(lu_list.contents).guid = customresize((lu_list.contents).guid,(lu_list.contents).cnt)' 'TypeError:不兼容的類型,GUID_Array_4實例而不是GUID_Array_1實例' – Awalias 2012-11-14 10:54:35