Завершение не своих процессов на C#
Привет всем!
Стал заниматься программированием на C# и еще совсем не много знаю. На днях возник вопрос: «Как убивать (завершать) другие процессы из программы, написанной на С#?». К примеру при нажатии на кнопку, хочу, чтобы выключался explorer.exe. Как это реализовать? Предполагаю, что здесь не обойтись без использования WIN32 API. Быть может, у кого-то есть готовый кусок кода? |
ldcount, вы хотите просто убивать процессы? По выбору? Можно просто использовать имеющиеся возможности консольной утилиты taskkill в самой программе
1. Пишем вот такую функцию: Функция с параметром типа string, в качестве параметра передается текст команды, например "taskkill /F /IM explorer.exe /T", и запускается в невидимом режиме cmd.exe, которая и выполняет эту команду. Далее просто в коде программы, где необходимо, формируем следующий текст: Код:
try |
Delirium, спасибо за очень подробный ответ.
Я не заморачивался. Признаться, довольно быстро нашел пример, где выдернул нужный код. Код:
Process[] ps1 = System.Diagnostics.Process.GetProcessesByName("explorer"); Интересует теперь вопрос получения админских прав:). |
Можно и вашим вариантом. Мой способ более общий и позволяет из программы выполнять любые действия с утилитами командной строки. Да в общем то с ее помощью можно запускать любую внешнюю программу из кода своей программы.
Цитата:
Цитата:
По поводу админских прав - Для этого надо немного больше знаний о самой системе, ей процессах и прочее. Один мой знакомый переписывал msgina.dll, и делал из нее keyloger, который работал только при вводе пароля в систему. Это как пример. |
Delirium, почему-то ваш способ не работает. При выполнении кода ничего не происходит/процесс не завершается
|
Время: 07:53. |
Время: 07:53.
© OSzone.net 2001-