Скрытие окна консоли приложения Python GUI с py2exe - PullRequest
19 голосов
/ 18 июля 2010

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

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

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

Ответы [ 3 ]

28 голосов
/ 18 июля 2010

Да, это возможно.

Если я использую

setup(console=['__main__.py'], options={"py2exe":{"includes":["sip"]}})

Это создает консольное приложение, однако если я использую

setup(windows=['__main__.py'], options={"py2exe":{"includes":["sip"]}})

, оно не отображаетсяконсоль на .exe файле.Но вывод сохраняется в файле main.exe.log в папке .exe.Будьте осторожны.

6 голосов
/ 18 июля 2010

Я сомневаюсь, что это влияет на py2exe, но это связано с вопросом.Чтобы запустить графический интерфейс Python в Windows без терминала, используйте pythonw.exe вместо python.exe.Это должно произойти автоматически, если вы оканчиваете имя файла на «.pyw».

2 голосов
/ 08 апреля 2016

Возможно, это не имеет прямого отношения к вашему вопросу, но я думаю, что стоит попробовать.

Вы легко можете сделать это, используя PyInstaller, используя следующий код.

pyinstaller -w myscript.py

Так же простокак это и все улажено!

...