FindWindow("#32770","1--窗口");
FindWindow("#32770","2--窗口");
FindWindow("#32770","3--窗口");我要判断是否存在x--窗口,如何实现呢?(x=1,2,3)

解决方案 »

  1.   

    先用spy++得到其窗口句或类名,然后: HWND hWnd = ::FindWindow(_T("CMyApp"), NULL);
    if (NULL != hWnd)
    {
    ::SendMessage(hWnd, 32980, 0, 0);
    }
      

  2.   

    枚举当前窗口;
    取得Titel;
    strcmp;
      

  3.   

    用字符串匹配,看看一个窗口的title中是否包含另一个
      

  4.   

    用字符串匹配,看看一个窗口的title中是否包含另一个   能否详细说明呢?谢谢.
      

  5.   

    我的问题是这样的:这个窗口的标题都是这种格式  "xxx--对话框"  (xxx代表可变参数),并且这个窗口类名都是"#32770",所以要找这个窗口就只能用窗口标题来区分吧?
    现在我程序就是要判断这种窗口是否已经存在了,findwindow改怎么写呢?
      

  6.   

    循环查找所有窗口类名是"#32770"的窗口就可以
    void Get() 
    {
             char strTitle[80];
    HWND hwnd=NULL;
    HWND AfterHwnd = NULL;
    while(true)
    {
    hwnd=::FindWindowEx(NULL,AfterHwnd,(LPCSTR)"#32770",NULL);
    if(!hwnd)
    break;
                      else
                      {
                     if(::GetWindowText(hwnd,strTitle,80))
                               if(strstr(strTitle,"--对话框")!=0)
            {
                                 //找到窗口后的操作
            }
                      }
    AfterHwnd = hwnd;
    }
    }