Подтвердить что ты не робот

Скрытие окна консоли приложения Python GUI с помощью py2exe

У меня есть программа Python использует Qt (фактически PyQt4), и когда я запускаю ее с ее main.py, я получаю окно консоли и окно GUI (в Windows, конечно).

Затем я скомпилирую свою программу с py2exe, и main.exe успешно создан. Однако, если я запустил main.exe(это то, что делают пользователи программы), консольное окно Python все еще появляется, и весь мой текст отладки будет выведен в это окно.

Я хочу скрыть окно линии cmd, когда мое приложение запущено, и я хочу, чтобы только мой графический интерфейс был видимым пользователю при выполнении из .exe файла.

Возможно ли это?

4b9b3361

Ответ 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

Так же просто, как и все, что разрешено.