![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как убить процесс на удаленном компьютере с помощью WMI? [D7, Win2k, WinXP]
pavel_guzhanov © (2004-12-16 16:33:00)Здравствуйте!
При помощи WMI я подключаюсь к удаленному компьютеру, получаю список запущенных процессов, нахожу в этом списке нужный мне процесс. Это все работает. А вот как теперь этот процесс убить (остановить)? В Help в WMI Tools прочитал, что есть метод Terminate, вот только никак не разберусь, как его применить.
Подскажите, как это можно сделать....
Cobalt (2004-12-19 01:04:00) [1]2 Piter
Это же наверно, RPC...
Piter (2004-12-18 18:51:00) [2]Ну коннектится, и чего? Кто в винде этот порт открывает?
Хакер (2004-12-18 14:44:00) [3]Piter © (18.12.04 13:48) [18]
думаю, что коннектится толи на 135 то ли на 445 порт - надо фаерволлом или сниффером проверять ....
Piter (2004-12-18 13:48:00) [4]У меня в w2k нету.
> Каким механизом она удаляет процессы на удаленном
> компьютере?
Хакер (2004-12-18 11:16:00) [5]Piter © (17.12.04 19:30) [14]
LOL
taskkill /?
ещё TaskListесть ;)))
//в некоторых виндах этих прог нет :((
Piter (2004-12-17 21:22:00) [6]Блин, ну а что это программа делает? Каким механизом она удаляет процессы на удаленном компьютере?
DeadMeat (2004-12-17 20:25:00) [7]Насколько я помню (но могу ошибаться) этого файла в Win2k и ниже нету... Это программа.
---
...Death Is Only The Begining...
Piter (2004-12-17 19:30:00) [8]А что такое taskkill?
BiN (2004-12-17 13:27:00) [9]STFN
http://www.google.ru/search?hl=ru&q=kill+process+wmi&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA&lr=
pavel_guzhanov (2004-12-17 13:20:00) [10]при закрытии программы (я пробовал блокнот) не выдает никаких окон с предложением сохранить изменения, так что видимо закрывает процесс некорректно...
TankMan (2004-12-17 12:24:00) [11]А у меня вопрос, а как он завершает/убивает процесс? Корректно или нет? Если нет, то как можно реализовать корректную "посылку" сообщения WM_CLOSE или еще чего? :)
TankMan (2004-12-17 12:22:00) [12]А у меня вопрос, а как он завершает/убивает процесс? Корректно или нет? Если нет, то как можно реализовать корректную "посылку" сообщения WM_CLOSE или еще чего? :)
-=SS=- (2004-12-17 11:13:00) [13]Толково! "taskkill" за эту команду даже и не знал ничего :(
pavel_guzhanov (2004-12-17 11:02:00) [14]то, что begin 2 раза - это опечатка)))
pavel_guzhanov (2004-12-17 11:01:00) [15]мне не жалко...
var Name, ComString, Password, ProcessName, User:String;
buffer:array[0..200] of Char;
begin
begin
// заполнили буфер пустыми символами
FillChar(Buffer,201,#0);
ComString:='taskkill /s '+Name+' /u '+User+' /p '+Password+' /im '+ProcessName;
// Перевели ComString в PChar
StrPCopy(Buffer, ComString);
// убили процесс
WinExec(Buffer, SW_HIDE);
end;
Name - имя удаленного компьютера
Password - пароль администратора домена
ProcessName - имя exe файла убиваемого процесса...
-=SS=- (2004-12-17 10:17:00) [16]
> pavel_guzhanov (17.12.04 10:11) [5]
Может со всеми поделишся своими изобретениями ?
pavel_guzhanov (2004-12-17 10:11:00) [17]Да, блин, что то я перемудрил... WinExec и командная строка. Убивает любой процесс на удаленном компе, только успевай имена компов подсовывать... И WMI не нужен...
Тема закрыта.
pavel_guzhanov (2004-12-17 08:55:00) [18]Если я смог получить список процессов, то это говорит о том, что права у меня есть. Права Администратора. Проблема только в том, чтобы процесс убить... Из командной строки это вообще делается элементарно, но мне надо из программы, и не на одном компьютере, а на нескольких.
-=SS=- (2004-12-16 20:20:00) [19]
> Piter © (16.12.04 20:15) [2]
Если я не ошибаюсь то для того что бы приконнектится через WMI на другой комп необходимы имя пользователя и пароль
Piter (2004-12-16 20:15:00) [20]Хм... а у меня тоже вопрос - кто ответственен за такие подключения? Что нужно сделать, чтобы к моему компьютеру не смогли так приконнектиться?