GetWindow函数的用法有很多,通过传递不同的窗口参数,可以返回不同的窗口列表,传递GW_HWNDFIRST可以获得窗口Z-Order的所有WINDOWS。下面的函数把所有的Z-Order窗口名称添加到一个CListBox中:
//获取任务列表且添加到列表框中
BOOL GetAppList(CListBox &LstBox)
{
        CString strCaption;
        LstBox.ResetContent();
        ASSERT_VALID(AfxGetMainWnd());
        CWnd *pWnd=AfxGetMainWnd()->GetWindow(GW_HWNDFIRST);
        if(pWnd==NULL) 
               return FALSE;
        while(pWnd)
        {
               if(pWnd->IsWindowVisible() && pWnd->GetWindowTextLength() && !pWnd->GetOwner())
              {
                      pWnd->GetWindowText(strCaption);
                      LstBox.AddString(strCaption);
              }
               pWnd=pWnd->GetWindow(GW_HWNDNEXT);
        }
        return TRUE;
}