Я пытаюсь использовать EnumWindows для печати заголовков всех видимых окон.
Сначала он работал, EnumWindows вызывал функцию обратного вызова createWindow () несколько раз при каждом вызове EnumWindows.Но без добавления какого-либо значимого кода он перестал работать и теперь только один раз вызывает createWindow () с дескриптором невидимого окна.
Вот мой код:
int main()
{
int row = 2;
int col = 2;
vector<Window> detectedWindows((row * col) + 4);
EnumWindows(&createWindow, (LPARAM)&detectedWindows);
}
BOOL CALLBACK createWindow(HWND input, LPARAM storage)
{
if (IsWindowVisible(input))
{
TCHAR titleTchar[30];
GetWindowText(input, titleTchar, 30);
wcout << titleTchar << endl;
CString titleCstr = titleTchar;
CT2CA converting(titleCstr);
string title(converting);
cout << title << endl;
}
return 0;
}
Нет записанныхСообщения об ошибках.GetLastError возвращает 0.