最小化到托盘中的第三方程序,往往找不到窗体的句柄,只能找到其进程的ID,这个时候用什么方法可以打开(还原到桌面上)进程对应的主窗体呢?
谢谢指点!

解决方案 »

  1.   

    EnumWindows API
    FindWindows API如果真如你说,是隐藏而不是关闭的话。否则尝试给托盘图标一个双击消息。托盘的本质是一个 Toolbar。
      

  2.   

    感谢caozhy的回复,EnumWindows API和FindWindows API都可以用于找到窗体句柄。我现在的问题是找到窗体句柄后不知道怎么打开它,我使用了下面的方法:IntPtr hwnd = process.MainWindowHandle;
    sendMessage(hwnd, WM_LBUTTONDBLCLK, (IntPtr)0, Convert.ToString(0));其中process是通过枚举得到的相关进程,从而获得窗体句柄,再发鼠标双击消息给窗体。但是我试了记事本,结果是没有反应。
      

  3.   

    感谢caozhy大师!
    最后一问:您的脑袋里是怎么装进去那么多的API和其参数的??望不吝赐教!