Python调用C++ dll
本文python版本 2.7 32位 dll为anycpu
以下dll见 C++、C#生成DLL入门教程
# -*- encoding: utf-8 -*-
# 测试 C++ dll
import os
import sys
from ctypes import *
dll = cdll.LoadLibrary('ProjectForJava.dll')
print dll.add(1, 2)
注意事项
- dll放在与py文件同一目录,或者使用 绝对路径也可以加载
- c++代码中要有
extern "C" __declspec(dllexport) int add(int x,int y);
- dll = windll.LoadLibrary(‘es200601.dll’)
如果需要传byte等等,可以使用windll来加载
Python调用C# dll
# -*- encoding: utf-8 -*-
import clr
# 测试 C# dll
# clr not clr ,install pythonnet
# CSharpClassLibraryForJava 是 namespace
from CSharpClassLibraryForJava import *
# Class1 是 public class
instance = Class1()
print("start")
print(instance.getstr())
print(instance.add(12,15))
print("end")
注意事项
- from后面是 namespace,instance 是对应的 class,class需要为public
- import clr需要install pythonnet