我的结构如下
class DEVINFO(Structure):
_fields_ = [("szDeviceName", c_char*MAX_PATH),
("pDevExtension", POINTER(DEVEXTENSION))]
在上面,DEVEXTENSION结构如下
class DEVEXTENSION(Structure):
_fields_ = [("szProductName",c_char*MAX_PATH),
("szManfName",c_char*MAX_PATH),
("szSerialNumber",c_char*32)]
我的问题是如何访问“DEVEXTENSION”结构的成员。
devInfo = DEVINFO()
devInfo.szDeviceName = "USB Flash 302"
print(devInfo.szDeviceName)
答案 0 :(得分:2)
指针实例具有返回对象的contents属性 指针指向
所以,devInfo.pDevExtensions.contents.szProductName
例如,假设DEVINFO
将生成DEVEXTENSION
的实例 - 对我而言,这里并不明显(但我对ctypes并不熟悉。
另请注意,PEP-8建议CapWords
用于类名,CAPS
为常量保留。{/ p>