2012-01-29 8 views
2

, поэтому я пытаюсь создать exe-файл. Я использую python 2.7, и из того, что я могу сказать, у меня установлена ​​правильная версия py2exe. Я написал простой setup.py код для создания exe-файла.Проблемы с использованием py2exe

Однако, когда я бегу, я получаю ошибку:

ошибку: MSVCP90.dll: Нет такого файла или каталога

Теперь, я попытался исправить эту проблему двумя способами:

  1. Я установил файл MSVCP90.dll и поместил его в dll python27, а затем запустил установку. Это успешно создало исполняемый файл. Однако, когда я пытался запустить исполняемый файл, он сказал:

Программа не может запускаться, поскольку MSVCR90.dll отсутствует на вашем компьютере. Попробуйте переустановить программу, чтобы исправить эту проблему.

Я загрузил эту dll и поместил ее в python27, а с помощью exe, чтобы узнать, что произошло, но не сработало.

  1. Я не использовал файл MSVCP90.dll для использования в установочном файле. Опять же, это успешно создало исполняемый файл, но при нажатии на него я столкнулся с той же ошибкой.

Я повторно установил python и py2exe много раз, и это не помогло.

Есть ли у кого-нибудь идеи, что я могу сделать, чтобы заставить этот исполняемый файл работать?

+0

В качестве подхода к дробовикам вы перезагрузились после установки MSVCP90.dll с помощью библиотек Python27? – octopusgrabbus

+0

Да, я просто попробовал это сейчас, но ничего не решил. –

+0

Я в замешательстве. Ваша ошибка для другой dll, «R90.dll, но вы говорите о« P90.dll ». – octopusgrabbus

ответ

0

Как вы упомянули в комментариях, вы используете wxpython. У меня была такая же проблема с wxpython и py2exe. Я решил это, добавив манифест для MSVCP90.dll в exe-файл. Попробуйте добавить эти строки в setup.py и посмотреть, работает ли она.

manifest = """<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> 
    <assemblyIdentity 
    version="5.0.0.0" 
    processorArchitecture="x86" 
    name="%(prog)s" 
    type="win32" 
    /> 
    <description>%(prog)s</description> 
    <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3"> 
    <security> 
     <requestedPrivileges> 
     <requestedExecutionLevel 
      level="asInvoker" 
      uiAccess="false"> 
     </requestedExecutionLevel> 
     </requestedPrivileges> 
    </security> 
    </trustInfo> 
    <dependency> 
    <dependentAssembly> 
     <assemblyIdentity 
      type="win32" 
      name="Microsoft.VC90.CRT" 
      version="9.0.21022.8" 
      processorArchitecture="x86" 
      publicKeyToken="1fc8b3b9a1e18e3b"> 
     </assemblyIdentity> 
    </dependentAssembly> 
    </dependency> 
    <dependency> 
    <dependentAssembly> 
     <assemblyIdentity 
      type="win32" 
      name="Microsoft.Windows.Common-Controls" 
      version="6.0.0.0" 
      processorArchitecture="X86" 
      publicKeyToken="6595b64144ccf1df" 
      language="*" 
     /> 
    </dependentAssembly> 
    </dependency> 
</assembly>""" 

... 

windows = [{"script":"myscript.pyw",'other_resources': [(24,1,manifest)]}] 
Смежные вопросы