Узнать имя запускаемого процесса

Кто может подсказать? Хочу сделать форму, с выбором exe файла, и сохранением его в форме для дальнейшего программного запуска через Process.Start Фишка в том, что экзешник может быть любой и заранее имя запускаемого процесса мне неизвестно. А имя нужно для завершения этого процесса, когда понадобится. Есть ли возможность при запуске процесса сразу узнать его имя для дальнейшей работы с ним?

Думал сравнивать все процессы после запуска нового и таким образом вычислять новый, но во время запуска может запуститься еще какой сторонний процесс и можно завершить в итоге не тот/


Ответы (2 шт):

Автор решения: Cordis

Как вариант

AppDomain.CurrentDomain.FriendlyName

Возвращает только имя файла. Чтобы получить директорию можно использовать

AppDomain.CurrentDomain.ApplicationBase
→ Ссылка
Автор решения: Anton

Ребят, конкретно для моей задачи разобрался. Я вызывал статический запуск процесса по неопытности. На деле мне нужно было создавать экземпляр Process и экземпляр ProcessStartInfo в который помещается инфа директории запуска. Process.StartInfo =ProcessStartInfo. Для завершения все просто Process.Kill. Кстати размышления по поводу новых окон интересны. Стыдно за такой затуп, но все обошлось)) Всем спасибо.

string source = "C:\\Windows/System32/notepad.exe";
ProcessStartInfo myInfo = new ProcessStartInfo(source);
Process notepadProc = new Process();
notepadProc.StartInfo = myInfo;
notepadProc.Start();
Thread.Sleep(5000);
notepadProc.Kill();
→ Ссылка