убить процесс в диспетчере задач с помощью C # - PullRequest
2 голосов
/ 09 октября 2010

как я могу завершить процесс или закрыть целое приложение для моего приложения WPF, используя c #?

Ответы [ 3 ]

3 голосов
/ 09 октября 2010

Вы используете WinForms? Предполагая, что вы хотите закрыть его с помощью кода (а не с помощью кнопки закрытия окна), вы можете использовать Application.Exit . Если вы хотите завершить процесс, вы можете использовать метод Process.Kill .

Редактировать - поскольку вы используете WPF, вы можете использовать метод Application.Shutdown .

1 голос
/ 09 октября 2010

Вы можете убить процесс, используя Process.Kill , и красиво закрыть его, используя Process.CloseMainWindow .

Чтобы найти процесс, используйте методы класса Process, такие как Process.GetProcessById или Process.GetProcessesByName .

Однако, чтобы убить другой процесс (в зависимости от процесса), вам могут потребоваться повышенные разрешения. В этом случае вам нужно будет запустить свой исполняемый файл с ними, чтобы это работало.

Вы можете использовать Environment.Exit , чтобы закрыть собственный процесс, или Environment.FailFast , чтобы быстро завершить его.


Edit:

Поскольку вы используете WPF, вы также можете использовать Application.Shutdown , чтобы закрыть собственное приложение.

0 голосов
/ 09 октября 2010

Используйте класс Процесс .

Чтобы избежать сбоев, используйте внешний блок перехвата - иногда классы System.Diagnostics вызывают исключения уровня операционной системы, которые я обычно хочу игнорировать в случаенебольшого служебного приложения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...