VS笔记——dll动态链接文件的生成及python调用
环境:VS201764位python IDE提前声明本帖仅实现简单的加减函数封装成dll,并且使用python调用,显示结果。需要注意的是python只能调用C语言封装的dll文件,并且由于使用的python IDE为64位的,还需要一些配置,以下会有说明DLL文件的生成1.配置VS64位平台 生成,输出时选择使用X64 若没有X64,可参考...
·
环境:
- VS2017
- 64位python IDE
提前声明
- 本帖仅实现简单的加减函数封装成dll,并且使用python调用,显示结果。
- 需要注意的是python只能调用C语言封装的dll文件,并且由于使用的python IDE为64位的,还需要一些配置,以下会有说明
DLL文件的生成
1.配置VS64位平台
生成,输出时选择使用X64
若没有X64,可参考: 使用VS在64位平台下编译代码,生成64位dll
2.创建工程
新建win32 dll项目
编写自己的文件
最终目录如下
添加一个test.h的文件,其内容和test.cpp内容如下:
#pragma once
#ifndef TEST_H
#define TEST_H
extern "C" __declspec(dllexport)int add(int x, int y); //注意"C"代表使用C语言封装
extern "C" __declspec(dllexport)int sub(int x, int y);
#endif
//test.cpp
#include "stdafx.h"
#include "stdafx.h"
#include"test.h"
int add(int x, int y)
{
return x + y;
}
int sub(int x, int y)
{
return x - y;
}
生成dll
到X64/Debug目录中查找如下,其中dll和lib文件是我们需要的文件
python调用
代码:
import ctypes
if __name__ == '__main__':
dll = ctypes.cdll.LoadLibrary
lib = dll("test.dll")
print(lib.add(12,4))
print(lib.sub(123,7))
结果:
参考博客
更多推荐
已为社区贡献1条内容
所有评论(0)