4

FindWindow関数がエラーを返す原因を知っている人はいますか:

ALREADY_EXISTS エラー (183)

は理解できましたFILE_NOT_FOUND (2)が、なぜ が返されるの183でしょうか?

4

1 に答える 1

3

MSDN によると、関数が失敗した場合は NULLFindWindowを返し、チェックする必要があります。このドキュメントは間違っているようです。次のコード フラグメントを使用します。FindWindowExGetLastError

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

出力します

00000000 12345

ご覧FindWindowのとおり、最後のエラーを設定できません。あなたの場合、これは呼び出されるERROR_ALREADY_EXISTS前に設定された最後のエラーであることを意味します。FindWindow

于 2014-07-04T11:38:15.253 に答える