文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>在python 中使用 windows dll

在python 中使用 windows dll

时间:2006-10-14  来源:linxh

如何在python 中使用 windows dll: 首先下载并安装 ctypes 模块 ,说明参考ctypes tutorial   使用示例: test.c

#include <stdio.h>
#include <windows.h>
//---------------------------------------
//演示使用DLL
//---------------------------------------

__declspec(dllexport) int addnum1(int a)
{
    return (a+1);
}

__declspec(dllexport) int addnum10(int a,char *ca)
{
    sprintf(ca,"%d",a+10);
    return (a+10);
}

使用命令生成dll.(MinGW环境,详见DLL Creation in MingW ;Visual C++6.0参见Python调用c )

gcc -c test.c

gcc -shared -o test.dll test.o -Wl,--out-implib,libtest.a

test.py

from ctypes import *
fileName="test.dll"
func=cdll.LoadLibrary(fileName)
a =c_int(2)#convert to c type
ret=c_int()
ret=func.addnum1(a)
print "value of a :",ret
b=c_int(20)
str=c_char_p("")
#char point
ret=func.addnum10(b,str)
print "return value is :",ret

print "the string is :",str.value
#windll.FreeLibrary(func)

运行结果为:
value of a : 3
return value is : 30
the string is  : 30

注意:
1. 调用的方式:windll与cdll
2. 编译时函数名换名

 

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载