我如何在使用CreateNoWindow = true时完全杀死一个进程

时间:2018-06-30 05:25:40

标签: c#

我有一个问题,我无法终止正在运行的进程 当我设置UseShellExcute = falseCreateNoWindow = true时。

代码如下:

startInfo.RedirectStandardError = true;
startInfo.UseShellExecute = false;
startInfo.CreateNoWindow = true;
process.StartInfo = startInfo;
process.Start();
Boolean TimeLimit = process.WaitForExit(2000);
if (TimeLimit == false)
{
    process.Kill();
    return "Time Limit Exceeded";
}

程序退出后,进程仍在运行(在任务管理器中选中)
如果我设置CreateNoWindow = false并像这样使用closeMainWindow

startInfo.RedirectStandardError = true;
startInfo.UseShellExecute = false;
startInfo.CreateNoWindow = false;
process.StartInfo = startInfo;
process.Start();
Boolean TimeLimit = process.WaitForExit(2000);
if (TimeLimit == false)
{
    process.CloseMainWindow();
    return "Time Limit Exceed";
}

它工作正常。 但是我不希望它在运行时显示窗口。

还有其他方法吗?我需要帮助

0 个答案:

没有答案