如何在python中使用C dll

时间:2013-05-06 17:45:32

标签: c++ python

我正在尝试在python中使用C ++ DLL。我在Windows服务器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_check\MathFuncsDll.dll")  
print "HelloWorld"  

我收到以下错误:

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

导致我错误的是什么?

1 个答案:

答案 0 :(得分:-1)

使用32位python版本并编译以解决此问题。 原因(可能):即使您的机器是64位;你创建的DLL是32位的。 bcz通过visual studio,您可以选择并仅创建“Win32应用程序”。