Ошибки загрузки dll в исполняемом файле python, сделанном из pywin32

Я создал исполняемые файлы Python с помощью py2exe как с 64-битным интерпретатором Python, так и с 32-битным интерпретатором 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.py и C:\python_32\python.exe program.py, и обе работают нормально.

Примечание. Я протестировал 64-битный exe-файл на 64-битном компьютере с Windows 7 и 32-битный exe-файл на 32-битном компьютере с Windows XP.


person Razor Storm    schedule 16.06.2011    source источник


Ответы (2)


Старее, чем все когда-либо, но сегодня я наткнулся на эту проблему, и если кто-то еще это сделает, то я запустил:

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)

person paimoe    schedule 18.10.2011

Были отмеченные выше ошибки с моей установкой python27 pywin32, которая была установлена ​​после моей установки ArcGIS на сервере Windows2008 R2 (пытаясь централизовать наши скрипты). Обнаружил, что для меня мне пришлось запустить окно командной строки с запуском от имени администратора (щелкните правой кнопкой мыши, чтобы получить эту опцию в окнах), а затем запустить следующую командную строку из c:\arcpy27\arcgis10.1>python c:/arcpy27/arcgis10.1/scripts/pywin32_postinstall.py -install

Я вижу, что многие люди сталкивались с этой проблемой, и я пробовал несколько вещей, но, наконец, это было решение, с помощью которого удалось установить pywin32.

Большое спасибо за ваше решение. Мне потребовалось несколько установок и удалений, прежде чем я, наконец, наткнулся на ваше решение и изменил его для своей версии.

person NWViking    schedule 02.05.2013