python调用ctypes中windll中的方法超时处理_python中的ctypes,调用DLL中的函数时出现问题...

嘿!你可能已经注意到了,我对ctypes有一个恼人的问题。我正在尝试与一个仪器进行通信,为此我必须使用ctypes与DLL驱动程序通信。在

到目前为止,我通过以下操作成功导出了DLL:>>> from ctypes import *

>>>maury = WinDLL( 'MLibTuners')

>>> maury

(WinDLL 'MlibTuners', handle 10000000 at 9ef9d0)

>>> maury.get_tuner_driver_version()

(_FuncPtr object at 0x009F6738)

>>> version_string = create_string_buffer(80)

>>> maury.get_tuner_driver_version(version_string)

2258920

>>> print version_string.value

'Maury Microwave MT993V04 Tuner Driver DLL, Version 1.60.00, 07/25/2007'

它工作得很好,根据文档,它应该将调谐器驱动程序DLL保存在作为参数给定的80字节字符串中。

但是,当我尝试使用名为add\u tuner的函数时,它失败了。文件是这样写的:

^{pr2}$

我试着调用上面的函数:

更改的参数是所有指针和max_range[],根据手册下面的值也是正确的,我只是不知道为什么我总是在写入0x00000000no_motors = pointer(c_short())

f_min = pointer(c_double())

f_max = pointer(c_double())

f_crossover = pointer(c_double())

maury.add_tuner(c_short(0), c_char_p('MT982EU'), c_short(serial_number), c_short(0),

c_short(1),no_motors, c_long(),

f_min,f_max,f_crossover, create_string_buffer(80))

序列号是通过引用一个变量而被截取的。有人知道该怎么做吗?,您看到我的输入有任何错误吗?在

谢谢

/马兹达克

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值