Страница: 1 |
Есть сеть из 200 компов. Программы установленные на компах постоянно модифицируются, и бегать каждый раз к каждому компу проблематично. Написал прогу которая ищет нужные мне файлы в сети и заменяет их на новые, но если пользователь уже работает то естественно ни а какой замене речи быть не может. Можно конечно просто перезагрузить комп, но это уже крайняя мера. Может кто знает как можно закрыть нужную программу на удаленном компе.(VB.net, C#) Спасибо всем кто откликнется.
Это можно сделать через WMI, объект Win32_Process. У него есть метод Terminate: http://msdn.microsoft.com/library/en-us/wmisdk/wmi/terminate_method_in_class_win32_process.asp Но, честно говоря, я совсем не занимался WMI в .Net, поэтому ничего более полезного сказать не могу. Kill же пробовал, выдает ошибку: An unhandled exception of type 'System.NotSupportedException' occurred in system.dll Additional information: Feature is not supported for remote machines. Нужно что то через API выдумывать, если это возможно конечно. Спасибо всем кто откликнулся. Может кто подскажет тогда, как запустить программу на удаленном компе, в принципе это решило бы проблемму. Сразу скажу что "process.Start" работает только для локальных процессов. 2HACKER: Речь идет об администрировании сети, а не о ее взломе. Я бы написал клиент, который будет все время запущен на всех компах сети, который бы опрашивал сервер на компе админа периодически, не надо ли чего-нибудь сделать, файл там обновить или процесс убить... На счет клиента уже думал(хорошая идея), но скорее всего напишу модуль который будет проверять при запуске программы есть ли новый апдейт, и если есть автоматом проводить обновление программы. Спасибо большое всем! Сергей >напишу модуль который будет проверять при запуске программы есть ли новый апдейт, и если есть автоматом проводить обновление программы. Я уже написал такую программу. У нас в конторе работает около 2-х лет - обновляет антивирусные базы. Если интересно - пиши на мыло a.pashenko@mail.ru. Страница: 1 |
Вопрос: Как убить процесс на удаленном компьютере
Добавлено: 13.05.04 00:14
Автор вопроса: Serge1167
Ответы
Всего ответов: 10
Номер ответа: 1
Автор ответа:
Андрей Щёкин [darxeth]
ICQ: 161560107
Вопросов: 9
Ответов: 52
Web-сайт:
Профиль | | #1
Добавлено: 13.05.04 01:27
Номер ответа: 2
Автор ответа:
Артём Л.
ICQ: 280044491
Вопросов: 43
Ответов: 227
Профиль | | #2
Добавлено: 13.05.04 15:36
Dim P() As Process = Process.GetProcesses(machinename)
далее ищешь в P нужный процес и убиваешь его
Р(0).Kill
но у тебя должны быть права администратора на удаленном компе
Номер ответа: 3
Автор ответа:
Serge1167
Вопросов: 7
Ответов: 27
Профиль | | #3
Добавлено: 13.05.04 18:48
Номер ответа: 4
Автор ответа:
Serge1167
Вопросов: 7
Ответов: 27
Профиль | | #4
Добавлено: 13.05.04 19:43
Номер ответа: 5
Автор ответа:
Артём Л.
ICQ: 280044491
Вопросов: 43
Ответов: 227
Профиль | | #5
Добавлено: 13.05.04 19:44
ну так попробуйте не килл а другие методы Close(),CloseMainWindow()...
Номер ответа: 6
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #6
Добавлено: 13.05.04 21:51
чо то вы все гоните! это не так легко на самом деле как у вас всё получается. Администрирование есл есть - то да! но его то мало у кого есть, а так это на юзать, дырки в безопасности Windows и то прогу просто взять и запустить неполучится, разве что просто скопировать что-то на чужой комп со своего, а соответственно если копировать в автозагрузку то.....
Номер ответа: 7
Автор ответа:
Павел
Администратор
ICQ: 326066673
Вопросов: 368
Ответов: 5968
Web-сайт:
Профиль | | #7
Добавлено: 14.05.04 09:06
ИМХО, наиболее реальный вариант - использовать WMI. Попробуйте.
Номер ответа: 8
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #8
Добавлено: 15.05.04 01:58
Номер ответа: 9
Автор ответа:
Serge1167
Вопросов: 7
Ответов: 27
Профиль | | #9
Добавлено: 16.05.04 23:17
Номер ответа: 10
Автор ответа:
Pashenko
ICQ: 176176951
Вопросов: 14
Ответов: 655
Профиль | | #10
Добавлено: 17.05.04 12:25