когда то задавал вопрос почему не всегда прекращается процесс удаляемой софтинки командой :
TASKKILL /IM %PROG_1%
TSKILL %PROG_2%
к сожалению советы разобраться с именами процессов и вставка задержки с помощью команды запускающей пинг результатов не дали. недавно решил почитать справку про эту команду, ведь это системная утилитка, и здесь ответ нашелся сам собой, для таких же ленивых как я вставил здесь справку:
Код:
![Выделить весь код](images/misc/selectcode.png)
C:\Documents and Settings\DyadyaGenya>taskkill -?
TASKKILL [/S <система> [/U <пользователь> [/P [<пароль>]]]]
{ [/FI <фильтр>] [/PID <процесс> | /IM <образ>] } [/F] [/T]
Описание:
Эта команда позволяет завершить один или несколько процессов.
Процесс может быть завершен по имени образа или по идентификатору процесса.
Список параметров:
/S <система> Подключаемый удаленный компьютер.
/U [<домен>\]<пользователь> Пользовательский контекст, в котором
должна выполняться эта команда.
/P <пароль> Пароль для этого пользовательского контекста.
Запрашивает пароль, если он не задан.
/F Принудительное завершение процесса
/FI <фильтр> Отображение задач, отвечающих
указанному в фильтре критерию.
/PID <процесс> Идентификатор процесса, который требуется
завершить.
/IM <образ> Имя образа процесса, который требуется
завершить. Для указания всех процессов
можно использовать символ шаблона '*'.
/T Завершение указанного процесса
и всех его дочерних процессов.
/? Вывод справки по использованию.
Фильтры:
Имя фильтра Допустимые операторы Допустимые значения
----------- -------------------- -------------------
STATUS eq, ne RUNNING | NOT RESPONDING
IMAGENAME eq, ne Имя образа
PID eq, ne, gt, lt, ge, le Значение PID
SESSION eq, ne, gt, lt, ge, le Номер сессии
CPUTIME eq, ne, gt, lt, ge, le Время CPU в формате
hh:mm:ss.
hh - часы,
mm - минуты, ss - секунды
MEMUSAGE eq, ne, gt, lt, ge, le Использование памяти в КБ
USERNAME eq, ne Имя пользователя в формате
[<домен>\]<пользователь>
MODULES eq, ne Имя DLL
SERVICES eq, ne Имя службы
WINDOWTITLE eq, ne Заголовок окна
Примечание: Символ '*' для параметра /IM применим только совместно с фильтрами.
Примечание: Завершение удаленных процессов всегда будет принудительным,
независимо от того, был ли использован параметр /F или нет.
Примеры:
TASKKILL /S <система> /F /IM notepad.exe /T
TASKKILL /PID 1230 /PID 1241 /PID 1253 /T
TASKKILL /F /IM notepad.exe /IM mspaint.exe
TASKKILL /F /FI "PID ge 1000" /FI "WINDOWTITLE ne untitle*"
TASKKILL /F /FI "USERNAME eq NT AUTHORITY\SYSTEM" /IM notepad.exe
TASKKILL /S <система> /U <домен>\<пользователь> /FI "USERNAME ne NT*" /IM *
TASKKILL /S <система> /U <пользователь> /P <пароль> /FI "IMAGENAME eq note*"
получается всего навсего надо было добавить для надежности пару параметров, и вот в таком виде срабатывает даже без задержек:
TASKKILL /F /IM %PROG_1% /T
кстати, в руководстве дается почти такой пример, только без
/T
а в моих предыдущих сообщениях видимо не заметили отсутствие параметра
/F потому и не смогли мне подсказать ошибку
Vitaliy21
Цитата Vitaliy21:
Мне интересно чем автор prokazzza запаковывал установочные файлы »
|
есть простой способ узнать, нажав правой клавишей мышки на файле и глянуть в свойствах/версия/комментарий