Python运行DLL文件的方法


Posted in Python onJanuary 17, 2020

什么是DLL文件?

DLL文件为动态链接库(英语: Dynamic-link library, 缩写为DLL)

它是微软公司在微软视窗操作系统中实现共享函数库概念的一种实现方式

先来阐述一下DLL(Dynamic Linkable Library)的概念,你可以简单的把DLL看成一种仓库,它提供给你一些可以直接拿来用的变量、函数或类。在仓库的发展史上经历了“无库-静态链接库-动态链接库”的时代。静态链接库与动态链接库都是共享代码的方式,如果采用静态链接库,则无论你愿不愿意,lib中的指令都被直接包含在最终生成的EXE文件中了。但是若使用DLL,该DLL不必被包含在最终EXE文件中,EXE文件执行时可以“动态”地引用和卸载这个与EXE独立的DLL文件。静态链接库和动态链接库的另外一个区别在于静态链接库中不能再包含其他的动态链接库或者静态库,而在动态链接库中还可以再包含其他的动态或静态链接库。

用Python执行DLL文件:

from ctypes import cdll
def run_dll(dll_path, execute_function):
  """
  执行DLL文件内部指定的函数
  :param dll_path: DLL文件的所在路径
  :param execute_function: DLL文件内部要被执行的函数名
  :return:
  """
  dll_object = cdll.LoadLibrary(dll_path) # 实例化DLL对象
  eval('dll_object.{}()'.format(execute_function)) # 调用DLL文件内的指定程序
if __name__ == '__main__':
  path = r'C:\Users\evaliu\Desktop\example.dll'
  run_dll(dll_path=path, execute_function='communication_test')

总结

以上所述是小编给大家介绍的Python运行DLL文件的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
Python实现保证只能运行一个脚本实例
Jun 24 Python
Python实现树莓派WiFi断线自动重连的实例代码
Mar 16 Python
python使用正则表达式替换匹配成功的组并输出替换的次数
Nov 22 Python
Python异常处理操作实例详解
May 10 Python
python中pip的使用和修改下载源的方法
Jul 08 Python
python简单实现矩阵的乘,加,转置和逆运算示例
Jul 10 Python
浅析python 中大括号中括号小括号的区分
Jul 29 Python
python飞机大战pygame游戏框架搭建操作详解
Dec 17 Python
pytorch 数据处理:定义自己的数据集合实例
Dec 31 Python
keras在构建LSTM模型时对变长序列的处理操作
Jun 29 Python
python定时截屏实现
Nov 02 Python
Python答题卡识别并给出分数的实现代码
Jun 22 Python
Python3实现mysql连接和数据框的形成(实例代码)
Jan 17 #Python
python如何基于redis实现ip代理池
Jan 17 #Python
解决python gdal投影坐标系转换的问题
Jan 17 #Python
python3 Scrapy爬虫框架ip代理配置的方法
Jan 17 #Python
Python计算机视觉里的IOU计算实例
Jan 17 #Python
python实现百度OCR图片识别过程解析
Jan 17 #Python
Python实现图像的垂直投影示例
Jan 17 #Python
You might like
php中{}大括号是什么意思
2013/12/01 PHP
ThinkPHP3.1新特性之多数据库操作更加完善
2014/06/19 PHP
ThinkPHP框架表单验证操作方法
2017/07/19 PHP
PHP实现带进度条的Ajax文件上传功能示例
2019/07/02 PHP
YII2框架中ActiveDataProvider与GridView的配合使用操作示例
2020/03/18 PHP
jQuery+css实现图片滚动效果(附源码)
2013/03/18 Javascript
jQuery隔行变色与普通JS写法的对比
2013/04/21 Javascript
Nodejs实现多人同时在线移动鼠标的小游戏分享
2014/12/06 NodeJs
JavaScript中的Primitive对象封装介绍
2014/12/31 Javascript
jQuery验证插件validation使用指南
2015/04/21 Javascript
基于HTML模板和JSON数据的JavaScript交互(移动端)
2016/04/06 Javascript
jQuery树形插件jquery.simpleTree.js用法分析
2016/09/05 Javascript
完美解决IE不支持Data.parse()的问题
2016/11/24 Javascript
jquery实现折叠菜单效果【推荐】
2017/03/08 Javascript
vue router+vuex实现首页登录验证判断逻辑
2018/05/17 Javascript
详解Vue.directive 自定义指令
2019/03/27 Javascript
详解如何使用nvm管理Node.js多版本
2019/05/06 Javascript
Python模拟浏览器上传文件脚本的方法(Multipart/form-data格式)
2018/10/22 Python
浅析python3字符串格式化format()函数的简单用法
2018/12/07 Python
python+opencv实现摄像头调用的方法
2019/06/22 Python
Python操作qml对象过程详解
2019/09/26 Python
利用Python裁切tiff图像且读取tiff,shp文件的实例
2020/03/10 Python
如何学习Python time模块
2020/06/03 Python
Python如何使用神经网络进行简单文本分类
2021/02/25 Python
英国护肤品购物网站:Beauty Expert
2016/08/19 全球购物
Omio荷兰:预订火车、巴士和机票
2018/11/04 全球购物
同程旅游英文网站:LY.com
2018/11/13 全球购物
教师网络培训感言
2014/03/09 职场文书
中学生演讲稿
2014/04/26 职场文书
餐饮商业计划书范文
2014/04/29 职场文书
体育教师求职信
2014/06/30 职场文书
大专毕业生自我鉴定范文(2篇)
2014/09/27 职场文书
检讨书范文500字
2015/01/28 职场文书
2016年校园重阳节广播稿
2015/12/18 职场文书
html5表单的required属性使用
2021/07/07 HTML / CSS
el-table-column 内容不自动换行的解决方法
2022/08/14 Vue.js