Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Скрытый запуск указанной проги

7.4K
19 июля 2005 года
4-R
25 / / 09.05.2005
Запускаю стандартное ВИНДОУСовское консольное приложение. Всё бы хорошо, но вот не нравится мне это всплывающее чёрное окно, весь прикол портит.
Объясните пожалуйста как незаметно запустить прогу (свернуть или вообще не показывать).

P.S.
Заранее благодарен, 4-R
10
19 июля 2005 года
Freeman
3.2K / / 06.03.2004
Цитата:
Originally posted by 4-R
Объясните пожалуйста как незаметно запустить прогу (свернуть или вообще не показывать).


В ShellExecute последним параметром можно указать SW_MINIMIZED. Работает ли на самом деле для консольных приложений - не проверял.

7.4K
19 июля 2005 года
4-R
25 / / 09.05.2005
Цитата:
Originally posted by Freeman
В ShellExecute последним параметром можно указать SW_MINIMIZED. Работает ли на самом деле для консольных приложений - не проверял.


Проверил - у меня работает (SW_SHOWMINIMIZED).
Но появилась другая проблема:
я запускал так

[COLOR=blue]
var
SI : TSTARTUPINFO;
P : TPROCESSINFORMATION;
cml: Pchar;
...
CREATEPROCESS(NIL,cml,NIL,NIL,FALSE,
CREATE_DEFAULT_ERROR_MODE NIL,NIL,SI,P);
WAITFORSINGLEOBJECT(P.hProcess,INFINITE);
для ожидания завершения
[/COLOR]

А в ShellExecute я такого чё-то не видел. :-(

11K
20 июля 2005 года
kuanysh
20 / / 13.07.2005
Цитата:
Originally posted by 4-R
Запускаю стандартное ВИНДОУСовское консольное приложение. Всё бы хорошо, но вот не нравится мне это всплывающее чёрное окно, весь прикол портит.
Объясните пожалуйста как незаметно запустить прогу (свернуть или вообще не показывать).

P.S.
Заранее благодарен, 4-R



Просто создай процесс!
И в этом процессе не отображай окно !

Это примерно делается так. Пример на архиваторе rar.
-------
var
iRes : Cardinal;
procs : PROCESS_INFORMATION;
stup : STARTUPINFO;
sEncodeStr,
sExeName : String;

begin

GetStartupInfo(stup);
stup.dwFlags := STARTF_USESHOWWINDOW;
stup.wShowWindow := SW_HIDE;//То что тебе нужно


CreateProcess(Nil,
PChar(ExtractFilePath(Application.ExeName)+'rar\rar.exe'+' '+'e -o+ '+fmDevice.drDevice.Drive+':\copy.rar c:\'),
Nil,
Nil,
False,
0,
Nil,
pchar('C:\'),
stup,
procs
);

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог