还是调用动态库,各种调用,但是呢,Python调用dll貌似不麻烦,至少我第一次就调用成功嘞。
至于Python,我连语法都不知道,不过问题不大,边百度边写。
环境:
好像都可以,Python我在官网下载的python-3.6.4-amd64。
然后准备一个简单的dll(就普通的dll百度有一大堆就写一个加法就行,这里我就直接用我之前的GB.dll啦)
然后写代码:
from ctypes import *
dll = cdll.LoadLibrary('Health.dll')
#初始化
ret = dll.Initialization(0,"192.168.0.58".encode(),4000)
print(ret)
输出结果
就ok,其中encoude和decode用法参考(网址点我)
然后就是函数返回值,对应类型参考:https://blog.csdn.net/ab17171313/article/details/80256465
dll.GetCharData.restype = c_char_p#指定返回值类型,这里c_char_p指c中 char*类型
其中获取到的char*值直接输出为,若要去掉b'',则加上.decode("utf-8")
print(Time.decode("utf-8"))
运行后输出,ok
当然,还有中文的处理,加上.decode("gbk")就行。