详解Python 调用C# dll库最简方法


Posted in Python onJune 20, 2019

1.为什么要跨平台编程?双平台编程或多平台编程,只是为提供更好开发更兼容的解决方案的一种手段,编程时服务于产品和客户的,也是因地制宜。

先安装python所需的库clr ,我这里已经安装了,可以去对应的根目录下查看有没有pythonnet这个文件夹。

详解Python 调用C# dll库最简方法

2.首先要特别注意,你安装使用的Python的版本是对应x64还是x32的,python只能调用对应64位或32位的dll,可以右击启动项目的属性,修改并重新生成。

详解Python 调用C# dll库最简方法

特别注意:启动项目和你的目标库不一样,前者输出类型是windows应用或是控制台,后者输出类型是类库,这个才是生成dll的类型。

详解Python 调用C# dll库最简方法

3.再次,右击启动项目的属性,选则bin\Debug下的你想要的dll。

详解Python 调用C# dll库最简方法

4.python中对动态链接库的引用,并将dll文件放到.py文件的同级目录下。第三行代码是声明要调用其空间下所有的类、属性、方法等等。

import clr # add C# suppor
clr.AddReference('In3Controllers')

from In3Controllers import *

5.这个Testor就是我在C#写的代码,生成的In3Controllers.dll的动态链接库里面的一个函数。到这里已经完成了引用C# dll库的所有步骤。

if __name__ == '__main__':

  smctestor = Testor(setting, param)            # place here so it can only init once

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python比较两个列表大小的方法
Jul 11 Python
人工智能最火编程语言 Python大战Java!
Nov 13 Python
Python基于递归算法求最小公倍数和最大公约数示例
Jul 27 Python
Python全局锁中如何合理运用多线程(多进程)
Nov 06 Python
python实现把两个二维array叠加成三维array示例
Nov 29 Python
Tensorflow 实现分批量读取数据
Jan 04 Python
python中count函数简单用法
Jan 05 Python
在django中使用apscheduler 执行计划任务的实现方法
Feb 11 Python
Python PyQt5模块实现窗口GUI界面代码实例
May 12 Python
Python命名空间及作用域原理实例解析
Aug 12 Python
Python多分支if语句的使用
Sep 03 Python
Pandas DataFrame求差集的示例代码
Dec 13 Python
python async with和async for的使用
Jun 20 #Python
python aiohttp的使用详解
Jun 20 #Python
Python 中Django验证码功能的实现代码
Jun 20 #Python
Puppeteer使用示例详解
Jun 20 #Python
获取django框架orm query执行的sql语句实现方法分析
Jun 20 #Python
Python使用LDAP做用户认证的方法
Jun 20 #Python
Python OpenCV中的resize()函数的使用
Jun 20 #Python
You might like
编写安全 PHP应用程序的七个习惯深入分析
2013/06/08 PHP
php使用json-schema模块实现json校验示例
2019/09/28 PHP
document.compatMode的CSS1compat使用介绍
2014/04/03 Javascript
jquery easyui使用心得
2014/07/07 Javascript
Nodejs关于gzip/deflate压缩详解
2015/03/04 NodeJs
JavaScript中的getDay()方法使用详解
2015/06/09 Javascript
jquery获取复选框的值的简单实例
2016/05/26 Javascript
jquery+ajax+text文本框实现智能提示完整实例
2016/07/09 Javascript
jquery-mobile表单的创建方法详解
2016/11/23 Javascript
完美解决jQuery fancybox ie 无法显示关闭按钮的问题
2016/11/29 Javascript
微信小程序开发之入门实例教程篇
2017/03/07 Javascript
vue.js 左侧二级菜单显示与隐藏切换的实例代码
2017/05/23 Javascript
详解js正则表达式验证时间格式xxxx-xx-xx形式
2018/02/09 Javascript
解决vue打包后刷新页面报错:Unexpected token
2019/08/27 Javascript
[07:20]2014DOTA2西雅图国际邀请赛 选手讲解积分赛第二天
2014/07/11 DOTA
[00:02]DOTA2新版本使用PA至宝后暴击展示
2014/11/19 DOTA
python 实现数字字符串左侧补零的方法
2018/12/04 Python
python读取文件名并改名字的实例
2019/01/07 Python
解决Python plt.savefig 保存图片时一片空白的问题
2019/01/10 Python
python中正则表达式与模式匹配
2019/05/07 Python
基于python实现的百度新歌榜、热歌榜下载器(附代码)
2019/08/05 Python
Python在终端通过pip安装好包以后在Pycharm中依然无法使用的问题(三种解决方案)
2020/03/10 Python
django rest framework serializer返回时间自动格式化方法
2020/03/31 Python
python sitk.show()与imageJ结合使用常见的问题
2020/04/20 Python
python实现每天自动签到领积分的示例代码
2020/08/18 Python
用OpenCV进行年龄和性别检测的实现示例
2021/01/29 Python
美国知名的时尚购物网站:Anthropologie
2016/12/22 全球购物
英文自荐信
2013/12/19 职场文书
前台接待员岗位职责
2014/01/02 职场文书
《黄河颂》教学反思
2014/02/07 职场文书
积极贯彻学习两会精神总结
2014/03/17 职场文书
志愿者活动总结报告
2014/06/27 职场文书
自强自立美德少年事迹材料
2014/08/16 职场文书
高中班主任工作总结(范文)
2019/08/20 职场文书
Ajax请求超时与网络异常处理图文详解
2021/05/23 Javascript
利用Apache Common将java对象池化的问题
2022/06/16 Servers