Имя: Пароль:
IT
 
подскажите как убить процесс через бат файл, либо другим образом?
0 vostdnn
 
20.08.10
09:40
Добрый день!
1 Aleksey_3
 
20.08.10
09:40
tasklist
2 ДенисЧ
 
20.08.10
09:40
taskkill /?
3 Aleksey_3
 
20.08.10
09:41
Точнее taskkill
4 vostdnn
 
20.08.10
09:43
(3) описание на итальянском?
5 ДенисЧ
 
20.08.10
09:44
(4) Тебе ещё и на русский перевсти??
6 vostdnn
 
20.08.10
09:49
(5) ну может не итальянский... так предположил.
http://slil.ru/29581605
7 vostdnn
 
20.08.10
09:50
странно в русской винде..
8 ДенисЧ
 
20.08.10
09:51
(6) Ну, у меня всё по-аглицки. Так что ищи косяк у себя
9 ДенисЧ
 
20.08.10
09:51
или


TaskkillЗавершает одно или несколько заданий или процессов. Процессы могут быть уничтожены кодом процесса или именем образа.

Синтаксис
taskkill [/s компьютер] [/u домен\пользователь [/p пароль]]] [/fi имя_фильтра] [/pid код_процесса]|[/im имя_образа] [/f][/t]

Параметры
/s компьютер
Указывает имя или IP-адрес удаленного компьютера (не используйте обратную косую черту). По умолчанию используется локальный компьютер.
/u домен\пользователь
Выполнение команды с разрешениями учетной записи пользователя, который указан как пользователь или домен\пользователь. По умолчанию используются разрешения текущего вошедшего пользователя компьютера, с которого поступила эта команда.
/p пароль
Определяет пароль учетной записи пользователя, заданной параметром /u.
/fi имя_фильтра
Задает типы процессов, которые следует завершить и не следует. Допустимыми именами фильтров, операторами и значениями являются следующие. Имя Операторы Значение
Hostname eq, ne Любая допустимая строка
Status eq, ne RUNNING|NOT RESPONDING
Imagename eq, ne Любая допустимая строка
PID eg, ne, gt, lt, ge, le Любой положительное число
Session eg, ne, gt, lt, ge, le Любой действительный номер сеанса
CPUTime eg, ne, gt, lt, ge, le Допустимое время в формате чч:мм:сс. Компоненты мм и сс должны иметь значения от 0 до 59, а чч может быть любым значением числа без знака
Memusage eg, ne, gt, lt, ge, le Любое целое число
Username eq, ne Любое действительное имя пользователя ([домен\]пользователь).
Services eq, ne Любая допустимая строка  
Windowtitle eq, ne Любая допустимая строка  

/pid код_процесса
Указывает код процесса, который необходимо завершить.
/im имя_образа
Указывает имя образа процесса, который необходимо завершить. Используйте подстановочный знак (*) для указания всех имен образа.
/f
Указывает, что процесс(ы) должен быть принудительно завершен. Этот параметр не действует для удаленных процессов, все удаленные процессы завершаются принудительно.
/t
Задает завершение всех дочерних процессов вместе с родительским, такое действие обычно известно как уничтожение дерева.
/?
Отображает справку в командной строке.
Примечания
Подстановочный символ (*) принимается только при указании вместе с фильтрами.
Завершение удаленных процессов всегда выполняется принудительно независимо от указания параметра /f.
Указание имени компьютера в качестве фильтра HOSTNAME приведет к завершению работы и остановке всех процессов.
Используйте команду tasklist для определения кода завершаемого процесса.
Команда taskkill является заменой средству Kill.
Примеры
Далее приведены примеры использования команды taskkill:

taskkill /pid 1230 /pid 1241 /pid 1253
taskkill /f /fi "USERNAME eq NT AUTHORITY\SYSTEM" /im notepad.exe
taskkill /s srvmain /f /im notepad.exe
taskkill /s srvmain /u maindom\hiropln /p p@ssW23 /fi "IMAGENAME eq note*" /im *
taskkill /s srvmain /u maindom\hiropln /fi "USERNAME ne NT*" /im *
taskkill /f /fi "PID ge 1000" /im *
10 vostdnn
 
20.08.10
09:52
(8) на 2003 серваке запустил - там по-русски.
11 vostdnn
 
20.08.10
09:53
(9) благодарю.
просто странно в любом случае
12 rs_trade
 
20.08.10
09:53
(0) ...либо другим образом, можно так, из 1Це соответственно


Процедура УбитьПроцесс(ИмяПроцесса, ИмяПользователя="")
   
   objWMIService = ПолучитьCOMОбъект("winmgmts:{impersonationLevel=impersonate}!\\" + ИмяКомпьютера() +"\root\cimv2");
   ProcessSet = objWMIService.ExecQuery("select * from win32_process where name='"+ИмяПроцесса+"'");
   Для Каждого Process Из ProcessSet Цикл
       User    = "";
       Domain    = "";
       
       Если ПустаяСтрока(ИмяПользователя) Тогда
           Process.Terminate();
       Иначе            
           Process.GetOwner(User, Domain);
           Если User = ИмяПользователя Тогда
               Process.Terminate();
           КонецЕсли;
       КонецЕсли;
   КонецЦикла;
   
КонецПроцедуры