想请教一下,Process对象的哪个属性或方法能判断此进程是否运行?例如Process proc = new Process();怎样判断proc的进程是否正在运行?
注意:不能用表达式 !proc.HasExited ,因为我的程序中,proc.Start();是放在if中的,可能进程是不会启动的,对进程没有启动的情况,!proc.HasExited的调用是错误的。

解决方案 »

  1.   

    一般可以同时运行多个相同的应用程序的,如果要判断是否相同,应该判断进程中是否有同名程序运行..
    http://www.diybl.com/course/4_webprogram/asp.net/netjs/2008520/117303.htmlhttp://www.cnblogs.com/gengchengxiang/articles/991666.html
      

  2.   

    我不是要解决单个程序运行多个进程的问题,而是要判断进程是否在运行。
    说白了这个proc进程有三种状态:
    1、还没有被调用;(前面已经说了,proc.Start()是放在if中的,不是每次都能执行到的,所以proc进程可能没有被调用)
    2、已经被调用,在运行中;
    3、被调用过了,已经运行完退出了。我要在程序里面准确判断我的proc进程到底处于这3种状态里的哪一种。