我通过枚举的方法,寻找当前已经打开的某个窗口,程序如下:
BOOL myEnumWindow(HWND inHwnd)
{
char szText[256]; HWND hwndAfter = NULL;
while(hwndAfter = ::FindWindowEx(inHwnd,hwndAfter,NULL,NULL))
{
memset(szText,0,256);
::SendMessage(hwndAfter,WM_GETTEXT,(WPARAM)256,(LPARAM)szText);
// printf("%s\t",szText);
if(strcmp(szText,"c:\\windows\\system32\\cmd.exe")==0)//我的电脑就可以找到
{
AfxMessageBox(szText);
return 1;
}
myEnumWindow(hwndAfter);
}
return 1;
}
调用:
myEnumWindow(NULL);“我的电脑”窗口可以找到。
然后,我打开一个命令行窗口,发现无法找到。为何?