Модераторы: feodorv, GremlinProg, xvr, Fixin
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> запуск консольной программы и сокрытие ее консоли 
V
    Опции темы
boostcoder
Дата 12.7.2011, 11:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: нет
Всего: 110



всем привет.

такая ситуация: программа, с некоторой периодичностью запускает некую другую консольную программу которая что-то выполняет и завершается.
проблема в том, что показывается и консоль программы.
вопрос: как ее запускать, чтоб при этом консоль не отображалась?

зы
в данный момент запускаю с помощью QProcess. если нужно, заюзаю WinAPI. не вопрос.


спасибо.

PM WWW   Вверх
BorisVorontsov
Дата 12.7.2011, 11:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Thinker
**


Профиль
Группа: Комодератор
Сообщений: 714
Регистрация: 3.11.2005
Где: Молдавия, г. Киши нёв

Репутация: 4
Всего: 10



ShellExecuteEx SEE_MASK_NO_CONSOLE


--------------------
[code=cpp]
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;
[/code]
PM MAIL ICQ GTalk   Вверх
boostcoder
Дата 12.7.2011, 11:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: нет
Всего: 110



BorisVorontsov, спасибо. сейчас попробую.
но структура SHELLEXECUTEINFO жестокая штуковина smile 
PM WWW   Вверх
voral
Дата 12.7.2011, 12:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 158
Регистрация: 16.3.2008
Где: Иваново

Репутация: нет
Всего: нет



Цитата(boostcoder @  12.7.2011,  11:21 Найти цитируемый пост)
зы
в данный момент запускаю с помощью QProcess. если нужно, заюзаю WinAPI. не вопрос.

странно. По умолчанию должно быть выключено Попробуйте дописать в pro файл   Qt =-console

Случайно testlib не подключен?
PM MAIL WWW   Вверх
boostcoder
Дата 12.7.2011, 12:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: нет
Всего: 110



voral, та программа, которую запускаю - не моя. ее исходников тоже нет.
PM WWW   Вверх
boostcoder
Дата 12.7.2011, 12:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: нет
Всего: 110



BorisVorontsov, все гут.
спасибо огромное.

Код

   SHELLEXECUTEINFO exec;
   memset(&exec, 0, sizeof(exec));
   
   exec.cbSize = sizeof(exec);
   exec.fMask = SEE_MASK_NO_CONSOLE;
   exec.lpDirectory = L".";
   exec.lpVerb = L"open";
   exec.lpFile = L"process.exe";
   
   if ( !::ShellExecuteEx(&exec) ) {
      std::cout << "ShellExecuteEx: " << LastErrorMessage() << std::endl;
   }


PM WWW   Вверх
500mhz
Дата 12.7.2011, 20:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


шайтан
***


Профиль
Группа: Завсегдатай
Сообщений: 1017
Регистрация: 5.5.2008
Где: Киев / Italy

Репутация: 3
Всего: 14



заголовок запускаемой проги подправить )


--------------------

PM MAIL ICQ   Вверх
boostcoder
Дата 12.7.2011, 20:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: нет
Всего: 110



500mhz, не понял...
PM WWW   Вверх
500mhz
Дата 14.7.2011, 19:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


шайтан
***


Профиль
Группа: Завсегдатай
Сообщений: 1017
Регистрация: 5.5.2008
Где: Киев / Italy

Репутация: 3
Всего: 14



ну в РЕ заголовке любого ехе есть 1 байтик, значение которого отвечает за консоль или гуи.
То есть если мелькает консоль, меняем значение на gui ну и все.


--------------------

PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Системное программирование и WinAPI"
Fixin
GremlinProg
xvr
feodorv
  • Большое количество информации и примеров с использованием функций WinAPI можно найти в MSDN
  • Описание сообщений, уведомлений и примеров с использованием компонент WinAPI (BUTTON, EDIT, STATIC, и т.п.), можно найти в MSDN Control Library
  • Непосредственно, перед созданием новой темы, проверьте заголовок и удостоверьтесь, что он отражает суть обсуждения.
  • После заполнения поля "Название темы", обратите внимание на наличие и содержание панели "А здесь смотрели?", возможно Ваш вопрос уже был решен.
  • Приводите часть кода, в которой предположительно находится проблема или ошибка.
  • Если указываете код, пользуйтесь тегами [code][/code], или их кнопочными аналогами.
  • Если вопрос решен, воспользуйтесь соответствующей ссылкой, расположенной напротив названия темы.
  • Один топик - один вопрос!
  • Перед тем как создать тему - прочтите это .

На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы .


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема »


 




[ Время генерации скрипта: 0.0466 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.