python调用dll 指针参数
【摘要】
#coding=utf-8import threadingfrom ctypes import * class DeviceAttribute(Structure): _fields_ = [("vendorId", c_uint16), ("productId", c_uint16), ("deviceAddress", c_uint32), ("seria...
-
#coding=utf-8
-
import threading
-
from ctypes import *
-
-
class DeviceAttribute(Structure):
-
_fields_ = [("vendorId", c_uint16),
-
("productId", c_uint16),
-
("deviceAddress", c_uint32),
-
("serialNumber", c_char * 64),
-
("uri", c_char * 255)]
-
-
class Device(Structure):
-
pass
-
-
-
-
deviceAttributeHandle = POINTER(DeviceAttribute)
-
deviceAttributeHandle_p = POINTER(deviceAttributeHandle)
-
-
dll = CDLL("./Nectaf.dll")
-
-
-
a = dll.Initialize()
-
-
if a!=0:
-
exit(1)
-
-
print("init ok")
-
-
deviceCount = c_int(0)
-
-
GetDeviceList = dll.GetDeviceList
-
GetDeviceList.argtypes = [deviceAttributeHandle_p,POINTER(c_int)]
-
GetDeviceList.restype = c_int
-
-
# pDeviceAttr = POINTER(POINTER(DeviceAttribute))
-
-
# dll.GetDeviceList(deviceAttributeHandle_p,byref(deviceCount))
-
-
deviceAttribute = deviceAttributeHandle()
-
# ret = getDeviceList(byref(self.deviceAttribute), byref(nCount))
-
-
dll.GetDeviceList(byref(deviceAttribute),byref(deviceCount))
-
-
print(deviceCount.value)
文章来源: blog.csdn.net,作者:网奇,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/jacke121/article/details/110821417
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)