【问题标题】:dll load errors in python executable made from pywin32由 pywin32 生成的 python 可执行文件中的 dll 加载错误
【发布时间】:2011-09-16 18:38:22
【问题描述】:

我使用 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。

【问题讨论】:

    标签: python architecture executable py2exe win32com


    【解决方案1】:

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

    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 上)

    【讨论】:

      【解决方案2】:

      在我在 windows2008 R2 服务器上安装 ArcGIS 之后安装的 python27 pywin32 安装出现上述错误(试图集中我们的脚本)。 发现对我来说,我必须以管理员身份运行(右键单击以在 Windows 中获取该选项)启动一个命令行窗口,然后从 c:\arcpy27\arcgis10.1&gt;python c:/arcpy27/arcgis10.1/scripts/pywin32_postinstall.py -install 运行以下命令行

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

      非常感谢您的解决方案。在我最终遇到您的解决方案并针对我的版本对其进行修改之前,我进行了几次安装和卸载。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-12-06
        • 2017-07-25
        • 2022-08-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多