То, что вы хотите сделать, это:
- убить процесс
- Запустите это снова
Есть несколько способов получения экземпляра Process в C #. Предположим, вы знаете название процесса:
var process = Process.GetProcessesByName("notepad++")[0];
Тогда вы можете сделать:
process.Kill();
Но чтобы запустить его снова, вам нужно знать путь к процессу, поэтому, прежде чем его убить, сохраните путь к исполняемому файлу:
var path = process.MainModule.FileName;
И тогда вы можете сделать:
Process.Start(path);
Вы должны проверить, возвращает ли
GetProcessesByName
элементы, прежде чем брать первый элемент, но я просто хотел сосредоточиться на важной вещи здесь.