WIN32APIで処理に失敗した後にGetLastError()を使いなさいとは、リファレンスに書かれていたので知っていたのですが、数字(ID)だけ見ても何もわかんねーYO!!と思っていました。
今日たまたま知ったのですが、GetLastError()で取得したIDからエラーメッセージを取得する方法があったみたいで早速使ってみました。
static inline void OutputMessage(DWORD dwMessageId) { LPTSTR lpBuffer = NULL; FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, NULL, GetLastError(), LANG_USER_DEFAULT, (LPTSTR)&lpBuffer, 0, NULL ); MessageBox(NULL, lpBuffer, "Last Error Message", MB_ICONHAND|MB_OK); LocalFree(lpBuffer); }
を実行すると、、、
おぉー。ちゃんとエラーメッセージが表示されてるよ!