详解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 Web框架Flask信号机制(signals)介绍
Jan 01 Python
python字符串循环左移
Mar 08 Python
python 扩展print打印文件路径和当前时间信息的实例代码
Oct 11 Python
python文件读写代码实例
Oct 21 Python
TensorFlow获取加载模型中的全部张量名称代码
Feb 11 Python
关于Python 中的时间处理包datetime和arrow的方法详解
Mar 19 Python
Python基于class()实现面向对象原理详解
Mar 26 Python
python中如何进行连乘计算
May 28 Python
python可以用哪些数据库
Jun 22 Python
python tkiner实现 一个小小的图片翻页功能的示例代码
Jun 24 Python
Python random模块的使用示例
Oct 10 Python
浅谈Python数学建模之整数规划
Jun 23 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
破解图片防盗链的代码(asp/php)测试通过
2010/07/02 PHP
PHP错误抑制符(@)导致引用传参失败Bug的分析
2011/05/02 PHP
laravel框架路由分组,中间件,命名空间,子域名,路由前缀实例分析
2020/02/18 PHP
JS 页面自动加载函数(兼容多浏览器)
2009/05/18 Javascript
JavaScript 模式之工厂模式(Factory)应用介绍
2012/11/15 Javascript
使用Java实现简单的server/client回显功能的方法介绍
2013/05/03 Javascript
jquery 滚动条事件简单实例
2013/07/12 Javascript
javascript删除option选项的多种方法总结
2013/11/22 Javascript
js传中文参数controller里获取参数乱码问题解决方法
2014/01/03 Javascript
Node.js中使用socket创建私聊和公聊聊天室
2015/11/19 Javascript
jquery Deferred 快速解决异步回调的问题
2016/04/05 Javascript
AngularJS优雅的自定义指令
2016/07/01 Javascript
jquery与ajax获取特殊字符实例详解
2017/01/08 Javascript
那些精彩的JavaScript代码片段
2017/01/12 Javascript
JavaScript正则表达式的贪婪匹配和非贪婪匹配
2017/09/05 Javascript
基于require.js的使用(实例讲解)
2017/09/07 Javascript
一次记住JavaScript的6个正则表达式方法
2018/02/22 Javascript
微信小程序实现下拉菜单切换效果
2020/03/30 Javascript
微信小程序实现随机验证码功能
2018/12/20 Javascript
layui实现多图片上传并限制上传的图片数量
2019/09/26 Javascript
微信小程序实现上拉加载功能
2019/11/20 Javascript
[48:05]2018DOTA2亚洲邀请赛 3.31 小组赛 B组 VGJ.T vs VP
2018/03/31 DOTA
简单理解Python中的装饰器
2015/07/31 Python
Python进阶学习之特殊方法实例详析
2017/12/01 Python
python+POP3实现批量下载邮件附件
2018/06/19 Python
Python 函数用法简单示例【定义、参数、返回值、函数嵌套】
2019/09/20 Python
使用CSS3的font-face字体嵌入样式的方法讲解
2016/05/13 HTML / CSS
HTML5中通过li-canvas轻松实现单图、多图、圆角图绘制,单行文字、多行文字等
2018/11/30 HTML / CSS
HTML5网页录音和上传到服务器支持PC、Android,支持IOS微信功能
2019/04/26 HTML / CSS
KIEHL’S科颜氏官方旗舰店:源自美国的顶级护肤品牌
2018/06/07 全球购物
保加利亚服装和鞋类购物网站:Bibloo.bg
2020/11/08 全球购物
Linux文件操作命令都有哪些
2015/02/27 面试题
学雷锋的心得体会
2014/09/04 职场文书
初中毕业典礼演讲稿
2014/09/09 职场文书
法院答辩状格式
2015/05/22 职场文书
高质量“欢迎词”
2019/04/03 职场文书