python 调用C DLL库 传参(传递数字、字符串、数组(一维、二维)、结构体)

2023-11-17

#!/usr/bin/env python
#conding=utf-8


from itertools import filterfalse
import PySimpleGUI as sg
from ctypes import cdll
from ctypes import *
from threading import Thread
import time

from PySimpleGUI.PySimpleGUI import P, PROGRESS_BAR_STYLES, T, Print

#m6e
#a = cdll.LoadLibrary(r'D:\share\first_party\python\MAC\Dll32_python.dll')
a = cdll.LoadLibrary(r'E:\salman_备份\客户资料主目录\delphi\2019\UHFReader\Debug\UHFReader.dll')

# #fun.restype  = c_float #设置返回值类型为 float
# #a.argtypes = (c_int, c_int,c_int,c_void_p)
# TrueAndFalse=False
# # a.get_T.restype =c_float
# # getT=0
# # def recv_message():
# #     global TrueAndFalse
# #     global getT
# #     while True:
# #         time.sleep(2)r
# #         while TrueAndFalse:
# #             getT=round(a.get_T(),3)
# #             #print("getT:",str(getT))




if __name__ == '__main__':
    #main()
    a = cdll.LoadLibrary(r'E:\salman_备份\客户资料主目录\delphi\2019\UHFReader\Debug\UHFReader.dll')
    ok=a.reader_open_tcp(bytes("tcp://192.168.8.4:8086",encoding="utf-8"))  


    intPara = c_int(9)     #int *变量
    count = c_int(9)     #int *变量
    a.reader_readpower_get(byref(intPara))   #传参      
    print (intPara.value)      #输出读取功率  3000
    print(ok)


    buf = create_string_buffer('hello'.encode('gbk'))


    #int reader_read_tag(int time, char* str, int* count)
    a.reader_read_tag(2000, buf, byref(count))
    print(count.value)
    print(buf.value)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python 调用C DLL库 传参(传递数字、字符串、数组(一维、二维)、结构体) 的相关文章

  • OpenCV 错误:使用 COLOR_BGR2GRAY 函数时断言失败

    我在使用 opencv 时遇到了一个奇怪的问题 我在 jupyter 笔记本中工作时没有任何问题 但在尝试运行此 Sublime 时却出现问题 错误是 OpenCV错误 cvtColor中断言失败 深度 CV 8U 深度 CV 16U 深度
  • 如何在算术表达式的结果上添加 SQLAlchemy 标签?

    我如何将这样的东西翻译成 SQLAlchemy select x y as difference 我知道该怎么做 x label foo 但我不确定在哪里放置下面的 label 方法调用 select table c x table c y
  • 如何在“python setup.py test”中运行 py.test 和 linter

    我有一个项目setup py文件 我用pytest作为测试框架 我还在我的代码上运行各种 linter pep8 pylint pydocstyle pyflakes ETC 我用tox在多个 Python 版本中运行它们 并使用以下命令构
  • 无法安装时间模块

    我试过了pip install time and sudo H pip install time 但我不断收到错误 找不到满足要求时间的版本 从 版本 未找到时间匹配的发行版 我正在 PyCharm 中工作 但真正没有意义的是我可以在 Py
  • multiprocessing.freeze_support()

    为什么多处理模块需要调用特定的function http docs python org dev library multiprocessing html multiprocessing freeze support在被 冻结 以生成 Wi
  • 远程控制或脚本打开 Office 从 Python 编辑 Word 文档

    我想 最好在 Windows 上 在特定文档上启动 Open Office 搜索固定字符串并将其替换为我的程序选择的另一个字符串 我该如何从外部 Python 程序中做到这一点 OLE 什么 原生 Python 脚本解决方案 The doc
  • 在python中调用subprocess.Popen时“系统找不到指定的文件”

    我正在尝试使用svnmerge py合并一些文件 它在底层使用 python 当我使用它时 我收到一个错误 系统找不到指定的文件 工作中的同事正在运行相同版本的svnmerge py 以及 python 2 5 2 特别是 r252 609
  • 在 Windows 上将 Word2vec 与 Tensorflow 结合使用

    In 本教程文件 https github com tensorflow models blob master tutorials embedding word2vec py L45通过 Tensorflow 找到以下行 第 45 行 来加
  • 熊猫记忆

    我有冗长的计算 我重复了很多次 因此 我想使用记忆 诸如jug http packages python org Jug and joblib http packages python org joblib memory html 与Pan
  • 如何将同步函数包装在异步协程中?

    我在用着aiohttp https github com aio libs aiohttp构建一个 API 服务器 将 TCP 请求发送到单独的服务器 发送 TCP 请求的模块是同步的 对于我来说是一个黑匣子 所以我的问题是这些请求阻塞了整
  • 在 GAE/Python 中放置一次性代码和每次代码的最佳位置在哪里?

    我是 Google App Engine 和 Python 的新手 我无法理解有关在 Google App Engine 上运行的 Python 应用程序的一些基本问题 如果我想要执行代码 对于每个传入的请求 我应该将其放在哪里 我们正在捕
  • 从 Apache 运行 python 脚本的最简单方法

    我花了很长时间试图弄清楚这一点 我基本上正在尝试开发一个网站 当用户单击特定按钮时 我必须在其中执行 python 脚本 在研究了 Stack Overflow 和 Google 之后 我需要配置 Apache 以便能够运行 CGI 脚本
  • 使用 pandas 绘制带有误差线的条形图

    我正在尝试从 DataFrame 生成条形图 如下所示 Pre Post Measure1 0 4 1 9 这些值是我从其他地方计算出来的中值 我还有它们的方差和标准差 以及标准误差 我想将结果绘制为具有适当误差线的条形图 但指定多个误差值
  • dask allocate() 或 apply() 中的变量列名

    我有适用于pandas 但我在将其转换为使用时遇到问题dask 有一个部分解决方案here https stackoverflow com questions 32363114 how do i change rows and column
  • Pandas DataFrame:如何计算组中第一行和最后一行的差异?

    这是我的熊猫数据框 import pandas as pd import numpy as np data column1 338 519 871 1731 2693 2963 3379 3789 3910 4109 4307 4800 4
  • Windows 与 Linux 文本文件读取

    问题是 我最近从 Windows 切换到 Ubuntu 我的一些用于分析数据文件的 python 脚本给了我错误 我不确定如何正确解决 我当前仪器的数据文件输出如下 Header 有关仪器等的各种信息 Data 状态 代码 温度 字段等 0
  • SpaCy 中的自定义句子边界检测

    我正在尝试在 spaCy 中编写一个自定义句子分段器 它将整个文档作为单个句子返回 我编写了一个自定义管道组件 它使用以下代码来执行此操作here https github com explosion spaCy issues 1850 但
  • Melt() 函数复制数据集

    我有一个这样的表 id name doggo floofer puppo pupper 1 rowa NaN NaN NaN NaN 2 ray NaN NaN NaN NaN 3 emma NaN NaN NaN pupper 4 sop
  • 如何抑制 Pandas Future 警告?

    当我运行该程序时 Pandas 每次都会给出如下所示的 未来警告 D Python lib site packages pandas core frame py 3581 FutureWarning rename with inplace
  • Python - 打印漂亮的 XML 为空标签文本创建开始和结束标签

    我正在编写一个 python 应用程序 它创建一个 ElementTree XML 然后使用 minidom 的 toprettyxml 将其写入文件 final tree minidom parseString ET tostring r

随机推荐

  • 从微信授权登录到数据安全性的思考总结

    前置知识 微信授权登录过程和相关名词 access token code openid等 微信授权登录 大都是拉起微信授权页面 用户同意授权后 再跳到自己应用的绑定手机页面进行绑定手机的操作 绑定之后自动登录 会话就像不会过期一样 或者是过
  • 基于live555实现实时视频监控

    目录 1 所需软件 源码及下载地址 1 2安装软件及编译 1 2 1 安装Windows版的VLC
  • JavaScript全解析——循环结构语句

    循环控制 控制程序重复执行若干次相同或似的逻辑 理解并正确使用循环控制 需要搞清楚循环的3个要素 起始值 变化量 终止条件 起始值循环的起点 可以是 任意数据类型值 变化量是指 改变起始值的方式 终止条件 布尔类型值 它是循环停止的边界 w
  • springboot多版本管理

    达到的版本控制效果如下 1 api版本定义在url中 采用 api 项目名 pro v4 接口名 的形式 2 api版本号通过注解进行定义 3 如果请求中不指定api版本号则返回最新版本 4 版本的自动适配 如果请求的api版本不存在 则返
  • 详解微信小程序网络请求接口封装

    为实现定制要求和方便调用 对微信小程序的网络请求接口进行了封装 在根目录新建api文件夹并新建httpRequest js与config js文件 1 设置请求域名 设置请求域名 let ENV wxConfig envVersion le
  • the import org.junit.Assert.* cannot be revolved的解决方法

    the import org junit Assert cannot be revolved的解决方法 具体解决方法 右键单击项目名 选择buildpath gt add library 弹出配置对话框 选择junit next下一步 系统
  • python想获取字符串str的长度_如何使用python获取字符串长度?哪些方法?

    掌握多种python技巧 对于我们更好的灵活应用python是非常重要的 比如接下来给大家介绍的获取字节长度 那大家脑海里就该有印象了 有几种方法呢 一起来看下吧 1 使用len 函数 这是最直接的方法 在这里 我们使用len 函数 字符串
  • 【python】将python代码打包成系统可执行文件(Pyinstaller模块)

    python文件打包输出可执行文件 1 Pyinstaller模块下载 2 Pyinstaller的使用 2 1 打开命令行 指引文件路径 2 2 直接生成可执行文件 3 常用指令 3 1 修改图标 3 2 修改名称 3 3 修改路径 1
  • 知识图谱,为移动搜索而生

    核心提示 当你尝试搜索 冰桶挑战 是什么决定你在搜索引擎上看到的内容呢 移动互联网时代 搜索引擎如何才能足够精准 个性化呢 这背后需要一个共同的作用机制 知识图谱 最近 冰桶挑战 挺火的 好奇心驱使我百度一下 看到如下结果 可能是做搜索的职
  • 人脸口罩检测 Python

    随着全球疫情的爆发 佩戴口罩成为了一项重要的健康和安全措施 在这种情况下 开发一个能够自动检测人脸是否佩戴口罩的系统变得非常有用 在本文中 我们将使用 Python 编程语言来实现一个简单的人脸口罩检测系统 首先 我们需要安装一些必要的 P
  • R语言mgarch包的说明_【R语言】优雅的循环迭代:purrr包

    用 R 写 循环 从低到高有三种境界 手动 for 循环 apply 函数族 purrr 包泛函式编程 补充一点 关于purrr 与 apply 族 purrr 提供了更多的一致性 规范性和便利性 更容易记住和使用 速度来说 apply 族
  • java多线程中synchronized同步代码块执行问题

    在高洪岩老师的 java多线程编程核心技术 一书的用同步代码块解决同步方法的弊端一节中 p76页 有这样一句话 当一个线程访问object的一个synchronized同步代码块时 另一个线程依然可以访问该object对象中的非synchr
  • Flash存储芯片:NOR Flash、NAND Flash、UFS和eMMC的比较与解析

    前言 在数字化时代的今天 数据的存储和管理变得越来越重要 各种各样的存储技术应运而生 以满足不同的使用场景和需求 其中 Flash存储芯片以其非易失性 可擦写性和可编程性等优势 占据了重要地位 本博客将详细介绍Flash存储芯片中的NOR
  • js屏蔽鼠标右键菜单&键盘ctrl+c,ctrl+v等

    文章目录 前言 一 效果展示 二 源代码 总结 前言 js屏蔽鼠标右键菜单以及屏蔽键盘ctrl c ctrl v ctrl a ctrl s ctrl p 一 效果展示 二 源代码
  • 数仓知识07:数据增量更新的几种方式

    1 增量更新的几种方式 增量更新的本质 其实是获取源表中数据变化的情况 增 删 改 然后将源表中发生的变化同步至目标表中 不同的方式 获取源表中数据变化的情况不一样 受技术的限制 表结构的限制 某些方式可能无法获取到完整的数据变化情况 因此
  • 后端返回分页数据过滤不需要的字段,先将不需要的属性置为null

    IPage
  • 腾讯mini项目-【指标监控服务重构】2023-07-23

    今日已办 组会记录 进度以及问题 otelzap 上报 Log 附属在 span 的 event 中 可以去查看具体的日志信息 如 trace id span id 日志级别等 还可以自定义属性 详细可见 https sztubdi cod
  • 微软云计算操作系统Windows Azure 平台——云+端全面攻略

    微软云计算操作系统Windows Azure 平台 云 端全面攻略 Windows Azure Platform 开发入门 在云计算时代 有三个平台非常重要 即开发平台 部署平台和运营平台 Windows Azure Platform是微软
  • I2S与pcm的区别

    I2S仅仅是PCM的一个分支 接口定义都是一样的 I2S的采样频率一般为44 1KHZ和48KHZ做 PCM采样频率一般为8K 16K 有四组信号 位时钟信号 同步信号 数据输入 数据输出 I2S总线标准 I2S Inter IC Soun
  • python 调用C DLL库 传参(传递数字、字符串、数组(一维、二维)、结构体)

    usr bin env python conding utf 8 from itertools import filterfalse import PySimpleGUI as sg from ctypes import cdll from