Util to report Windows error
This commit is contained in:
parent
b6a1a7caa0
commit
f1cc597317
16
src/windows/winError.c
Normal file
16
src/windows/winError.c
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
#include <windows.h>
|
||||||
|
|
||||||
|
static char* winErrorEx(DWORD dwError) {
|
||||||
|
char* buffer = NULL;
|
||||||
|
DWORD dwFlags = FORMAT_MESSAGE_MAX_WIDTH_MASK
|
||||||
|
| FORMAT_MESSAGE_ALLOCATE_BUFFER
|
||||||
|
| FORMAT_MESSAGE_FROM_SYSTEM
|
||||||
|
| FORMAT_MESSAGE_IGNORE_INSERTS;
|
||||||
|
DWORD dwResult = FormatMessageA(dwFlags, NULL, dwError, 0, (LPSTR)&buffer, 0, NULL);
|
||||||
|
if (dwResult==0 || buffer==NULL) {
|
||||||
|
fatal("Failed to get error message from FormatMessageA()");
|
||||||
|
}
|
||||||
|
return buffer;
|
||||||
|
}
|
||||||
|
|
||||||
|
static char* winError(void) { return winErrorEx(GetLastError()); }
|
||||||
Loading…
Reference in New Issue
Block a user