不断检查进程是否正在运行C#

时间:2016-01-05 01:07:36

标签: c# timer

我想通过查找过程的名称来确定进程是否已打开:

Process[] proc = Process.GetProcessesByName("process name");
if (proc.Length != 0)
{
    proccess_running = true;
}
else
{
    process_running = false;
}

然后在状态栏中向用户显示结果,如下所示:

if (process_running == true)
{
    statusBar1.Text = "Process is running";
}
else
{
    statusBar1.Text = "Process is not running";
}

我尝试将上面的内容放在一个计时器中,这会给出正确的结果,除非每次计时器滴答时文本都会闪烁。

是否只有在bool(process_running)发生变化时才设置状态栏的文本,而不是在计时器滴答时设置状态栏的文本?

1 个答案:

答案 0 :(得分:2)

var text = process_running ? "Process is running" : "Process is not running";
if (statusBar1.Text != text)
    statusBar1.Text = text;