DLL加载python32中的python可执行文件中的错误

时间:2011-06-16 22:06:16

标签: python architecture executable py2exe win32com

我使用py2exe创建了带有64位python解释器和32位python解释器的python可执行文件。

在我的程序中,我使用模块pywin32 com,因此在创建可执行文件之前,我已经安装并安装了64位和32位版本的程序。

64位exe工作正常,但32位的有一个问题:

Traceback (most recent call last):
  File "program.py", line 11, in <module>
  File "win32com\__init__.pyc", line 5, in <module>
  File "win32api.pyc", line 12, in <module>
  File "win32api.pyc", line 10, in __load
ImportError: DLL load failed: The specified procedure could not be found.

我通过直接运行源代码尝试了两个版本,即python program.pyC:\python_32\python.exe program.py,两者都运行良好。

注意我在64位Windows 7计算机上测试了64位exe,在32位Windows XP计算机上测试了32位exe。

2 个答案:

答案 0 :(得分:3)

比以往任何时候都要老,但我今天偶然发现了这个问题,如果有其他人这样做,我跑的是:

来自命令行的

python /c/Python26/Scripts/pywin32_postinstall.py -install(更改值以适应)。这很有效:

$ python /c/Python26/Scripts/pywin32_postinstall.py -install
Copied pythoncom26.dll to C:\WINDOWS\system32\pythoncom26.dll
Copied pythoncomloader26.dll to C:\WINDOWS\system32\pythoncomloader26.dll
Copied pywintypes26.dll to C:\WINDOWS\system32\pywintypes26.dll
Registered: Python.Interpreter
Registered: Python.Dictionary
Registered: Python
-> Software\Python\PythonCore\2.6\Help[None]=None
-> Software\Python\PythonCore\2.6\Help\PythonwinReference[None]='c:\\Python26\\Lib\\site-packages\\PyWin32.chm'
Pythonwin has been registered in context menu
Creating directory c:\Python26\Lib\site-packages\win32com\gen_py
Shortcut for Pythonwin created
Shortcut to documentation created
The pywin32 extensions were successfully installed.`

(在WinXP SP3上)

答案 1 :(得分:1)

我在我的python27 pywin32安装中出现上述错误,该安装是在我在Windows2008 R2服务器上安装ArcGIS后安装的(试图集中我们的脚本)。 发现对我来说,我必须以run as adminstrator启动命令行窗口(右键单击以在Windows中获取该选项)然后从c:\arcpy27\arcgis10.1>python c:/arcpy27/arcgis10.1/scripts/pywin32_postinstall.py -install

运行以下命令行

我看到很多人都遇到过这个问题,我尝试了很多东西,但这最终成了安装pywin32的解决方案。

非常感谢你的解决方案。在我最终遇到你的解决方案并为我的版本修改它之前,我做了几次安装和卸载。