6 #include <wine/unicode.h> 14 #define wcsnicmp strncmpiW 15 #define wcsicmp strcmpiW 16 #define wcsrchr strrchrW 17 #define wcschr strchrW 21 #define min(x, y) (((x) < (y)) ? (x) : (y)) 22 #define max(x, y) (((x) > (y)) ? (x) : (y)) 23 #define _strnicmp(_String1, _String2, _MaxCount) strncasecmp(_String1, _String2, _MaxCount) 24 #define stricmp(_String1, _String2) strcasecmp(_String1, _String2) 43 #define DECLSPEC_HIDDEN 44 #define WINE_DEFAULT_DEBUG_CHANNEL(x) 45 #define WINE_DECLARE_DEBUG_CHANNEL(x) 61 #define wine_get_dos_file_name(__x) (assert(0), NULL) 64 #define WARN(fmt, ...) fprintf(stderr, "WARN %s: " fmt, __FUNCTION__, ##__VA_ARGS__) 65 #define FIXME(fmt, ...) fprintf(stderr, "FIXME %s: " fmt, __FUNCTION__, ##__VA_ARGS__) 66 #define TRACE(fmt, ...) fprintf(stderr, "TRACE %s: " fmt, __FUNCTION__, ##__VA_ARGS__) 67 #define ERR(fmt, ...) fprintf(stderr, "ERR %s: " fmt, __FUNCTION__, ##__VA_ARGS__) 69 #define WARN(fmt, ...) 70 #define FIXME(fmt, ...) 71 #define TRACE(fmt, ...) 75 #define TRACE_ON(x) FALSE 76 #define TRACE_(x) TRACE 77 #define FIXME_(x) FIXME 79 #define CP_UNIXCP CP_ACP 81 #define __EXCEPT_PAGE_FAULT else 97 #define ERROR_ACCESS_DENIED 5 98 #define ERROR_INVALID_HANDLE 6 99 #define ERROR_OUTOFMEMORY 14 100 #define ERROR_NOT_SUPPORTED 50 101 #define ERROR_INVALID_PARAMETER 87 102 #define ERROR_CALL_NOT_IMPLEMENTED 120 103 #define ERROR_INVALID_NAME 123 104 #define ERROR_MOD_NOT_FOUND 126 105 #define ERROR_NO_MORE_ITEMS 259 106 #define ERROR_INVALID_ADDRESS 487 110 #define MultiByteToWideChar __MultiByteToWideChar 111 #define WideCharToMultiByte __WideCharToMultiByte 126 # define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) 127 #define IMAGE_FILE_MACHINE_ARMNT 0x1c4 128 #define IMAGE_FILE_MACHINE_POWERPC 0x1f0 129 #define IMAGE_FILE_MACHINE_ARM64 0xaa64 130 #define DLL_PROCESS_DETACH 0 131 #define DLL_PROCESS_ATTACH 1 132 #define DLL_THREAD_ATTACH 2 133 #define DLL_THREAD_DETACH 3 134 #define HEAP_ZERO_MEMORY 8 135 #define GENERIC_READ 0x80000000 136 #define FILE_SHARE_READ 0x00000001 137 #define FILE_ATTRIBUTE_NORMAL 0x00000080 138 #define PAGE_READONLY 0x0002 139 #define SECTION_MAP_READ 4 140 #define IMAGE_DEBUG_TYPE_UNKNOWN 0 141 #define IMAGE_DEBUG_TYPE_COFF 1 142 #define IMAGE_DEBUG_TYPE_CODEVIEW 2 143 #define IMAGE_DEBUG_TYPE_FPO 3 144 #define IMAGE_DEBUG_TYPE_MISC 4 145 #define IMAGE_DEBUG_TYPE_EXCEPTION 5 146 #define IMAGE_DEBUG_TYPE_FIXUP 6 147 #define IMAGE_DEBUG_TYPE_OMAP_TO_SRC 7 148 #define IMAGE_DEBUG_TYPE_OMAP_FROM_SRC 8 149 #define IMAGE_SYM_CLASS_EXTERNAL 2 150 #define IMAGE_SYM_CLASS_FILE 103 151 #define IMAGE_DIRECTORY_ENTRY_EXPORT 0 152 #define IMAGE_DIRECTORY_ENTRY_DEBUG 6 153 #define IMAGE_DIRECTORY_ENTRY_LOAD_CONFIG 10 154 #define IMAGE_DEBUG_MISC_EXENAME 1 155 #define IMAGE_SEPARATE_DEBUG_SIGNATURE 0x4944 206 #define EXCEPTION_MAXIMUM_PARAMETERS 15 216 #define WOW64_CONTEXT_i386 0x00010000 217 #define WOW64_CONTEXT_i486 0x00010000 218 #define WOW64_CONTEXT_CONTROL (WOW64_CONTEXT_i386 | __MSABI_LONG(0x00000001)) 219 #define WOW64_CONTEXT_INTEGER (WOW64_CONTEXT_i386 | __MSABI_LONG(0x00000002)) 220 #define WOW64_CONTEXT_SEGMENTS (WOW64_CONTEXT_i386 | __MSABI_LONG(0x00000004)) 221 #define WOW64_CONTEXT_FLOATING_POINT (WOW64_CONTEXT_i386 | __MSABI_LONG(0x00000008)) 222 #define WOW64_CONTEXT_DEBUG_REGISTERS (WOW64_CONTEXT_i386 | __MSABI_LONG(0x00000010)) 223 #define WOW64_CONTEXT_EXTENDED_REGISTERS (WOW64_CONTEXT_i386 | __MSABI_LONG(0x00000020)) 224 #define WOW64_CONTEXT_FULL (WOW64_CONTEXT_CONTROL | WOW64_CONTEXT_INTEGER | WOW64_CONTEXT_SEGMENTS) 225 #define WOW64_CONTEXT_ALL (WOW64_CONTEXT_CONTROL | WOW64_CONTEXT_INTEGER | \ 226 WOW64_CONTEXT_SEGMENTS | WOW64_CONTEXT_FLOATING_POINT | \ 227 WOW64_CONTEXT_DEBUG_REGISTERS | WOW64_CONTEXT_EXTENDED_REGISTERS) 229 #define WOW64_CONTEXT_XSTATE (WOW64_CONTEXT_i386 | __MSABI_LONG(0x00000040)) 231 #define WOW64_CONTEXT_EXCEPTION_ACTIVE 0x08000000 232 #define WOW64_CONTEXT_SERVICE_ACTIVE 0x10000000 233 #define WOW64_CONTEXT_EXCEPTION_REQUEST 0x40000000 234 #define WOW64_CONTEXT_EXCEPTION_REPORTING 0x80000000 236 #define WOW64_SIZE_OF_80387_REGISTERS 80 237 #define WOW64_MAXIMUM_SUPPORTED_EXTENSION 512 252 #include "pshpack4.h" 283 #if defined(TARGET_i386) 284 #define SIZE_OF_80387_REGISTERS 80 285 #define CONTEXT_i386 0x10000 286 #define CONTEXT_i486 0x10000 287 #define CONTEXT_CONTROL (CONTEXT_i386|0x00000001L) 288 #define CONTEXT_INTEGER (CONTEXT_i386|0x00000002L) 289 #define CONTEXT_SEGMENTS (CONTEXT_i386|0x00000004L) 290 #define CONTEXT_FLOATING_POINT (CONTEXT_i386|0x00000008L) 291 #define CONTEXT_DEBUG_REGISTERS (CONTEXT_i386|0x00000010L) 292 #define CONTEXT_EXTENDED_REGISTERS (CONTEXT_i386|0x00000020L) 293 #define CONTEXT_FULL (CONTEXT_CONTROL|CONTEXT_INTEGER|CONTEXT_SEGMENTS) 294 #define MAXIMUM_SUPPORTED_EXTENSION 512 296 #define EXCEPTION_READ_FAULT 0 297 #define EXCEPTION_WRITE_FAULT 1 298 #define EXCEPTION_EXECUTE_FAULT 8 340 #elif defined TARGET_amd64 342 typedef struct _M128A {
347 typedef struct _XMM_SAVE_AREA32 {
361 M128A FloatRegisters[8];
362 M128A XmmRegisters[16];
442 M128A VectorRegister[26];
453 #elif defined TARGET_arm 457 #define CONTEXT_ARM 0x0200000 458 #define CONTEXT_CONTROL (CONTEXT_ARM | 0x00000001) 459 #define CONTEXT_INTEGER (CONTEXT_ARM | 0x00000002) 460 #define CONTEXT_FLOATING_POINT (CONTEXT_ARM | 0x00000004) 461 #define CONTEXT_DEBUG_REGISTERS (CONTEXT_ARM | 0x00000008) 463 #define CONTEXT_FULL (CONTEXT_CONTROL | CONTEXT_INTEGER) 465 #define EXCEPTION_READ_FAULT 0 466 #define EXCEPTION_WRITE_FAULT 1 467 #define EXCEPTION_EXECUTE_FAULT 8 476 DWORD FunctionLength : 11;
483 DWORD StackAdjust : 10;
488 #define UNWIND_HISTORY_TABLE_SIZE 12 489 typedef struct _UNWIND_HISTORY_TABLE_ENTRY
493 } UNWIND_HISTORY_TABLE_ENTRY, *PUNWIND_HISTORY_TABLE_ENTRY;
495 typedef struct _UNWIND_HISTORY_TABLE
504 UNWIND_HISTORY_TABLE_ENTRY
Entry[UNWIND_HISTORY_TABLE_SIZE];
505 } UNWIND_HISTORY_TABLE, *PUNWIND_HISTORY_TABLE;
554 #error "Unknown target platform" 590 #define INVALID_HANDLE_VALUE (HANDLE)(-1) 591 #define INVALID_SET_FILE_POINTER ((DWORD)-1) 592 #define HeapAlloc __HeapAlloc 593 #define HeapReAlloc __HeapReAlloc 594 #define HeapFree(x,y,z) free(z) 595 #define GetProcessHeap() 1 596 #define GetProcessId(x) 8 597 #define lstrcpynW __lstrcpynW 598 #define CloseHandle __CloseHandle 599 #define CreateFileA(a,b,c,d,e,f,g) fopen(a, "rb") 600 #define CreateFileW __CreateFileW 601 #define ReadFile(a,b,c,d,e) __ReadFile 602 #define SetFilePointer __SetFilePointer 603 #define CreateFileMappingW(a,b,c,d,e,f) a 604 #define MapViewOfFile __MapViewOfFile 605 #define UnmapViewOfFile __UnmapViewOfFile 606 #define LoadLibraryW(x) 0 607 #define FreeLibrary(x) 0 608 #define lstrcpyW strcpyW // Forward this to wine unicode inline function 609 #define lstrlenW strlenW // ditto 610 #define lstrcpynA __lstrcpynA 611 #define SetLastError(x) 612 #define GetProcAddress(x,y) 0 613 #define GetEnvironmentVariableA(x, y, z) 0 614 #define GetEnvironmentVariableW(x, y, z) 0 615 #define GetCurrentDirectoryW(x, y) 0 616 #define GetFileSizeEx __GetFileSizeEx 617 #define ReadProcessMemory(a,b,c,d,e) 0 618 #define GetCurrentProcess() (HANDLE)1 619 #define IsWow64Process __IsWow64Process 634 #define OPEN_EXISTING 3 635 #define FILE_MAP_READ SECTION_MAP_READ 665 #define RtlImageNtHeader __RtlImageNtHeader 666 #define RtlImageRvaToVa __RtlImageRvaToVa 667 #define RtlImageRvaToSection __RtlImageRvaToSection 668 #define RtlImageDirectoryEntryToData __RtlImageDirectoryEntryToData 669 #define RtlComputeCrc32 __RtlComputeCrc32 672 #define RtlUlongByteSwap(_x) _byteswap_ulong((_x)) 674 #define RtlUlongByteSwap(_x) __builtin_bswap32((_x)) 687 #define GDI_BATCH_BUFFER_SIZE 0x136 781 #define GetModuleFileNameExW(w, x, y, z) 0 834 #define MAX_SYM_NAME 2000 835 #define CBA_DEFERRED_SYMBOL_LOAD_START 0x00000001 836 #define CBA_DEFERRED_SYMBOL_LOAD_COMPLETE 0x00000002 837 #define CBA_DEFERRED_SYMBOL_LOAD_FAILURE 0x00000003 838 #define CBA_SYMBOLS_UNLOADED 0x00000004 839 #define CBA_DUPLICATE_SYMBOL 0x00000005 840 #define CBA_READ_MEMORY 0x00000006 841 #define CBA_DEFERRED_SYMBOL_LOAD_CANCEL 0x00000007 842 #define CBA_SET_OPTIONS 0x00000008 843 #define CBA_EVENT 0x00000010 844 #define CBA_DEFERRED_SYMBOL_LOAD_PARTIAL 0x00000020 845 #define CBA_DEBUG_INFO 0x10000000 846 #define SYMOPT_CASE_INSENSITIVE 0x00000001 847 #define SYMOPT_UNDNAME 0x00000002 848 #define SYMOPT_DEFERRED_LOADS 0x00000004 849 #define SYMOPT_LOAD_LINES 0x00000010 850 #define SYMOPT_LOAD_ANYTHING 0x00000040 851 #define SYMOPT_PUBLICS_ONLY 0x00004000 852 #define SYMOPT_NO_PUBLICS 0x00008000 853 #define SYMOPT_AUTO_PUBLICS 0x00010000 854 #define SYMFLAG_VALUEPRESENT 0x00000001 855 #define SYMFLAG_REGISTER 0x00000008 856 #define SYMFLAG_REGREL 0x00000010 857 #define SYMFLAG_FRAMEREL 0x00000020 858 #define SYMFLAG_PARAMETER 0x00000040 859 #define SYMFLAG_LOCAL 0x00000080 860 #define SYMFLAG_CONSTANT 0x00000100 861 #define SYMFLAG_EXPORT 0x00000200 862 #define SYMFLAG_FORWARDER 0x00000400 863 #define SYMFLAG_FUNCTION 0x00000800 864 #define SYMFLAG_VIRTUAL 0x00001000 865 #define SYMFLAG_THUNK 0x00002000 866 #define SYMFLAG_TLSREL 0x00004000 867 #define SYMFLAG_SLOT 0x00008000 868 #define SYMFLAG_ILREL 0x00010000 869 #define SYMFLAG_METADATA 0x00020000 870 #define SYMFLAG_CLR_TOKEN 0x00040000 871 #define SYMFLAG_NULL 0x00080000 872 #define SYMFLAG_FUNC_NO_RETURN 0x00100000 873 #define SYMFLAG_SYNTHETIC_ZEROBASE 0x00200000 874 #define SYMFLAG_PUBLIC_CODE 0x00400000 875 #define UNDNAME_COMPLETE (0x0000) 876 #define UNDNAME_NAME_ONLY (0x1000) 883 #define SYMSEARCH_GLOBALSONLY 0x04 885 #define SLMFLAG_VIRTUAL 0x1 886 #define SLMFLAG_NO_SYMBOLS 0x4 1000 #define FindExecutableImageExW __FindExecutableImageExW 1326 #if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64) 1327 #define IMAGEHLP_SYMBOL IMAGEHLP_SYMBOL64 1328 #define IMAGEHLP_SYMBOLW IMAGEHLP_SYMBOLW64 1329 #define PIMAGEHLP_SYMBOL PIMAGEHLP_SYMBOL64 1330 #define PIMAGEHLP_SYMBOLW PIMAGEHLP_SYMBOLW64 1370 #if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64) 1371 #define IMAGEHLP_LINE IMAGEHLP_LINE64 1372 #define PIMAGEHLP_LINE PIMAGEHLP_LINE64 1373 #define IMAGEHLP_LINEW IMAGEHLP_LINEW64 1374 #define PIMAGEHLP_LINEW PIMAGEHLP_LINEW64 1402 #if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64) 1403 #define IMAGEHLP_DEFERRED_SYMBOL_LOAD IMAGEHLP_DEFERRED_SYMBOL_LOAD64 1404 #define PIMAGEHLP_DEFERRED_SYMBOL_LOAD PIMAGEHLP_DEFERRED_SYMBOL_LOAD64 2116 #ifdef WORDS_BIGENDIAN 2138 #ifdef WORDS_BIGENDIAN 2223 #if (__STDC__ && !defined(_FORCENAMELESSUNION)) || defined(NONAMELESSUNION) 2224 #define __VARIANT_NAME_1 n1 2225 #define __VARIANT_NAME_2 n2 2226 #define __VARIANT_NAME_3 n3 2227 #define __VARIANT_NAME_4 brecVal 2229 #define __tagVARIANT 2230 #define __VARIANT_NAME_1 2231 #define __VARIANT_NAME_2 2232 #define __VARIANT_NAME_3 2233 #define __tagBRECORD 2234 #define __VARIANT_NAME_4
struct _LDT_ENTRY::@343::@345 Bits
struct _EXCEPTION_RECORD * PEXCEPTION_RECORD
struct _THREAD_BASIC_INFORMATION THREAD_BASIC_INFORMATION
struct API_VERSION * LPAPI_VERSION
BOOL WINAPI SymCleanup(HANDLE hProcess)
const char * wine_dbg_sprintf(const char *format,...)
#define WOW64_MAXIMUM_SUPPORTED_EXTENSION
BOOL(CALLBACK * PENUMLOADED_MODULES_CALLBACKW64)(PCWSTR, DWORD64, ULONG, PVOID)
static __inline const char * debugstr_w(const WCHAR *s)
ULONG Win32ClientInfo[31]
struct tagDEC::@350::@352 DUMMYSTRUCTNAME
#define WOW64_SIZE_OF_80387_REGISTERS
WCHAR StaticUnicodeBuffer[261]
PVOID Instrumentation[16]
struct _IMAGEHLP_MODULEW64 IMAGEHLP_MODULEW64
struct _EXCEPTION_REGISTRATION_RECORD * Next
struct _IMAGEHLP_LINEW * PIMAGEHLP_LINEW
_In_ ULONG _In_ ULONG _In_ ULONG Length
DWORD64 WINAPI SymLoadModuleExW(HANDLE, HANDLE, PCWSTR, PCWSTR, DWORD64, DWORD, PMODLOAD_DATA, DWORD)
PVOID GdiThreadLocaleInfo
struct _IMAGEHLP_LINEW IMAGEHLP_LINEW
BOOL(CALLBACK * PENUMLOADED_MODULES_CALLBACK64)(PCSTR, DWORD64, ULONG, PVOID)
DWORD WINAPI SymLoadModule(HANDLE hProcess, HANDLE hFile, PCSTR ImageName, PCSTR ModuleName, DWORD BaseOfDll, DWORD SizeOfDll)
struct _SECURITY_ATTRIBUTES * LPSECURITY_ATTRIBUTES
BOOL(CALLBACK * PENUMDIRTREE_CALLBACKW)(PCWSTR, PVOID)
_In_ WDFIOTARGET _In_ PWDF_REQUEST_COMPLETION_PARAMS Params
struct _IMAGEHLP_MODULE * PIMAGEHLP_MODULE
_IRQL_requires_same_ _In_ PVOID EstablisherFrame
EXCEPTION_DISPOSITION NTAPI EXCEPTION_ROUTINE(struct _EXCEPTION_RECORD *ExceptionRecord, PVOID EstablisherFrame, struct _CONTEXT *ContextRecord, PVOID DispatcherContext)
struct _SOURCEFILE SOURCEFILE
IMAGEHLP_EXTENDED_OPTIONS
struct _CONTEXT::@3716::@3717 DUMMYSTRUCTNAME
FLOATING_SAVE_AREA FloatSave
DWORD WINAPI SymSetOptions(DWORD opts)
PVOID WINAPI SymFunctionTableAccess(HANDLE, DWORD)
struct _IMAGEHLP_SYMBOL * PIMAGEHLP_SYMBOL
BYTE ExtendedRegisters[WOW64_MAXIMUM_SUPPORTED_EXTENSION]
VARIANTARG * LPVARIANTARG
struct tagVS_FIXEDFILEINFO VS_FIXEDFILEINFO
struct _IMAGE_DEBUG_DIRECTORY IMAGE_DEBUG_DIRECTORY
struct _IMAGE_SEPARATE_DEBUG_HEADER * PIMAGE_SEPARATE_DEBUG_HEADER
struct _EXCEPTION_REGISTRATION_RECORD EXCEPTION_REGISTRATION_RECORD
DWORD64 WINAPI SymLoadModuleEx(HANDLE, HANDLE, PCSTR, PCSTR, DWORD64, DWORD, PMODLOAD_DATA, DWORD)
struct _tagADDRESS64 ADDRESS64
DWORD64 KeUserCallbackDispatcher
struct _STACKFRAME64 STACKFRAME64
ULONG64 BackingStoreOffset
struct _IMAGEHLP_DEFERRED_SYMBOL_LOAD64 IMAGEHLP_DEFERRED_SYMBOL_LOAD64
PVOID WINAPI SymFunctionTableAccess64(HANDLE, DWORD64)
struct _MINIDUMP_CALLBACK_INPUT MINIDUMP_CALLBACK_INPUT
BOOL(CALLBACK * PSYM_ENUMLINES_CALLBACKW)(PSRCCODEINFOW, PVOID)
FLOATING_SAVE_AREA * PFLOATING_SAVE_AREA
BOOL(CALLBACK * PSYM_ENUMSYMBOLS_CALLBACK64)(PCSTR, DWORD64, ULONG, PVOID)
IN PVOID IN PVOID IN USHORT IN USHORT Size
const char * wine_dbgstr_an(const char *s, int n)
#define EXCEPTION_MAXIMUM_PARAMETERS
_In_ BOOL _In_ HANDLE hProcess
PVOID(CALLBACK * PFUNCTION_TABLE_ACCESS_ROUTINE64)(HANDLE, DWORD64)
union _CONTEXT::@3707 DUMMYUNIONNAME
DWORD64(CALLBACK * PGET_MODULE_BASE_ROUTINE64)(HANDLE, DWORD64)
struct _MINIDUMP_THREAD_CALLBACK * PMINIDUMP_THREAD_CALLBACK
struct _IMAGEHLP_DEFERRED_SYMBOL_LOADW64 IMAGEHLP_DEFERRED_SYMBOL_LOADW64
ACPI_BUFFER *RetBuffer ACPI_BUFFER *RetBuffer char ACPI_WALK_RESOURCE_CALLBACK void *Context ACPI_BUFFER *RetBuffer UINT16 ACPI_RESOURCE **ResourcePtr ACPI_GENERIC_ADDRESS *Reg UINT32 *ReturnValue UINT8 UINT8 *Slp_TypB ACPI_PHYSICAL_ADDRESS PhysicalAddress64 UINT32 UINT32 *TimeElapsed UINT32 ACPI_STATUS const char UINT32 ACPI_STATUS const char UINT32 const char const char * ModuleName
struct _MINIDUMP_CALLBACK_INPUT * PMINIDUMP_CALLBACK_INPUT
struct _STACK32FRAME STACK32FRAME
BOOL(CALLBACK * PFIND_EXE_FILE_CALLBACKW)(HANDLE, PCWSTR, PVOID)
WCHAR * __lstrcpynW(WCHAR *lpString1, const WCHAR *lpString2, int iMaxLength)
struct _KDHELP64 KDHELP64
BOOLEAN NTAPI RtlDeleteFunctionTable(_In_ PRUNTIME_FUNCTION FunctionTable)
_IMAGEHLP_SYMBOL_TYPE_INFO
struct _IMAGE_DEBUG_MISC IMAGE_DEBUG_MISC
ULONG WaitingOnLoaderLock
struct _tagADDRESS ADDRESS
BOOL(CALLBACK * PSYM_ENUMSYMBOLS_CALLBACKW)(PCWSTR, ULONG, ULONG, PVOID)
struct _MINIDUMP_CALLBACK_OUTPUT * PMINIDUMP_CALLBACK_OUTPUT
struct API_VERSION API_VERSION
PVOID ArbitraryUserPointer
BOOLEAN NTAPI RtlAddFunctionTable(_In_ PRUNTIME_FUNCTION FunctionTable, _In_ DWORD EntryCount, _In_ DWORD64 BaseAddress)
static __inline const char * wine_dbgstr_w(const WCHAR *s)
struct _IMAGEHLP_DEFERRED_SYMBOL_LOAD * PIMAGEHLP_DEFERRED_SYMBOL_LOAD
struct tagVARIANT::@354::__tagVARIANT::@355::__tagBRECORD __VARIANT_NAME_4
struct _STACK16FRAME STACK16FRAME
BOOL(CALLBACK * PENUMLOADED_MODULES_CALLBACK)(PCSTR, ULONG, ULONG, PVOID)
GLint GLint GLsizei GLsizei GLsizei GLint GLenum format
PEXCEPTION_ROUTINE Handler
INT __WideCharToMultiByte(UINT page, DWORD flags, LPCWSTR src, INT srclen, LPSTR dst, INT dstlen, LPCSTR defchar, BOOL *used)
HANDLE __CreateFileW(LPCWSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile)