#c# #process #vlc
#c# #процесс #vlc
Вопрос:
Я запускаю задание VLC для записи некоторого потокового аудио из функции c # следующим образом (фактические аргументы не имеют отношения к вопросу):
Process proc = new Process();
proc.StartInfo.FileName = "C:\Program Files (x86)\VideoLAN\VLC\vlc.exe";
proc.StartInfo.Arguments = "someArgs";
proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
proc.Start();
Если все работает правильно, функция Start() немедленно возвращается, и процесс запускается локально (т.Е. VLC).
- Как я могу получить идентификатор процесса этого задания VLC, чтобы я мог завершить его позже? С использованием proc.Close() закрывает процесс, но не завершает задание VLC.
- Какой это самый эффективный способ завершить задание VLC? У меня есть права администратора локально.
- Как я могу проверить, что задание действительно запустилось правильно? Есть ли какой-либо флаг состояния на объекте proc, который я могу протестировать?
Спасибо, Эндрю
Ответ №1:
Идентификатор должен быть в вашем объекте process как proc.Id.
Вы можете уничтожить его с помощью proc.Kill().
Если при запуске процесса возникает проблема, он выдает исключение (скорее всего, исключение Win32Exception или InvalidOperationException; см. справку.)