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

yipeiwu_com5年前Python基础

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

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

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

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

3.再次,右击启动项目的属性,选则bin\Debug下的你想要的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实现从订阅源下载图片的方法

本文实例讲述了Python实现从订阅源下载图片的方法。分享给大家供大家参考。具体如下: 这段代码是基于python 3.4实现的,和python2.X 比起来有了好多差别啊。 这是一个练...

python基础教程之简单入门说明(变量和控制语言使用方法)

简介有兴趣可以看看: 解释性语言+动态类型语言+强类型语言交互模式:(主要拿来试验,可以试试 ipython)复制代码 代码如下:$python>>> print 'h...

Django框架使用mysql视图操作示例

Django框架使用mysql视图操作示例

本文实例讲述了Django框架使用mysql视图操作。分享给大家供大家参考,具体如下: 一.Mysql视图的创建 MySQL中,在两个或者以上的基本表上创建视图,例如:在StudentO...

Django 静态文件配置过程详解

静态文件配置 概述: 静态文件交由Web服务器处理,Django本身不处理静态文件。简单的处理逻辑如下(以nginx为例): URI请求 --> 按照Web服务器里面的配置规...

跟老齐学Python之折腾一下目录

python在安装的时候,就自带了很多模块,我们把这些模块称之为标准库,其中,有一个是使用频率比较高的,就是 os 。这个库中方法和属性众多,有兴趣的看官可以参考官方文档:https:/...