Скрытие окна консоли приложения Python GUI с помощью py2exe
У меня есть программа Python использует Qt (фактически PyQt4), и когда я запускаю ее с ее main.py, я получаю окно консоли и окно GUI (в Windows, конечно).
Затем я скомпилирую свою программу с py2exe, и main.exe успешно создан. Однако, если я запустил main.exe(это то, что делают пользователи программы), консольное окно Python все еще появляется, и весь мой текст отладки будет выведен в это окно.
Я хочу скрыть окно линии cmd, когда мое приложение запущено, и я хочу, чтобы только мой графический интерфейс был видимым пользователю при выполнении из .exe файла.
Возможно ли это?
Ответы
Ответ 1
Да, возможно.
Если я использую
setup(console=['__main__.py'], options={"py2exe":{"includes":["sip"]}})
Создает консольное приложение, однако, если я использую
setup(windows=['__main__.py'], options={"py2exe":{"includes":["sip"]}})
он не показывает консоль на .exe файле. Но вывод сбрасывается в файл main.exe.log в папке .exe. Будьте осторожны.
Ответ 2
Я сомневаюсь, что это влияет на py2exe, но это связано с вопросом. Чтобы запустить графический интерфейс python для окон без терминала, используйте pythonw.exe вместо python.exe. Это должно произойти автоматически, если вы закончите имя файла с помощью ".pyw".
Ответ 3
Это может быть не напрямую связано с вашим вопросом, но я думаю, что стоит попробовать.
Вы легко это сделаете с помощью PyInstaller, используя следующий код.
pyinstaller -w myscript.py
Так же просто, как и все, что разрешено.