110,534
社区成员
发帖
与我相关
我的任务
分享
Process[] pProcess;
pProcess = Process.GetProcesses();
for (int i = 1; i <= pProcess.Length - 1; i++)
{
if (pProcess[i].ProcessName == "test")
{
pProcess[i].Kill();
break;
}
}
System.Diagnostics.Process.Start(Application.StartupPath + @"\pay\bin\Debug\test.exe");
pProcess = Process.GetProcesses();
for (int i = 1; i <= pProcess.Length - 1; i++)
{
if (pnProcess[i].ProcessName == "test")
{
pProcess[i].Kill();
break;
}
}
internal static async void DealProcess() {
//TODO:杀死process
await Task.Factory.StartNew(() => {
//启动 process
System.Diagnostics.Process.Start(xxx);
Task.Delay(2000).Wait();
});
pProcess = Process.GetProcesses();
//TODO:杀死process
}
[/quote]
今天试了试 加上了一个关闭判断 还有这句
System.Diagnostics.Process.Start(xxx).WaitForExit()就好啦
internal static async void DealProcess() {
//TODO:杀死process
await Task.Factory.StartNew(() => {
//启动 process
System.Diagnostics.Process.Start(xxx);
Task.Delay(2000).Wait();
});
pProcess = Process.GetProcesses();
//TODO:杀死process
}