您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
三六零分类信息网 > 伊犁哈萨克分类信息网,免费分类信息发布

Python 调用VC++的动态链接库(DLL)

2025/11/20 9:14:00发布7次查看
1. 首先vc++的dll的导出函数定义成标准c的导出函数:
复制代码 代码如下:
#ifdef lrdlltest_exports
#define lrdlltest_api __declspec(dllexport)
#else
#define lrdlltest_api __declspec(dllimport)
#endif
extern c lrdlltest_api int sum(int a , int b);
extern c lrdlltest_api void getstring(char* pchar);
//a + b
lrdlltest_api int sum(int a , int b)
{
return a + b;
}
//get a string
lrdlltest_api void getstring(char* pchar)
{
strcpy(pchar, hello dll);
}
2. python中调用如下:
复制代码 代码如下:
from ctypes import *
filename=lrdlltest.dll
func=cdll.loadlibrary(filename)
str = create_string_buffer(20)
n = func.sum(2, 3)
func.getstring(str)
print n
print str.raw
关于c语言中的一些参数类型详见:http://www.python.org/doc/2.5/lib/node454.html
3. 输出结果:
5
hello dll
伊犁哈萨克分类信息网,免费分类信息发布

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product