用互斥来保证进程只能同时启动一次,如何让已启动的进程中的窗口自动显示在桌面前面?这个进程中窗口不只一个。。

解决方案 »

  1.   

    比如我的程序有登录界面,登录后进入主界面,在主界面里面还可以进行其它操作而弹出了Dialog。
    如果我的程序已经在运行了,这个时候再开启这个程序,那么我会提示用户,本程序已经启动(用互斥来判定是否已经启动),并将已启动的程序弹出来显示给用户。
      

  2.   

    先FindWindow找到要显示在最前面的窗口,然后SetForegroundWidnow一下
      

  3.   

    我并不知道程序现在处于什么状态,是登录状态?主界面显示状态或者其它窗口弹出状态,所以FindWindow是不行的,我不知道找哪个。。比如现在是显示主界面了,但我并不知道,我总不能FindWindow到登录界面,然后把登录界面激活吧。。
      

  4.   

    根据状态值来确定该显示哪几个窗口?然后FindWindow这几个窗口,然后显示出来??
    出此之外还有别的办法没?不能直接激活已启动的进程?而不用关心他目前的状态?