Browse Source

process 结束前 检测进程是否存在

mengxiangge 5 years ago
parent
commit
7f8feb21f2

+ 3 - 2
Dispatcher/Client/Start/RevitCmdExecutor.cs

@@ -47,8 +47,9 @@ namespace Client.Start
                 process.Start();//执行
                 //string msg = process.StandardOutput.ReadToEnd();//读取输出
                 process.WaitForExit(21*60*1000);//等待执行完成
-                process.Close();//结束
-                process.Kill();
+                //process.Close();//结束
+                if(!process.HasExited)
+                    process.Kill();
                 msg = ReadResultString(resultFilePath);
                 
                 Console.WriteLine(DateTime.Now + " 命令执行完成:" + revitCmd);

+ 3 - 2
Starter/StartVisionSelector/Program.cs

@@ -110,8 +110,9 @@ namespace StartVisionSelector
             string msg = process.StandardOutput.ReadToEnd();//读取输出
             Console.WriteLine(msg);
             process.WaitForExit(20*60*1000);//等待执行完成
-            process.Close();//结束
-            process.Kill();
+            //process.Close();//结束
+            if(!process.HasExited)
+                process.Kill();
             #endregion
             Console.WriteLine("end");
             //强制退出