Приятного времени суток господа!
code_15391.txt
Пытаюсь отследить когда закрывается приложение "findstr.exe"
но из-за того что оно отрабатывает очень быстро, не удается его отследить.
В идеале, мне необходимо дождаться закрытия "findstr.exe" и только потом выполнять остальные действия
Подскажите как это можно сделать?
Этот топик читают: Гость
Ответов: 817
Рейтинг: 52
|
|||
карма: 1 |
| ||
файлы: 1 | code_15391.txt [1.2KB] [151] |
Ответов: 409
Рейтинг: 17
|
|||
Если консольное приложение отрабатывается быстро, и ты в этом уверен, то поставь таймер.
Таймер - это вариант, но не совсем хорошая идея с точки зрения "идеального алгоритма". Поэтому лучше после запуска приложения включить циклический поиск программы в процессах, и как только поиск не найдет приложения, продолжай свои действия. |
|||
карма: 0 |
|
Ответов: 817
Рейтинг: 52
|
|||
Pirr, Не, таймер это не дело
Сейчас у меня тестовый файлик маленький, отрабатывает быстро а завтра у меня рабочий файлик большой, отрабатывает хз когда. Надо универсальность. |
|||
карма: 1 |
|
Ответов: 409
Рейтинг: 17
|
|||
карма: 0 |
| ||
файлы: 1 | code_15392.txt [1.4KB] [120] |
Ответов: 817
Рейтинг: 52
|
|||
Эх, не хотел я ставить таймер, но видимо придется
Pirr, Спасибо |
|||
карма: 1 |
|
Ответов: 409
Рейтинг: 17
|
|||
У меня там таймер для другого, таймер нужен для опроса процессов.
|
|||
карма: 0 |
|
Ответов: 373
Рейтинг: 108
|
|||
карма: 0 |
| ||
файлы: 1 | code_15393.txt [527B] [119] |
Ответов: 4641
Рейтинг: 334
|
|||
Vlad.- писал(а): code_15393.txt |
|||
карма: 1 |
|
Ответов: 373
Рейтинг: 108
|
|||
Ravilr, Программа запускается в режиме ожидания, если не запускать в отдельном потоке подвиснет основная.
|
|||
карма: 0 |
|
Ответов: 817
Рейтинг: 52
|
|||
Vlad.-, Спасибо, то что надо
А не подскажите, почему шрифт изменился на такой? Рскать Поставил только новую версию |
|||
карма: 1 |
|
Ответов: 373
Рейтинг: 108
|
|||
-= DriveR =- писал(а): Рскать-= DriveR =- писал(а): А не подскажите, почему шрифт изменился на такой?Выйти из ситуации можно таким образом: открываем regedit, идём по пути HKEY_LOCAL_MACHINE /SYSTEM/CURRENTCONTROLSET/CONTROL/NLS/CODEPAGE и меняем значения параметров: 1250, 1251 и 1252 на "cp_1251.nls" везде. Выходим, перезагружаемся!
Не всегда удается добиться корректной работы. Приходится еще изменять cp_1253.nls и cp_1254.nls на cp_1251.nls. В Windows 2000/XP c_1253.nls и c_1254.nls на c_1251.nls (обратите внимание, что значение несколько изменилось). Но и этого бывает не достаточно, нужно открыть в текстовом редакторе файл Win.ini. Найти в нем секцию
[FontSubstitutes] а в секции строку Arial,0= (если вдруг не окажется, то создать) и превратить ее в Arial,0=Arial,204. Сохранить, закрыть, перезагрузить. |
|||
карма: 0 |
|
Ответов: 409
Рейтинг: 17
|
|||
Vlad.- писал(а): Программа запускается в режиме ожидания, если не запускать в отдельном потоке подвиснет основная.Минус такого варианта в том, что пока консольное приложение не отработает, контроль программе не отдается. В результате на экране мы имеем заступорившуюся форму, сделать с ней практически ничего нельзя (сдвинуть, свернуть и т.д.). Если же после запуска консольной программы отдать управление нашему приложению, а затем мониторить процессы, то такого не происходит, наша форма будет легко откликаться на действия пользователя. Иногда хочется скрыть результаты работы консольной программы (или её окно) а пользователя предупредить, чтобы он ничего пока не делал т.к. идёт работа программы. Именно такой вариант я и реализовал в своем проекте, кусок из которого здесь и привел. |
|||
карма: 0 |
|
12