python 调用C语言DLL项目实践

官方文档 : ctypes --- Python 的外部函数库 — Python 3.7.8 文档  https://docs.python.org/zh-cn/3.7/library/ctypes.html

主要使用的模块是ctypes,加载DLL 要使用对应版本的python

以下是本次实践过程

 

1、导入库

from ctypes import *

 

2、加载DLL,必须是全路径

IOdll = CDLL("D:\Andy\dirDll\lhio.dll")

 

3、根据头文件获取C函数,

C语言:LHIO_API int LH_OpenDevice(unsigned int deviceId);

python:def  LH_OpenDevice(deviceId)

 

C语言:LHIO_API int LH_GetDo(unsigned int deviceId, unsigned short &val);    //val是返回的变量

python: 这里要获取返回值,需要用到pointer这里数据类型:

        val = pointer(c_ushort(0))
        IOdll ​​​​​.LH_GetDo(deviceId, val)==0 :       
            return val[0]
        else:
            return -1

也可以用val.contents来获取返值。

 

 


 
    

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值