none
关于同时结束多个进程 RRS feed

  • 问题

  • Process[] p = Process.GetProcessesByName("QQ"); p[0].Kill(); Process[] p = Process.GetProcessesByName("QQ1"); p[0].Kill(); Process[] p = Process.GetProcessesByName("QQ2"); p[0].Kill()

    除了这样一个个的结束之外,有没有什么方法,直接结束QQ QQ1 QQ2。不用再写这么多步??

    2015年1月4日 13:18

答案

  • 没有

    而且你不应该用Process.Kill终止进程。这会导致一些内核对象残留,正在写入的文件也会有数据不完整的情况。

    想想一下你关掉Outlook之后下次就进不了邮箱的情形。

    正确的做法是在写QQ.exe的时候就留下一个接口供外部关闭,比如特定的Windows消息或者通过命名管道通讯。



    Visual C++ MVP


    2015年1月4日 19:33
    版主