python调用第三方dll python3,64位的,怎么样调用32位的DLL最方便?
python3,64位的,怎么样调用32位的DLL最方便?
工作流:1。创建进程外COM服务器(exe)。
2. 将32位DLL的接口函数封装为COM服务器的相关接口。三。注册COM服务器*。Exe/regserver(注销*)。Exe/unreger服务器)。464位进程成功调用32位COM服务器接口。因此,64位进程调用32位DLL。具体步骤:我先创建一个简单的DLL项目,只输出一个函数INTC=add(inta,intb)来生成lib和DLL,然后创建一个进程外com(EXE类型)、内部链接DLL、add方法方法:添加(长*c){*c=add(1,2)}。然后注册com,*。Exe/regserver创建64位Win32项目,以验证方法调用在64位环境中是否正确。它被证实是正确的
!结论:上述方法可以解决64位进程调用32位DLL的问题,32位进程调用64位DLL也应该用这种方法来解决。原因是在64位windows系统中安装了32位和64位com系统
这并不难,主要是使用Python的ctypes模块。接下来,我将简要介绍实现过程,实验环境win10python3.6pycharm5.0,主要内容如下:
1。在这里为了方便解释问题,我编译了一个简单的DLL库,源代码如下,非常简单,一个带参数的mul函数:
编译成功后,将在当前发行目录下生成一个DLLdllTest.dll接下来,我们创建一个新的py文件,它的主要代码如下,非常简单简单:
程序运行截图如下,已成功调用add函数,并返回执行结果:
3。在这里我们还可以使用windll来加载DLL库,基本步骤都是一样的,只需直接调用,如下所示:
程序运行截图如下:
到目前为止,我们已经完成了使用Python调用DLL库。一般来说,整个过程很简单,代码量不多,很容易理解,cdll和WINDL这两种方式都可以很快完成,只要你熟悉相关的代码和例子,练习几次,你很快就能掌握,网上还有相关的教程和资料,如果您感兴趣,可以搜索,希望以上分享的内容能对您有所帮助,也欢迎大家发表评论和留言。
如何利用python调用编译好的dll库?
怎样用python调用dll?
这个,看能不能看到函数名。调用ctypes时,也可以根据序列号调用函数。但如果你没有任何细节,就不要打电话。毕竟,你需要构造参数,对吗?你知道参数类型吗?字符串参数缓冲区有多长?错误是例外。
python调用第三方dll python编译成dll文件 python函数的定义和调用
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。