我有这样的代码:WaitForExit不工作时,应用程序已经运行
Process MSWprocess = new Process();
if (CommandToMSWord[1][1] == "Edit")
{
MSWprocess = Process.Start(PatientLetterDocx);
}
MSWprocess.WaitForExit();
if (CommandToMSWord[2][1].ToUpper() == "FALSE" && MSWprocess.HasExited)
{
File.Delete(PatientLetterDocx);
}
其中MSWprocess
将打开一个微软Word文件,如果用户想要自动保存这个退出,CommandToMSWord[2][1].ToUpper()
应为TRUE,否则该文档将在关闭MS Word文档时被删除。
当我第一次执行程序时,它会等到MS Word关闭。当第一个实例仍在运行时仍然运行同一程序的另一个实例(仍在等待MS字被关闭)时,第二个实例不再关心WaitForExit()
,并且由于程序是删除仍然打开的文件。
我喜欢的是,即使程序同时运行多次,WaitForExit()
应该每次都做到这一点。
你有什么想法,为什么这不适用于多个实例同时?
在此先感谢。
我编辑了我的给定代码,这就是我的源代码,所以我无法使用你的答案。 – spn