我想用C#中的Windows应用程序打开word文件。 在按钮按钮上单击我调用Process.start(),文件名为“Test.doc”。 文件名因某些情况而异。
现在很多次我单击按钮Process with same file,它启动了许多单词实例。
我希望它应该为同一个文件打开一个实例,如果文件名更改,那么只打开新实例。
那我怎么能用一些文件名来检测那个单词呢?
由于
答案 0 :(得分:1)
使用一个列表来跟踪正在运行的进程。所以:
List<Process> processes = new List<Process>();
单击以打开文件时:
a)确保列表中没有包含文件名的进程。 (遍历列表然后查看process.Filename并将其与您要打开的文件进行比较)
b)如果没有,将您的流程添加到列表中,然后开始流程。
然后使用
http://msdn.microsoft.com/en-us/library/system.diagnostics.process.exited.aspx
了解该流程是否已退出。当它结束时,从你的进程列表中删除它。