C#:使用单独的.exe

本文关键字:exe 单独 | 更新日期: 2023-09-27 17:59:57

我有一个用于数据操作的复杂控制台程序,使用起来很麻烦。

我正在尝试创建一个包装器类型的GUI程序,以便于使用。

现在我正在打开一个新线程,使用Process.Start()并捕获输出。

这很好,除了一个问题,如何根据用户的要求取消流程

考虑到该进程占用大量CPU,并且可能有很长的运行时间,这一点非常重要。

C#:使用单独的.exe

使用Process.Kill()方法:

foreach (var process in Process.GetProcessesByName("whatever"))
{
    process.Kill();
}

如果你不想杀死whatever的所有实例,那么使用启动你的进程

process = Process.Start("whatever");

然后在需要时调用Kill方法:

process.Kill();

假设您已经启动了一个类似以下的过程

Process myProcess = Process.Start("myapp.exe");

然后您可以关闭进程以释放资源

myProcess.Close();

然后使用停止处理

myProcess.Kill();