Windows Server не может выполнить py2exe-сгенерированное приложение

Простой сценарий Python должен работать на Windows Server без установленного Python.

Я использовал py2exe, который генерировал здоровый dist подкаталог с script.exe, который хорошо работает на локальной машине.
Однако, когда я выполняю его на сервере (Windows Server 2003 R2), это производит это:
Система не может выполнить указанную программу.

и ERRORLEVEL 9020.

Какие-либо идеи?

5
задан Paul Oyster 24 December 2009 в 21:26
поделиться

4 ответа

Я не нашел причину проблемы, но использование питона 2.5 с py2exe на том же скрипте прекрасно работало на сервере.

Наверное, что-то не так с py2exe под 2.6.

1
ответ дан 13 December 2019 в 22:09
поделиться

Возможно, отсутствуют некоторые необходимые библиотеки DLL. Попробуйте использовать depends.exe , чтобы определить, что может отсутствовать. Вероятно, это msvc-something-something.dll

2
ответ дан 13 December 2019 в 22:09
поделиться

Поскольку Python 2.6 построен на основе Visual Studio 2008, на целевом компьютере также должны быть библиотеки Visual Studio 2008, доступные из распространяемого пакета Visual C ++ 2008 пакет .

Я подтвердил, что в чистой сборке Windows XP или Server 2003 (ни одна из которых не имеет распространяемого пакета Visual Studio 2008) исполняемый файл py2exe Python 2.6 выйдет из строя с вышеупомянутой ошибкой, но после установки распространяемого пакета исполняемый файл запускается как обычно.

1
ответ дан 13 December 2019 в 22:09
поделиться

Чтобы py2exe работал, вы должны включить правильную версию Microsoft C runtime DLL в ваше приложение.

Для Python2.6 это MSVCR90.dll версии 9.0.21022.8, которую можно получить из Microsoft Visual C++ 2008 Redistributable Package:

http://www.microsoft.com/downloads/details.aspx?FamilyID=9b2da534-3e03-4391-8a4d-074b9f2bc1bf&displaylang=en

ПРИМЕЧАНИЕ: SP1 этой программы установки содержит другую версию DLL и не будет работать.

В начале этого года я потратил некоторое время на подробное объяснение этого в учебнике по py2exe, поэтому я просто дам ссылку на него: http://www.py2exe.org/index.cgi/Tutorial#Step5

6
ответ дан 13 December 2019 в 22:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: