Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: asrael от Февраль 05, 2011, 18:52



Название: Скрыть консоль
Отправлено: asrael от Февраль 05, 2011, 18:52
Господа хорошие, подскажите, кто знает..
Подниму еще раз тему, ибо никто не дал конкретного ответа..
Делаю консольную программу-дампер..
Необходимо, чтобы она висела в процессах и через определенное время архивировала файлы.. Проблема в том, что на компьютерах, в которые планируется внедрить сие творение, работают люди малость в пк не сведущие.. И "какое-то странное черное окно" им видеть совсем не нужно.. Как же скрыть окно консоли?


Название: Re: Скрыть консоль
Отправлено: Пантер от Февраль 05, 2011, 18:53
CONFIG -= console


Название: Re: Скрыть консоль
Отправлено: asrael от Февраль 05, 2011, 18:54
пробовал.. не помогает..(


Название: Re: Скрыть консоль
Отправлено: asrael от Февраль 05, 2011, 19:03
блин.. сейчас собрал чисты проект - заработало.. хрень какая-то.. ??? ладно, спасибо, буду еще ковырять..)


Название: Re: Скрыть консоль
Отправлено: maint от Февраль 05, 2011, 19:21
я бы порекомендовал не консольной ее сделать, а в трей запихать. И заткнуть ежели что можно, паузу сделать, там или глянуть на диагностику


Название: Re: Скрыть консоль
Отправлено: asrael от Февраль 05, 2011, 20:29
ну, если в трей, то это какой-никакой gui, резко возрастает размер самого exe-файла + плюс QtGui4 около 9 метров.. а это существенно.. особенно, если сервачок слабенький и приходится отвоевывать каждый метр.. да и есть особо "умные" юзеры, которым интересно, что это за картинка справа в углу.. дай я её удалю и т.д.. я уже думал, что просто при запуске форму скрывать и по хоткею отображать.. и всё же, решил остановиться на консоли..)


Название: Re: Скрыть консоль
Отправлено: asrael от Февраль 05, 2011, 23:30
понял, в чем проблема была - у меня по ходу выполнения программы текст выводился, поэтому окно и не хотело убираться.. %)


Название: Re: Скрыть консоль
Отправлено: Prm от Февраль 07, 2011, 12:00
1. Может быть, Вашу программу удобно оформить в виде службы(демона). Ни консоли тебе, ни значков в трее. Используя класс QService можно все это очень быстро провернуть.

2. Использовать WinAPI для скрытия/отображения окна

Код:
    HWND console =  GetConsoleWindow();

    if (console)
        ShowWindow(console,SW_HIDE); //SW_SHOW - показать
   


Название: Re: Скрыть консоль
Отправлено: bmw от Февраль 08, 2011, 19:56
пробовал.. не помогает..(

Пересобрать проект нужно было.
От вывода, на консоль чего-либо она не появится. (:


Название: Re: Скрыть консоль
Отправлено: asrael от Февраль 09, 2011, 08:21
1. Может быть, Вашу программу удобно оформить в виде службы(демона). Ни консоли тебе, ни значков в трее. Используя класс QService можно все это очень быстро провернуть.
хм.. спасибо, попробую..)


Название: Re: Скрыть консоль
Отправлено: asrael от Февраль 09, 2011, 08:22
пробовал.. не помогает..(

Пересобрать проект нужно было.
От вывода, на консоль чего-либо она не появится. (:
да, я до этого тоже уже дошел.. ;)