2017-01-27 5 views
1

Мои замороженные файлы Python работают на моем компьютере правильно. Я заморозил их cx_freeze, но на некоторых компьютерах они не работают. Например, в Windows 7 всегда нужны DLL-файлы, они говорят, что они отсутствуют. Обычно это около api-ms-win DLL файлов.Python Frozen Executable Files не работает на некоторых компьютерах

В Windows 10, он показывает эту ошибку:

Windows 10 Error

Но на моем компьютере, он работает правильно. Как это возможно, и как я могу это исправить?

+0

У вашего компьютера есть DLL –

+0

@StephenRauch я могу узнать, какая dll требуется? –

ответ

1

Существует много потенциальных проблем, но наиболее распространенным с Python 3.5+ и Windows 10, кажется, не хватает DLL api-ms-win.

Чтобы помочь моей программе Python сублимационной найти необходимые библиотеки DLL:

Вот один набор заметок из pyinstaller отслеживания проблем:

Add the directory of the required dlls to system Path. My application uses PyQt5 which is dependent on api-ms-win dlls.

For PyQt5 add this directory:

%WHERE EVER YOU INSTALLED PYTHON%\Lib\site-packages\PyQt5\Qt\bin 

For api-ms-win dlls you need Visual Studio 2015 OR Windows SDK (download here): Directory if you have Visual Studio: C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Remote Debugger\x64 Directory if you have Windows SDK: C:\Program Files (x86)\Windows Kits\10\Redist\ucrt\DLLs\x64

После добавления требуемые пути, pyinstaller может найти файлы.

(SOURCE)

Но что не хватает DLL файлы?

Для того, чтобы найти какие-то недостающие библиотеки DLL, вы можете использовать Dependency Walker, чтобы найти все файлы DLL в вашей программе.

Должен ли я использовать Pyinstaller вместо этого?

Часто стоит попробовать некоторые другие замораживающие утилиты, если тот, который вы используете, не сотрудничает.

+0

На самом деле я застыл cx_freeze, вы предлагаете pyinstaller? –

+0

Ваши теги упоминаются 'cx-freeze', поэтому я знал, что это то, что вы использовали. Я использую 'pyinstaller', и я являюсь случайным вкладчиком, поэтому я следую их трекеру. Поэтому я знал, что заметки, которые я цитировал, были доступны им. Это единственная причина, по которой я упомянул «pyinstaller». Так что да, я бы предложил попробовать «pyinstaller», но, насколько я знаю, они оба страдают от этой проблемы. –

+0

Я застыл с pyinstaller, и теперь он работает. Спасибо. –

Смежные вопросы