C# killprocess类的语法错误
我的系统中有以下代码C# killprocess类的语法错误,c#,process,C#,Process,我的系统中有以下代码 private void killprocess() { Process[] procs = null; try { procs = Process.GetProcessesByName("notepad"); Process NotepadProc = procs[0]; if (!NotepadProc.HasExited)
private void killprocess()
{
Process[] procs = null;
try
{
procs = Process.GetProcessesByName("notepad");
Process NotepadProc = procs[0];
if (!NotepadProc.HasExited)
{
NotepadProc.Kill();
}
else if (procs != null)
foreach (Process p in procs)
{
p.Dispose();
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
程序从进程列表中获取记事本并结束它。
我的问题是,如果记事本没有运行,我会得到这个错误。
我知道它在说什么,但是我似乎无法正确地获得代码,首先检查运行一个if语句,该语句检查记事本是否正在运行,如果它没有运行,则不会关闭。在这一步中,将出现indexootfrangeexception: 进程NotepadProc=procs[0] 你可以检查一下名单的长度 例如:
if(procs.Length == 0)
return;
或
if(procs.Length > 0)
{
your code
}