を表示するだけのツール。実験コード書く時とか、一々エラーメッセージフォーマット用の関数コピペするのめんどいので、GetLastError()のコードだけ表示して終わりにしたい時。こっちのツールで日本語メッセージを確認する。
gle.cpp:
#include <windows.h> #include <stdlib.h> #include <stdio.h> int main(int argc, char *argv[]) { LPTSTR lpMsgBuf; DWORD err; if (2 != argc) { fprintf(stderr, "usage: %s error_code\n", argv[0]); return 1; } err = atol(argv[1]); switch (err) { case 0: fprintf(stderr, "error, not DWORD number: %s\n", argv[1]); return 2; case LONG_MAX: case LONG_MIN: fprintf(stderr, "error, out of range: %s\n", argv[1]); return 3; } FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, NULL, err, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR)&lpMsgBuf, 0, NULL); printf("%s\n", lpMsgBuf); LocalFree(lpMsgBuf); return 0; }
コンパイル:
> cl gle.cpp
使い方:
> gle 100 ほかのシステム セマフォを作成できません。
コメント