ctypes: 使用python调用C编写的动态链接库
2005-03-19 17:03
876 查看
ctypes是一个Python模块,使用他可以在Python中创建和操作C语言的数据类型,这样可以在动态链接库中传递参数到C的函数中去。
必须得引用一段Python的创始人van Rossum对ctypes的评价了:
ctypes is very cool! Great piece
of work.
[/i]
ctypes可以在windows/linux等多个平台上使用,甚至支持Windows上的COM开发!
对ctypes的评价,我和van Rossum的感觉相同:) . 费话不说,在windows上来段“hello world”吧:
大家可以看到弹出了一个标准的windows消息框,就这么简单 :-)
实际上书写windll.user32的时候,自动调入了user32.dll这个windows动态库;windll.user32.MessageBoxA则直接引用到了user32.dll动态库中的MessageBox函数。
如此简洁、漂亮,C/C++程序员估计要嫉妒了 :-)
可下载安装
最新的0.96版本, 注意必须配合使用python2.3以上的版本
必须得引用一段Python的创始人van Rossum对ctypes的评价了:
ctypes is very cool! Great piece
of work.
[/i]
ctypes可以在windows/linux等多个平台上使用,甚至支持Windows上的COM开发!
对ctypes的评价,我和van Rossum的感觉相同:) . 费话不说,在windows上来段“hello world”吧:
>>> from ctypes import * >>> MessageBox = windll.user32.MessageBoxA >>> MessageBox(0, '你好,世界!', '第一个ctypes程序', 0) # 调用函数
大家可以看到弹出了一个标准的windows消息框,就这么简单 :-)
实际上书写windll.user32的时候,自动调入了user32.dll这个windows动态库;windll.user32.MessageBoxA则直接引用到了user32.dll动态库中的MessageBox函数。
如此简洁、漂亮,C/C++程序员估计要嫉妒了 :-)
可下载安装
最新的0.96版本, 注意必须配合使用python2.3以上的版本
相关文章推荐
- PB8调用使用C++与C#分别编写生成解压缩带有密码的zip压缩文件的动态链接库dll(部分内容转自互联网)
- C语言编写DLL动态链接库并分别用VB和Python调用
- 用Python编写MapReduce代码与调用-统计accessLog中链接的点击量
- 用Python编写MapReduce代码与调用-统计accessLog中链接所对应的UV
- Java使用JNI调用C/C++的DLL动态链接库1
- Python调用C/Fortran混合的动态链接库--中篇
- 编写一个函数,此函数使用动态存储分配来产生一个字符串的副本。例如函数为strclone,则调用p=strclone(str),将会为一个新的字符串分配和str占内存大小相同的一个字符串,并将字符串st
- 【PB】powerbuilder调用VC编写的动态链接库
- python3 通过 ctypes 直接使用 Gtk 编写 gui(转)_zanpen2000_新浪博客
- C++ builder调用vc编写的动态链接库的方法
- Java使用JNI调用C/C++的DLL动态链接库2
- 【Python】Python通过ctypes调用C动态链接库
- Java调用C/C++编写的第三方dll动态链接库
- VS2010编写动态链接库dll、使用dll 和 调试dll
- Delphi调用C++编写的动态链接库dll的方法
- Android下使用dlopen函数动态调用.so链接库 [转]
- JAVA使用JNI调用C++动态链接库
- 使用VS2008创建和调用动态链接库
- 动态链接库的编写和使用详解
- Delphi 调用 c编写的动态链接库,结构体指针作为参数