如何在python中使用C dll

How to use a C dll in python

本文关键字:dll python      更新时间:2023-10-16

我试图在python中使用c++ dll。我在Windows server 2012上运行python 2.7;都是64位的

为了创建一个dll,我遵循了http://msdn.microsoft.com/en-us/library/vstudio/ms235636.aspx上的"攻览:创建和使用动态链接库(c++)"的说明。我使用了他们的示例代码。我刚开始接触dll和python,所以我想我应该从例子开始。

我的python代码:
from ctypes import *  
hw = CDLL("Y:dll_checkMathFuncsDll.dll")  
print "HelloWorld"  

我得到以下错误:

 Y:dll_check> python .MathFuncsMain/py  
    Traceback (most recent call last):  
        File ".MathFunsMain.py"  
            libimgr = CDLL("Y:dll_checkMathFuncsDll.dll")  
        File "C:Python27libctypes__init__.py", line 365, in __init__  
            self._handle = _dlopen(self._name, mode)  
    WindowsError: [Error 193] %1 is not a valid Win32 application  

是什么导致我的错误?

使用32位python版本并编译以解决此问题。原因(可能):即使你的机器是64位的;您创建的DLL是32位的。

通过visual studio,您可以选择并创建"Win32应用程序"。