通过C#Process类启动进程时获取进程ID

时间:2011-04-28 00:51:47

标签: c# process vlc

我正在开始一个VLC工作来记录c#函数中的一些流音频,如下所示(实际的args与问题无关):

 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作业的进程ID,以便以后可以杀死它?使用proc.Close()会关闭进程,但不会终止VLC作业。
  • 是什么杀死VLC作业的最有效方法?我在本地拥有管理员权限。
  • 如何测试作业是否正确启动?我可以测试的proc对象上是否有一些状态标志?

由于 安德鲁

1 个答案:

答案 0 :(得分:1)

ID应该作为proc.Id在您的过程对象中。

你可以用proc.Kill()来杀死它。

如果启动进程时出现问题,则会抛出异常(很可能是Win32Exception或InvalidOperationException;请参阅帮助。)