Ошибка FindWindow 183 - PullRequest
       21

Ошибка FindWindow 183

5 голосов
/ 09 июля 2011

Кто-нибудь знает, что может заставить функцию FindWindow вернуть ошибку:

Ошибка ALREADY_EXISTS (183)

Я могпонять FILE_NOT_FOUND (2), но зачем возвращать 183?

1 Ответ

3 голосов
/ 04 июля 2014

MSDN сообщает, что FindWindow и FindWindowEx возвращают NULL, если функция завершается с ошибкой, и вам следует проверить GetLastError Кажется, что эта документация неверна. Возьми этот фрагмент кода:

SetLastError(12345);
HWND h = FindWindow(L"class_name_that_does_not_exist", nullptr);
cout << h << ' ' << GetLastError() << endl;

Будет выведено

00000000 12345

Так что, как видите, FindWindow не может установить последнюю ошибку. В вашем случае это означает, что ERROR_ALREADY_EXISTS была последней ошибкой, установленной перед вызовом FindWindow.

...