Невозможно получить заголовок окна, используя GetGUIThreadInfo - PullRequest
0 голосов
/ 06 мая 2011

Я гуглил и обнаружил, что вышеуказанная функция более надежна при получении текста заголовка окна, но она не работает.Я не получаю результатов;другими словами, строка заголовка не фиксируется.

GUITHREADINFO gui;
gui.cbSize = sizeof(gui);
char pStr[1024];

GetGUIThreadInfo pGetGUIThreadInfo;

HMODULE hinstUser = LoadLibrary((LPCTSTR) "user32.dll"); 
pGetGUIThreadInfo = (GetGUIThreadInfo)GetProcAddress(GetModuleHandle(TEXT("user32.dll")), "GetGUIThreadInfo");
if (pGetGUIThreadInfo(0 , &gui) == 0)
    return NULL;

GetWindowText(gui.hwndFocus, pStr, 1024);

Но приведенный выше код не выполняется.Что работает, используя следующий код

HWND hwnd = GetForegroundWindow();
GetWindowText(hwnd, pStr, 1024);

1 Ответ

1 голос
/ 06 мая 2011

Я думаю, что он будет делать то, что вы хотите, если вы используете hwndActive вместо hwndFocus.

Тем не менее, я не вижу, что не так с использованием окна, возвращаемого GetForegroundWindow().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...