Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 19, 2016 19:33:02

Shaman
Зарегистрирован: 2013-03-15
Сообщения: 1369
Репутация: +  88  -
Профиль   Отправить e-mail  

vanished

Дело хозяйское. Нужно смотреть по ситуации как лучше. Я как-то консоль гасил прямо из скрипта, правда он же у меня в бинарный и компилировался cython-ом. Так же при создании инсталлятора батник может и не использоваться, а команда запуска прописываться прямо стартовом ярлыке.
Ещё следует иметь в виду умение питона грузить модули из zip-а.

Офлайн

#2 Фев. 19, 2016 19:51:54

Shaman
Зарегистрирован: 2013-03-15
Сообщения: 1369
Репутация: +  88  -
Профиль   Отправить e-mail  

vanished

Функция гашения консоли. Приветствую замечания.

def hide_console():
    import sys
    if 'win32' not in str(sys.platform).lower():
        return
 
    import ctypes
    whandle = ctypes.windll.kernel32.GetConsoleWindow()
    if whandle == 0:
        return
    proc_id = ctypes.c_int()
    ctypes.windll.user32.GetWindowThreadProcessId(whandle, ctypes.byref(proc_id))
    if proc_id.value == ctypes.windll.kernel32.GetCurrentProcessId():
        ctypes.windll.user32.ShowWindow(whandle, 0)

Офлайн

#3 Фев. 20, 2016 03:09:54

tz4678@gmail.com
Зарегистрирован: 2014-12-07
Сообщения: 71
Репутация: +  -2  -
Профиль   Отправить e-mail  

vanished

vanished

Отредактировано tz4678@gmail.com (Авг. 1, 2020 15:48:26)

Офлайн

#4 Фев. 20, 2016 17:36:57

tz4678@gmail.com
Зарегистрирован: 2014-12-07
Сообщения: 71
Репутация: +  -2  -
Профиль   Отправить e-mail  

vanished

vanished

Отредактировано tz4678@gmail.com (Авг. 1, 2020 15:48:28)

Офлайн

#5 Фев. 20, 2016 17:46:58

tz4678@gmail.com
Зарегистрирован: 2014-12-07
Сообщения: 71
Репутация: +  -2  -
Профиль   Отправить e-mail  

vanished

vanished

Отредактировано tz4678@gmail.com (Авг. 1, 2020 15:48:29)

Офлайн

#6 Март 9, 2016 21:29:33

Puten
Зарегистрирован: 2016-01-06
Сообщения: 40
Репутация: +  2  -
Профиль   Отправить e-mail  

vanished

Попробуй Pyinstaller. Никаких танцев с setup.py. Сам находить импортируемые модули и подгружает нужные части. Вся упаковка идет одной простой строкой.

Открываем консоль в той папке, где лежит нужный файлик .py и пишем:
pyinstaller my_soft.py и все. Вместо my_soft.py подставляем свое название.

Будут сгенерированы 2 папки, build и dist. Билд можно сразу удалять, в дист будет наш exe.
Можно так же все в 1 экзешник паковать, параметром -F (правда ресуры, если есть, придется копировать отдельно)

pyinstaller -F my_soft.py

Чтобы не появлялось консольное окошко во время запуска, добавляем -w или –noconsole

-i=my_icon.ico (или –icon=my_icon.ico) Добавляем иконку

-n=“name of the exe” (или –name=Name) Название проги

Сам только ей и пользуюсь, пока ниразу не подводила, как для консольных так и для графических софтинок.

Ах да, твой апп из первого поста собрался без проблем.

Отредактировано Puten (Март 9, 2016 21:35:04)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version