详解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读写Json涉及到中文的处理方法
Sep 12 Python
删除python pandas.DataFrame 的多重index实例
Jun 08 Python
python实现京东秒杀功能
Jul 30 Python
Django contenttypes 框架详解(小结)
Aug 13 Python
[原创]Python入门教程3. 列表基本操作【定义、运算、常用函数】
Oct 30 Python
基于python3 pyQt5 QtDesignner实现窗口化猜数字游戏功能
Jul 15 Python
详解pandas使用drop_duplicates去除DataFrame重复项参数
Aug 01 Python
django框架中间件原理与用法详解
Dec 10 Python
Pycharm操作Git及GitHub的步骤详解
Oct 27 Python
Python+OpenCV检测灯光亮点的实现方法
Nov 02 Python
Django+Nginx+uWSGI 定时任务的实现方法
Jan 22 Python
Python socket如何解析HTTP请求内容
Feb 12 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+javascript模拟Matrix画面
2006/10/09 PHP
php桌面中心(四) 数据显示
2007/03/11 PHP
PHP utf-8编码问题,utf8编码,数据库乱码,页面显示输出乱码
2013/04/08 PHP
PHP 类相关函数的使用详解
2013/05/10 PHP
ThinkPHP中I(),U(),$this->post()等函数用法
2014/11/22 PHP
php删除指定目录的方法
2015/04/03 PHP
Javascript结合css实现网页换肤功能
2009/11/02 Javascript
jQuery EasyUI API 中文文档 - Tree树使用介绍
2011/11/19 Javascript
TimergliderJS 一个基于jQuery的时间轴插件
2011/12/07 Javascript
jquery数据验证插件(自制,简单,练手)实例代码
2013/10/24 Javascript
一个仿糯米弹框效果demo
2014/07/22 Javascript
简述JavaScript的正则表达式中test()方法的使用
2015/06/16 Javascript
javascript实现类似百度分享功能的方法
2015/07/27 Javascript
jQuery中each()、find()和filter()等节点操作方法详解(推荐)
2016/05/25 Javascript
ES6(ECMAScript 6)新特性之模板字符串用法分析
2017/04/01 Javascript
vue 实现数字滚动增加效果的实例代码
2018/07/06 Javascript
vue 强制组件重新渲染(重置)的两种方案
2019/10/29 Javascript
[02:51]DOTA2 Supermajor小组分组对阵抽签仪式
2018/06/01 DOTA
Python的Django框架中模板碎片缓存简介
2015/07/24 Python
Python的socket模块源码中的一些实现要点分析
2016/06/06 Python
Python 字符串大小写转换的简单实例
2017/01/21 Python
python爬取哈尔滨天气信息
2018/07/14 Python
使用python对excle和json互相转换的示例
2018/10/23 Python
基于Python实现拆分和合并GIF动态图
2019/10/22 Python
使用python模拟高斯分布例子
2019/12/09 Python
在matplotlib中改变figure的布局和大小实例
2020/04/23 Python
python中threading开启关闭线程操作
2020/05/02 Python
python实现批量转换图片为黑白
2020/06/16 Python
Python环境搭建过程从安装到Hello World
2021/02/05 Python
css3制作彩色边线3d立体按钮的示例(css3按钮)
2014/05/06 HTML / CSS
HTML5 placeholder(空白提示)属性介绍
2013/08/07 HTML / CSS
公共事业管理本科生求职信
2013/10/07 职场文书
公司放假通知怎么写
2015/04/15 职场文书
村党组织公开承诺书
2015/04/30 职场文书
Apache压力测试工具的安装使用
2021/03/31 Servers
React如何创建组件
2021/06/27 Javascript