Unified · Split
| @@ -58,9 +58,9 @@ these checks even if non patched libraries are used. · 57 unmodified lines | ||
| 58 | 58 | With @code{libtcc}, you can use TCC as a backend for dynamic code |
| 59 | 59 | generation (@pxref{Libtcc}). |
| 60 | 60 | |
| 61 | −TCC mainly supports the i386 target. There are alpha ports for the ARM | |
| 62 | −(@code{arm-tcc}) and the TMS320C67xx targets (@code{c67-tcc}). More | |
| 63 | −information about the ARM port is available at | |
| 61 | +TCC mainly supports the i386 target on Linux and Windows. There are alpha | |
| 62 | +ports for the ARM (@code{arm-tcc}) and the TMS320C67xx targets | |
| 63 | +(@code{c67-tcc}). More information about the ARM port is available at | |
| 64 | 64 | @url{http://lists.gnu.org/archive/html/tinycc-devel/2003-10/msg00044.html}. |
| 65 | 65 | |
| 66 | 66 | @node Invoke |
| @@ -85,6 +85,10 @@ · 84 unmodified lines | ||
| 85 | 85 | #define CONFIG_TCC_BCHECK /* enable bound checking code */ |
| 86 | 86 | #endif |
| 87 | 87 | |
| 88 | +#if defined(WIN32) && !defined(TCC_TARGET_PE) | |
| 89 | +#define CONFIG_TCC_STATIC | |
| 90 | +#endif | |
| 91 | + | |
| 88 | 92 | /* define it to include assembler support */ |
| 89 | 93 | #if !defined(TCC_TARGET_ARM) && !defined(TCC_TARGET_C67) |
| 90 | 94 | #define CONFIG_TCC_ASM |
| @@ -392,7 +396,7 @@ static const char **rt_bound_error_msg; · 301 unmodified lines | ||
| 392 | 396 | static struct TCCState *tcc_state; |
| 393 | 397 | |
| 394 | 398 | /* give the path of the tcc libraries */ |
| 395 | −static const char *tcc_lib_path = CONFIG_TCC_LIBDIR "/tcc"; | |
| 399 | +static const char *tcc_lib_path = CONFIG_TCCDIR; | |
| 396 | 400 | |
| 397 | 401 | struct TCCState { |
| 398 | 402 | int output_type; |
| @@ -699,6 +703,12 @@ static const char tcc_keywords[] = · 300 unmodified lines | ||
| 699 | 703 | #define TOK_UIDENT TOK_DEFINE |
| 700 | 704 | |
| 701 | 705 | #ifdef WIN32 |
| 706 | +int __stdcall GetModuleFileNameA(void *, char *, int); | |
| 707 | +void *__stdcall GetProcAddress(void *, const char *); | |
| 708 | +void *__stdcall GetModuleHandleA(const char *); | |
| 709 | +void *__stdcall LoadLibraryA(const char *); | |
| 710 | +int __stdcall FreeConsole(void); | |
| 711 | + | |
| 702 | 712 | #define snprintf _snprintf |
| 703 | 713 | #define vsnprintf _vsnprintf |
| 704 | 714 | #endif |
| @@ -10499,7 +10509,8 @@ int main(int argc, char **argv) · 9794 unmodified lines | ||
| 10499 | 10509 | of 'tcc.exe' */ |
| 10500 | 10510 | { |
| 10501 | 10511 | static char path[1024]; |
| 10502 | − | |
| 10512 | + char *p, *d; | |
| 10513 | + | |
| 10503 | 10514 | GetModuleFileNameA(NULL, path, sizeof path); |
| 10504 | 10515 | p = d = strlwr(path); |
| 10505 | 10516 | while (*d) |
| @@ -380,14 +380,6 @@ ST char pe_type; · 379 unmodified lines | ||
| 380 | 380 | #define PE_GUI 2 |
| 381 | 381 | #define PE_EXE 3 |
| 382 | 382 | |
| 383 | −#ifdef WIN32 | |
| 384 | −int __stdcall GetModuleFileNameA(void *, char *, int); | |
| 385 | −void *__stdcall GetProcAddress(void *, const char *); | |
| 386 | −void *__stdcall GetModuleHandleA(const char *); | |
| 387 | −void *__stdcall LoadLibraryA(const char *); | |
| 388 | −int __stdcall FreeConsole(void); | |
| 389 | −#endif | |
| 390 | − | |
| 391 | 383 | ST int pe_find_import(TCCState * s1, const char *symbol, char *ret) |
| 392 | 384 | { |
| 393 | 385 | int sym_index = find_elf_sym(s1->dynsymtab_section, symbol); |
| @@ -0,0 +1,372 @@ | ||
| 1 | +/* -------------------------------------------------------------- */ | |
| 2 | +/* | |
| 3 | + "tiny_impdef creates a .def file from a dll" | |
| 4 | + | |
| 5 | + "Usage: tiny_impdef [-p] <library.dll> [-o outputfile]" | |
| 6 | + "Options:" | |
| 7 | + " -p print to stdout" | |
| 8 | +*/ | |
| 9 | + | |
| 10 | +#include <windows.h> | |
| 11 | +#include <stdio.h> | |
| 12 | + | |
| 13 | +/* Offset to PE file signature */ | |
| 14 | +#define NTSIGNATURE(a) ((LPVOID)((BYTE *)a + \ | |
| 15 | + ((PIMAGE_DOS_HEADER)a)->e_lfanew)) | |
| 16 | + | |
| 17 | +/* MS-OS header identifies the NT PEFile signature dword; | |
| 18 | + the PEFILE header exists just after that dword. */ | |
| 19 | +#define PEFHDROFFSET(a) ((LPVOID)((BYTE *)a + \ | |
| 20 | + ((PIMAGE_DOS_HEADER)a)->e_lfanew + \ | |
| 21 | + SIZE_OF_NT_SIGNATURE)) | |
| 22 | + | |
| 23 | +/* PE optional header is immediately after PEFile header. */ | |
| 24 | +#define OPTHDROFFSET(a) ((LPVOID)((BYTE *)a + \ | |
| 25 | + ((PIMAGE_DOS_HEADER)a)->e_lfanew + \ | |
| 26 | + SIZE_OF_NT_SIGNATURE + \ | |
| 27 | + sizeof (IMAGE_FILE_HEADER))) | |
| 28 | + | |
| 29 | +/* Section headers are immediately after PE optional header. */ | |
| 30 | +#define SECHDROFFSET(a) ((LPVOID)((BYTE *)a + \ | |
| 31 | + ((PIMAGE_DOS_HEADER)a)->e_lfanew + \ | |
| 32 | + SIZE_OF_NT_SIGNATURE + \ | |
| 33 | + sizeof (IMAGE_FILE_HEADER) + \ | |
| 34 | + sizeof (IMAGE_OPTIONAL_HEADER))) | |
| 35 | + | |
| 36 | + | |
| 37 | +#define SIZE_OF_NT_SIGNATURE 4 | |
| 38 | + | |
| 39 | +/* -------------------------------------------------------------- */ | |
| 40 | + | |
| 41 | +int WINAPI NumOfSections ( | |
| 42 | + LPVOID lpFile) | |
| 43 | +{ | |
| 44 | + /* Number of sections is indicated in file header. */ | |
| 45 | + return (int) | |
| 46 | + ((PIMAGE_FILE_HEADER) | |
| 47 | + PEFHDROFFSET(lpFile))->NumberOfSections; | |
| 48 | +} | |
| 49 | + | |
| 50 | + | |
| 51 | +/* -------------------------------------------------------------- */ | |
| 52 | + | |
| 53 | +LPVOID WINAPI ImageDirectoryOffset ( | |
| 54 | + LPVOID lpFile, | |
| 55 | + DWORD dwIMAGE_DIRECTORY) | |
| 56 | +{ | |
| 57 | + PIMAGE_OPTIONAL_HEADER poh; | |
| 58 | + PIMAGE_SECTION_HEADER psh; | |
| 59 | + int nSections = NumOfSections (lpFile); | |
| 60 | + int i = 0; | |
| 61 | + LPVOID VAImageDir; | |
| 62 | + | |
| 63 | + /* Retrieve offsets to optional and section headers. */ | |
| 64 | + poh = (PIMAGE_OPTIONAL_HEADER)OPTHDROFFSET (lpFile); | |
| 65 | + psh = (PIMAGE_SECTION_HEADER)SECHDROFFSET (lpFile); | |
| 66 | + | |
| 67 | + /* Must be 0 thru (NumberOfRvaAndSizes-1). */ | |
| 68 | + if (dwIMAGE_DIRECTORY >= poh->NumberOfRvaAndSizes) | |
| 69 | + return NULL; | |
| 70 | + | |
| 71 | + /* Locate image directory's relative virtual address. */ | |
| 72 | + VAImageDir = (LPVOID)poh->DataDirectory | |
| 73 | + [dwIMAGE_DIRECTORY].VirtualAddress; | |
| 74 | + | |
| 75 | + /* Locate section containing image directory. */ | |
| 76 | + while (i++<nSections) | |
| 77 | + { | |
| 78 | + if (psh->VirtualAddress <= (DWORD)VAImageDir | |
| 79 | + && psh->VirtualAddress + psh->SizeOfRawData > (DWORD)VAImageDir) | |
| 80 | + break; | |
| 81 | + psh++; | |
| 82 | + } | |
| 83 | + | |
| 84 | + if (i > nSections) | |
| 85 | + return NULL; | |
| 86 | + | |
| 87 | + /* Return image import directory offset. */ | |
| 88 | + return (LPVOID)(((int)lpFile + | |
| 89 | + (int)VAImageDir - psh->VirtualAddress) + | |
| 90 | + (int)psh->PointerToRawData); | |
| 91 | +} | |
| 92 | + | |
| 93 | +/* -------------------------------------------------------------- */ | |
| 94 | + | |
| 95 | +BOOL WINAPI GetSectionHdrByName ( | |
| 96 | + LPVOID lpFile, | |
| 97 | + IMAGE_SECTION_HEADER *sh, | |
| 98 | + char *szSection) | |
| 99 | +{ | |
| 100 | + PIMAGE_SECTION_HEADER psh; | |
| 101 | + int nSections = NumOfSections (lpFile); | |
| 102 | + int i; | |
| 103 | + | |
| 104 | + if ((psh = (PIMAGE_SECTION_HEADER)SECHDROFFSET (lpFile)) != | |
| 105 | + NULL) | |
| 106 | + { | |
| 107 | + /* find the section by name */ | |
| 108 | + for (i=0; i<nSections; i++) | |
| 109 | + { | |
| 110 | + if (!strcmp (psh->Name, szSection)) | |
| 111 | + { | |
| 112 | + /* copy data to header */ | |
| 113 | + memcpy ((LPVOID)sh, | |
| 114 | + (LPVOID)psh, | |
| 115 | + sizeof (IMAGE_SECTION_HEADER)); | |
| 116 | + return TRUE; | |
| 117 | + } | |
| 118 | + else | |
| 119 | + psh++; | |
| 120 | + } | |
| 121 | + } | |
| 122 | + | |
| 123 | + return FALSE; | |
| 124 | +} | |
| 125 | + | |
| 126 | +/* -------------------------------------------------------------- */ | |
| 127 | + | |
| 128 | +BOOL WINAPI GetSectionHdrByAddress ( | |
| 129 | + LPVOID lpFile, | |
| 130 | + IMAGE_SECTION_HEADER *sh, | |
| 131 | + DWORD addr) | |
| 132 | +{ | |
| 133 | + PIMAGE_SECTION_HEADER psh; | |
| 134 | + int nSections = NumOfSections (lpFile); | |
| 135 | + int i; | |
| 136 | + | |
| 137 | + if ((psh = (PIMAGE_SECTION_HEADER)SECHDROFFSET (lpFile)) != | |
| 138 | + NULL) | |
| 139 | + { | |
| 140 | + /* find the section by name */ | |
| 141 | + for (i=0; i<nSections; i++) | |
| 142 | + { | |
| 143 | + if (addr >= psh->VirtualAddress && addr < psh->VirtualAddress + psh->SizeOfRawData) | |
| 144 | + { | |
| 145 | + /* copy data to header */ | |
| 146 | + memcpy ((LPVOID)sh, | |
| 147 | + (LPVOID)psh, | |
| 148 | + sizeof (IMAGE_SECTION_HEADER)); | |
| 149 | + return TRUE; | |
| 150 | + } | |
| 151 | + else | |
| 152 | + psh++; | |
| 153 | + } | |
| 154 | + } | |
| 155 | + | |
| 156 | + return FALSE; | |
| 157 | +} | |
| 158 | + | |
| 159 | +/* -------------------------------------------------------------- */ | |
| 160 | + | |
| 161 | +int WINAPI GetExportFunctionNames ( | |
| 162 | + LPVOID lpFile, | |
| 163 | + HANDLE hHeap, | |
| 164 | + char **pszFunctions) | |
| 165 | +{ | |
| 166 | + IMAGE_SECTION_HEADER sh; | |
| 167 | + PIMAGE_EXPORT_DIRECTORY ped; | |
| 168 | + int *pNames, *pCnt; | |
| 169 | + char *pSrc, *pDest; | |
| 170 | + int i, nCnt; | |
| 171 | + DWORD VAImageDir; | |
| 172 | + PIMAGE_OPTIONAL_HEADER poh; | |
| 173 | + char *pOffset; | |
| 174 | + | |
| 175 | + /* Get section header and pointer to data directory | |
| 176 | + for .edata section. */ | |
| 177 | + if ((ped = (PIMAGE_EXPORT_DIRECTORY)ImageDirectoryOffset | |
| 178 | + (lpFile, IMAGE_DIRECTORY_ENTRY_EXPORT)) == NULL) | |
| 179 | + return 0; | |
| 180 | + | |
| 181 | + poh = (PIMAGE_OPTIONAL_HEADER)OPTHDROFFSET (lpFile); | |
| 182 | + VAImageDir = poh->DataDirectory[IMAGE_DIRECTORY_ENTRY_EXPORT].VirtualAddress; | |
| 183 | + | |
| 184 | + if (FALSE == GetSectionHdrByAddress (lpFile, &sh, VAImageDir)) return 0; | |
| 185 | + | |
| 186 | + pOffset = (char *)lpFile + (sh.PointerToRawData - sh.VirtualAddress); | |
| 187 | + | |
| 188 | + pNames = (int *)(pOffset + (DWORD)ped->AddressOfNames); | |
| 189 | + | |
| 190 | + /* Figure out how much memory to allocate for all strings. */ | |
| 191 | + nCnt = 1; | |
| 192 | + for (i=0, pCnt = pNames; i<(int)ped->NumberOfNames; i++) | |
| 193 | + { | |
| 194 | + pSrc = (pOffset + *pCnt++); | |
| 195 | + if (pSrc) nCnt += strlen(pSrc)+1; | |
| 196 | + } | |
| 197 | + | |
| 198 | + /* Allocate memory off heap for function names. */ | |
| 199 | + pDest = *pszFunctions = HeapAlloc (hHeap, HEAP_ZERO_MEMORY, nCnt); | |
| 200 | + | |
| 201 | + /* Copy all strings to buffer. */ | |
| 202 | + for (i=0, pCnt = pNames; i<(int)ped->NumberOfNames; i++) | |
| 203 | + { | |
| 204 | + pSrc = (pOffset + *pCnt++); | |
| 205 | + if (pSrc) { strcpy(pDest, pSrc); pDest += strlen(pSrc)+1; } | |
| 206 | + } | |
| 207 | + *pDest = 0; | |
| 208 | + | |
| 209 | + return ped->NumberOfNames; | |
| 210 | +} | |
| 211 | + | |
| 212 | +/* -------------------------------------------------------------- */ | |
| 213 | + | |
| 214 | +int main(int argc, char **argv) | |
| 215 | +{ | |
| 216 | + | |
| 217 | + HANDLE hHeap; HANDLE hFile; HANDLE hMapObject; VOID *pMem; | |
| 218 | + int nCnt, ret, argind, std; | |
| 219 | + char *pNames; | |
| 220 | + char infile[MAX_PATH]; | |
| 221 | + char buffer[MAX_PATH]; | |
| 222 | + char outfile[MAX_PATH]; | |
| 223 | + char libname[80]; | |
| 224 | + | |
| 225 | + hHeap = NULL; | |
| 226 | + hFile = NULL; | |
| 227 | + hMapObject = NULL; | |
| 228 | + pMem = NULL; | |
| 229 | + infile[0] = 0; | |
| 230 | + outfile[0] = 0; | |
| 231 | + ret = 0; | |
| 232 | + std = 0; | |
| 233 | + | |
| 234 | + for (argind = 1; argind < argc; ++argind) | |
| 235 | + { | |
| 236 | + const char *a = argv[argind]; | |
| 237 | + if ('-' == a[0]) | |
| 238 | + { | |
| 239 | + if (0 == strcmp(a, "-p")) | |
| 240 | + std = 1; | |
| 241 | + else | |
| 242 | + if (0 == strcmp(a, "-o")) | |
| 243 | + { | |
| 244 | + if (++argind == argc) goto usage; | |
| 245 | + strcpy(outfile, argv[argind]); | |
| 246 | + } | |
| 247 | + else | |
| 248 | + goto usage; | |
| 249 | + } | |
| 250 | + else | |
| 251 | + if (0 == infile[0]) | |
| 252 | + strcpy(infile, a); | |
| 253 | + else | |
| 254 | + goto usage; | |
| 255 | + } | |
| 256 | + | |
| 257 | + if (0 == infile[0]) | |
| 258 | + { | |
| 259 | +usage: | |
| 260 | + fprintf(stderr, | |
| 261 | + "tiny_impdef creates a .def file from a dll\n" | |
| 262 | + "Usage: tiny_impdef [-p] <library.dll> [-o outputfile]\n" | |
| 263 | + "Options:\n" | |
| 264 | + " -p print to stdout\n" | |
| 265 | + ); | |
| 266 | +error: | |
| 267 | + ret = 1; | |
| 268 | + goto the_end; | |
| 269 | + } | |
| 270 | + | |
| 271 | + if (SearchPath(NULL, infile, ".dll", sizeof buffer, buffer, NULL)) | |
| 272 | + strcpy(infile, buffer); | |
| 273 | + | |
| 274 | + if (0 == outfile[0]) | |
| 275 | + { | |
| 276 | + char *p; | |
| 277 | + p = strrchr(strcpy(outfile, infile), '\\'); | |
| 278 | + if (NULL == p) | |
| 279 | + p = strrchr(outfile, '/'); | |
| 280 | + if (p) strcpy(outfile, p+1); | |
| 281 | + | |
| 282 | + p = strrchr(outfile, '.'); | |
| 283 | + if (NULL == p) p = strchr(outfile, 0); | |
| 284 | + strcpy(p, ".def"); | |
| 285 | + } | |
| 286 | + | |
| 287 | + hFile=CreateFile( | |
| 288 | + infile, | |
| 289 | + GENERIC_READ, | |
| 290 | + FILE_SHARE_READ, | |
| 291 | + NULL, | |
| 292 | + OPEN_EXISTING, | |
| 293 | + 0, | |
| 294 | + NULL | |
| 295 | + ); | |
| 296 | + | |
| 297 | + if (hFile == INVALID_HANDLE_VALUE) | |
| 298 | + { | |
| 299 | + fprintf(stderr, "file not found: %s\n", infile); | |
| 300 | + goto error; | |
| 301 | + } | |
| 302 | + | |
| 303 | + if (!std) printf("--> %s\n", infile); | |
| 304 | + | |
| 305 | + hMapObject = CreateFileMapping( | |
| 306 | + hFile, | |
| 307 | + NULL, | |
| 308 | + PAGE_READONLY, | |
| 309 | + 0, 0, | |
| 310 | + NULL | |
| 311 | + ); | |
| 312 | + | |
| 313 | + if (NULL == hMapObject) | |
| 314 | + { | |
| 315 | + fprintf(stderr, "could not create file mapping.\n"); | |
| 316 | + goto error; | |
| 317 | + } | |
| 318 | + | |
| 319 | + pMem = MapViewOfFile( | |
| 320 | + hMapObject, // object to map view of | |
| 321 | + FILE_MAP_READ, // read access | |
| 322 | + 0, // high offset: map from | |
| 323 | + 0, // low offset: beginning | |
| 324 | + 0); // default: map entire file | |
| 325 | + | |
| 326 | + if (NULL == pMem) | |
| 327 | + { | |
| 328 | + fprintf(stderr, "could not map view of file.\n"); | |
| 329 | + goto error; | |
| 330 | + } | |
| 331 | + | |
| 332 | + hHeap = GetProcessHeap(); | |
| 333 | + nCnt = GetExportFunctionNames(pMem, hHeap, &pNames); | |
| 334 | + { | |
| 335 | + FILE *op; char *p; int n; | |
| 336 | + if (!std) printf("<-- %s\n", outfile); | |
| 337 | + | |
| 338 | + if (std) | |
| 339 | + op = stdout; | |
| 340 | + else | |
| 341 | + op = fopen(outfile, "wt"); | |
| 342 | + | |
| 343 | + if (NULL == op) | |
| 344 | + { | |
| 345 | + fprintf(stderr, "could not create file: %s\n", outfile); | |
| 346 | + goto error; | |
| 347 | + } | |
| 348 | + | |
| 349 | + p = strrchr(infile, '\\'); | |
| 350 | + if (NULL == p) | |
| 351 | + p = strrchr(infile, '/'); | |
| 352 | + if (NULL == p) p = infile; else ++p; | |
| 353 | + | |
| 354 | + fprintf(op, "LIBRARY %s\n\nEXPORTS", p); | |
| 355 | + if (std) fprintf(op, " (%d)", nCnt); | |
| 356 | + fprintf(op, "\n"); | |
| 357 | + for (n = 0, p = pNames; n < nCnt; ++n) | |
| 358 | + { | |
| 359 | + fprintf(op, "%s\n", p); | |
| 360 | + while (*p++); | |
| 361 | + } | |
| 362 | + if (!std) fclose(op); | |
| 363 | + } | |
| 364 | + | |
| 365 | +the_end: | |
| 366 | + if (pMem) UnmapViewOfFile(pMem); | |
| 367 | + if (hMapObject) CloseHandle(hMapObject); | |
| 368 | + if (hFile) CloseHandle(hFile); | |
| 369 | + return ret; | |
| 370 | +} | |
| 371 | +/* -------------------------------------------------------------- */ | |
| 372 | + | |
| @@ -0,0 +1,15 @@ | ||
| 1 | +//+--------------------------------------------------------------------------- | |
| 2 | +// | |
| 3 | +// dll.c - Windows DLL example - dynamically linked part | |
| 4 | +// | |
| 5 | + | |
| 6 | +#include <windows.h> | |
| 7 | + | |
| 8 | +#define DLL_EXPORT __declspec(dllexport) | |
| 9 | + | |
| 10 | + | |
| 11 | +DLL_EXPORT void HelloWorld (void) | |
| 12 | +{ | |
| 13 | + MessageBox (0, "Hello World!", "From DLL", MB_ICONINFORMATION); | |
| 14 | +} | |
| 15 | + | |
| @@ -0,0 +1,6 @@ | ||
| 1 | +; Windows DLL example - export definition for the DLL | |
| 2 | + | |
| 3 | +LIBRARY dll.dll | |
| 4 | + | |
| 5 | +EXPORTS | |
| 6 | +HelloWorld | |
| @@ -0,0 +1,23 @@ | ||
| 1 | +#include <stdio.h> | |
| 2 | + | |
| 3 | +int fib(n) | |
| 4 | +{ | |
| 5 | + if (n <= 2) | |
| 6 | + return 1; | |
| 7 | + else | |
| 8 | + return fib(n-1) + fib(n-2); | |
| 9 | +} | |
| 10 | + | |
| 11 | +int main(int argc, char **argv) | |
| 12 | +{ | |
| 13 | + int n; | |
| 14 | + if (argc < 2) { | |
| 15 | + printf("usage: fib n\n" | |
| 16 | + "Compute nth Fibonacci number\n"); | |
| 17 | + return 1; | |
| 18 | + } | |
| 19 | + | |
| 20 | + n = atoi(argv[1]); | |
| 21 | + printf("fib(%d) = %d\n", n, fib(n, 2)); | |
| 22 | + return 0; | |
| 23 | +} | |
| @@ -0,0 +1,19 @@ | ||
| 1 | +//+--------------------------------------------------------------------------- | |
| 2 | +// | |
| 3 | +// HELLO_DLL.C - Windows DLL example - main application part | |
| 4 | +// | |
| 5 | + | |
| 6 | +#include <windows.h> | |
| 7 | + | |
| 8 | +void HelloWorld (void); | |
| 9 | + | |
| 10 | +int WINAPI WinMain( | |
| 11 | + HINSTANCE hInstance, | |
| 12 | + HINSTANCE hPrevInstance, | |
| 13 | + LPSTR lpCmdLine, | |
| 14 | + int nCmdShow) | |
| 15 | +{ | |
| 16 | + HelloWorld(); | |
| 17 | + return 0; | |
| 18 | +} | |
| 19 | + | |
| @@ -0,0 +1,159 @@ | ||
| 1 | +//+--------------------------------------------------------------------------- | |
| 2 | +// | |
| 3 | +// HELLO_WIN.C - Windows GUI 'Hello World!' Example | |
| 4 | +// | |
| 5 | +//+--------------------------------------------------------------------------- | |
| 6 | + | |
| 7 | +#include <windows.h> | |
| 8 | + | |
| 9 | +#define APPNAME "HELLO_WIN" | |
| 10 | + | |
| 11 | +char szAppName[] = APPNAME; // The name of this application | |
| 12 | +char szTitle[] = APPNAME; // The title bar text | |
| 13 | +char *pWindowText; | |
| 14 | + | |
| 15 | +HINSTANCE g_hInst; // current instance | |
| 16 | + | |
| 17 | +void CenterWindow(HWND hWnd); | |
| 18 | + | |
| 19 | +//+--------------------------------------------------------------------------- | |
| 20 | +// | |
| 21 | +// Function: WndProc | |
| 22 | +// | |
| 23 | +// Synopsis: very unusual type of function - gets called by system to | |
| 24 | +// process windows messages. | |
| 25 | +// | |
| 26 | +// Arguments: same as always. | |
| 27 | +//---------------------------------------------------------------------------- | |
| 28 | + | |
| 29 | +LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) | |
| 30 | +{ | |
| 31 | + switch (message) | |
| 32 | + { | |
| 33 | + // ----------------------- first and last | |
| 34 | + case WM_CREATE: | |
| 35 | + CenterWindow(hwnd); | |
| 36 | + break; | |
| 37 | + | |
| 38 | + case WM_DESTROY: | |
| 39 | + PostQuitMessage(0); | |
| 40 | + break; | |
| 41 | + | |
| 42 | + | |
| 43 | + // ----------------------- get out of it... | |
| 44 | + case WM_RBUTTONUP: | |
| 45 | + DestroyWindow(hwnd); | |
| 46 | + break; | |
| 47 | + | |
| 48 | + case WM_KEYDOWN: | |
| 49 | + if (VK_ESCAPE == wParam) | |
| 50 | + DestroyWindow(hwnd); | |
| 51 | + break; | |
| 52 | + | |
| 53 | + | |
| 54 | + // ----------------------- display our minimal info | |
| 55 | + case WM_PAINT: | |
| 56 | + { | |
| 57 | + PAINTSTRUCT ps; | |
| 58 | + HDC hdc; | |
| 59 | + RECT rc; | |
| 60 | + hdc = BeginPaint(hwnd, &ps); | |
| 61 | + | |
| 62 | + GetClientRect(hwnd, &rc); | |
| 63 | + SetTextColor(hdc, RGB(240,240,96)); | |
| 64 | + SetBkMode(hdc, TRANSPARENT); | |
| 65 | + DrawText(hdc, pWindowText, -1, &rc, DT_CENTER|DT_SINGLELINE|DT_VCENTER); | |
| 66 | + | |
| 67 | + EndPaint(hwnd, &ps); | |
| 68 | + break; | |
| 69 | + } | |
| 70 | + | |
| 71 | + // ----------------------- let windows do all other stuff | |
| 72 | + default: | |
| 73 | + return DefWindowProc(hwnd, message, wParam, lParam); | |
| 74 | + } | |
| 75 | + return 0; | |
| 76 | +} | |
| 77 | + | |
| 78 | +//+--------------------------------------------------------------------------- | |
| 79 | +// | |
| 80 | +// Function: WinMain | |
| 81 | +// | |
| 82 | +// Synopsis: standard entrypoint for GUI Win32 apps | |
| 83 | +// | |
| 84 | +//---------------------------------------------------------------------------- | |
| 85 | +int APIENTRY WinMain( | |
| 86 | + HINSTANCE hInstance, | |
| 87 | + HINSTANCE hPrevInstance, | |
| 88 | + LPSTR lpCmdLine, | |
| 89 | + int nCmdShow) | |
| 90 | +{ | |
| 91 | + MSG msg; | |
| 92 | + | |
| 93 | + WNDCLASS wc; | |
| 94 | + | |
| 95 | + HWND hwnd; | |
| 96 | + | |
| 97 | + // Fill in window class structure with parameters that describe | |
| 98 | + // the main window. | |
| 99 | + | |
| 100 | + ZeroMemory(&wc, sizeof wc); | |
| 101 | + wc.hInstance = hInstance; | |
| 102 | + wc.lpszClassName = szAppName; | |
| 103 | + wc.lpfnWndProc = (WNDPROC)WndProc; | |
| 104 | + wc.style = CS_DBLCLKS|CS_VREDRAW|CS_HREDRAW; | |
| 105 | + wc.hbrBackground = (HBRUSH)GetStockObject(BLACK_BRUSH); | |
| 106 | + wc.hIcon = LoadIcon(NULL, IDI_APPLICATION); | |
| 107 | + wc.hCursor = LoadCursor(NULL, IDC_ARROW); | |
| 108 | + | |
| 109 | + if (FALSE == RegisterClass(&wc)) return 0; | |
| 110 | + | |
| 111 | + // create the browser | |
| 112 | + hwnd = CreateWindow( | |
| 113 | + szAppName, | |
| 114 | + szTitle, | |
| 115 | + WS_OVERLAPPEDWINDOW|WS_VISIBLE, | |
| 116 | + CW_USEDEFAULT, | |
| 117 | + CW_USEDEFAULT, | |
| 118 | + 360,//CW_USEDEFAULT, | |
| 119 | + 240,//CW_USEDEFAULT, | |
| 120 | + 0, | |
| 121 | + 0, | |
| 122 | + g_hInst, | |
| 123 | + 0); | |
| 124 | + | |
| 125 | + if (NULL == hwnd) return 0; | |
| 126 | + | |
| 127 | + pWindowText = lpCmdLine[0] ? lpCmdLine : "Hello Windows!"; | |
| 128 | + | |
| 129 | + // Main message loop: | |
| 130 | + while (GetMessage(&msg, NULL, 0, 0) > 0) | |
| 131 | + { | |
| 132 | + TranslateMessage(&msg); | |
| 133 | + DispatchMessage(&msg); | |
| 134 | + } | |
| 135 | + | |
| 136 | + return msg.wParam; | |
| 137 | +} | |
| 138 | + | |
| 139 | +//+--------------------------------------------------------------------------- | |
| 140 | + | |
| 141 | +//+--------------------------------------------------------------------------- | |
| 142 | + | |
| 143 | +void CenterWindow(HWND hwnd_self) | |
| 144 | +{ | |
| 145 | + RECT rw_self, rc_parent, rw_parent; HWND hwnd_parent; | |
| 146 | + hwnd_parent = GetParent(hwnd_self); | |
| 147 | + if (NULL==hwnd_parent) hwnd_parent = GetDesktopWindow(); | |
| 148 | + GetWindowRect(hwnd_parent, &rw_parent); | |
| 149 | + GetClientRect(hwnd_parent, &rc_parent); | |
| 150 | + GetWindowRect(hwnd_self, &rw_self); | |
| 151 | + SetWindowPos(hwnd_self, NULL, | |
| 152 | + rw_parent.left + (rc_parent.right + rw_self.left - rw_self.right) / 2, | |
| 153 | + rw_parent.top + (rc_parent.bottom + rw_self.top - rw_self.bottom) / 2, | |
| 154 | + 0, 0, | |
| 155 | + SWP_NOSIZE|SWP_NOZORDER|SWP_NOACTIVATE | |
| 156 | + ); | |
| 157 | +} | |
| 158 | + | |
| 159 | +//+--------------------------------------------------------------------------- | |
| @@ -0,0 +1,51 @@ | ||
| 1 | +/* | |
| 2 | + * _mingw.h | |
| 3 | + * | |
| 4 | + * This file is for TCC-PE and not part of the Mingw32 package. | |
| 5 | + * | |
| 6 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 7 | + * | |
| 8 | + * This source code is offered for use in the public domain. You may | |
| 9 | + * use, modify or distribute it freely. | |
| 10 | + * | |
| 11 | + * This code is distributed in the hope that it will be useful but | |
| 12 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 13 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 14 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 15 | + * | |
| 16 | + */ | |
| 17 | + | |
| 18 | +#ifndef __MINGW_H | |
| 19 | +#define __MINGW_H | |
| 20 | + | |
| 21 | +#define __int64 long long | |
| 22 | +#define __int32 long | |
| 23 | +#define __int16 short | |
| 24 | +#define __int8 char | |
| 25 | +#define __cdecl __attribute__((__cdecl__)) | |
| 26 | +#define __stdcall __attribute__((__stdcall__)) | |
| 27 | +#define __declspec(x) __attribute__((x)) | |
| 28 | + | |
| 29 | +#define __MINGW32_VERSION 2.0 | |
| 30 | +#define __MINGW32_MAJOR_VERSION 2 | |
| 31 | +#define __MINGW32_MINOR_VERSION 0 | |
| 32 | + | |
| 33 | +#define __MSVCRT__ | |
| 34 | +#define __MINGW_IMPORT extern | |
| 35 | +#define _CRTIMP | |
| 36 | +#define __CRT_INLINE extern __inline__ | |
| 37 | + | |
| 38 | +#define _WIN32 | |
| 39 | +#define WIN32 | |
| 40 | + | |
| 41 | +#ifndef _WINT_T | |
| 42 | +#define _WINT_T | |
| 43 | +typedef unsigned int wint_t; | |
| 44 | +#endif | |
| 45 | + | |
| 46 | +/* for winapi */ | |
| 47 | +#define NONAMELESSUNION | |
| 48 | +#define DECLSPEC_NORETURN | |
| 49 | +#define WIN32_LEAN_AND_MEAN | |
| 50 | + | |
| 51 | +#endif /* __MINGW_H */ | |
| @@ -0,0 +1,71 @@ | ||
| 1 | +/* | |
| 2 | + * assert.h | |
| 3 | + * | |
| 4 | + * Define the assert macro for debug output. | |
| 5 | + * | |
| 6 | + * This file is part of the Mingw32 package. | |
| 7 | + * | |
| 8 | + * Contributors: | |
| 9 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 10 | + * | |
| 11 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 12 | + * | |
| 13 | + * This source code is offered for use in the public domain. You may | |
| 14 | + * use, modify or distribute it freely. | |
| 15 | + * | |
| 16 | + * This code is distributed in the hope that it will be useful but | |
| 17 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 18 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 19 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 20 | + * | |
| 21 | + * $Revision: 1.1 $ | |
| 22 | + * $Author: bellard $ | |
| 23 | + * $Date: 2005/04/14 23:49:21 $ | |
| 24 | + * | |
| 25 | + */ | |
| 26 | + | |
| 27 | +#ifndef _ASSERT_H_ | |
| 28 | +#define _ASSERT_H_ | |
| 29 | + | |
| 30 | +/* All the headers include this file. */ | |
| 31 | +#include <_mingw.h> | |
| 32 | + | |
| 33 | +#ifndef RC_INVOKED | |
| 34 | + | |
| 35 | +#ifdef __cplusplus | |
| 36 | +extern "C" { | |
| 37 | +#endif | |
| 38 | + | |
| 39 | +#ifdef NDEBUG | |
| 40 | + | |
| 41 | +/* | |
| 42 | + * If not debugging, assert does nothing. | |
| 43 | + */ | |
| 44 | +#define assert(x) ((void)0) | |
| 45 | + | |
| 46 | +#else /* debugging enabled */ | |
| 47 | + | |
| 48 | +/* | |
| 49 | + * CRTDLL nicely supplies a function which does the actual output and | |
| 50 | + * call to abort. | |
| 51 | + */ | |
| 52 | +void _assert (const char*, const char*, int) | |
| 53 | +#ifdef __GNUC__ | |
| 54 | + __attribute__ ((noreturn)) | |
| 55 | +#endif | |
| 56 | + ; | |
| 57 | + | |
| 58 | +/* | |
| 59 | + * Definition of the assert macro. | |
| 60 | + */ | |
| 61 | +#define assert(e) ((e) ? (void)0 : _assert(#e, __FILE__, __LINE__)) | |
| 62 | +#endif /* NDEBUG */ | |
| 63 | + | |
| 64 | +#ifdef __cplusplus | |
| 65 | +} | |
| 66 | +#endif | |
| 67 | + | |
| 68 | +#endif /* Not RC_INVOKED */ | |
| 69 | + | |
| 70 | +#endif /* Not _ASSERT_H_ */ | |
| 71 | + | |
| @@ -0,0 +1,159 @@ | ||
| 1 | +/* A conio implementation for Mingw/Dev-C++. | |
| 2 | + * | |
| 3 | + * Written by: | |
| 4 | + * Hongli Lai <hongli@telekabel.nl> | |
| 5 | + * tkorrovi <tkorrovi@altavista.net> on 2002/02/26. | |
| 6 | + * Andrew Westcott <ajwestco@users.sourceforge.net> | |
| 7 | + * | |
| 8 | + * Offered for use in the public domain without any warranty. | |
| 9 | + */ | |
| 10 | + | |
| 11 | +#ifndef _CONIO_H_ | |
| 12 | +#define _CONIO_H_ | |
| 13 | + | |
| 14 | + | |
| 15 | +#include <stdio.h> | |
| 16 | + | |
| 17 | +#ifdef __cplusplus | |
| 18 | +extern "C" { | |
| 19 | +#endif | |
| 20 | + | |
| 21 | +#define BLINK 0 | |
| 22 | + | |
| 23 | +typedef enum | |
| 24 | +{ | |
| 25 | + BLACK, | |
| 26 | + BLUE, | |
| 27 | + GREEN, | |
| 28 | + CYAN, | |
| 29 | + RED, | |
| 30 | + MAGENTA, | |
| 31 | + BROWN, | |
| 32 | + LIGHTGRAY, | |
| 33 | + DARKGRAY, | |
| 34 | + LIGHTBLUE, | |
| 35 | + LIGHTGREEN, | |
| 36 | + LIGHTCYAN, | |
| 37 | + LIGHTRED, | |
| 38 | + LIGHTMAGENTA, | |
| 39 | + YELLOW, | |
| 40 | + WHITE | |
| 41 | +} COLORS; | |
| 42 | + | |
| 43 | + | |
| 44 | +#define cgets _cgets | |
| 45 | +#define cprintf _cprintf | |
| 46 | +#define cputs _cputs | |
| 47 | +#define cscanf _cscanf | |
| 48 | +#define ScreenClear clrscr | |
| 49 | + | |
| 50 | +/* blinkvideo */ | |
| 51 | + | |
| 52 | +void clreol (void); | |
| 53 | +void clrscr (void); | |
| 54 | + | |
| 55 | +int _conio_gettext (int left, int top, int right, int bottom, | |
| 56 | + char *str); | |
| 57 | +/* _conio_kbhit */ | |
| 58 | + | |
| 59 | +void delline (void); | |
| 60 | + | |
| 61 | +/* gettextinfo */ | |
| 62 | +void gotoxy(int x, int y); | |
| 63 | +/* | |
| 64 | +highvideo | |
| 65 | +insline | |
| 66 | +intensevideo | |
| 67 | +lowvideo | |
| 68 | +movetext | |
| 69 | +normvideo | |
| 70 | +*/ | |
| 71 | + | |
| 72 | +void puttext (int left, int top, int right, int bottom, char *str); | |
| 73 | + | |
| 74 | +// Screen Variables | |
| 75 | + | |
| 76 | +/* ScreenCols | |
| 77 | +ScreenGetChar | |
| 78 | +ScreenGetCursor | |
| 79 | +ScreenMode | |
| 80 | +ScreenPutChar | |
| 81 | +ScreenPutString | |
| 82 | +ScreenRetrieve | |
| 83 | +ScreenRows | |
| 84 | +ScreenSetCursor | |
| 85 | +ScreenUpdate | |
| 86 | +ScreenUpdateLine | |
| 87 | +ScreenVisualBell | |
| 88 | +_set_screen_lines */ | |
| 89 | + | |
| 90 | +void _setcursortype (int type); | |
| 91 | + | |
| 92 | +void textattr (int _attr); | |
| 93 | + | |
| 94 | +void textbackground (int color); | |
| 95 | + | |
| 96 | +void textcolor (int color); | |
| 97 | + | |
| 98 | +/* textmode */ | |
| 99 | + | |
| 100 | +int wherex (void); | |
| 101 | + | |
| 102 | +int wherey (void); | |
| 103 | + | |
| 104 | +/* window */ | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | +/* The code below was part of Mingw's conio.h */ | |
| 109 | +/* | |
| 110 | + * conio.h | |
| 111 | + * | |
| 112 | + * Low level console I/O functions. Pretty please try to use the ANSI | |
| 113 | + * standard ones if you are writing new code. | |
| 114 | + * | |
| 115 | + * This file is part of the Mingw32 package. | |
| 116 | + * | |
| 117 | + * Contributors: | |
| 118 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 119 | + * | |
| 120 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 121 | + * | |
| 122 | + * This source code is offered for use in the public domain. You may | |
| 123 | + * use, modify or distribute it freely. | |
| 124 | + * | |
| 125 | + * This code is distributed in the hope that it will be useful but | |
| 126 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 127 | + * DISCLAMED. This includes but is not limited to warranties of | |
| 128 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 129 | + * | |
| 130 | + * $Revision: 1.1 $ | |
| 131 | + * $Author: bellard $ | |
| 132 | + * $Date: 2005/04/14 23:49:21 $ | |
| 133 | + * | |
| 134 | + */ | |
| 135 | + | |
| 136 | +char* _cgets (char*); | |
| 137 | +int _cprintf (const char*, ...); | |
| 138 | +int _cputs (const char*); | |
| 139 | +int _cscanf (char*, ...); | |
| 140 | + | |
| 141 | +int _getch (void); | |
| 142 | +int _getche (void); | |
| 143 | +int _kbhit (void); | |
| 144 | +int _putch (int); | |
| 145 | +int _ungetch (int); | |
| 146 | + | |
| 147 | + | |
| 148 | +int getch (void); | |
| 149 | +int getche (void); | |
| 150 | +int kbhit (void); | |
| 151 | +int putch (int); | |
| 152 | +int ungetch (int); | |
| 153 | + | |
| 154 | + | |
| 155 | +#ifdef __cplusplus | |
| 156 | +} | |
| 157 | +#endif | |
| 158 | + | |
| 159 | +#endif /* _CONIO_H_ */ | |
| @@ -0,0 +1,232 @@ | ||
| 1 | +/* | |
| 2 | + * ctype.h | |
| 3 | + * | |
| 4 | + * Functions for testing character types and converting characters. | |
| 5 | + * | |
| 6 | + * This file is part of the Mingw32 package. | |
| 7 | + * | |
| 8 | + * Contributors: | |
| 9 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 10 | + * | |
| 11 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 12 | + * | |
| 13 | + * This source code is offered for use in the public domain. You may | |
| 14 | + * use, modify or distribute it freely. | |
| 15 | + * | |
| 16 | + * This code is distributed in the hope that it will be useful but | |
| 17 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 18 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 19 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 20 | + * | |
| 21 | + * $Revision: 1.1 $ | |
| 22 | + * $Author: bellard $ | |
| 23 | + * $Date: 2005/04/14 23:49:21 $ | |
| 24 | + * | |
| 25 | + */ | |
| 26 | + | |
| 27 | +#ifndef _CTYPE_H_ | |
| 28 | +#define _CTYPE_H_ | |
| 29 | + | |
| 30 | +/* All the headers include this file. */ | |
| 31 | +#include <_mingw.h> | |
| 32 | + | |
| 33 | +#define __need_wchar_t | |
| 34 | +#define __need_wint_t | |
| 35 | +#ifndef RC_INVOKED | |
| 36 | +#include <stddef.h> | |
| 37 | +#endif /* Not RC_INVOKED */ | |
| 38 | + | |
| 39 | + | |
| 40 | +/* | |
| 41 | + * The following flags are used to tell iswctype and _isctype what character | |
| 42 | + * types you are looking for. | |
| 43 | + */ | |
| 44 | +#define _UPPER 0x0001 | |
| 45 | +#define _LOWER 0x0002 | |
| 46 | +#define _DIGIT 0x0004 | |
| 47 | +#define _SPACE 0x0008 /* HT LF VT FF CR SP */ | |
| 48 | +#define _PUNCT 0x0010 | |
| 49 | +#define _CONTROL 0x0020 | |
| 50 | +#define _BLANK 0x0040 /* this is SP only, not SP and HT as in C99 */ | |
| 51 | +#define _HEX 0x0080 | |
| 52 | +#define _LEADBYTE 0x8000 | |
| 53 | + | |
| 54 | +#define _ALPHA 0x0103 | |
| 55 | + | |
| 56 | +#ifndef RC_INVOKED | |
| 57 | + | |
| 58 | +#ifdef __cplusplus | |
| 59 | +extern "C" { | |
| 60 | +#endif | |
| 61 | + | |
| 62 | +int isalnum(int); | |
| 63 | +int isalpha(int); | |
| 64 | +int iscntrl(int); | |
| 65 | +int isdigit(int); | |
| 66 | +int isgraph(int); | |
| 67 | +int islower(int); | |
| 68 | +int isprint(int); | |
| 69 | +int ispunct(int); | |
| 70 | +int isspace(int); | |
| 71 | +int isupper(int); | |
| 72 | +int isxdigit(int); | |
| 73 | + | |
| 74 | +#ifndef __STRICT_ANSI__ | |
| 75 | +int _isctype (int, int); | |
| 76 | +#endif | |
| 77 | + | |
| 78 | +/* These are the ANSI versions, with correct checking of argument */ | |
| 79 | +int tolower(int); | |
| 80 | +int toupper(int); | |
| 81 | + | |
| 82 | +/* | |
| 83 | + * NOTE: The above are not old name type wrappers, but functions exported | |
| 84 | + * explicitly by MSVCRT/CRTDLL. However, underscored versions are also | |
| 85 | + * exported. | |
| 86 | + */ | |
| 87 | +#ifndef __STRICT_ANSI__ | |
| 88 | +/* | |
| 89 | + * These are the cheap non-std versions: The return values are undefined | |
| 90 | + * if the argument is not ASCII char or is not of appropriate case | |
| 91 | + */ | |
| 92 | +int _tolower(int); | |
| 93 | +int _toupper(int); | |
| 94 | +#endif | |
| 95 | + | |
| 96 | +/* Also defined in stdlib.h */ | |
| 97 | +#ifndef MB_CUR_MAX | |
| 98 | +# ifdef __MSVCRT__ | |
| 99 | +# define MB_CUR_MAX __mb_cur_max | |
| 100 | + __MINGW_IMPORT int __mb_cur_max; | |
| 101 | +# else /* not __MSVCRT */ | |
| 102 | +# define MB_CUR_MAX __mb_cur_max_dll | |
| 103 | + __MINGW_IMPORT int __mb_cur_max_dll; | |
| 104 | +# endif /* not __MSVCRT */ | |
| 105 | +#endif /* MB_CUR_MAX */ | |
| 106 | + | |
| 107 | +__MINGW_IMPORT unsigned short _ctype[]; | |
| 108 | +#ifdef __MSVCRT__ | |
| 109 | +__MINGW_IMPORT unsigned short* _pctype; | |
| 110 | +#else /* CRTDLL */ | |
| 111 | +__MINGW_IMPORT unsigned short* _pctype_dll; | |
| 112 | +#define _pctype _pctype_dll | |
| 113 | +#endif | |
| 114 | + | |
| 115 | +/* | |
| 116 | + * Use inlines here rather than macros, because macros will upset | |
| 117 | + * C++ usage (eg, ::isalnum), and so usually get undefined | |
| 118 | + * | |
| 119 | + * According to standard for SB chars, these function are defined only | |
| 120 | + * for input values representable by unsigned char or EOF. | |
| 121 | + * Thus, there is no range test. | |
| 122 | + * This reproduces behaviour of MSVCRT.dll lib implemention for SB chars. | |
| 123 | + * | |
| 124 | + * If no MB char support is needed, these can be simplified even | |
| 125 | + * more by command line define -DMB_CUR_MAX=1. The compiler will then | |
| 126 | + * optimise away the constant condition. | |
| 127 | + */ | |
| 128 | + | |
| 129 | + | |
| 130 | +#if ! (defined (__NO_CTYPE_INLINES) || defined (__STRICT_ANSI__ )) | |
| 131 | +/* use simple lookup if SB locale, else _isctype() */ | |
| 132 | +#define __ISCTYPE(c, mask) (MB_CUR_MAX == 1 ? (_pctype[c] & mask) : _isctype(c, mask)) | |
| 133 | +extern __inline__ int isalnum(int c) {return __ISCTYPE(c, (_ALPHA|_DIGIT));} | |
| 134 | +extern __inline__ int isalpha(int c) {return __ISCTYPE(c, _ALPHA);} | |
| 135 | +extern __inline__ int iscntrl(int c) {return __ISCTYPE(c, _CONTROL);} | |
| 136 | +extern __inline__ int isdigit(int c) {return __ISCTYPE(c, _DIGIT);} | |
| 137 | +extern __inline__ int isgraph(int c) {return __ISCTYPE(c, (_PUNCT|_ALPHA|_DIGIT));} | |
| 138 | +extern __inline__ int islower(int c) {return __ISCTYPE(c, _LOWER);} | |
| 139 | +extern __inline__ int isprint(int c) {return __ISCTYPE(c, (_BLANK|_PUNCT|_ALPHA|_DIGIT));} | |
| 140 | +extern __inline__ int ispunct(int c) {return __ISCTYPE(c, _PUNCT);} | |
| 141 | +extern __inline__ int isspace(int c) {return __ISCTYPE(c, _SPACE);} | |
| 142 | +extern __inline__ int isupper(int c) {return __ISCTYPE(c, _UPPER);} | |
| 143 | +extern __inline__ int isxdigit(int c) {return __ISCTYPE(c, _HEX);} | |
| 144 | + | |
| 145 | +/* these reproduce behaviour of lib underscored versions */ | |
| 146 | +extern __inline__ int _tolower(int c) {return ( c -'A'+'a');} | |
| 147 | +extern __inline__ int _toupper(int c) {return ( c -'a'+'A');} | |
| 148 | + | |
| 149 | +/* TODO? Is it worth inlining ANSI tolower, toupper? Probably only | |
| 150 | + if we only want C-locale. */ | |
| 151 | + | |
| 152 | +#endif /* _NO_CTYPE_INLINES */ | |
| 153 | + | |
| 154 | +/* Wide character equivalents */ | |
| 155 | + | |
| 156 | +#ifndef WEOF | |
| 157 | +#define WEOF (wchar_t)(0xFFFF) | |
| 158 | +#endif | |
| 159 | + | |
| 160 | +#ifndef _WCTYPE_T_DEFINED | |
| 161 | +typedef wchar_t wctype_t; | |
| 162 | +#define _WCTYPE_T_DEFINED | |
| 163 | +#endif | |
| 164 | + | |
| 165 | +int iswalnum(wint_t); | |
| 166 | +int iswalpha(wint_t); | |
| 167 | +int iswascii(wint_t); | |
| 168 | +int iswcntrl(wint_t); | |
| 169 | +int iswctype(wint_t, wctype_t); | |
| 170 | +int is_wctype(wint_t, wctype_t); /* Obsolete! */ | |
| 171 | +int iswdigit(wint_t); | |
| 172 | +int iswgraph(wint_t); | |
| 173 | +int iswlower(wint_t); | |
| 174 | +int iswprint(wint_t); | |
| 175 | +int iswpunct(wint_t); | |
| 176 | +int iswspace(wint_t); | |
| 177 | +int iswupper(wint_t); | |
| 178 | +int iswxdigit(wint_t); | |
| 179 | + | |
| 180 | +wchar_t towlower(wchar_t); | |
| 181 | +wchar_t towupper(wchar_t); | |
| 182 | + | |
| 183 | +int isleadbyte (int); | |
| 184 | + | |
| 185 | +/* Also in wctype.h */ | |
| 186 | +#if ! (defined(__NO_CTYPE_INLINES) || defined(__WCTYPE_INLINES_DEFINED)) | |
| 187 | +#define __WCTYPE_INLINES_DEFINED | |
| 188 | +extern __inline__ int iswalnum(wint_t wc) {return (iswctype(wc,_ALPHA|_DIGIT));} | |
| 189 | +extern __inline__ int iswalpha(wint_t wc) {return (iswctype(wc,_ALPHA));} | |
| 190 | +extern __inline__ int iswascii(wint_t wc) {return (((unsigned)wc & 0x7F) ==0);} | |
| 191 | +extern __inline__ int iswcntrl(wint_t wc) {return (iswctype(wc,_CONTROL));} | |
| 192 | +extern __inline__ int iswdigit(wint_t wc) {return (iswctype(wc,_DIGIT));} | |
| 193 | +extern __inline__ int iswgraph(wint_t wc) {return (iswctype(wc,_PUNCT|_ALPHA|_DIGIT));} | |
| 194 | +extern __inline__ int iswlower(wint_t wc) {return (iswctype(wc,_LOWER));} | |
| 195 | +extern __inline__ int iswprint(wint_t wc) {return (iswctype(wc,_BLANK|_PUNCT|_ALPHA|_DIGIT));} | |
| 196 | +extern __inline__ int iswpunct(wint_t wc) {return (iswctype(wc,_PUNCT));} | |
| 197 | +extern __inline__ int iswspace(wint_t wc) {return (iswctype(wc,_SPACE));} | |
| 198 | +extern __inline__ int iswupper(wint_t wc) {return (iswctype(wc,_UPPER));} | |
| 199 | +extern __inline__ int iswxdigit(wint_t wc) {return (iswctype(wc,_HEX));} | |
| 200 | +extern __inline__ int isleadbyte(int c) {return (_pctype[(unsigned char)(c)] & _LEADBYTE);} | |
| 201 | +#endif /* !(defined(__NO_CTYPE_INLINES) || defined(__WCTYPE_INLINES_DEFINED)) */ | |
| 202 | + | |
| 203 | +#ifndef __STRICT_ANSI__ | |
| 204 | +int __isascii (int); | |
| 205 | +int __toascii (int); | |
| 206 | +int __iscsymf (int); /* Valid first character in C symbol */ | |
| 207 | +int __iscsym (int); /* Valid character in C symbol (after first) */ | |
| 208 | + | |
| 209 | +#ifndef __NO_CTYPE_INLINES | |
| 210 | +extern __inline__ int __isascii(int c) {return (((unsigned)c & ~0x7F) == 0);} | |
| 211 | +extern __inline__ int __toascii(int c) {return (c & 0x7F);} | |
| 212 | +extern __inline__ int __iscsymf(int c) {return (isalpha(c) || (c == '_'));} | |
| 213 | +extern __inline__ int __iscsym(int c) {return (isalnum(c) || (c == '_'));} | |
| 214 | +#endif /* __NO_CTYPE_INLINES */ | |
| 215 | + | |
| 216 | +#ifndef _NO_OLDNAMES | |
| 217 | +int isascii (int); | |
| 218 | +int toascii (int); | |
| 219 | +int iscsymf (int); | |
| 220 | +int iscsym (int); | |
| 221 | +#endif /* Not _NO_OLDNAMES */ | |
| 222 | + | |
| 223 | +#endif /* Not __STRICT_ANSI__ */ | |
| 224 | + | |
| 225 | +#ifdef __cplusplus | |
| 226 | +} | |
| 227 | +#endif | |
| 228 | + | |
| 229 | +#endif /* Not RC_INVOKED */ | |
| 230 | + | |
| 231 | +#endif /* Not _CTYPE_H_ */ | |
| 232 | + | |
| @@ -0,0 +1,26 @@ | ||
| 1 | +/* | |
| 2 | + * dir.h | |
| 3 | + * | |
| 4 | + * This file OBSOLESCENT and only provided for backward compatibility. | |
| 5 | + * Please use io.h instead. | |
| 6 | + * | |
| 7 | + * This file is part of the Mingw32 package. | |
| 8 | + * | |
| 9 | + * Contributors: | |
| 10 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 11 | + * Mumit Khan <khan@xraylith.wisc.edu> | |
| 12 | + * | |
| 13 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 14 | + * | |
| 15 | + * This source code is offered for use in the public domain. You may | |
| 16 | + * use, modify or distribute it freely. | |
| 17 | + * | |
| 18 | + * This code is distributed in the hope that it will be useful but | |
| 19 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 20 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 21 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 22 | + * | |
| 23 | + */ | |
| 24 | + | |
| 25 | +#include <io.h> | |
| 26 | + | |
| @@ -0,0 +1,95 @@ | ||
| 1 | +/* | |
| 2 | + * direct.h | |
| 3 | + * | |
| 4 | + * Functions for manipulating paths and directories (included from io.h) | |
| 5 | + * plus functions for setting the current drive. | |
| 6 | + * | |
| 7 | + * This file is part of the Mingw32 package. | |
| 8 | + * | |
| 9 | + * Contributors: | |
| 10 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 11 | + * | |
| 12 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 13 | + * | |
| 14 | + * This source code is offered for use in the public domain. You may | |
| 15 | + * use, modify or distribute it freely. | |
| 16 | + * | |
| 17 | + * This code is distributed in the hope that it will be useful but | |
| 18 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 19 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 20 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 21 | + * | |
| 22 | + * $Revision: 1.1 $ | |
| 23 | + * $Author: bellard $ | |
| 24 | + * $Date: 2005/04/14 23:49:21 $ | |
| 25 | + * | |
| 26 | + */ | |
| 27 | + | |
| 28 | +#ifndef __STRICT_ANSI__ | |
| 29 | + | |
| 30 | +#ifndef _DIRECT_H_ | |
| 31 | +#define _DIRECT_H_ | |
| 32 | + | |
| 33 | +/* All the headers include this file. */ | |
| 34 | +#include <_mingw.h> | |
| 35 | + | |
| 36 | +#define __need_wchar_t | |
| 37 | +#ifndef RC_INVOKED | |
| 38 | +#include <stddef.h> | |
| 39 | +#endif /* Not RC_INVOKED */ | |
| 40 | + | |
| 41 | +#include <io.h> | |
| 42 | + | |
| 43 | +#ifndef RC_INVOKED | |
| 44 | + | |
| 45 | +#ifdef __cplusplus | |
| 46 | +extern "C" { | |
| 47 | +#endif | |
| 48 | + | |
| 49 | +#ifndef _DISKFREE_T_DEFINED | |
| 50 | +/* needed by _getdiskfree (also in dos.h) */ | |
| 51 | +struct _diskfree_t { | |
| 52 | + unsigned total_clusters; | |
| 53 | + unsigned avail_clusters; | |
| 54 | + unsigned sectors_per_cluster; | |
| 55 | + unsigned bytes_per_sector; | |
| 56 | +}; | |
| 57 | +#define _DISKFREE_T_DEFINED | |
| 58 | +#endif | |
| 59 | + | |
| 60 | +/* | |
| 61 | + * You really shouldn't be using these. Use the Win32 API functions instead. | |
| 62 | + * However, it does make it easier to port older code. | |
| 63 | + */ | |
| 64 | +int _getdrive (void); | |
| 65 | +unsigned long _getdrives(void); | |
| 66 | +int _chdrive (int); | |
| 67 | +char* _getdcwd (int, char*, int); | |
| 68 | +unsigned _getdiskfree (unsigned, struct _diskfree_t *); | |
| 69 | + | |
| 70 | +#ifndef _NO_OLDNAMES | |
| 71 | +# define diskfree_t _diskfree_t | |
| 72 | +#endif | |
| 73 | + | |
| 74 | +#ifndef _WDIRECT_DEFINED | |
| 75 | +/* wide character versions. Also in wchar.h */ | |
| 76 | +#ifdef __MSVCRT__ | |
| 77 | +int _wchdir(const wchar_t*); | |
| 78 | +wchar_t* _wgetcwd(wchar_t*, int); | |
| 79 | +wchar_t* _wgetdcwd(int, wchar_t*, int); | |
| 80 | +int _wmkdir(const wchar_t*); | |
| 81 | +int _wrmdir(const wchar_t*); | |
| 82 | +#endif /* __MSVCRT__ */ | |
| 83 | +#define _WDIRECT_DEFINED | |
| 84 | +#endif | |
| 85 | + | |
| 86 | +#ifdef __cplusplus | |
| 87 | +} | |
| 88 | +#endif | |
| 89 | + | |
| 90 | +#endif /* Not RC_INVOKED */ | |
| 91 | + | |
| 92 | +#endif /* Not _DIRECT_H_ */ | |
| 93 | + | |
| 94 | +#endif /* Not __STRICT_ANSI__ */ | |
| 95 | + | |
| @@ -0,0 +1,96 @@ | ||
| 1 | +/* | |
| 2 | + * DIRENT.H (formerly DIRLIB.H) | |
| 3 | + * | |
| 4 | + * by M. J. Weinstein Released to public domain 1-Jan-89 | |
| 5 | + * | |
| 6 | + * Because I have heard that this feature (opendir, readdir, closedir) | |
| 7 | + * it so useful for programmers coming from UNIX or attempting to port | |
| 8 | + * UNIX code, and because it is reasonably light weight, I have included | |
| 9 | + * it in the Mingw32 package. I have also added an implementation of | |
| 10 | + * rewinddir, seekdir and telldir. | |
| 11 | + * - Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 12 | + * | |
| 13 | + * This code is distributed in the hope that is will be useful but | |
| 14 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 15 | + * DISCLAIMED. This includeds but is not limited to warranties of | |
| 16 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 17 | + * | |
| 18 | + * $Revision: 1.1 $ | |
| 19 | + * $Author: bellard $ | |
| 20 | + * $Date: 2005/04/14 23:49:21 $ | |
| 21 | + * | |
| 22 | + */ | |
| 23 | + | |
| 24 | +#ifndef __STRICT_ANSI__ | |
| 25 | + | |
| 26 | +#ifndef _DIRENT_H_ | |
| 27 | +#define _DIRENT_H_ | |
| 28 | + | |
| 29 | +/* All the headers include this file. */ | |
| 30 | +#include <_mingw.h> | |
| 31 | + | |
| 32 | +#include <io.h> | |
| 33 | + | |
| 34 | +#ifndef RC_INVOKED | |
| 35 | + | |
| 36 | +#ifdef __cplusplus | |
| 37 | +extern "C" { | |
| 38 | +#endif | |
| 39 | + | |
| 40 | +struct dirent | |
| 41 | +{ | |
| 42 | + long d_ino; /* Always zero. */ | |
| 43 | + unsigned short d_reclen; /* Always zero. */ | |
| 44 | + unsigned short d_namlen; /* Length of name in d_name. */ | |
| 45 | + char* d_name; /* File name. */ | |
| 46 | + /* NOTE: The name in the dirent structure points to the name in the | |
| 47 | + * finddata_t structure in the DIR. */ | |
| 48 | +}; | |
| 49 | + | |
| 50 | +/* | |
| 51 | + * This is an internal data structure. Good programmers will not use it | |
| 52 | + * except as an argument to one of the functions below. | |
| 53 | + */ | |
| 54 | +typedef struct | |
| 55 | +{ | |
| 56 | + /* disk transfer area for this dir */ | |
| 57 | + struct _finddata_t dd_dta; | |
| 58 | + | |
| 59 | + /* dirent struct to return from dir (NOTE: this makes this thread | |
| 60 | + * safe as long as only one thread uses a particular DIR struct at | |
| 61 | + * a time) */ | |
| 62 | + struct dirent dd_dir; | |
| 63 | + | |
| 64 | + /* _findnext handle */ | |
| 65 | + long dd_handle; | |
| 66 | + | |
| 67 | + /* | |
| 68 | + * Status of search: | |
| 69 | + * 0 = not started yet (next entry to read is first entry) | |
| 70 | + * -1 = off the end | |
| 71 | + * positive = 0 based index of next entry | |
| 72 | + */ | |
| 73 | + short dd_stat; | |
| 74 | + | |
| 75 | + /* given path for dir with search pattern (struct is extended) */ | |
| 76 | + char dd_name[1]; | |
| 77 | +} DIR; | |
| 78 | + | |
| 79 | + | |
| 80 | +DIR* opendir (const char*); | |
| 81 | +struct dirent* readdir (DIR*); | |
| 82 | +int closedir (DIR*); | |
| 83 | +void rewinddir (DIR*); | |
| 84 | +long telldir (DIR*); | |
| 85 | +void seekdir (DIR*, long); | |
| 86 | + | |
| 87 | +#ifdef __cplusplus | |
| 88 | +} | |
| 89 | +#endif | |
| 90 | + | |
| 91 | +#endif /* Not RC_INVOKED */ | |
| 92 | + | |
| 93 | +#endif /* Not _DIRENT_H_ */ | |
| 94 | + | |
| 95 | +#endif /* Not __STRICT_ANSI__ */ | |
| 96 | + | |
| @@ -0,0 +1,110 @@ | ||
| 1 | +/* | |
| 2 | + * dos.h | |
| 3 | + * | |
| 4 | + * DOS-specific functions and structures. | |
| 5 | + * | |
| 6 | + * This file is part of the Mingw32 package. | |
| 7 | + * | |
| 8 | + * Contributors: | |
| 9 | + * Created by J.J. van der Heijden <J.J.vanderHeijden@student.utwente.nl> | |
| 10 | + * | |
| 11 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 12 | + * | |
| 13 | + * This source code is offered for use in the public domain. You may | |
| 14 | + * use, modify or distribute it freely. | |
| 15 | + * | |
| 16 | + * This code is distributed in the hope that it will be useful but | |
| 17 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 18 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 19 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 20 | + * | |
| 21 | + * $Revision: 1.1 $ | |
| 22 | + * $Author: bellard $ | |
| 23 | + * $Date: 2005/04/14 23:49:21 $ | |
| 24 | + * | |
| 25 | + */ | |
| 26 | + | |
| 27 | +#ifndef __STRICT_ANSI__ | |
| 28 | + | |
| 29 | +#ifndef _DOS_H_ | |
| 30 | +#define _DOS_H_ | |
| 31 | + | |
| 32 | +/* All the headers include this file. */ | |
| 33 | +#include <_mingw.h> | |
| 34 | + | |
| 35 | +#define __need_wchar_t | |
| 36 | +#ifndef RC_INVOKED | |
| 37 | +#include <stddef.h> | |
| 38 | +#endif /* Not RC_INVOKED */ | |
| 39 | + | |
| 40 | +/* For DOS file attributes */ | |
| 41 | +#include <io.h> | |
| 42 | + | |
| 43 | +#ifndef RC_INVOKED | |
| 44 | + | |
| 45 | +#ifdef __cplusplus | |
| 46 | +extern "C" { | |
| 47 | +#endif | |
| 48 | + | |
| 49 | +#ifndef __MSVCRT__ /* these are in CRTDLL, but not MSVCRT */ | |
| 50 | +#ifndef __DECLSPEC_SUPPORTED | |
| 51 | +extern unsigned int *__imp__basemajor_dll; | |
| 52 | +extern unsigned int *__imp__baseminor_dll; | |
| 53 | +extern unsigned int *__imp__baseversion_dll; | |
| 54 | +extern unsigned int *__imp__osmajor_dll; | |
| 55 | +extern unsigned int *__imp__osminor_dll; | |
| 56 | +extern unsigned int *__imp__osmode_dll; | |
| 57 | + | |
| 58 | +#define _basemajor (*__imp__basemajor_dll) | |
| 59 | +#define _baseminor (*__imp__baseminor_dll) | |
| 60 | +#define _baseversion (*__imp__baseversion_dll) | |
| 61 | +#define _osmajor (*__imp__osmajor_dll) | |
| 62 | +#define _osminor (*__imp__osminor_dll) | |
| 63 | +#define _osmode (*__imp__osmode_dll) | |
| 64 | + | |
| 65 | +#else /* __DECLSPEC_SUPPORTED */ | |
| 66 | + | |
| 67 | +__MINGW_IMPORT unsigned int _basemajor_dll; | |
| 68 | +__MINGW_IMPORT unsigned int _baseminor_dll; | |
| 69 | +__MINGW_IMPORT unsigned int _baseversion_dll; | |
| 70 | +__MINGW_IMPORT unsigned int _osmajor_dll; | |
| 71 | +__MINGW_IMPORT unsigned int _osminor_dll; | |
| 72 | +__MINGW_IMPORT unsigned int _osmode_dll; | |
| 73 | + | |
| 74 | +#define _basemajor _basemajor_dll | |
| 75 | +#define _baseminor _baseminor_dll | |
| 76 | +#define _baseversion _baseversion_dll | |
| 77 | +#define _osmajor _osmajor_dll | |
| 78 | +#define _osminor _osminor_dll | |
| 79 | +#define _osmode _osmode_dll | |
| 80 | + | |
| 81 | +#endif /* __DECLSPEC_SUPPORTED */ | |
| 82 | +#endif /* ! __MSVCRT__ */ | |
| 83 | + | |
| 84 | +#ifndef _DISKFREE_T_DEFINED | |
| 85 | +/* needed by _getdiskfree (also in direct.h) */ | |
| 86 | +struct _diskfree_t { | |
| 87 | + unsigned total_clusters; | |
| 88 | + unsigned avail_clusters; | |
| 89 | + unsigned sectors_per_cluster; | |
| 90 | + unsigned bytes_per_sector; | |
| 91 | +}; | |
| 92 | +#define _DISKFREE_T_DEFINED | |
| 93 | +#endif | |
| 94 | + | |
| 95 | +unsigned _getdiskfree (unsigned, struct _diskfree_t *); | |
| 96 | + | |
| 97 | +#ifndef _NO_OLDNAMES | |
| 98 | +# define diskfree_t _diskfree_t | |
| 99 | +#endif | |
| 100 | + | |
| 101 | +#ifdef __cplusplus | |
| 102 | +} | |
| 103 | +#endif | |
| 104 | + | |
| 105 | +#endif /* Not RC_INVOKED */ | |
| 106 | + | |
| 107 | +#endif /* Not _DOS_H_ */ | |
| 108 | + | |
| 109 | +#endif /* Not __STRICT_ANSI__ */ | |
| 110 | + | |
| @@ -0,0 +1,117 @@ | ||
| 1 | +/* | |
| 2 | + * errno.h | |
| 3 | + * | |
| 4 | + * Error numbers and access to error reporting. | |
| 5 | + * | |
| 6 | + * This file is part of the Mingw32 package. | |
| 7 | + * | |
| 8 | + * Contributors: | |
| 9 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 10 | + * | |
| 11 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 12 | + * | |
| 13 | + * This source code is offered for use in the public domain. You may | |
| 14 | + * use, modify or distribute it freely. | |
| 15 | + * | |
| 16 | + * This code is distributed in the hope that it will be useful but | |
| 17 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 18 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 19 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 20 | + * | |
| 21 | + * $Revision: 1.1 $ | |
| 22 | + * $Author: bellard $ | |
| 23 | + * $Date: 2005/04/14 23:49:21 $ | |
| 24 | + * | |
| 25 | + */ | |
| 26 | + | |
| 27 | +#ifndef _ERRNO_H_ | |
| 28 | +#define _ERRNO_H_ | |
| 29 | + | |
| 30 | +/* All the headers include this file. */ | |
| 31 | +#include <_mingw.h> | |
| 32 | + | |
| 33 | +/* | |
| 34 | + * Error numbers. | |
| 35 | + * TODO: Can't be sure of some of these assignments, I guessed from the | |
| 36 | + * names given by strerror and the defines in the Cygnus errno.h. A lot | |
| 37 | + * of the names from the Cygnus errno.h are not represented, and a few | |
| 38 | + * of the descriptions returned by strerror do not obviously match | |
| 39 | + * their error naming. | |
| 40 | + */ | |
| 41 | +#define EPERM 1 /* Operation not permitted */ | |
| 42 | +#define ENOFILE 2 /* No such file or directory */ | |
| 43 | +#define ENOENT 2 | |
| 44 | +#define ESRCH 3 /* No such process */ | |
| 45 | +#define EINTR 4 /* Interrupted function call */ | |
| 46 | +#define EIO 5 /* Input/output error */ | |
| 47 | +#define ENXIO 6 /* No such device or address */ | |
| 48 | +#define E2BIG 7 /* Arg list too long */ | |
| 49 | +#define ENOEXEC 8 /* Exec format error */ | |
| 50 | +#define EBADF 9 /* Bad file descriptor */ | |
| 51 | +#define ECHILD 10 /* No child processes */ | |
| 52 | +#define EAGAIN 11 /* Resource temporarily unavailable */ | |
| 53 | +#define ENOMEM 12 /* Not enough space */ | |
| 54 | +#define EACCES 13 /* Permission denied */ | |
| 55 | +#define EFAULT 14 /* Bad address */ | |
| 56 | +/* 15 - Unknown Error */ | |
| 57 | +#define EBUSY 16 /* strerror reports "Resource device" */ | |
| 58 | +#define EEXIST 17 /* File exists */ | |
| 59 | +#define EXDEV 18 /* Improper link (cross-device link?) */ | |
| 60 | +#define ENODEV 19 /* No such device */ | |
| 61 | +#define ENOTDIR 20 /* Not a directory */ | |
| 62 | +#define EISDIR 21 /* Is a directory */ | |
| 63 | +#define EINVAL 22 /* Invalid argument */ | |
| 64 | +#define ENFILE 23 /* Too many open files in system */ | |
| 65 | +#define EMFILE 24 /* Too many open files */ | |
| 66 | +#define ENOTTY 25 /* Inappropriate I/O control operation */ | |
| 67 | +/* 26 - Unknown Error */ | |
| 68 | +#define EFBIG 27 /* File too large */ | |
| 69 | +#define ENOSPC 28 /* No space left on device */ | |
| 70 | +#define ESPIPE 29 /* Invalid seek (seek on a pipe?) */ | |
| 71 | +#define EROFS 30 /* Read-only file system */ | |
| 72 | +#define EMLINK 31 /* Too many links */ | |
| 73 | +#define EPIPE 32 /* Broken pipe */ | |
| 74 | +#define EDOM 33 /* Domain error (math functions) */ | |
| 75 | +#define ERANGE 34 /* Result too large (possibly too small) */ | |
| 76 | +/* 35 - Unknown Error */ | |
| 77 | +#define EDEADLOCK 36 /* Resource deadlock avoided (non-Cyg) */ | |
| 78 | +#define EDEADLK 36 | |
| 79 | +/* 37 - Unknown Error */ | |
| 80 | +#define ENAMETOOLONG 38 /* Filename too long (91 in Cyg?) */ | |
| 81 | +#define ENOLCK 39 /* No locks available (46 in Cyg?) */ | |
| 82 | +#define ENOSYS 40 /* Function not implemented (88 in Cyg?) */ | |
| 83 | +#define ENOTEMPTY 41 /* Directory not empty (90 in Cyg?) */ | |
| 84 | +#define EILSEQ 42 /* Illegal byte sequence */ | |
| 85 | + | |
| 86 | +/* | |
| 87 | + * NOTE: ENAMETOOLONG and ENOTEMPTY conflict with definitions in the | |
| 88 | + * sockets.h header provided with windows32api-0.1.2. | |
| 89 | + * You should go and put an #if 0 ... #endif around the whole block | |
| 90 | + * of errors (look at the comment above them). | |
| 91 | + */ | |
| 92 | + | |
| 93 | +#ifndef RC_INVOKED | |
| 94 | + | |
| 95 | +#ifdef __cplusplus | |
| 96 | +extern "C" { | |
| 97 | +#endif | |
| 98 | + | |
| 99 | +/* | |
| 100 | + * Definitions of errno. For _doserrno, sys_nerr and * sys_errlist, see | |
| 101 | + * stdlib.h. | |
| 102 | + */ | |
| 103 | +#ifdef _UWIN | |
| 104 | +#undef errno | |
| 105 | +extern int errno; | |
| 106 | +#else | |
| 107 | +int* _errno(void); | |
| 108 | +#define errno (*_errno()) | |
| 109 | +#endif | |
| 110 | + | |
| 111 | +#ifdef __cplusplus | |
| 112 | +} | |
| 113 | +#endif | |
| 114 | + | |
| 115 | +#endif /* Not RC_INVOKED */ | |
| 116 | + | |
| 117 | +#endif /* Not _ERRNO_H_ */ | |
| @@ -0,0 +1,20 @@ | ||
| 1 | +#ifndef _EXCPT_H | |
| 2 | +#define _EXCPT_H | |
| 3 | +#if __GNUC__ >=3 | |
| 4 | +#pragma GCC system_header | |
| 5 | +#endif | |
| 6 | + | |
| 7 | +/* FIXME: This will make some code compile. The programs will most | |
| 8 | + likely crash when an exception is raised, but at least they will | |
| 9 | + compile. */ | |
| 10 | +#ifdef __GNUC__ | |
| 11 | +#define __try | |
| 12 | +#define __except(x) if (0) /* don't execute handler */ | |
| 13 | +#define __finally | |
| 14 | + | |
| 15 | +#define _try __try | |
| 16 | +#define _except __except | |
| 17 | +#define _finally __finally | |
| 18 | +#endif | |
| 19 | + | |
| 20 | +#endif | |
| @@ -0,0 +1,135 @@ | ||
| 1 | +/* | |
| 2 | + * fcntl.h | |
| 3 | + * | |
| 4 | + * Access constants for _open. Note that the permissions constants are | |
| 5 | + * in sys/stat.h (ick). | |
| 6 | + * | |
| 7 | + * This code is part of the Mingw32 package. | |
| 8 | + * | |
| 9 | + * Contributors: | |
| 10 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 11 | + * | |
| 12 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 13 | + * | |
| 14 | + * This source code is offered for use in the public domain. You may | |
| 15 | + * use, modify or distribute it freely. | |
| 16 | + * | |
| 17 | + * This code is distributed in the hope that it will be useful but | |
| 18 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 19 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 20 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 21 | + * | |
| 22 | + * $Revision: 1.1 $ | |
| 23 | + * $Author: bellard $ | |
| 24 | + * $Date: 2005/04/14 23:49:21 $ | |
| 25 | + * | |
| 26 | + */ | |
| 27 | + | |
| 28 | +#ifndef __STRICT_ANSI__ | |
| 29 | + | |
| 30 | +#ifndef _FCNTL_H_ | |
| 31 | +#define _FCNTL_H_ | |
| 32 | + | |
| 33 | +/* All the headers include this file. */ | |
| 34 | +#include <_mingw.h> | |
| 35 | + | |
| 36 | +/* | |
| 37 | + * It appears that fcntl.h should include io.h for compatibility... | |
| 38 | + */ | |
| 39 | +#include <io.h> | |
| 40 | + | |
| 41 | +/* Specifiy one of these flags to define the access mode. */ | |
| 42 | +#define _O_RDONLY 0 | |
| 43 | +#define _O_WRONLY 1 | |
| 44 | +#define _O_RDWR 2 | |
| 45 | + | |
| 46 | +/* Mask for access mode bits in the _open flags. */ | |
| 47 | +#define _O_ACCMODE (_O_RDONLY|_O_WRONLY|_O_RDWR) | |
| 48 | + | |
| 49 | +#define _O_APPEND 0x0008 /* Writes will add to the end of the file. */ | |
| 50 | + | |
| 51 | +#define _O_RANDOM 0x0010 | |
| 52 | +#define _O_SEQUENTIAL 0x0020 | |
| 53 | +#define _O_TEMPORARY 0x0040 /* Make the file dissappear after closing. | |
| 54 | + * WARNING: Even if not created by _open! */ | |
| 55 | +#define _O_NOINHERIT 0x0080 | |
| 56 | + | |
| 57 | +#define _O_CREAT 0x0100 /* Create the file if it does not exist. */ | |
| 58 | +#define _O_TRUNC 0x0200 /* Truncate the file if it does exist. */ | |
| 59 | +#define _O_EXCL 0x0400 /* Open only if the file does not exist. */ | |
| 60 | + | |
| 61 | +/* NOTE: Text is the default even if the given _O_TEXT bit is not on. */ | |
| 62 | +#define _O_TEXT 0x4000 /* CR-LF in file becomes LF in memory. */ | |
| 63 | +#define _O_BINARY 0x8000 /* Input and output is not translated. */ | |
| 64 | +#define _O_RAW _O_BINARY | |
| 65 | + | |
| 66 | +#ifndef _NO_OLDNAMES | |
| 67 | + | |
| 68 | +/* POSIX/Non-ANSI names for increased portability */ | |
| 69 | +#define O_RDONLY _O_RDONLY | |
| 70 | +#define O_WRONLY _O_WRONLY | |
| 71 | +#define O_RDWR _O_RDWR | |
| 72 | +#define O_ACCMODE _O_ACCMODE | |
| 73 | +#define O_APPEND _O_APPEND | |
| 74 | +#define O_CREAT _O_CREAT | |
| 75 | +#define O_TRUNC _O_TRUNC | |
| 76 | +#define O_EXCL _O_EXCL | |
| 77 | +#define O_TEXT _O_TEXT | |
| 78 | +#define O_BINARY _O_BINARY | |
| 79 | +#define O_TEMPORARY _O_TEMPORARY | |
| 80 | +#define O_NOINHERIT _O_NOINHERIT | |
| 81 | +#define O_SEQENTIAL _O_SEQUENTIAL | |
| 82 | +#define O_RANDOM _O_RANDOM | |
| 83 | + | |
| 84 | +#endif /* Not _NO_OLDNAMES */ | |
| 85 | + | |
| 86 | + | |
| 87 | +#ifndef RC_INVOKED | |
| 88 | + | |
| 89 | +/* | |
| 90 | + * This variable determines the default file mode. | |
| 91 | + * TODO: Which flags work? | |
| 92 | + */ | |
| 93 | +#ifndef __DECLSPEC_SUPPORTED | |
| 94 | + | |
| 95 | +#ifdef __MSVCRT__ | |
| 96 | +extern unsigned int* __imp__fmode; | |
| 97 | +#define _fmode (*__imp__fmode) | |
| 98 | +#else | |
| 99 | +/* CRTDLL */ | |
| 100 | +extern unsigned int* __imp__fmode_dll; | |
| 101 | +#define _fmode (*__imp__fmode_dll) | |
| 102 | +#endif | |
| 103 | + | |
| 104 | +#else /* __DECLSPEC_SUPPORTED */ | |
| 105 | + | |
| 106 | +#ifdef __MSVCRT__ | |
| 107 | +__MINGW_IMPORT unsigned int _fmode; | |
| 108 | +#else /* ! __MSVCRT__ */ | |
| 109 | +__MINGW_IMPORT unsigned int _fmode_dll; | |
| 110 | +#define _fmode _fmode_dll | |
| 111 | +#endif /* ! __MSVCRT__ */ | |
| 112 | + | |
| 113 | +#endif /* __DECLSPEC_SUPPORTED */ | |
| 114 | + | |
| 115 | + | |
| 116 | +#ifdef __cplusplus | |
| 117 | +extern "C" { | |
| 118 | +#endif | |
| 119 | + | |
| 120 | +int _setmode (int, int); | |
| 121 | + | |
| 122 | +#ifndef _NO_OLDNAMES | |
| 123 | +int setmode (int, int); | |
| 124 | +#endif /* Not _NO_OLDNAMES */ | |
| 125 | + | |
| 126 | +#ifdef __cplusplus | |
| 127 | +} | |
| 128 | +#endif | |
| 129 | + | |
| 130 | +#endif /* Not RC_INVOKED */ | |
| 131 | + | |
| 132 | +#endif /* Not _FCNTL_H_ */ | |
| 133 | + | |
| 134 | +#endif /* Not __STRICT_ANSI__ */ | |
| 135 | + | |
| @@ -0,0 +1,85 @@ | ||
| 1 | +#ifndef _FENV_H | |
| 2 | +#define _FENV_H | |
| 3 | + | |
| 4 | +/* | |
| 5 | + For now, support only for the basic abstraction of flags that are | |
| 6 | + either set or clear. fexcept_t could be structure that holds more info | |
| 7 | + about the fp environment. | |
| 8 | +*/ | |
| 9 | +typedef unsigned short fexcept_t; | |
| 10 | + | |
| 11 | +/* This 28-byte struct represents the entire floating point | |
| 12 | + environment as stored by fnstenv or fstenv */ | |
| 13 | +typedef struct | |
| 14 | +{ | |
| 15 | + unsigned short __control_word; | |
| 16 | + unsigned short __unused0; | |
| 17 | + unsigned short __status_word; | |
| 18 | + unsigned short __unused1; | |
| 19 | + unsigned short __tag_word; | |
| 20 | + unsigned short __unused2; | |
| 21 | + unsigned int __ip_offset; /* instruction pointer offset */ | |
| 22 | + unsigned short __ip_selector; | |
| 23 | + unsigned short __opcode; | |
| 24 | + unsigned int __data_offset; | |
| 25 | + unsigned short __data_selector; | |
| 26 | + unsigned short __unused3; | |
| 27 | +} fenv_t; | |
| 28 | + | |
| 29 | + | |
| 30 | +/* FPU status word exception flags */ | |
| 31 | +#define FE_INVALID 0x01 | |
| 32 | +#define FE_DENORMAL 0x02 | |
| 33 | +#define FE_DIVBYZERO 0x04 | |
| 34 | +#define FE_OVERFLOW 0x08 | |
| 35 | +#define FE_UNDERFLOW 0x10 | |
| 36 | +#define FE_INEXACT 0x20 | |
| 37 | +#define FE_ALL_EXCEPT (FE_INVALID | FE_DENORMAL | FE_DIVBYZERO \ | |
| 38 | + | FE_OVERFLOW | FE_UNDERFLOW | FE_INEXACT) | |
| 39 | + | |
| 40 | +/* FPU control word rounding flags */ | |
| 41 | +#define FE_TONEAREST 0x0000 | |
| 42 | +#define FE_DOWNWARD 0x0400 | |
| 43 | +#define FE_UPWARD 0x0800 | |
| 44 | +#define FE_TOWARDZERO 0x0c00 | |
| 45 | + | |
| 46 | + | |
| 47 | +/* The default floating point environment */ | |
| 48 | +#define FE_DFL_ENV ((const fenv_t *)-1) | |
| 49 | + | |
| 50 | + | |
| 51 | +#ifndef RC_INVOKED | |
| 52 | +#ifdef __cplusplus | |
| 53 | +extern "C" { | |
| 54 | +#endif | |
| 55 | + | |
| 56 | + | |
| 57 | +/*TODO: Some of these could be inlined */ | |
| 58 | +/* 7.6.2 Exception */ | |
| 59 | + | |
| 60 | +extern int feclearexcept (int); | |
| 61 | +extern int fegetexceptflag (fexcept_t * flagp, int excepts); | |
| 62 | +extern int feraiseexcept (int excepts ); | |
| 63 | +extern int fesetexceptflag (const fexcept_t *, int); | |
| 64 | +extern int fetestexcept (int excepts); | |
| 65 | + | |
| 66 | + | |
| 67 | +/* 7.6.3 Rounding */ | |
| 68 | + | |
| 69 | +extern int fegetround (void); | |
| 70 | +extern int fesetround (int mode); | |
| 71 | + | |
| 72 | + | |
| 73 | +/* 7.6.4 Environment */ | |
| 74 | + | |
| 75 | +extern int fegetenv (fenv_t * envp); | |
| 76 | +extern int fesetenv (const fenv_t * ); | |
| 77 | +extern int feupdateenv (const fenv_t *); | |
| 78 | +extern int feholdexcept (fenv_t *); | |
| 79 | + | |
| 80 | +#ifdef __cplusplus | |
| 81 | +} | |
| 82 | +#endif | |
| 83 | +#endif /* Not RC_INVOKED */ | |
| 84 | + | |
| 85 | +#endif /* ndef _FENV_H */ | |
| @@ -0,0 +1,224 @@ | ||
| 1 | +/* | |
| 2 | + * float.h | |
| 3 | + * | |
| 4 | + * Constants related to floating point arithmetic. | |
| 5 | + * | |
| 6 | + * Also included here are some non-ANSI bits for accessing the floating | |
| 7 | + * point controller. | |
| 8 | + * | |
| 9 | + * NOTE: GCC provides float.h, and it is probably more accurate than this, | |
| 10 | + * but it doesn't include the non-standard stuff for accessing the | |
| 11 | + * fp controller. (TODO: Move those bits elsewhere?) Thus it is | |
| 12 | + * probably not a good idea to use the GCC supplied version instead | |
| 13 | + * of this header. | |
| 14 | + * | |
| 15 | + * This file is part of the Mingw32 package. | |
| 16 | + * | |
| 17 | + * Contributors: | |
| 18 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 19 | + * | |
| 20 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 21 | + * | |
| 22 | + * This source code is offered for use in the public domain. You may | |
| 23 | + * use, modify or distribute it freely. | |
| 24 | + * | |
| 25 | + * This code is distributed in the hope that it will be useful but | |
| 26 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 27 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 28 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 29 | + * | |
| 30 | + * $Revision: 1.1 $ | |
| 31 | + * $Author: bellard $ | |
| 32 | + * $Date: 2005/04/14 23:49:21 $ | |
| 33 | + * | |
| 34 | + */ | |
| 35 | + | |
| 36 | +#ifndef _FLOAT_H_ | |
| 37 | +#define _FLOAT_H_ | |
| 38 | + | |
| 39 | +/* All the headers include this file. */ | |
| 40 | +#include <_mingw.h> | |
| 41 | + | |
| 42 | +#define FLT_ROUNDS 1 | |
| 43 | +#define FLT_GUARD 1 | |
| 44 | +#define FLT_NORMALIZE 1 | |
| 45 | + | |
| 46 | +/* | |
| 47 | + * The characteristics of float. | |
| 48 | + */ | |
| 49 | + | |
| 50 | +/* The radix for floating point representation. */ | |
| 51 | +#define FLT_RADIX 2 | |
| 52 | + | |
| 53 | +/* Decimal digits of precision. */ | |
| 54 | +#define FLT_DIG 6 | |
| 55 | + | |
| 56 | +/* Smallest number such that 1+x != 1 */ | |
| 57 | +#define FLT_EPSILON 1.19209290e-07F | |
| 58 | + | |
| 59 | +/* The number of base FLT_RADIX digits in the mantissa. */ | |
| 60 | +#define FLT_MANT_DIG 24 | |
| 61 | + | |
| 62 | +/* The maximum floating point number. */ | |
| 63 | +#define FLT_MAX 3.40282347e+38F | |
| 64 | + | |
| 65 | +/* Maximum n such that FLT_RADIX^n - 1 is representable. */ | |
| 66 | +#define FLT_MAX_EXP 128 | |
| 67 | + | |
| 68 | +/* Maximum n such that 10^n is representable. */ | |
| 69 | +#define FLT_MAX_10_EXP 38 | |
| 70 | + | |
| 71 | +/* Minimum normalized floating-point number. */ | |
| 72 | +#define FLT_MIN 1.17549435e-38F | |
| 73 | + | |
| 74 | +/* Minimum n such that FLT_RADIX^n is a normalized number. */ | |
| 75 | +#define FLT_MIN_EXP (-125) | |
| 76 | + | |
| 77 | +/* Minimum n such that 10^n is a normalized number. */ | |
| 78 | +#define FLT_MIN_10_EXP (-37) | |
| 79 | + | |
| 80 | + | |
| 81 | +/* | |
| 82 | + * The characteristics of double. | |
| 83 | + */ | |
| 84 | +#define DBL_DIG 15 | |
| 85 | +#define DBL_EPSILON 1.1102230246251568e-16 | |
| 86 | +#define DBL_MANT_DIG 53 | |
| 87 | +#define DBL_MAX 1.7976931348623157e+308 | |
| 88 | +#define DBL_MAX_EXP 1024 | |
| 89 | +#define DBL_MAX_10_EXP 308 | |
| 90 | +#define DBL_MIN 2.2250738585072014e-308 | |
| 91 | +#define DBL_MIN_EXP (-1021) | |
| 92 | +#define DBL_MIN_10_EXP (-307) | |
| 93 | + | |
| 94 | + | |
| 95 | +/* | |
| 96 | + * The characteristics of long double. | |
| 97 | + * NOTE: long double is the same as double. | |
| 98 | + */ | |
| 99 | +#define LDBL_DIG 15 | |
| 100 | +#define LDBL_EPSILON 1.1102230246251568e-16L | |
| 101 | +#define LDBL_MANT_DIG 53 | |
| 102 | +#define LDBL_MAX 1.7976931348623157e+308L | |
| 103 | +#define LDBL_MAX_EXP 1024 | |
| 104 | +#define LDBL_MAX_10_EXP 308 | |
| 105 | +#define LDBL_MIN 2.2250738585072014e-308L | |
| 106 | +#define LDBL_MIN_EXP (-1021) | |
| 107 | +#define LDBL_MIN_10_EXP (-307) | |
| 108 | + | |
| 109 | + | |
| 110 | +/* | |
| 111 | + * Functions and definitions for controlling the FPU. | |
| 112 | + */ | |
| 113 | +#ifndef __STRICT_ANSI__ | |
| 114 | + | |
| 115 | +/* TODO: These constants are only valid for x86 machines */ | |
| 116 | + | |
| 117 | +/* Control word masks for unMask */ | |
| 118 | +#define _MCW_EM 0x0008001F /* Error masks */ | |
| 119 | +#define _MCW_IC 0x00040000 /* Infinity */ | |
| 120 | +#define _MCW_RC 0x00000300 /* Rounding */ | |
| 121 | +#define _MCW_PC 0x00030000 /* Precision */ | |
| 122 | + | |
| 123 | +/* Control word values for unNew (use with related unMask above) */ | |
| 124 | +#define _EM_INVALID 0x00000010 | |
| 125 | +#define _EM_DENORMAL 0x00080000 | |
| 126 | +#define _EM_ZERODIVIDE 0x00000008 | |
| 127 | +#define _EM_OVERFLOW 0x00000004 | |
| 128 | +#define _EM_UNDERFLOW 0x00000002 | |
| 129 | +#define _EM_INEXACT 0x00000001 | |
| 130 | +#define _IC_AFFINE 0x00040000 | |
| 131 | +#define _IC_PROJECTIVE 0x00000000 | |
| 132 | +#define _RC_CHOP 0x00000300 | |
| 133 | +#define _RC_UP 0x00000200 | |
| 134 | +#define _RC_DOWN 0x00000100 | |
| 135 | +#define _RC_NEAR 0x00000000 | |
| 136 | +#define _PC_24 0x00020000 | |
| 137 | +#define _PC_53 0x00010000 | |
| 138 | +#define _PC_64 0x00000000 | |
| 139 | + | |
| 140 | +/* These are also defined in Mingw math.h, needed to work around | |
| 141 | + GCC build issues. */ | |
| 142 | +/* Return values for fpclass. */ | |
| 143 | +#ifndef __MINGW_FPCLASS_DEFINED | |
| 144 | +#define __MINGW_FPCLASS_DEFINED 1 | |
| 145 | +#define _FPCLASS_SNAN 0x0001 /* Signaling "Not a Number" */ | |
| 146 | +#define _FPCLASS_QNAN 0x0002 /* Quiet "Not a Number" */ | |
| 147 | +#define _FPCLASS_NINF 0x0004 /* Negative Infinity */ | |
| 148 | +#define _FPCLASS_NN 0x0008 /* Negative Normal */ | |
| 149 | +#define _FPCLASS_ND 0x0010 /* Negative Denormal */ | |
| 150 | +#define _FPCLASS_NZ 0x0020 /* Negative Zero */ | |
| 151 | +#define _FPCLASS_PZ 0x0040 /* Positive Zero */ | |
| 152 | +#define _FPCLASS_PD 0x0080 /* Positive Denormal */ | |
| 153 | +#define _FPCLASS_PN 0x0100 /* Positive Normal */ | |
| 154 | +#define _FPCLASS_PINF 0x0200 /* Positive Infinity */ | |
| 155 | +#endif /* __MINGW_FPCLASS_DEFINED */ | |
| 156 | + | |
| 157 | +/* invalid subconditions (_SW_INVALID also set) */ | |
| 158 | +#define _SW_UNEMULATED 0x0040 /* unemulated instruction */ | |
| 159 | +#define _SW_SQRTNEG 0x0080 /* square root of a neg number */ | |
| 160 | +#define _SW_STACKOVERFLOW 0x0200 /* FP stack overflow */ | |
| 161 | +#define _SW_STACKUNDERFLOW 0x0400 /* FP stack underflow */ | |
| 162 | + | |
| 163 | +/* Floating point error signals and return codes */ | |
| 164 | +#define _FPE_INVALID 0x81 | |
| 165 | +#define _FPE_DENORMAL 0x82 | |
| 166 | +#define _FPE_ZERODIVIDE 0x83 | |
| 167 | +#define _FPE_OVERFLOW 0x84 | |
| 168 | +#define _FPE_UNDERFLOW 0x85 | |
| 169 | +#define _FPE_INEXACT 0x86 | |
| 170 | +#define _FPE_UNEMULATED 0x87 | |
| 171 | +#define _FPE_SQRTNEG 0x88 | |
| 172 | +#define _FPE_STACKOVERFLOW 0x8a | |
| 173 | +#define _FPE_STACKUNDERFLOW 0x8b | |
| 174 | +#define _FPE_EXPLICITGEN 0x8c /* raise( SIGFPE ); */ | |
| 175 | + | |
| 176 | +#ifndef RC_INVOKED | |
| 177 | + | |
| 178 | +#ifdef __cplusplus | |
| 179 | +extern "C" { | |
| 180 | +#endif | |
| 181 | + | |
| 182 | +/* Set the FPU control word as cw = (cw & ~unMask) | (unNew & unMask), | |
| 183 | + * i.e. change the bits in unMask to have the values they have in unNew, | |
| 184 | + * leaving other bits unchanged. */ | |
| 185 | +unsigned int _controlfp (unsigned int unNew, unsigned int unMask); | |
| 186 | +unsigned int _control87 (unsigned int unNew, unsigned int unMask); | |
| 187 | + | |
| 188 | + | |
| 189 | +unsigned int _clearfp (void); /* Clear the FPU status word */ | |
| 190 | +unsigned int _statusfp (void); /* Report the FPU status word */ | |
| 191 | +#define _clear87 _clearfp | |
| 192 | +#define _status87 _statusfp | |
| 193 | + | |
| 194 | +void _fpreset (void); /* Reset the FPU */ | |
| 195 | +void fpreset (void); | |
| 196 | + | |
| 197 | +/* Global 'variable' for the current floating point error code. */ | |
| 198 | +int * __fpecode(void); | |
| 199 | +#define _fpecode (*(__fpecode())) | |
| 200 | + | |
| 201 | +/* | |
| 202 | + * IEEE recommended functions | |
| 203 | + */ | |
| 204 | + | |
| 205 | +double _chgsign (double); | |
| 206 | +double _copysign (double, double); | |
| 207 | +double _logb (double); | |
| 208 | +double _nextafter (double, double); | |
| 209 | +double _scalb (double, long); | |
| 210 | + | |
| 211 | +int _finite (double); | |
| 212 | +int _fpclass (double); | |
| 213 | +int _isnan (double); | |
| 214 | + | |
| 215 | +#ifdef __cplusplus | |
| 216 | +} | |
| 217 | +#endif | |
| 218 | + | |
| 219 | +#endif /* Not RC_INVOKED */ | |
| 220 | + | |
| 221 | +#endif /* Not __STRICT_ANSI__ */ | |
| 222 | + | |
| 223 | +#endif /* _FLOAT_H_ */ | |
| 224 | + | |
| @@ -0,0 +1,275 @@ | ||
| 1 | +/* 7.8 Format conversion of integer types <inttypes.h> */ | |
| 2 | + | |
| 3 | +#ifndef _INTTYPES_H | |
| 4 | +#define _INTTYPES_H | |
| 5 | + | |
| 6 | +#include <stdint.h> | |
| 7 | +#define __need_wchar_t | |
| 8 | +#include <stddef.h> | |
| 9 | + | |
| 10 | +#ifdef __cplusplus | |
| 11 | +extern "C" { | |
| 12 | +#endif | |
| 13 | + | |
| 14 | +typedef struct { | |
| 15 | + intmax_t quot; | |
| 16 | + intmax_t rem; | |
| 17 | + } imaxdiv_t; | |
| 18 | + | |
| 19 | +#if !defined(__cplusplus) || defined(__STDC_FORMAT_MACROS) | |
| 20 | + | |
| 21 | +/* 7.8.1 Macros for format specifiers | |
| 22 | + * | |
| 23 | + * MS runtime does not yet understand C9x standard "ll" | |
| 24 | + * length specifier. It appears to treat "ll" as "l". | |
| 25 | + * The non-standard I64 length specifier causes warning in GCC, | |
| 26 | + * but understood by MS runtime functions. | |
| 27 | + */ | |
| 28 | + | |
| 29 | +/* fprintf macros for signed types */ | |
| 30 | +#define PRId8 "d" | |
| 31 | +#define PRId16 "d" | |
| 32 | +#define PRId32 "d" | |
| 33 | +#define PRId64 "I64d" | |
| 34 | + | |
| 35 | +#define PRIdLEAST8 "d" | |
| 36 | +#define PRIdLEAST16 "d" | |
| 37 | +#define PRIdLEAST32 "d" | |
| 38 | +#define PRIdLEAST64 "I64d" | |
| 39 | + | |
| 40 | +#define PRIdFAST8 "d" | |
| 41 | +#define PRIdFAST16 "d" | |
| 42 | +#define PRIdFAST32 "d" | |
| 43 | +#define PRIdFAST64 "I64d" | |
| 44 | + | |
| 45 | +#define PRIdMAX "I64d" | |
| 46 | +#define PRIdPTR "d" | |
| 47 | + | |
| 48 | +#define PRIi8 "i" | |
| 49 | +#define PRIi16 "i" | |
| 50 | +#define PRIi32 "i" | |
| 51 | +#define PRIi64 "I64i" | |
| 52 | + | |
| 53 | +#define PRIiLEAST8 "i" | |
| 54 | +#define PRIiLEAST16 "i" | |
| 55 | +#define PRIiLEAST32 "i" | |
| 56 | +#define PRIiLEAST64 "I64i" | |
| 57 | + | |
| 58 | +#define PRIiFAST8 "i" | |
| 59 | +#define PRIiFAST16 "i" | |
| 60 | +#define PRIiFAST32 "i" | |
| 61 | +#define PRIiFAST64 "I64i" | |
| 62 | + | |
| 63 | +#define PRIiMAX "I64i" | |
| 64 | +#define PRIiPTR "i" | |
| 65 | + | |
| 66 | +#define PRIo8 "o" | |
| 67 | +#define PRIo16 "o" | |
| 68 | +#define PRIo32 "o" | |
| 69 | +#define PRIo64 "I64o" | |
| 70 | + | |
| 71 | +#define PRIoLEAST8 "o" | |
| 72 | +#define PRIoLEAST16 "o" | |
| 73 | +#define PRIoLEAST32 "o" | |
| 74 | +#define PRIoLEAST64 "I64o" | |
| 75 | + | |
| 76 | +#define PRIoFAST8 "o" | |
| 77 | +#define PRIoFAST16 "o" | |
| 78 | +#define PRIoFAST32 "o" | |
| 79 | +#define PRIoFAST64 "I64o" | |
| 80 | + | |
| 81 | +#define PRIoMAX "I64o" | |
| 82 | + | |
| 83 | +#define PRIoPTR "o" | |
| 84 | + | |
| 85 | +/* fprintf macros for unsigned types */ | |
| 86 | +#define PRIu8 "u" | |
| 87 | +#define PRIu16 "u" | |
| 88 | +#define PRIu32 "u" | |
| 89 | +#define PRIu64 "I64u" | |
| 90 | + | |
| 91 | + | |
| 92 | +#define PRIuLEAST8 "u" | |
| 93 | +#define PRIuLEAST16 "u" | |
| 94 | +#define PRIuLEAST32 "u" | |
| 95 | +#define PRIuLEAST64 "I64u" | |
| 96 | + | |
| 97 | +#define PRIuFAST8 "u" | |
| 98 | +#define PRIuFAST16 "u" | |
| 99 | +#define PRIuFAST32 "u" | |
| 100 | +#define PRIuFAST64 "I64u" | |
| 101 | + | |
| 102 | +#define PRIuMAX "I64u" | |
| 103 | +#define PRIuPTR "u" | |
| 104 | + | |
| 105 | +#define PRIx8 "x" | |
| 106 | +#define PRIx16 "x" | |
| 107 | +#define PRIx32 "x" | |
| 108 | +#define PRIx64 "I64x" | |
| 109 | + | |
| 110 | +#define PRIxLEAST8 "x" | |
| 111 | +#define PRIxLEAST16 "x" | |
| 112 | +#define PRIxLEAST32 "x" | |
| 113 | +#define PRIxLEAST64 "I64x" | |
| 114 | + | |
| 115 | +#define PRIxFAST8 "x" | |
| 116 | +#define PRIxFAST16 "x" | |
| 117 | +#define PRIxFAST32 "x" | |
| 118 | +#define PRIxFAST64 "I64x" | |
| 119 | + | |
| 120 | +#define PRIxMAX "I64x" | |
| 121 | +#define PRIxPTR "x" | |
| 122 | + | |
| 123 | +#define PRIX8 "X" | |
| 124 | +#define PRIX16 "X" | |
| 125 | +#define PRIX32 "X" | |
| 126 | +#define PRIX64 "I64X" | |
| 127 | + | |
| 128 | +#define PRIXLEAST8 "X" | |
| 129 | +#define PRIXLEAST16 "X" | |
| 130 | +#define PRIXLEAST32 "X" | |
| 131 | +#define PRIXLEAST64 "I64X" | |
| 132 | + | |
| 133 | +#define PRIXFAST8 "X" | |
| 134 | +#define PRIXFAST16 "X" | |
| 135 | +#define PRIXFAST32 "X" | |
| 136 | +#define PRIXFAST64 "I64X" | |
| 137 | + | |
| 138 | +#define PRIXMAX "I64X" | |
| 139 | +#define PRIXPTR "X" | |
| 140 | + | |
| 141 | +/* | |
| 142 | + * fscanf macros for signed int types | |
| 143 | + * NOTE: if 32-bit int is used for int_fast8_t and int_fast16_t | |
| 144 | + * (see stdint.h, 7.18.1.3), FAST8 and FAST16 should have | |
| 145 | + * no length identifiers | |
| 146 | + */ | |
| 147 | + | |
| 148 | +#define SCNd16 "hd" | |
| 149 | +#define SCNd32 "d" | |
| 150 | +#define SCNd64 "I64d" | |
| 151 | + | |
| 152 | +#define SCNdLEAST16 "hd" | |
| 153 | +#define SCNdLEAST32 "d" | |
| 154 | +#define SCNdLEAST64 "I64d" | |
| 155 | + | |
| 156 | +#define SCNdFAST16 "hd" | |
| 157 | +#define SCNdFAST32 "d" | |
| 158 | +#define SCNdFAST64 "I64d" | |
| 159 | + | |
| 160 | +#define SCNdMAX "I64d" | |
| 161 | +#define SCNdPTR "d" | |
| 162 | + | |
| 163 | +#define SCNi16 "hi" | |
| 164 | +#define SCNi32 "i" | |
| 165 | +#define SCNi64 "I64i" | |
| 166 | + | |
| 167 | +#define SCNiLEAST16 "hi" | |
| 168 | +#define SCNiLEAST32 "i" | |
| 169 | +#define SCNiLEAST64 "I64i" | |
| 170 | + | |
| 171 | +#define SCNiFAST16 "hi" | |
| 172 | +#define SCNiFAST32 "i" | |
| 173 | +#define SCNiFAST64 "I64i" | |
| 174 | + | |
| 175 | +#define SCNiMAX "I64i" | |
| 176 | +#define SCNiPTR "i" | |
| 177 | + | |
| 178 | +#define SCNo16 "ho" | |
| 179 | +#define SCNo32 "o" | |
| 180 | +#define SCNo64 "I64o" | |
| 181 | + | |
| 182 | +#define SCNoLEAST16 "ho" | |
| 183 | +#define SCNoLEAST32 "o" | |
| 184 | +#define SCNoLEAST64 "I64o" | |
| 185 | + | |
| 186 | +#define SCNoFAST16 "ho" | |
| 187 | +#define SCNoFAST32 "o" | |
| 188 | +#define SCNoFAST64 "I64o" | |
| 189 | + | |
| 190 | +#define SCNoMAX "I64o" | |
| 191 | +#define SCNoPTR "o" | |
| 192 | + | |
| 193 | +#define SCNx16 "hx" | |
| 194 | +#define SCNx32 "x" | |
| 195 | +#define SCNx64 "I64x" | |
| 196 | + | |
| 197 | +#define SCNxLEAST16 "hx" | |
| 198 | +#define SCNxLEAST32 "x" | |
| 199 | +#define SCNxLEAST64 "I64x" | |
| 200 | + | |
| 201 | +#define SCNxFAST16 "hx" | |
| 202 | +#define SCNxFAST32 "x" | |
| 203 | +#define SCNxFAST64 "I64x" | |
| 204 | + | |
| 205 | +#define SCNxMAX "I64x" | |
| 206 | +#define SCNxPTR "x" | |
| 207 | + | |
| 208 | + | |
| 209 | +/* fscanf macros for unsigned int types */ | |
| 210 | + | |
| 211 | +#define SCNu16 "hu" | |
| 212 | +#define SCNu32 "u" | |
| 213 | +#define SCNu64 "I64u" | |
| 214 | + | |
| 215 | +#define SCNuLEAST16 "hu" | |
| 216 | +#define SCNuLEAST32 "u" | |
| 217 | +#define SCNuLEAST64 "I64u" | |
| 218 | + | |
| 219 | +#define SCNuFAST16 "hu" | |
| 220 | +#define SCNuFAST32 "u" | |
| 221 | +#define SCNuFAST64 "I64u" | |
| 222 | + | |
| 223 | +#define SCNuMAX "I64u" | |
| 224 | +#define SCNuPTR "u" | |
| 225 | + | |
| 226 | +#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L | |
| 227 | +/* | |
| 228 | + * no length modifier for char types prior to C9x | |
| 229 | + * MS runtime scanf appears to treat "hh" as "h" | |
| 230 | + */ | |
| 231 | + | |
| 232 | +/* signed char */ | |
| 233 | +#define SCNd8 "hhd" | |
| 234 | +#define SCNdLEAST8 "hhd" | |
| 235 | +#define SCNdFAST8 "hhd" | |
| 236 | + | |
| 237 | +#define SCNi8 "hhi" | |
| 238 | +#define SCNiLEAST8 "hhi" | |
| 239 | +#define SCNiFAST8 "hhi" | |
| 240 | + | |
| 241 | +#define SCNo8 "hho" | |
| 242 | +#define SCNoLEAST8 "hho" | |
| 243 | +#define SCNoFAST8 "hho" | |
| 244 | + | |
| 245 | +#define SCNx8 "hhx" | |
| 246 | +#define SCNxLEAST8 "hhx" | |
| 247 | +#define SCNxFAST8 "hhx" | |
| 248 | + | |
| 249 | +/* unsigned char */ | |
| 250 | +#define SCNu8 "hhu" | |
| 251 | +#define SCNuLEAST8 "hhu" | |
| 252 | +#define SCNuFAST8 "hhu" | |
| 253 | +#endif /* __STDC_VERSION__ >= 199901 */ | |
| 254 | + | |
| 255 | +#endif /* !defined(__cplusplus) || defined(__STDC_FORMAT_MACROS) */ | |
| 256 | + | |
| 257 | +extern inline intmax_t imaxabs (intmax_t j) | |
| 258 | + {return (j >= 0 ? j : -j);} | |
| 259 | +imaxdiv_t imaxdiv (intmax_t numer, intmax_t denom); | |
| 260 | + | |
| 261 | +/* 7.8.2 Conversion functions for greatest-width integer types */ | |
| 262 | + | |
| 263 | +intmax_t strtoimax (const char* __restrict__ nptr, char** __restrict__ endptr, int base); | |
| 264 | +uintmax_t strtoumax (const char* __restrict__ nptr, char** __restrict__ endptr, int base); | |
| 265 | + | |
| 266 | +intmax_t wcstoimax (const wchar_t* __restrict__ nptr, wchar_t** __restrict__ endptr, | |
| 267 | + int base); | |
| 268 | +uintmax_t wcstoumax (const wchar_t* __restrict__ nptr, wchar_t** __restrict__ endptr, | |
| 269 | + int base); | |
| 270 | + | |
| 271 | +#ifdef __cplusplus | |
| 272 | +} | |
| 273 | +#endif | |
| 274 | + | |
| 275 | +#endif /* ndef _INTTYPES_H */ | |
| @@ -0,0 +1,296 @@ | ||
| 1 | +/* | |
| 2 | + * io.h | |
| 3 | + * | |
| 4 | + * System level I/O functions and types. | |
| 5 | + * | |
| 6 | + * This file is part of the Mingw32 package. | |
| 7 | + * | |
| 8 | + * Contributors: | |
| 9 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 10 | + * | |
| 11 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 12 | + * | |
| 13 | + * This source code is offered for use in the public domain. You may | |
| 14 | + * use, modify or distribute it freely. | |
| 15 | + * | |
| 16 | + * This code is distributed in the hope that it will be useful but | |
| 17 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 18 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 19 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 20 | + * | |
| 21 | + * $Revision: 1.1 $ | |
| 22 | + * $Author: bellard $ | |
| 23 | + * $Date: 2005/04/14 23:49:21 $ | |
| 24 | + * | |
| 25 | + */ | |
| 26 | + | |
| 27 | +#ifndef __STRICT_ANSI__ | |
| 28 | + | |
| 29 | +#ifndef _IO_H_ | |
| 30 | +#define _IO_H_ | |
| 31 | + | |
| 32 | +/* All the headers include this file. */ | |
| 33 | +#include <_mingw.h> | |
| 34 | + | |
| 35 | +/* We need the definition of FILE anyway... */ | |
| 36 | +#include <stdio.h> | |
| 37 | + | |
| 38 | +/* MSVC's io.h contains the stuff from dir.h, so I will too. | |
| 39 | + * NOTE: This also defines off_t, the file offset type, through | |
| 40 | + * an inclusion of sys/types.h */ | |
| 41 | +#ifndef __STRICT_ANSI__ | |
| 42 | + | |
| 43 | +#include <sys/types.h> /* To get time_t. */ | |
| 44 | + | |
| 45 | +/* | |
| 46 | + * Attributes of files as returned by _findfirst et al. | |
| 47 | + */ | |
| 48 | +#define _A_NORMAL 0x00000000 | |
| 49 | +#define _A_RDONLY 0x00000001 | |
| 50 | +#define _A_HIDDEN 0x00000002 | |
| 51 | +#define _A_SYSTEM 0x00000004 | |
| 52 | +#define _A_VOLID 0x00000008 | |
| 53 | +#define _A_SUBDIR 0x00000010 | |
| 54 | +#define _A_ARCH 0x00000020 | |
| 55 | + | |
| 56 | + | |
| 57 | +#ifndef RC_INVOKED | |
| 58 | + | |
| 59 | +#ifndef _FSIZE_T_DEFINED | |
| 60 | +typedef unsigned long _fsize_t; | |
| 61 | +#define _FSIZE_T_DEFINED | |
| 62 | +#endif | |
| 63 | + | |
| 64 | +/* | |
| 65 | + * The following structure is filled in by _findfirst or _findnext when | |
| 66 | + * they succeed in finding a match. | |
| 67 | + */ | |
| 68 | +struct _finddata_t | |
| 69 | +{ | |
| 70 | + unsigned attrib; /* Attributes, see constants above. */ | |
| 71 | + time_t time_create; | |
| 72 | + time_t time_access; /* always midnight local time */ | |
| 73 | + time_t time_write; | |
| 74 | + _fsize_t size; | |
| 75 | + char name[FILENAME_MAX]; /* may include spaces. */ | |
| 76 | +}; | |
| 77 | + | |
| 78 | +struct _finddatai64_t { | |
| 79 | + unsigned attrib; | |
| 80 | + time_t time_create; | |
| 81 | + time_t time_access; | |
| 82 | + time_t time_write; | |
| 83 | + __int64 size; | |
| 84 | + char name[FILENAME_MAX]; | |
| 85 | +}; | |
| 86 | + | |
| 87 | + | |
| 88 | +#ifndef _WFINDDATA_T_DEFINED | |
| 89 | +struct _wfinddata_t { | |
| 90 | + unsigned attrib; | |
| 91 | + time_t time_create; /* -1 for FAT file systems */ | |
| 92 | + time_t time_access; /* -1 for FAT file systems */ | |
| 93 | + time_t time_write; | |
| 94 | + _fsize_t size; | |
| 95 | + wchar_t name[FILENAME_MAX]; /* may include spaces. */ | |
| 96 | +}; | |
| 97 | +struct _wfinddatai64_t { | |
| 98 | + unsigned attrib; | |
| 99 | + time_t time_create; | |
| 100 | + time_t time_access; | |
| 101 | + time_t time_write; | |
| 102 | + __int64 size; | |
| 103 | + wchar_t name[FILENAME_MAX]; | |
| 104 | +}; | |
| 105 | + | |
| 106 | +#define _WFINDDATA_T_DEFINED | |
| 107 | +#endif | |
| 108 | + | |
| 109 | +#ifdef __cplusplus | |
| 110 | +extern "C" { | |
| 111 | +#endif | |
| 112 | + | |
| 113 | +/* | |
| 114 | + * Functions for searching for files. _findfirst returns -1 if no match | |
| 115 | + * is found. Otherwise it returns a handle to be used in _findnext and | |
| 116 | + * _findclose calls. _findnext also returns -1 if no match could be found, | |
| 117 | + * and 0 if a match was found. Call _findclose when you are finished. | |
| 118 | + */ | |
| 119 | +int _findfirst (const char*, struct _finddata_t*); | |
| 120 | +int _findnext (int, struct _finddata_t*); | |
| 121 | +int _findclose (int); | |
| 122 | + | |
| 123 | +int _chdir (const char*); | |
| 124 | +char* _getcwd (char*, int); | |
| 125 | +int _mkdir (const char*); | |
| 126 | +char* _mktemp (char*); | |
| 127 | +int _rmdir (const char*); | |
| 128 | + | |
| 129 | + | |
| 130 | +#ifdef __MSVCRT__ | |
| 131 | +__int64 _filelengthi64(int); | |
| 132 | +long _findfirsti64(const char*, struct _finddatai64_t*); | |
| 133 | +int _findnexti64(long, struct _finddatai64_t*); | |
| 134 | +__int64 _lseeki64(int, __int64, int); | |
| 135 | +__int64 _telli64(int); | |
| 136 | +#endif /* __MSVCRT__ */ | |
| 137 | + | |
| 138 | + | |
| 139 | +#ifndef _NO_OLDNAMES | |
| 140 | + | |
| 141 | +#ifndef _UWIN | |
| 142 | +int chdir (const char*); | |
| 143 | +char* getcwd (char*, int); | |
| 144 | +int mkdir (const char*); | |
| 145 | +char* mktemp (char*); | |
| 146 | +int rmdir (const char*); | |
| 147 | +#endif /* _UWIN */ | |
| 148 | + | |
| 149 | +#endif /* Not _NO_OLDNAMES */ | |
| 150 | + | |
| 151 | +#ifdef __cplusplus | |
| 152 | +} | |
| 153 | +#endif | |
| 154 | + | |
| 155 | +#endif /* Not RC_INVOKED */ | |
| 156 | + | |
| 157 | +#endif /* Not __STRICT_ANSI__ */ | |
| 158 | + | |
| 159 | +/* TODO: Maximum number of open handles has not been tested, I just set | |
| 160 | + * it the same as FOPEN_MAX. */ | |
| 161 | +#define HANDLE_MAX FOPEN_MAX | |
| 162 | + | |
| 163 | + | |
| 164 | +/* Some defines for _access nAccessMode (MS doesn't define them, but | |
| 165 | + * it doesn't seem to hurt to add them). */ | |
| 166 | +#define F_OK 0 /* Check for file existence */ | |
| 167 | +#define X_OK 1 /* Check for execute permission. */ | |
| 168 | +#define W_OK 2 /* Check for write permission */ | |
| 169 | +#define R_OK 4 /* Check for read permission */ | |
| 170 | + | |
| 171 | +#ifndef RC_INVOKED | |
| 172 | + | |
| 173 | +#ifdef __cplusplus | |
| 174 | +extern "C" { | |
| 175 | +#endif | |
| 176 | + | |
| 177 | +int _access (const char*, int); | |
| 178 | +int _chsize (int, long); | |
| 179 | +int _close (int); | |
| 180 | +int _commit(int); | |
| 181 | + | |
| 182 | +/* NOTE: The only significant bit in unPermissions appears to be bit 7 (0x80), | |
| 183 | + * the "owner write permission" bit (on FAT). */ | |
| 184 | +int _creat (const char*, unsigned); | |
| 185 | + | |
| 186 | +int _dup (int); | |
| 187 | +int _dup2 (int, int); | |
| 188 | +long _filelength (int); | |
| 189 | +int _fileno (FILE*); | |
| 190 | +long _get_osfhandle (int); | |
| 191 | +int _isatty (int); | |
| 192 | + | |
| 193 | +/* In a very odd turn of events this function is excluded from those | |
| 194 | + * files which define _STREAM_COMPAT. This is required in order to | |
| 195 | + * build GNU libio because of a conflict with _eof in streambuf.h | |
| 196 | + * line 107. Actually I might just be able to change the name of | |
| 197 | + * the enum member in streambuf.h... we'll see. TODO */ | |
| 198 | +#ifndef _STREAM_COMPAT | |
| 199 | +int _eof (int); | |
| 200 | +#endif | |
| 201 | + | |
| 202 | +/* LK_... locking commands defined in sys/locking.h. */ | |
| 203 | +int _locking (int, int, long); | |
| 204 | + | |
| 205 | +long _lseek (int, long, int); | |
| 206 | + | |
| 207 | +/* Optional third argument is unsigned unPermissions. */ | |
| 208 | +int _open (const char*, int, ...); | |
| 209 | + | |
| 210 | +int _open_osfhandle (long, int); | |
| 211 | +int _pipe (int *, unsigned int, int); | |
| 212 | +int _read (int, void*, unsigned int); | |
| 213 | + | |
| 214 | +/* SH_... flags for nShFlags defined in share.h | |
| 215 | + * Optional fourth argument is unsigned unPermissions */ | |
| 216 | +int _sopen (const char*, int, int, ...); | |
| 217 | + | |
| 218 | +long _tell (int); | |
| 219 | +/* Should umask be in sys/stat.h and/or sys/types.h instead? */ | |
| 220 | +int _umask (int); | |
| 221 | +int _unlink (const char*); | |
| 222 | +int _write (int, const void*, unsigned int); | |
| 223 | + | |
| 224 | +/* Wide character versions. Also declared in wchar.h. */ | |
| 225 | +/* Not in crtdll.dll */ | |
| 226 | +#if !defined (_WIO_DEFINED) | |
| 227 | +#if defined (__MSVCRT__) | |
| 228 | +int _waccess(const wchar_t*, int); | |
| 229 | +int _wchmod(const wchar_t*, int); | |
| 230 | +int _wcreat(const wchar_t*, int); | |
| 231 | +long _wfindfirst(wchar_t*, struct _wfinddata_t*); | |
| 232 | +int _wfindnext(long, struct _wfinddata_t *); | |
| 233 | +int _wunlink(const wchar_t*); | |
| 234 | +int _wopen(const wchar_t*, int, ...); | |
| 235 | +int _wsopen(const wchar_t*, int, int, ...); | |
| 236 | +wchar_t * _wmktemp(wchar_t*); | |
| 237 | +long _wfindfirsti64(const wchar_t*, struct _wfinddatai64_t*); | |
| 238 | +int _wfindnexti64(long, struct _wfinddatai64_t*); | |
| 239 | +#endif /* defined (__MSVCRT__) */ | |
| 240 | +#define _WIO_DEFINED | |
| 241 | +#endif /* _WIO_DEFINED */ | |
| 242 | + | |
| 243 | +#ifndef _NO_OLDNAMES | |
| 244 | +/* | |
| 245 | + * Non-underscored versions of non-ANSI functions to improve portability. | |
| 246 | + * These functions live in libmoldname.a. | |
| 247 | + */ | |
| 248 | + | |
| 249 | +#ifndef _UWIN | |
| 250 | +int access (const char*, int); | |
| 251 | +int chsize (int, long ); | |
| 252 | +int close (int); | |
| 253 | +int creat (const char*, int); | |
| 254 | +int dup (int); | |
| 255 | +int dup2 (int, int); | |
| 256 | +int eof (int); | |
| 257 | +long filelength (int); | |
| 258 | +int fileno (FILE*); | |
| 259 | +int isatty (int); | |
| 260 | +long lseek (int, long, int); | |
| 261 | +int open (const char*, int, ...); | |
| 262 | +int read (int, void*, unsigned int); | |
| 263 | +int sopen (const char*, int, int, ...); | |
| 264 | +long tell (int); | |
| 265 | +int umask (int); | |
| 266 | +int unlink (const char*); | |
| 267 | +int write (int, const void*, unsigned int); | |
| 268 | +#endif /* _UWIN */ | |
| 269 | + | |
| 270 | +/* Wide character versions. Also declared in wchar.h. */ | |
| 271 | +/* Where do these live? Not in libmoldname.a nor in libmsvcrt.a */ | |
| 272 | +#if 0 | |
| 273 | +int waccess(const wchar_t *, int); | |
| 274 | +int wchmod(const wchar_t *, int); | |
| 275 | +int wcreat(const wchar_t *, int); | |
| 276 | +long wfindfirst(wchar_t *, struct _wfinddata_t *); | |
| 277 | +int wfindnext(long, struct _wfinddata_t *); | |
| 278 | +int wunlink(const wchar_t *); | |
| 279 | +int wrename(const wchar_t *, const wchar_t *); | |
| 280 | +int wopen(const wchar_t *, int, ...); | |
| 281 | +int wsopen(const wchar_t *, int, int, ...); | |
| 282 | +wchar_t * wmktemp(wchar_t *); | |
| 283 | +#endif | |
| 284 | + | |
| 285 | +#endif /* Not _NO_OLDNAMES */ | |
| 286 | + | |
| 287 | +#ifdef __cplusplus | |
| 288 | +} | |
| 289 | +#endif | |
| 290 | + | |
| 291 | +#endif /* Not RC_INVOKED */ | |
| 292 | + | |
| 293 | +#endif /* _IO_H_ not defined */ | |
| 294 | + | |
| 295 | +#endif /* Not strict ANSI */ | |
| 296 | + | |
| @@ -0,0 +1,115 @@ | ||
| 1 | +/* | |
| 2 | + * limits.h | |
| 3 | + * | |
| 4 | + * Defines constants for the sizes of integral types. | |
| 5 | + * | |
| 6 | + * NOTE: GCC should supply a version of this header and it should be safe to | |
| 7 | + * use that version instead of this one (maybe safer). | |
| 8 | + * | |
| 9 | + * This file is part of the Mingw32 package. | |
| 10 | + * | |
| 11 | + * Contributors: | |
| 12 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 13 | + * | |
| 14 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 15 | + * | |
| 16 | + * This source code is offered for use in the public domain. You may | |
| 17 | + * use, modify or distribute it freely. | |
| 18 | + * | |
| 19 | + * This code is distributed in the hope that it will be useful but | |
| 20 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 21 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 22 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 23 | + * | |
| 24 | + * $Revision: 1.1 $ | |
| 25 | + * $Author: bellard $ | |
| 26 | + * $Date: 2005/04/14 23:49:21 $ | |
| 27 | + * | |
| 28 | + */ | |
| 29 | + | |
| 30 | +#ifndef _LIMITS_H_ | |
| 31 | +#define _LIMITS_H_ | |
| 32 | + | |
| 33 | +/* All the headers include this file. */ | |
| 34 | +#include <_mingw.h> | |
| 35 | + | |
| 36 | +/* | |
| 37 | + * File system limits | |
| 38 | + * | |
| 39 | + * TODO: NAME_MAX and OPEN_MAX are file system limits or not? Are they the | |
| 40 | + * same as FILENAME_MAX and FOPEN_MAX from stdio.h? | |
| 41 | + * NOTE: Apparently the actual size of PATH_MAX is 260, but a space is | |
| 42 | + * required for the NUL. TODO: Test? | |
| 43 | + */ | |
| 44 | +#define PATH_MAX (259) | |
| 45 | + | |
| 46 | +/* | |
| 47 | + * Characteristics of the char data type. | |
| 48 | + * | |
| 49 | + * TODO: Is MB_LEN_MAX correct? | |
| 50 | + */ | |
| 51 | +#define CHAR_BIT 8 | |
| 52 | +#define MB_LEN_MAX 2 | |
| 53 | + | |
| 54 | +#define SCHAR_MIN (-128) | |
| 55 | +#define SCHAR_MAX 127 | |
| 56 | + | |
| 57 | +#define UCHAR_MAX 255 | |
| 58 | + | |
| 59 | +/* TODO: Is this safe? I think it might just be testing the preprocessor, | |
| 60 | + * not the compiler itself... */ | |
| 61 | +#if ('\x80' < 0) | |
| 62 | +#define CHAR_MIN SCHAR_MIN | |
| 63 | +#define CHAR_MAX SCHAR_MAX | |
| 64 | +#else | |
| 65 | +#define CHAR_MIN 0 | |
| 66 | +#define CHAR_MAX UCHAR_MAX | |
| 67 | +#endif | |
| 68 | + | |
| 69 | +/* | |
| 70 | + * Maximum and minimum values for ints. | |
| 71 | + */ | |
| 72 | +#define INT_MAX 2147483647 | |
| 73 | +#define INT_MIN (-INT_MAX-1) | |
| 74 | + | |
| 75 | +#define UINT_MAX 0xffffffff | |
| 76 | + | |
| 77 | +/* | |
| 78 | + * Maximum and minimum values for shorts. | |
| 79 | + */ | |
| 80 | +#define SHRT_MAX 32767 | |
| 81 | +#define SHRT_MIN (-SHRT_MAX-1) | |
| 82 | + | |
| 83 | +#define USHRT_MAX 0xffff | |
| 84 | + | |
| 85 | +/* | |
| 86 | + * Maximum and minimum values for longs and unsigned longs. | |
| 87 | + * | |
| 88 | + * TODO: This is not correct for Alphas, which have 64 bit longs. | |
| 89 | + */ | |
| 90 | +#define LONG_MAX 2147483647L | |
| 91 | + | |
| 92 | +#define LONG_MIN (-LONG_MAX-1) | |
| 93 | + | |
| 94 | +#define ULONG_MAX 0xffffffffUL | |
| 95 | + | |
| 96 | + | |
| 97 | +/* | |
| 98 | + * The GNU C compiler also allows 'long long int' | |
| 99 | + */ | |
| 100 | +#if !defined(__STRICT_ANSI__) && defined(__GNUC__) | |
| 101 | + | |
| 102 | +#define LONG_LONG_MAX 9223372036854775807LL | |
| 103 | +#define LONG_LONG_MIN (-LONG_LONG_MAX-1) | |
| 104 | + | |
| 105 | +#define ULONG_LONG_MAX (2ULL * LONG_LONG_MAX + 1) | |
| 106 | + | |
| 107 | +/* ISO C9x macro names */ | |
| 108 | +#define LLONG_MAX LONG_LONG_MAX | |
| 109 | +#define LLONG_MIN LONG_LONG_MIN | |
| 110 | +#define ULLONG_MAX ULONG_LONG_MAX | |
| 111 | + | |
| 112 | +#endif /* Not Strict ANSI and GNU C compiler */ | |
| 113 | + | |
| 114 | + | |
| 115 | +#endif /* not _LIMITS_H_ */ | |
| @@ -0,0 +1,100 @@ | ||
| 1 | +/* | |
| 2 | + * locale.h | |
| 3 | + * | |
| 4 | + * Functions and types for localization (ie. changing the appearance of | |
| 5 | + * output based on the standards of a certain country). | |
| 6 | + * | |
| 7 | + * This file is part of the Mingw32 package. | |
| 8 | + * | |
| 9 | + * Contributors: | |
| 10 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 11 | + * | |
| 12 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 13 | + * | |
| 14 | + * This source code is offered for use in the public domain. You may | |
| 15 | + * use, modify or distribute it freely. | |
| 16 | + * | |
| 17 | + * This code is distributed in the hope that it will be useful but | |
| 18 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 19 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 20 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 21 | + * | |
| 22 | + * $Revision: 1.1 $ | |
| 23 | + * $Author: bellard $ | |
| 24 | + * $Date: 2005/04/14 23:49:21 $ | |
| 25 | + * | |
| 26 | + */ | |
| 27 | + | |
| 28 | +#ifndef _LOCALE_H_ | |
| 29 | +#define _LOCALE_H_ | |
| 30 | + | |
| 31 | +/* All the headers include this file. */ | |
| 32 | +#include <_mingw.h> | |
| 33 | + | |
| 34 | +/* | |
| 35 | + * NOTE: I have tried to test this, but I am limited by my knowledge of | |
| 36 | + * locale issues. The structure does not bomb if you look at the | |
| 37 | + * values, and 'decimal_point' even seems to be correct. But the | |
| 38 | + * rest of the values are, by default, not particularly useful | |
| 39 | + * (read meaningless and not related to the international settings | |
| 40 | + * of the system). | |
| 41 | + */ | |
| 42 | + | |
| 43 | +#define LC_ALL 0 | |
| 44 | +#define LC_COLLATE 1 | |
| 45 | +#define LC_CTYPE 2 | |
| 46 | +#define LC_MONETARY 3 | |
| 47 | +#define LC_NUMERIC 4 | |
| 48 | +#define LC_TIME 5 | |
| 49 | +#define LC_MIN LC_ALL | |
| 50 | +#define LC_MAX LC_TIME | |
| 51 | + | |
| 52 | +#ifndef RC_INVOKED | |
| 53 | + | |
| 54 | +/* | |
| 55 | + * The structure returned by 'localeconv'. | |
| 56 | + */ | |
| 57 | +struct lconv | |
| 58 | +{ | |
| 59 | + char* decimal_point; | |
| 60 | + char* thousands_sep; | |
| 61 | + char* grouping; | |
| 62 | + char* int_curr_symbol; | |
| 63 | + char* currency_symbol; | |
| 64 | + char* mon_decimal_point; | |
| 65 | + char* mon_thousands_sep; | |
| 66 | + char* mon_grouping; | |
| 67 | + char* positive_sign; | |
| 68 | + char* negative_sign; | |
| 69 | + char int_frac_digits; | |
| 70 | + char frac_digits; | |
| 71 | + char p_cs_precedes; | |
| 72 | + char p_sep_by_space; | |
| 73 | + char n_cs_precedes; | |
| 74 | + char n_sep_by_space; | |
| 75 | + char p_sign_posn; | |
| 76 | + char n_sign_posn; | |
| 77 | +}; | |
| 78 | + | |
| 79 | +#ifdef __cplusplus | |
| 80 | +extern "C" { | |
| 81 | +#endif | |
| 82 | + | |
| 83 | +char* setlocale (int, const char*); | |
| 84 | +struct lconv* localeconv (void); | |
| 85 | + | |
| 86 | +#ifndef _WLOCALE_DEFINED /* also declared in wchar.h */ | |
| 87 | +# define __need_wchar_t | |
| 88 | +# include <stddef.h> | |
| 89 | + wchar_t* _wsetlocale(int, const wchar_t*); | |
| 90 | +# define _WLOCALE_DEFINED | |
| 91 | +#endif /* ndef _WLOCALE_DEFINED */ | |
| 92 | + | |
| 93 | +#ifdef __cplusplus | |
| 94 | +} | |
| 95 | +#endif | |
| 96 | + | |
| 97 | +#endif /* Not RC_INVOKED */ | |
| 98 | + | |
| 99 | +#endif /* Not _LOCALE_H_ */ | |
| 100 | + | |
| @@ -0,0 +1,87 @@ | ||
| 1 | +/* | |
| 2 | + * malloc.h | |
| 3 | + * | |
| 4 | + * Support for programs which want to use malloc.h to get memory management | |
| 5 | + * functions. Unless you absolutely need some of these functions and they are | |
| 6 | + * not in the ANSI headers you should use the ANSI standard header files | |
| 7 | + * instead. | |
| 8 | + * | |
| 9 | + * This file is part of the Mingw32 package. | |
| 10 | + * | |
| 11 | + * Contributors: | |
| 12 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 13 | + * | |
| 14 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 15 | + * | |
| 16 | + * This source code is offered for use in the public domain. You may | |
| 17 | + * use, modify or distribute it freely. | |
| 18 | + * | |
| 19 | + * This code is distributed in the hope that it will be useful but | |
| 20 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 21 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 22 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 23 | + * | |
| 24 | + * $Revision: 1.1 $ | |
| 25 | + * $Author: bellard $ | |
| 26 | + * $Date: 2005/04/14 23:49:21 $ | |
| 27 | + * | |
| 28 | + */ | |
| 29 | + | |
| 30 | +#ifndef __STRICT_ANSI__ | |
| 31 | + | |
| 32 | +#ifndef _MALLOC_H_ | |
| 33 | +#define _MALLOC_H_ | |
| 34 | + | |
| 35 | +/* All the headers include this file. */ | |
| 36 | +#include <_mingw.h> | |
| 37 | + | |
| 38 | +#include <stdlib.h> | |
| 39 | + | |
| 40 | +#ifndef RC_INVOKED | |
| 41 | + | |
| 42 | +/* | |
| 43 | + * The structure used to walk through the heap with _heapwalk. | |
| 44 | + */ | |
| 45 | +typedef struct _heapinfo | |
| 46 | +{ | |
| 47 | + int* _pentry; | |
| 48 | + size_t _size; | |
| 49 | + int _useflag; | |
| 50 | +} _HEAPINFO; | |
| 51 | + | |
| 52 | +/* Values for _heapinfo.useflag */ | |
| 53 | +#define _USEDENTRY 0 | |
| 54 | +#define _FREEENTRY 1 | |
| 55 | + | |
| 56 | +#ifdef __cplusplus | |
| 57 | +extern "C" { | |
| 58 | +#endif | |
| 59 | +/* | |
| 60 | + The _heap* memory allocation functions are supported on NT | |
| 61 | + but not W9x. On latter, they always set errno to ENOSYS. | |
| 62 | +*/ | |
| 63 | +int _heapwalk (_HEAPINFO*); | |
| 64 | + | |
| 65 | +#ifndef _NO_OLDNAMES | |
| 66 | +int heapwalk (_HEAPINFO*); | |
| 67 | +#endif /* Not _NO_OLDNAMES */ | |
| 68 | + | |
| 69 | +int _heapchk (void); /* Verify heap integrety. */ | |
| 70 | +int _heapmin (void); /* Return unused heap to the OS. */ | |
| 71 | +int _heapset (unsigned int); | |
| 72 | + | |
| 73 | +size_t _msize (void*); | |
| 74 | +size_t _get_sbh_threshold (void); | |
| 75 | +int _set_sbh_threshold (size_t); | |
| 76 | +void * _expand (void*, size_t); | |
| 77 | + | |
| 78 | +#ifdef __cplusplus | |
| 79 | +} | |
| 80 | +#endif | |
| 81 | + | |
| 82 | +#endif /* RC_INVOKED */ | |
| 83 | + | |
| 84 | +#endif /* Not _MALLOC_H_ */ | |
| 85 | + | |
| 86 | +#endif /* Not __STRICT_ANSI__ */ | |
| 87 | + | |
| @@ -0,0 +1,438 @@ | ||
| 1 | +/* | |
| 2 | + * math.h | |
| 3 | + * | |
| 4 | + * Mathematical functions. | |
| 5 | + * | |
| 6 | + * This file is part of the Mingw32 package. | |
| 7 | + * | |
| 8 | + * Contributors: | |
| 9 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 10 | + * | |
| 11 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 12 | + * | |
| 13 | + * This source code is offered for use in the public domain. You may | |
| 14 | + * use, modify or distribute it freely. | |
| 15 | + * | |
| 16 | + * This code is distributed in the hope that it will be useful but | |
| 17 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 18 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 19 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 20 | + * | |
| 21 | + * $Revision: 1.1 $ | |
| 22 | + * $Author: bellard $ | |
| 23 | + * $Date: 2005/04/14 23:49:21 $ | |
| 24 | + * | |
| 25 | + */ | |
| 26 | + | |
| 27 | +#ifndef _MATH_H_ | |
| 28 | +#define _MATH_H_ | |
| 29 | + | |
| 30 | +/* All the headers include this file. */ | |
| 31 | +#include <_mingw.h> | |
| 32 | + | |
| 33 | +/* | |
| 34 | + * Types for the _exception structure. | |
| 35 | + */ | |
| 36 | + | |
| 37 | +#define _DOMAIN 1 /* domain error in argument */ | |
| 38 | +#define _SING 2 /* singularity */ | |
| 39 | +#define _OVERFLOW 3 /* range overflow */ | |
| 40 | +#define _UNDERFLOW 4 /* range underflow */ | |
| 41 | +#define _TLOSS 5 /* total loss of precision */ | |
| 42 | +#define _PLOSS 6 /* partial loss of precision */ | |
| 43 | + | |
| 44 | +/* | |
| 45 | + * Exception types with non-ANSI names for compatibility. | |
| 46 | + */ | |
| 47 | + | |
| 48 | +#ifndef __STRICT_ANSI__ | |
| 49 | +#ifndef _NO_OLDNAMES | |
| 50 | + | |
| 51 | +#define DOMAIN _DOMAIN | |
| 52 | +#define SING _SING | |
| 53 | +#define OVERFLOW _OVERFLOW | |
| 54 | +#define UNDERFLOW _UNDERFLOW | |
| 55 | +#define TLOSS _TLOSS | |
| 56 | +#define PLOSS _PLOSS | |
| 57 | + | |
| 58 | +#endif /* Not _NO_OLDNAMES */ | |
| 59 | +#endif /* Not __STRICT_ANSI__ */ | |
| 60 | + | |
| 61 | + | |
| 62 | +/* These are also defined in Mingw float.h; needed here as well to work | |
| 63 | + around GCC build issues. */ | |
| 64 | +#ifndef __STRICT_ANSI__ | |
| 65 | +#ifndef __MINGW_FPCLASS_DEFINED | |
| 66 | +#define __MINGW_FPCLASS_DEFINED 1 | |
| 67 | +/* IEEE 754 classication */ | |
| 68 | +#define _FPCLASS_SNAN 0x0001 /* Signaling "Not a Number" */ | |
| 69 | +#define _FPCLASS_QNAN 0x0002 /* Quiet "Not a Number" */ | |
| 70 | +#define _FPCLASS_NINF 0x0004 /* Negative Infinity */ | |
| 71 | +#define _FPCLASS_NN 0x0008 /* Negative Normal */ | |
| 72 | +#define _FPCLASS_ND 0x0010 /* Negative Denormal */ | |
| 73 | +#define _FPCLASS_NZ 0x0020 /* Negative Zero */ | |
| 74 | +#define _FPCLASS_PZ 0x0040 /* Positive Zero */ | |
| 75 | +#define _FPCLASS_PD 0x0080 /* Positive Denormal */ | |
| 76 | +#define _FPCLASS_PN 0x0100 /* Positive Normal */ | |
| 77 | +#define _FPCLASS_PINF 0x0200 /* Positive Infinity */ | |
| 78 | +#endif /* __MINGW_FPCLASS_DEFINED */ | |
| 79 | +#endif /* Not __STRICT_ANSI__ */ | |
| 80 | + | |
| 81 | +#ifndef RC_INVOKED | |
| 82 | + | |
| 83 | +#ifdef __cplusplus | |
| 84 | +extern "C" { | |
| 85 | +#endif | |
| 86 | + | |
| 87 | +/* | |
| 88 | + * HUGE_VAL is returned by strtod when the value would overflow the | |
| 89 | + * representation of 'double'. There are other uses as well. | |
| 90 | + * | |
| 91 | + * __imp__HUGE is a pointer to the actual variable _HUGE in | |
| 92 | + * MSVCRT.DLL. If we used _HUGE directly we would get a pointer | |
| 93 | + * to a thunk function. | |
| 94 | + * | |
| 95 | + * NOTE: The CRTDLL version uses _HUGE_dll instead. | |
| 96 | + */ | |
| 97 | + | |
| 98 | +#ifndef __DECLSPEC_SUPPORTED | |
| 99 | + | |
| 100 | +#ifdef __MSVCRT__ | |
| 101 | +extern double* __imp__HUGE; | |
| 102 | +#define HUGE_VAL (*__imp__HUGE) | |
| 103 | +#else | |
| 104 | +/* CRTDLL */ | |
| 105 | +extern double* __imp__HUGE_dll; | |
| 106 | +#define HUGE_VAL (*__imp__HUGE_dll) | |
| 107 | +#endif | |
| 108 | + | |
| 109 | +#else /* __DECLSPEC_SUPPORTED */ | |
| 110 | + | |
| 111 | +#ifdef __MSVCRT__ | |
| 112 | +__MINGW_IMPORT double _HUGE; | |
| 113 | +#define HUGE_VAL _HUGE | |
| 114 | +#else | |
| 115 | +/* CRTDLL */ | |
| 116 | +__MINGW_IMPORT double _HUGE_dll; | |
| 117 | +#define HUGE_VAL _HUGE_dll | |
| 118 | +#endif | |
| 119 | + | |
| 120 | +#endif /* __DECLSPEC_SUPPORTED */ | |
| 121 | + | |
| 122 | +struct _exception | |
| 123 | +{ | |
| 124 | + int type; | |
| 125 | + char *name; | |
| 126 | + double arg1; | |
| 127 | + double arg2; | |
| 128 | + double retval; | |
| 129 | +}; | |
| 130 | + | |
| 131 | + | |
| 132 | +double sin (double); | |
| 133 | +double cos (double); | |
| 134 | +double tan (double); | |
| 135 | +double sinh (double); | |
| 136 | +double cosh (double); | |
| 137 | +double tanh (double); | |
| 138 | +double asin (double); | |
| 139 | +double acos (double); | |
| 140 | +double atan (double); | |
| 141 | +double atan2 (double, double); | |
| 142 | +double exp (double); | |
| 143 | +double log (double); | |
| 144 | +double log10 (double); | |
| 145 | +double pow (double, double); | |
| 146 | +double sqrt (double); | |
| 147 | +double ceil (double); | |
| 148 | +double floor (double); | |
| 149 | +double fabs (double); | |
| 150 | +double ldexp (double, int); | |
| 151 | +double frexp (double, int*); | |
| 152 | +double modf (double, double*); | |
| 153 | +double fmod (double, double); | |
| 154 | + | |
| 155 | + | |
| 156 | +#ifndef __STRICT_ANSI__ | |
| 157 | + | |
| 158 | +/* Complex number (for cabs) */ | |
| 159 | +struct _complex | |
| 160 | +{ | |
| 161 | + double x; /* Real part */ | |
| 162 | + double y; /* Imaginary part */ | |
| 163 | +}; | |
| 164 | + | |
| 165 | +double _cabs (struct _complex); | |
| 166 | +double _hypot (double, double); | |
| 167 | +double _j0 (double); | |
| 168 | +double _j1 (double); | |
| 169 | +double _jn (int, double); | |
| 170 | +double _y0 (double); | |
| 171 | +double _y1 (double); | |
| 172 | +double _yn (int, double); | |
| 173 | +int _matherr (struct _exception *); | |
| 174 | + | |
| 175 | +/* These are also declared in Mingw float.h; needed here as well to work | |
| 176 | + around GCC build issues. */ | |
| 177 | +/* BEGIN FLOAT.H COPY */ | |
| 178 | +/* | |
| 179 | + * IEEE recommended functions | |
| 180 | + */ | |
| 181 | + | |
| 182 | +double _chgsign (double); | |
| 183 | +double _copysign (double, double); | |
| 184 | +double _logb (double); | |
| 185 | +double _nextafter (double, double); | |
| 186 | +double _scalb (double, long); | |
| 187 | + | |
| 188 | +int _finite (double); | |
| 189 | +int _fpclass (double); | |
| 190 | +int _isnan (double); | |
| 191 | + | |
| 192 | +/* END FLOAT.H COPY */ | |
| 193 | + | |
| 194 | +#if !defined (_NO_OLDNAMES) \ | |
| 195 | + || (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L ) | |
| 196 | + | |
| 197 | +/* | |
| 198 | + * Non-underscored versions of non-ANSI functions. These reside in | |
| 199 | + * liboldnames.a. They are now also ISO C99 standand names. | |
| 200 | + * Provided for extra portability. | |
| 201 | + */ | |
| 202 | + | |
| 203 | +double cabs (struct _complex); | |
| 204 | +double hypot (double, double); | |
| 205 | +double j0 (double); | |
| 206 | +double j1 (double); | |
| 207 | +double jn (int, double); | |
| 208 | +double y0 (double); | |
| 209 | +double y1 (double); | |
| 210 | +double yn (int, double); | |
| 211 | + | |
| 212 | +#endif /* Not _NO_OLDNAMES */ | |
| 213 | + | |
| 214 | +#endif /* Not __STRICT_ANSI__ */ | |
| 215 | + | |
| 216 | +#ifdef __cplusplus | |
| 217 | +} | |
| 218 | +#endif | |
| 219 | +#endif /* Not RC_INVOKED */ | |
| 220 | + | |
| 221 | + | |
| 222 | +#ifndef __NO_ISOCEXT | |
| 223 | + | |
| 224 | +#define INFINITY HUGE_VAL | |
| 225 | +#define NAN (0.0F/0.0F) | |
| 226 | + | |
| 227 | +/* | |
| 228 | + Return values for fpclassify. | |
| 229 | + These are based on Intel x87 fpu condition codes | |
| 230 | + in the high byte of status word and differ from | |
| 231 | + the return values for MS IEEE 754 extension _fpclass() | |
| 232 | +*/ | |
| 233 | +#define FP_NAN 0x0100 | |
| 234 | +#define FP_NORMAL 0x0400 | |
| 235 | +#define FP_INFINITE (FP_NAN | FP_NORMAL) | |
| 236 | +#define FP_ZERO 0x4000 | |
| 237 | +#define FP_SUBNORMAL (FP_NORMAL | FP_ZERO) | |
| 238 | +/* 0x0200 is signbit mask */ | |
| 239 | + | |
| 240 | +#ifndef RC_INVOKED | |
| 241 | +#ifdef __cplusplus | |
| 242 | +extern "C" { | |
| 243 | +#endif | |
| 244 | + | |
| 245 | +double nan(const char *tagp); | |
| 246 | +float nanf(const char *tagp); | |
| 247 | + | |
| 248 | +#ifndef __STRICT_ANSI__ | |
| 249 | +#define nan() nan("") | |
| 250 | +#define nanf() nanf("") | |
| 251 | +#endif | |
| 252 | + | |
| 253 | + | |
| 254 | +/* | |
| 255 | + We can't inline float, because we want to ensure truncation | |
| 256 | + to semantic type before classification. If we extend to long | |
| 257 | + double, we will also need to make double extern only. | |
| 258 | + (A normal long double value might become subnormal when | |
| 259 | + converted to double, and zero when converted to float.) | |
| 260 | +*/ | |
| 261 | +extern __inline__ int __fpclassify (double x){ | |
| 262 | + unsigned short sw; | |
| 263 | + __asm__ ("fxam; fstsw %%ax;" : "=a" (sw): "t" (x)); | |
| 264 | + return sw & (FP_NAN | FP_NORMAL | FP_ZERO ); | |
| 265 | +} | |
| 266 | + | |
| 267 | +extern int __fpclassifyf (float); | |
| 268 | + | |
| 269 | +#define fpclassify(x) ((sizeof(x) == sizeof(float)) ? __fpclassifyf(x) \ | |
| 270 | + : __fpclassify(x)) | |
| 271 | + | |
| 272 | +/* We don't need to worry about trucation here: | |
| 273 | + A NaN stays a NaN. */ | |
| 274 | + | |
| 275 | +extern __inline__ int __isnan (double _x) | |
| 276 | +{ | |
| 277 | + unsigned short sw; | |
| 278 | + __asm__ ("fxam;" | |
| 279 | + "fstsw %%ax": "=a" (sw) : "t" (_x)); | |
| 280 | + return (sw & (FP_NAN | FP_NORMAL | FP_INFINITE | FP_ZERO | FP_SUBNORMAL)) | |
| 281 | + == FP_NAN; | |
| 282 | +} | |
| 283 | + | |
| 284 | +extern __inline__ int __isnanf (float _x) | |
| 285 | +{ | |
| 286 | + unsigned short sw; | |
| 287 | + __asm__ ("fxam;" | |
| 288 | + "fstsw %%ax": "=a" (sw) : "t" (_x)); | |
| 289 | + return (sw & (FP_NAN | FP_NORMAL | FP_INFINITE | FP_ZERO | FP_SUBNORMAL)) | |
| 290 | + == FP_NAN; | |
| 291 | +} | |
| 292 | + | |
| 293 | +#define isnan(x) ((sizeof(x) == sizeof(float)) ? __isnanf(x) \ | |
| 294 | + : __isnan(x)) | |
| 295 | + | |
| 296 | + | |
| 297 | +#define isfinite(x) ((fpclassify(x) & FP_NAN) == 0) | |
| 298 | +#define isinf(x) (fpclassify(x) == FP_INFINITE) | |
| 299 | +#define isnormal(x) (fpclassify(x) == FP_NORMAL) | |
| 300 | + | |
| 301 | + | |
| 302 | +extern __inline__ int __signbit (double x) { | |
| 303 | + unsigned short stw; | |
| 304 | + __asm__ ( "fxam; fstsw %%ax;": "=a" (stw) : "t" (x)); | |
| 305 | + return stw & 0x0200; | |
| 306 | +} | |
| 307 | + | |
| 308 | +extern __inline__ int __signbitf (float x) { | |
| 309 | + unsigned short stw; | |
| 310 | + __asm__ ("fxam; fstsw %%ax;": "=a" (stw) : "t" (x)); | |
| 311 | + return stw & 0x0200; | |
| 312 | +} | |
| 313 | + | |
| 314 | +#define signbit(x) ((sizeof(x) == sizeof(float)) ? __signbitf(x) \ | |
| 315 | + : __signbit(x)) | |
| 316 | +/* | |
| 317 | + * With these functions, comparisons involving quiet NaNs set the FP | |
| 318 | + * condition code to "unordered". The IEEE floating-point spec | |
| 319 | + * dictates that the result of floating-point comparisons should be | |
| 320 | + * false whenever a NaN is involved, with the exception of the !=, | |
| 321 | + * which always returns true. | |
| 322 | + */ | |
| 323 | + | |
| 324 | +#if __GNUC__ >= 3 | |
| 325 | + | |
| 326 | +#define isgreater(x, y) __builtin_isgreater(x, y) | |
| 327 | +#define isgreaterequal(x, y) __builtin_isgreaterequal(x, y) | |
| 328 | +#define isless(x, y) __builtin_isless(x, y) | |
| 329 | +#define islessequal(x, y) __builtin_islessequal(x, y) | |
| 330 | +#define islessgreater(x, y) __builtin_islessgreater(x, y) | |
| 331 | +#define isunordered(x, y) __builtin_isunordered(x, y) | |
| 332 | + | |
| 333 | +#else | |
| 334 | +/* helper */ | |
| 335 | +extern __inline__ int __fp_unordered_compare (double x, double y){ | |
| 336 | + unsigned short retval; | |
| 337 | + __asm__ ("fucom %%st(1);" | |
| 338 | + "fnstsw;": "=a" (retval) : "t" (x), "u" (y)); | |
| 339 | + return retval; | |
| 340 | +} | |
| 341 | + | |
| 342 | +#define isgreater(x, y) ((__fp_unordered_compare(x, y) \ | |
| 343 | + & 0x4500) == 0) | |
| 344 | +#define isless(x, y) ((__fp_unordered_compare (y, x) \ | |
| 345 | + & 0x4500) == 0) | |
| 346 | +#define isgreaterequal(x, y) ((__fp_unordered_compare (x, y) \ | |
| 347 | + & FP_INFINITE) == 0) | |
| 348 | +#define islessequal(x, y) ((__fp_unordered_compare(y, x) \ | |
| 349 | + & FP_INFINITE) == 0) | |
| 350 | +#define islessgreater(x, y) ((__fp_unordered_compare(x, y) \ | |
| 351 | + & FP_SUBNORMAL) == 0) | |
| 352 | +#define isunordered(x, y) ((__fp_unordered_compare(x, y) \ | |
| 353 | + & 0x4500) == 0x4500) | |
| 354 | + | |
| 355 | +#endif | |
| 356 | + | |
| 357 | +/* round, using fpu control word settings */ | |
| 358 | +extern __inline__ double rint (double x) | |
| 359 | +{ | |
| 360 | + double retval; | |
| 361 | + __asm__ ("frndint;": "=t" (retval) : "0" (x)); | |
| 362 | + return retval; | |
| 363 | +} | |
| 364 | + | |
| 365 | +extern __inline__ float rintf (float x) | |
| 366 | +{ | |
| 367 | + float retval; | |
| 368 | + __asm__ ("frndint;" : "=t" (retval) : "0" (x) ); | |
| 369 | + return retval; | |
| 370 | +} | |
| 371 | + | |
| 372 | +/* round away from zero, regardless of fpu control word settings */ | |
| 373 | +extern double round (double); | |
| 374 | +extern float roundf (float); | |
| 375 | + | |
| 376 | +/* round towards zero, regardless of fpu control word settings */ | |
| 377 | +extern double trunc (double); | |
| 378 | +extern float truncf (float); | |
| 379 | + | |
| 380 | + | |
| 381 | +/* fmax and fmin. | |
| 382 | + NaN arguments are treated as missing data: if one argument is a NaN and the other numeric, then the | |
| 383 | + these functions choose the numeric value. | |
| 384 | +*/ | |
| 385 | + | |
| 386 | +extern double fmax (double, double); | |
| 387 | +extern double fmin (double, double); | |
| 388 | +extern float fmaxf (float, float); | |
| 389 | +float fminf (float, float); | |
| 390 | + | |
| 391 | +/* return x * y + z as a ternary op */ | |
| 392 | +extern double fma (double, double, double); | |
| 393 | +extern float fmaf (float, float, float); | |
| 394 | + | |
| 395 | +/* one lonely transcendental */ | |
| 396 | +extern double log2 (double _x); | |
| 397 | +extern float log2f (float _x); | |
| 398 | + | |
| 399 | +/* The underscored versions are in MSVCRT.dll. | |
| 400 | + The stubs for these are in libmingwex.a */ | |
| 401 | + | |
| 402 | +double copysign (double, double); | |
| 403 | +float copysignf (float, float); | |
| 404 | +double logb (double); | |
| 405 | +float logbf (float); | |
| 406 | +double nextafter (double, double); | |
| 407 | +float nextafterf (float, float); | |
| 408 | +double scalb (double, long); | |
| 409 | +float scalbf (float, long); | |
| 410 | + | |
| 411 | +#if !defined (__STRICT_ANSI__) /* inline using non-ANSI functions */ | |
| 412 | +extern __inline__ double copysign (double x, double y) | |
| 413 | + { return _copysign(x, y); } | |
| 414 | +extern __inline__ float copysignf (float x, float y) | |
| 415 | + { return _copysign(x, y); } | |
| 416 | +extern __inline__ double logb (double x) | |
| 417 | + { return _logb(x); } | |
| 418 | +extern __inline__ float logbf (float x) | |
| 419 | + { return _logb(x); } | |
| 420 | +extern __inline__ double nextafter(double x, double y) | |
| 421 | + { return _nextafter(x, y); } | |
| 422 | +extern __inline__ float nextafterf(float x, float y) | |
| 423 | + { return _nextafter(x, y); } | |
| 424 | +extern __inline__ double scalb (double x, long i) | |
| 425 | + { return _scalb (x, i); } | |
| 426 | +extern __inline__ float scalbf (float x, long i) | |
| 427 | + { return _scalb(x, i); } | |
| 428 | +#endif /* (__STRICT_ANSI__) */ | |
| 429 | + | |
| 430 | +#ifdef __cplusplus | |
| 431 | +} | |
| 432 | +#endif | |
| 433 | +#endif /* Not RC_INVOKED */ | |
| 434 | + | |
| 435 | +#endif /* __NO_ISOCEXT */ | |
| 436 | + | |
| 437 | +#endif /* Not _MATH_H_ */ | |
| 438 | + | |
| @@ -0,0 +1,8 @@ | ||
| 1 | +/* | |
| 2 | + * This file is part of the Mingw32 package. | |
| 3 | + * | |
| 4 | + * mem.h maps to string.h | |
| 5 | + */ | |
| 6 | +#ifndef __STRICT_ANSI__ | |
| 7 | +#include <string.h> | |
| 8 | +#endif | |
| @@ -0,0 +1,9 @@ | ||
| 1 | +/* | |
| 2 | + * This file is part of the Mingw32 package. | |
| 3 | + * | |
| 4 | + * memory.h maps to the standard string.h header. | |
| 5 | + */ | |
| 6 | +#ifndef __STRICT_ANSI__ | |
| 7 | +#include <string.h> | |
| 8 | +#endif | |
| 9 | + | |
| @@ -0,0 +1,158 @@ | ||
| 1 | +/* | |
| 2 | + * process.h | |
| 3 | + * | |
| 4 | + * Function calls for spawning child processes. | |
| 5 | + * | |
| 6 | + * This file is part of the Mingw32 package. | |
| 7 | + * | |
| 8 | + * Contributors: | |
| 9 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 10 | + * | |
| 11 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 12 | + * | |
| 13 | + * This source code is offered for use in the public domain. You may | |
| 14 | + * use, modify or distribute it freely. | |
| 15 | + * | |
| 16 | + * This code is distributed in the hope that it will be useful but | |
| 17 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 18 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 19 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 20 | + * | |
| 21 | + * $Revision: 1.1 $ | |
| 22 | + * $Author: bellard $ | |
| 23 | + * $Date: 2005/04/14 23:49:21 $ | |
| 24 | + * | |
| 25 | + */ | |
| 26 | + | |
| 27 | +#ifndef __STRICT_ANSI__ | |
| 28 | + | |
| 29 | +#ifndef _PROCESS_H_ | |
| 30 | +#define _PROCESS_H_ | |
| 31 | + | |
| 32 | +/* All the headers include this file. */ | |
| 33 | +#include <_mingw.h> | |
| 34 | + | |
| 35 | +/* Includes a definition of _pid_t and pid_t */ | |
| 36 | +#include <sys/types.h> | |
| 37 | + | |
| 38 | +/* | |
| 39 | + * Constants for cwait actions. | |
| 40 | + * Obsolete for Win32. | |
| 41 | + */ | |
| 42 | +#define _WAIT_CHILD 0 | |
| 43 | +#define _WAIT_GRANDCHILD 1 | |
| 44 | + | |
| 45 | +#ifndef _NO_OLDNAMES | |
| 46 | +#define WAIT_CHILD _WAIT_CHILD | |
| 47 | +#define WAIT_GRANDCHILD _WAIT_GRANDCHILD | |
| 48 | +#endif /* Not _NO_OLDNAMES */ | |
| 49 | + | |
| 50 | +/* | |
| 51 | + * Mode constants for spawn functions. | |
| 52 | + */ | |
| 53 | +#define _P_WAIT 0 | |
| 54 | +#define _P_NOWAIT 1 | |
| 55 | +#define _P_OVERLAY 2 | |
| 56 | +#define _OLD_P_OVERLAY _P_OVERLAY | |
| 57 | +#define _P_NOWAITO 3 | |
| 58 | +#define _P_DETACH 4 | |
| 59 | + | |
| 60 | +#ifndef _NO_OLDNAMES | |
| 61 | +#define P_WAIT _P_WAIT | |
| 62 | +#define P_NOWAIT _P_NOWAIT | |
| 63 | +#define P_OVERLAY _P_OVERLAY | |
| 64 | +#define OLD_P_OVERLAY _OLD_P_OVERLAY | |
| 65 | +#define P_NOWAITO _P_NOWAITO | |
| 66 | +#define P_DETACH _P_DETACH | |
| 67 | +#endif /* Not _NO_OLDNAMES */ | |
| 68 | + | |
| 69 | + | |
| 70 | +#ifndef RC_INVOKED | |
| 71 | + | |
| 72 | +#ifdef __cplusplus | |
| 73 | +extern "C" { | |
| 74 | +#endif | |
| 75 | + | |
| 76 | +void _cexit(void); | |
| 77 | +void _c_exit(void); | |
| 78 | + | |
| 79 | +int _cwait (int*, _pid_t, int); | |
| 80 | + | |
| 81 | +_pid_t _getpid(void); | |
| 82 | + | |
| 83 | +int _execl (const char*, const char*, ...); | |
| 84 | +int _execle (const char*, const char*, ...); | |
| 85 | +int _execlp (const char*, const char*, ...); | |
| 86 | +int _execlpe (const char*, const char*, ...); | |
| 87 | +int _execv (const char*, char* const*); | |
| 88 | +int _execve (const char*, char* const*, char* const*); | |
| 89 | +int _execvp (const char*, char* const*); | |
| 90 | +int _execvpe (const char*, char* const*, char* const*); | |
| 91 | + | |
| 92 | +int _spawnl (int, const char*, const char*, ...); | |
| 93 | +int _spawnle (int, const char*, const char*, ...); | |
| 94 | +int _spawnlp (int, const char*, const char*, ...); | |
| 95 | +int _spawnlpe (int, const char*, const char*, ...); | |
| 96 | +int _spawnv (int, const char*, char* const*); | |
| 97 | +int _spawnve (int, const char*, char* const*, char* const*); | |
| 98 | +int _spawnvp (int, const char*, char* const*); | |
| 99 | +int _spawnvpe (int, const char*, char* const*, char* const*); | |
| 100 | + | |
| 101 | +/* | |
| 102 | + * The functions _beginthreadex and _endthreadex are not provided by CRTDLL. | |
| 103 | + * They are provided by MSVCRT. | |
| 104 | + * | |
| 105 | + * NOTE: Apparently _endthread calls CloseHandle on the handle of the thread, | |
| 106 | + * making for race conditions if you are not careful. Basically you have to | |
| 107 | + * make sure that no-one is going to do *anything* with the thread handle | |
| 108 | + * after the thread calls _endthread or returns from the thread function. | |
| 109 | + * | |
| 110 | + * NOTE: No old names for these functions. Use the underscore. | |
| 111 | + */ | |
| 112 | +unsigned long | |
| 113 | + _beginthread (void (*)(void *), unsigned, void*); | |
| 114 | +void _endthread (void); | |
| 115 | + | |
| 116 | +#ifdef __MSVCRT__ | |
| 117 | +unsigned long | |
| 118 | + _beginthreadex (void *, unsigned, unsigned (__stdcall *) (void *), | |
| 119 | + void*, unsigned, unsigned*); | |
| 120 | +void _endthreadex (unsigned); | |
| 121 | +#endif | |
| 122 | + | |
| 123 | + | |
| 124 | +#ifndef _NO_OLDNAMES | |
| 125 | +/* | |
| 126 | + * Functions without the leading underscore, for portability. These functions | |
| 127 | + * live in liboldnames.a. | |
| 128 | + */ | |
| 129 | +int cwait (int*, pid_t, int); | |
| 130 | +pid_t getpid (void); | |
| 131 | +int execl (const char*, const char*, ...); | |
| 132 | +int execle (const char*, const char*, ...); | |
| 133 | +int execlp (const char*, const char*, ...); | |
| 134 | +int execlpe (const char*, const char*, ...); | |
| 135 | +int execv (const char*, char* const*); | |
| 136 | +int execve (const char*, char* const*, char* const*); | |
| 137 | +int execvp (const char*, char* const*); | |
| 138 | +int execvpe (const char*, char* const*, char* const*); | |
| 139 | +int spawnl (int, const char*, const char*, ...); | |
| 140 | +int spawnle (int, const char*, const char*, ...); | |
| 141 | +int spawnlp (int, const char*, const char*, ...); | |
| 142 | +int spawnlpe (int, const char*, const char*, ...); | |
| 143 | +int spawnv (int, const char*, char* const*); | |
| 144 | +int spawnve (int, const char*, char* const*, char* const*); | |
| 145 | +int spawnvp (int, const char*, char* const*); | |
| 146 | +int spawnvpe (int, const char*, char* const*, char* const*); | |
| 147 | +#endif /* Not _NO_OLDNAMES */ | |
| 148 | + | |
| 149 | +#ifdef __cplusplus | |
| 150 | +} | |
| 151 | +#endif | |
| 152 | + | |
| 153 | +#endif /* Not RC_INVOKED */ | |
| 154 | + | |
| 155 | +#endif /* _PROCESS_H_ not defined */ | |
| 156 | + | |
| 157 | +#endif /* Not __STRICT_ANSI__ */ | |
| 158 | + | |
| @@ -0,0 +1,72 @@ | ||
| 1 | +/* | |
| 2 | + * setjmp.h | |
| 3 | + * | |
| 4 | + * Declarations supporting setjmp and longjump, a method for avoiding | |
| 5 | + * the normal function call return sequence. (Bleah!) | |
| 6 | + * | |
| 7 | + * This file is part of the Mingw32 package. | |
| 8 | + * | |
| 9 | + * Contributors: | |
| 10 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 11 | + * | |
| 12 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 13 | + * | |
| 14 | + * This source code is offered for use in the public domain. You may | |
| 15 | + * use, modify or distribute it freely. | |
| 16 | + * | |
| 17 | + * This code is distributed in the hope that it will be useful but | |
| 18 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 19 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 20 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 21 | + * | |
| 22 | + * $Revision: 1.1 $ | |
| 23 | + * $Author: bellard $ | |
| 24 | + * $Date: 2005/04/14 23:49:21 $ | |
| 25 | + * | |
| 26 | + */ | |
| 27 | + | |
| 28 | +#ifndef _SETJMP_H_ | |
| 29 | +#define _SETJMP_H_ | |
| 30 | + | |
| 31 | +/* All the headers include this file. */ | |
| 32 | +#include <_mingw.h> | |
| 33 | + | |
| 34 | +#ifndef RC_INVOKED | |
| 35 | + | |
| 36 | +#ifdef __cplusplus | |
| 37 | +extern "C" { | |
| 38 | +#endif | |
| 39 | + | |
| 40 | +/* | |
| 41 | + * The buffer used by setjmp to store the information used by longjmp | |
| 42 | + * to perform it's evil goto-like work. The size of this buffer was | |
| 43 | + * determined through experimentation; it's contents are a mystery. | |
| 44 | + * NOTE: This was determined on an i386 (actually a Pentium). The | |
| 45 | + * contents could be different on an Alpha or something else. | |
| 46 | + */ | |
| 47 | +#define _JBLEN 16 | |
| 48 | +#define _JBTYPE int | |
| 49 | +typedef _JBTYPE jmp_buf[_JBLEN]; | |
| 50 | + | |
| 51 | +/* | |
| 52 | + * The function provided by CRTDLL which appears to do the actual work | |
| 53 | + * of setjmp. | |
| 54 | + */ | |
| 55 | +int _setjmp (jmp_buf); | |
| 56 | + | |
| 57 | +#define setjmp(x) _setjmp(x) | |
| 58 | + | |
| 59 | +/* | |
| 60 | + * Return to the last setjmp call and act as if setjmp had returned | |
| 61 | + * nVal (which had better be non-zero!). | |
| 62 | + */ | |
| 63 | +void longjmp (jmp_buf, int); | |
| 64 | + | |
| 65 | +#ifdef __cplusplus | |
| 66 | +} | |
| 67 | +#endif | |
| 68 | + | |
| 69 | +#endif /* Not RC_INVOKED */ | |
| 70 | + | |
| 71 | +#endif /* Not _SETJMP_H_ */ | |
| 72 | + | |
| @@ -0,0 +1,44 @@ | ||
| 1 | +/* | |
| 2 | + * share.h | |
| 3 | + * | |
| 4 | + * Constants for file sharing functions. | |
| 5 | + * | |
| 6 | + * This file is part of the Mingw32 package. | |
| 7 | + * | |
| 8 | + * Contributors: | |
| 9 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 10 | + * | |
| 11 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 12 | + * | |
| 13 | + * This source code is offered for use in the public domain. You may | |
| 14 | + * use, modify or distribute it freely. | |
| 15 | + * | |
| 16 | + * This code is distributed in the hope that it will be useful but | |
| 17 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 18 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 19 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 20 | + * | |
| 21 | + * $Revision: 1.1 $ | |
| 22 | + * $Author: bellard $ | |
| 23 | + * $Date: 2005/04/14 23:49:21 $ | |
| 24 | + * | |
| 25 | + */ | |
| 26 | + | |
| 27 | +#ifndef __STRICT_ANSI__ | |
| 28 | + | |
| 29 | +#ifndef _SHARE_H_ | |
| 30 | +#define _SHARE_H_ | |
| 31 | + | |
| 32 | +/* All the headers include this file. */ | |
| 33 | +#include <_mingw.h> | |
| 34 | + | |
| 35 | +#define SH_COMPAT 0x00 /* Compatibility */ | |
| 36 | +#define SH_DENYRW 0x10 /* Deny read/write */ | |
| 37 | +#define SH_DENYWR 0x20 /* Deny write */ | |
| 38 | +#define SH_DENYRD 0x30 /* Deny read */ | |
| 39 | +#define SH_DENYNO 0x40 /* Deny nothing */ | |
| 40 | + | |
| 41 | +#endif /* Not _SHARE_H_ */ | |
| 42 | + | |
| 43 | +#endif /* Not __STRICT_ANSI__ */ | |
| 44 | + | |
| @@ -0,0 +1,111 @@ | ||
| 1 | +/* | |
| 2 | + * signal.h | |
| 3 | + * | |
| 4 | + * A way to set handlers for exceptional conditions (also known as signals). | |
| 5 | + * | |
| 6 | + * This file is part of the Mingw32 package. | |
| 7 | + * | |
| 8 | + * Contributors: | |
| 9 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 10 | + * | |
| 11 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 12 | + * | |
| 13 | + * This source code is offered for use in the public domain. You may | |
| 14 | + * use, modify or distribute it freely. | |
| 15 | + * | |
| 16 | + * This code is distributed in the hope that it will be useful but | |
| 17 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 18 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 19 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 20 | + * | |
| 21 | + * $Revision: 1.1 $ | |
| 22 | + * $Author: bellard $ | |
| 23 | + * $Date: 2005/04/14 23:49:21 $ | |
| 24 | + * | |
| 25 | + */ | |
| 26 | + | |
| 27 | +#ifndef _SIGNAL_H_ | |
| 28 | +#define _SIGNAL_H_ | |
| 29 | + | |
| 30 | +/* All the headers include this file. */ | |
| 31 | +#include <_mingw.h> | |
| 32 | + | |
| 33 | +/* | |
| 34 | + * The actual signal values. Using other values with signal | |
| 35 | + * produces a SIG_ERR return value. | |
| 36 | + * | |
| 37 | + * NOTE: SIGINT is produced when the user presses Ctrl-C. | |
| 38 | + * SIGILL has not been tested. | |
| 39 | + * SIGFPE doesn't seem to work? | |
| 40 | + * SIGSEGV does not catch writing to a NULL pointer (that shuts down | |
| 41 | + * your app; can you say "segmentation violation core dump"?). | |
| 42 | + * SIGTERM comes from what kind of termination request exactly? | |
| 43 | + * SIGBREAK is indeed produced by pressing Ctrl-Break. | |
| 44 | + * SIGABRT is produced by calling abort. | |
| 45 | + * TODO: The above results may be related to not installing an appropriate | |
| 46 | + * structured exception handling frame. Results may be better if I ever | |
| 47 | + * manage to get the SEH stuff down. | |
| 48 | + */ | |
| 49 | +#define SIGINT 2 /* Interactive attention */ | |
| 50 | +#define SIGILL 4 /* Illegal instruction */ | |
| 51 | +#define SIGFPE 8 /* Floating point error */ | |
| 52 | +#define SIGSEGV 11 /* Segmentation violation */ | |
| 53 | +#define SIGTERM 15 /* Termination request */ | |
| 54 | +#define SIGBREAK 21 /* Control-break */ | |
| 55 | +#define SIGABRT 22 /* Abnormal termination (abort) */ | |
| 56 | + | |
| 57 | +#define NSIG 23 /* maximum signal number + 1 */ | |
| 58 | + | |
| 59 | +#ifndef RC_INVOKED | |
| 60 | + | |
| 61 | +#ifndef _SIG_ATOMIC_T_DEFINED | |
| 62 | +typedef int sig_atomic_t; | |
| 63 | +#define _SIG_ATOMIC_T_DEFINED | |
| 64 | +#endif | |
| 65 | + | |
| 66 | +/* | |
| 67 | + * The prototypes (below) are the easy part. The hard part is figuring | |
| 68 | + * out what signals are available and what numbers they are assigned | |
| 69 | + * along with appropriate values of SIG_DFL and SIG_IGN. | |
| 70 | + */ | |
| 71 | + | |
| 72 | +/* | |
| 73 | + * A pointer to a signal handler function. A signal handler takes a | |
| 74 | + * single int, which is the signal it handles. | |
| 75 | + */ | |
| 76 | +typedef void (*__p_sig_fn_t)(int); | |
| 77 | + | |
| 78 | +/* | |
| 79 | + * These are special values of signal handler pointers which are | |
| 80 | + * used to send a signal to the default handler (SIG_DFL), ignore | |
| 81 | + * the signal (SIG_IGN), or indicate an error return (SIG_ERR). | |
| 82 | + */ | |
| 83 | +#define SIG_DFL ((__p_sig_fn_t) 0) | |
| 84 | +#define SIG_IGN ((__p_sig_fn_t) 1) | |
| 85 | +#define SIG_ERR ((__p_sig_fn_t) -1) | |
| 86 | + | |
| 87 | +#ifdef __cplusplus | |
| 88 | +extern "C" { | |
| 89 | +#endif | |
| 90 | + | |
| 91 | +/* | |
| 92 | + * Call signal to set the signal handler for signal sig to the | |
| 93 | + * function pointed to by handler. Returns a pointer to the | |
| 94 | + * previous handler, or SIG_ERR if an error occurs. Initially | |
| 95 | + * unhandled signals defined above will return SIG_DFL. | |
| 96 | + */ | |
| 97 | +__p_sig_fn_t signal(int, __p_sig_fn_t); | |
| 98 | + | |
| 99 | +/* | |
| 100 | + * Raise the signal indicated by sig. Returns non-zero on success. | |
| 101 | + */ | |
| 102 | +int raise (int); | |
| 103 | + | |
| 104 | +#ifdef __cplusplus | |
| 105 | +} | |
| 106 | +#endif | |
| 107 | + | |
| 108 | +#endif /* Not RC_INVOKED */ | |
| 109 | + | |
| 110 | +#endif /* Not _SIGNAL_H_ */ | |
| 111 | + | |
| @@ -0,0 +1,15 @@ | ||
| 1 | +#ifndef _STDARG_H | |
| 2 | +#define _STDARG_H | |
| 3 | + | |
| 4 | +typedef char *va_list; | |
| 5 | + | |
| 6 | +/* only correct for i386 */ | |
| 7 | +#define va_start(ap,last) ap = ((char *)&(last)) + ((sizeof(last)+3)&~3) | |
| 8 | +#define va_arg(ap,type) (ap += (sizeof(type)+3)&~3, *(type *)(ap - ((sizeof(type)+3)&~3))) | |
| 9 | +#define va_end(ap) | |
| 10 | + | |
| 11 | +/* fix a buggy dependency on GCC in libio.h */ | |
| 12 | +typedef va_list __gnuc_va_list; | |
| 13 | +#define _VA_LIST_DEFINED | |
| 14 | + | |
| 15 | +#endif | |
| @@ -0,0 +1,10 @@ | ||
| 1 | +#ifndef _STDBOOL_H | |
| 2 | +#define _STDBOOL_H | |
| 3 | + | |
| 4 | +/* ISOC99 boolean */ | |
| 5 | + | |
| 6 | +#define bool _Bool | |
| 7 | +#define true 1 | |
| 8 | +#define false 0 | |
| 9 | + | |
| 10 | +#endif /* _STDBOOL_H */ | |
| @@ -0,0 +1,21 @@ | ||
| 1 | +#ifndef _STDDEF_H | |
| 2 | +#define _STDDEF_H | |
| 3 | + | |
| 4 | +#define NULL ((void *)0) | |
| 5 | +typedef __SIZE_TYPE__ size_t; | |
| 6 | +typedef __WCHAR_TYPE__ wchar_t; | |
| 7 | +typedef __PTRDIFF_TYPE__ ptrdiff_t; | |
| 8 | +#define offsetof(type, field) ((size_t) &((type *)0)->field) | |
| 9 | + | |
| 10 | +/* need to do that because of glibc 2.1 bug (should have a way to test | |
| 11 | + presence of 'long long' without __GNUC__, or TCC should define | |
| 12 | + __GNUC__ ? */ | |
| 13 | +#if !defined(__int8_t_defined) && !defined(__dietlibc__) | |
| 14 | +#define __int8_t_defined | |
| 15 | +typedef char int8_t; | |
| 16 | +typedef short int int16_t; | |
| 17 | +typedef int int32_t; | |
| 18 | +typedef long long int int64_t; | |
| 19 | +#endif | |
| 20 | + | |
| 21 | +#endif | |
| @@ -0,0 +1,184 @@ | ||
| 1 | +/* ISO C9x 7.18 Integer types <stdint.h> | |
| 2 | + * Based on ISO/IEC SC22/WG14 9899 Committee draft (SC22 N2794) | |
| 3 | + * | |
| 4 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 5 | + * | |
| 6 | + * Contributor: Danny Smith <danny_r_smith_2001@yahoo.co.nz> | |
| 7 | + * | |
| 8 | + * This source code is offered for use in the public domain. You may | |
| 9 | + * use, modify or distribute it freely. | |
| 10 | + * | |
| 11 | + * This code is distributed in the hope that it will be useful but | |
| 12 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 13 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 14 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 15 | + * | |
| 16 | + * Date: 2000-12-02 | |
| 17 | + */ | |
| 18 | + | |
| 19 | + | |
| 20 | +#ifndef _STDINT_H | |
| 21 | +#define _STDINT_H | |
| 22 | + | |
| 23 | +/* 7.18.1.1 Exact-width integer types */ | |
| 24 | +typedef signed char int8_t; | |
| 25 | +typedef unsigned char uint8_t; | |
| 26 | +typedef short int16_t; | |
| 27 | +typedef unsigned short uint16_t; | |
| 28 | +typedef int int32_t; | |
| 29 | +typedef unsigned uint32_t; | |
| 30 | +typedef long long int64_t; | |
| 31 | +typedef unsigned long long uint64_t; | |
| 32 | + | |
| 33 | +/* 7.18.1.2 Minimum-width integer types */ | |
| 34 | +typedef signed char int_least8_t; | |
| 35 | +typedef unsigned char uint_least8_t; | |
| 36 | +typedef short int_least16_t; | |
| 37 | +typedef unsigned short uint_least16_t; | |
| 38 | +typedef int int_least32_t; | |
| 39 | +typedef unsigned uint_least32_t; | |
| 40 | +typedef long long int_least64_t; | |
| 41 | +typedef unsigned long long uint_least64_t; | |
| 42 | + | |
| 43 | +/* 7.18.1.3 Fastest minimum-width integer types | |
| 44 | + * Not actually guaranteed to be fastest for all purposes | |
| 45 | + * Here we use the exact-width types for 8 and 16-bit ints. | |
| 46 | + */ | |
| 47 | +typedef char int_fast8_t; | |
| 48 | +typedef unsigned char uint_fast8_t; | |
| 49 | +typedef short int_fast16_t; | |
| 50 | +typedef unsigned short uint_fast16_t; | |
| 51 | +typedef int int_fast32_t; | |
| 52 | +typedef unsigned int uint_fast32_t; | |
| 53 | +typedef long long int_fast64_t; | |
| 54 | +typedef unsigned long long uint_fast64_t; | |
| 55 | + | |
| 56 | +/* 7.18.1.4 Integer types capable of holding object pointers */ | |
| 57 | +typedef int intptr_t; | |
| 58 | +typedef unsigned uintptr_t; | |
| 59 | + | |
| 60 | +/* 7.18.1.5 Greatest-width integer types */ | |
| 61 | +typedef long long intmax_t; | |
| 62 | +typedef unsigned long long uintmax_t; | |
| 63 | + | |
| 64 | +/* 7.18.2 Limits of specified-width integer types */ | |
| 65 | +#if !defined ( __cplusplus) || defined (__STDC_LIMIT_MACROS) | |
| 66 | + | |
| 67 | +/* 7.18.2.1 Limits of exact-width integer types */ | |
| 68 | +#define INT8_MIN (-128) | |
| 69 | +#define INT16_MIN (-32768) | |
| 70 | +#define INT32_MIN (-2147483647 - 1) | |
| 71 | +#define INT64_MIN (-9223372036854775807LL - 1) | |
| 72 | + | |
| 73 | +#define INT8_MAX 127 | |
| 74 | +#define INT16_MAX 32767 | |
| 75 | +#define INT32_MAX 2147483647 | |
| 76 | +#define INT64_MAX 9223372036854775807LL | |
| 77 | + | |
| 78 | +#define UINT8_MAX 0xff /* 255U */ | |
| 79 | +#define UINT16_MAX 0xffff /* 65535U */ | |
| 80 | +#define UINT32_MAX 0xffffffff /* 4294967295U */ | |
| 81 | +#define UINT64_MAX 0xffffffffffffffffULL /* 18446744073709551615ULL */ | |
| 82 | + | |
| 83 | +/* 7.18.2.2 Limits of minimum-width integer types */ | |
| 84 | +#define INT_LEAST8_MIN INT8_MIN | |
| 85 | +#define INT_LEAST16_MIN INT16_MIN | |
| 86 | +#define INT_LEAST32_MIN INT32_MIN | |
| 87 | +#define INT_LEAST64_MIN INT64_MIN | |
| 88 | + | |
| 89 | +#define INT_LEAST8_MAX INT8_MAX | |
| 90 | +#define INT_LEAST16_MAX INT16_MAX | |
| 91 | +#define INT_LEAST32_MAX INT32_MAX | |
| 92 | +#define INT_LEAST64_MAX INT64_MAX | |
| 93 | + | |
| 94 | +#define UINT_LEAST8_MAX UINT8_MAX | |
| 95 | +#define UINT_LEAST16_MAX UINT16_MAX | |
| 96 | +#define UINT_LEAST32_MAX UINT32_MAX | |
| 97 | +#define UINT_LEAST64_MAX UINT64_MAX | |
| 98 | + | |
| 99 | +/* 7.18.2.3 Limits of fastest minimum-width integer types */ | |
| 100 | +#define INT_FAST8_MIN INT8_MIN | |
| 101 | +#define INT_FAST16_MIN INT16_MIN | |
| 102 | +#define INT_FAST32_MIN INT32_MIN | |
| 103 | +#define INT_FAST64_MIN INT64_MIN | |
| 104 | + | |
| 105 | +#define INT_FAST8_MAX INT8_MAX | |
| 106 | +#define INT_FAST16_MAX INT16_MAX | |
| 107 | +#define INT_FAST32_MAX INT32_MAX | |
| 108 | +#define INT_FAST64_MAX INT64_MAX | |
| 109 | + | |
| 110 | +#define UINT_FAST8_MAX UINT8_MAX | |
| 111 | +#define UINT_FAST16_MAX UINT16_MAX | |
| 112 | +#define UINT_FAST32_MAX UINT32_MAX | |
| 113 | +#define UINT_FAST64_MAX UINT64_MAX | |
| 114 | + | |
| 115 | +/* 7.18.2.4 Limits of integer types capable of holding | |
| 116 | + object pointers */ | |
| 117 | +#define INTPTR_MIN INT32_MIN | |
| 118 | +#define INTPTR_MAX INT32_MAX | |
| 119 | +#define UINTPTR_MAX UINT32_MAX | |
| 120 | + | |
| 121 | +/* 7.18.2.5 Limits of greatest-width integer types */ | |
| 122 | +#define INTMAX_MIN INT64_MIN | |
| 123 | +#define INTMAX_MAX INT64_MAX | |
| 124 | +#define UINTMAX_MAX UINT64_MAX | |
| 125 | + | |
| 126 | +/* 7.18.3 Limits of other integer types */ | |
| 127 | +#define PTRDIFF_MIN INT32_MIN | |
| 128 | +#define PTRDIFF_MAX INT32_MAX | |
| 129 | + | |
| 130 | +#define SIG_ATOMIC_MIN INT32_MIN | |
| 131 | +#define SIG_ATOMIC_MAX INT32_MAX | |
| 132 | + | |
| 133 | +#define SIZE_MAX UINT32_MAX | |
| 134 | + | |
| 135 | +#ifndef WCHAR_MIN /* also in wchar.h */ | |
| 136 | +#define WCHAR_MIN 0 | |
| 137 | +#define WCHAR_MAX ((wchar_t)-1) /* UINT16_MAX */ | |
| 138 | +#endif | |
| 139 | + | |
| 140 | +/* | |
| 141 | + * wint_t is unsigned int in __MINGW32__, | |
| 142 | + * but unsigned short in MS runtime | |
| 143 | + */ | |
| 144 | +#define WINT_MIN 0 | |
| 145 | +#define WINT_MAX UINT32_MAX | |
| 146 | + | |
| 147 | +#endif /* !defined ( __cplusplus) || defined __STDC_LIMIT_MACROS */ | |
| 148 | + | |
| 149 | + | |
| 150 | +/* 7.18.4 Macros for integer constants */ | |
| 151 | +#if !defined ( __cplusplus) || defined (__STDC_CONSTANT_MACROS) | |
| 152 | + | |
| 153 | +/* 7.18.4.1 Macros for minimum-width integer constants | |
| 154 | + | |
| 155 | + Accoding to Douglas Gwyn <gwyn@arl.mil>: | |
| 156 | + "This spec was changed in ISO/IEC 9899:1999 TC1; in ISO/IEC | |
| 157 | + 9899:1999 as initially published, the expansion was required | |
| 158 | + to be an integer constant of precisely matching type, which | |
| 159 | + is impossible to accomplish for the shorter types on most | |
| 160 | + platforms, because C99 provides no standard way to designate | |
| 161 | + an integer constant with width less than that of type int. | |
| 162 | + TC1 changed this to require just an integer constant | |
| 163 | + *expression* with *promoted* type." | |
| 164 | + | |
| 165 | + The trick used here is from Clive D W Feather. | |
| 166 | +*/ | |
| 167 | + | |
| 168 | +#define INT8_C(val) (INT_LEAST8_MAX-INT_LEAST8_MAX+(val)) | |
| 169 | +#define INT16_C(val) (INT_LEAST16_MAX-INT_LEAST16_MAX+(val)) | |
| 170 | +#define INT32_C(val) (INT_LEAST32_MAX-INT_LEAST32_MAX+(val)) | |
| 171 | +#define INT64_C(val) (INT_LEAST64_MAX-INT_LEAST64_MAX+(val)) | |
| 172 | + | |
| 173 | +#define UINT8_C(val) (UINT_LEAST8_MAX-UINT_LEAST8_MAX+(val)) | |
| 174 | +#define UINT16_C(val) (UINT_LEAST16_MAX-UINT_LEAST16_MAX+(val)) | |
| 175 | +#define UINT32_C(val) (UINT_LEAST32_MAX-UINT_LEAST32_MAX+(val)) | |
| 176 | +#define UINT64_C(val) (UINT_LEAST64_MAX-UINT_LEAST64_MAX+(val)) | |
| 177 | + | |
| 178 | +/* 7.18.4.2 Macros for greatest-width integer constants */ | |
| 179 | +#define INTMAX_C(val) (INTMAX_MAX-INTMAX_MAX+(val)) | |
| 180 | +#define UINTMAX_C(val) (UINTMAX_MAX-UINTMAX_MAX+(val)) | |
| 181 | + | |
| 182 | +#endif /* !defined ( __cplusplus) || defined __STDC_CONSTANT_MACROS */ | |
| 183 | + | |
| 184 | +#endif | |
| @@ -0,0 +1,413 @@ | ||
| 1 | +/* | |
| 2 | + * stdio.h | |
| 3 | + * | |
| 4 | + * Definitions of types and prototypes of functions for standard input and | |
| 5 | + * output. | |
| 6 | + * | |
| 7 | + * NOTE: The file manipulation functions provided by Microsoft seem to | |
| 8 | + * work with either slash (/) or backslash (\) as the path separator. | |
| 9 | + * | |
| 10 | + * This file is part of the Mingw32 package. | |
| 11 | + * | |
| 12 | + * Contributors: | |
| 13 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 14 | + * | |
| 15 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 16 | + * | |
| 17 | + * This source code is offered for use in the public domain. You may | |
| 18 | + * use, modify or distribute it freely. | |
| 19 | + * | |
| 20 | + * This code is distributed in the hope that it will be useful but | |
| 21 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 22 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 23 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 24 | + * | |
| 25 | + * $Revision: 1.1 $ | |
| 26 | + * $Author: bellard $ | |
| 27 | + * $Date: 2005/04/14 23:49:21 $ | |
| 28 | + * | |
| 29 | + */ | |
| 30 | + | |
| 31 | +#ifndef _STDIO_H_ | |
| 32 | +#define _STDIO_H_ | |
| 33 | + | |
| 34 | +/* All the headers include this file. */ | |
| 35 | +#include <_mingw.h> | |
| 36 | + | |
| 37 | +#define __need_size_t | |
| 38 | +#define __need_NULL | |
| 39 | +#define __need_wchar_t | |
| 40 | +#define __need_wint_t | |
| 41 | +#ifndef RC_INVOKED | |
| 42 | +#include <stddef.h> | |
| 43 | +#endif /* Not RC_INVOKED */ | |
| 44 | + | |
| 45 | + | |
| 46 | +/* Flags for the iobuf structure */ | |
| 47 | +#define _IOREAD 1 | |
| 48 | +#define _IOWRT 2 | |
| 49 | +#define _IORW 0x0080 /* opened as "r+w" */ | |
| 50 | + | |
| 51 | + | |
| 52 | +/* | |
| 53 | + * The three standard file pointers provided by the run time library. | |
| 54 | + * NOTE: These will go to the bit-bucket silently in GUI applications! | |
| 55 | + */ | |
| 56 | +#define STDIN_FILENO 0 | |
| 57 | +#define STDOUT_FILENO 1 | |
| 58 | +#define STDERR_FILENO 2 | |
| 59 | + | |
| 60 | +/* Returned by various functions on end of file condition or error. */ | |
| 61 | +#define EOF (-1) | |
| 62 | + | |
| 63 | +/* | |
| 64 | + * The maximum length of a file name. You should use GetVolumeInformation | |
| 65 | + * instead of this constant. But hey, this works. | |
| 66 | + * | |
| 67 | + * NOTE: This is used in the structure _finddata_t (see io.h) so changing it | |
| 68 | + * is probably not a good idea. | |
| 69 | + */ | |
| 70 | +#define FILENAME_MAX (260) | |
| 71 | + | |
| 72 | +/* | |
| 73 | + * The maximum number of files that may be open at once. I have set this to | |
| 74 | + * a conservative number. The actual value may be higher. | |
| 75 | + */ | |
| 76 | +#define FOPEN_MAX (20) | |
| 77 | + | |
| 78 | +/* After creating this many names, tmpnam and tmpfile return NULL */ | |
| 79 | +#define TMP_MAX 32767 | |
| 80 | +/* | |
| 81 | + * Tmpnam, tmpfile and, sometimes, _tempnam try to create | |
| 82 | + * temp files in the root directory of the current drive | |
| 83 | + * (not in pwd, as suggested by some older MS doc's). | |
| 84 | + * Redefining these macros does not effect the CRT functions. | |
| 85 | + */ | |
| 86 | +#define _P_tmpdir "\\" | |
| 87 | +#define _wP_tmpdir L"\\" | |
| 88 | + | |
| 89 | +/* | |
| 90 | + * The maximum size of name (including NUL) that will be put in the user | |
| 91 | + * supplied buffer caName for tmpnam. | |
| 92 | + * Inferred from the size of the static buffer returned by tmpnam | |
| 93 | + * when passed a NULL argument. May actually be smaller. | |
| 94 | + */ | |
| 95 | +#define L_tmpnam (16) | |
| 96 | + | |
| 97 | +#define _IOFBF 0x0000 | |
| 98 | +#define _IOLBF 0x0040 | |
| 99 | +#define _IONBF 0x0004 | |
| 100 | + | |
| 101 | +/* | |
| 102 | + * The buffer size as used by setbuf such that it is equivalent to | |
| 103 | + * (void) setvbuf(fileSetBuffer, caBuffer, _IOFBF, BUFSIZ). | |
| 104 | + */ | |
| 105 | +#define BUFSIZ 512 | |
| 106 | + | |
| 107 | +/* Constants for nOrigin indicating the position relative to which fseek | |
| 108 | + * sets the file position. Enclosed in ifdefs because io.h could also | |
| 109 | + * define them. (Though not anymore since io.h includes this file now.) */ | |
| 110 | +#ifndef SEEK_SET | |
| 111 | +#define SEEK_SET (0) | |
| 112 | +#endif | |
| 113 | + | |
| 114 | +#ifndef SEEK_CUR | |
| 115 | +#define SEEK_CUR (1) | |
| 116 | +#endif | |
| 117 | + | |
| 118 | +#ifndef SEEK_END | |
| 119 | +#define SEEK_END (2) | |
| 120 | +#endif | |
| 121 | + | |
| 122 | + | |
| 123 | +#ifndef RC_INVOKED | |
| 124 | + | |
| 125 | +/* | |
| 126 | + * I used to include stdarg.h at this point, in order to allow for the | |
| 127 | + * functions later on in the file which use va_list. That conflicts with | |
| 128 | + * using stdio.h and varargs.h in the same file, so I do the typedef myself. | |
| 129 | + */ | |
| 130 | +#ifndef _VA_LIST | |
| 131 | +#define _VA_LIST | |
| 132 | +#if defined __GNUC__ && __GNUC__ >= 3 | |
| 133 | +typedef __builtin_va_list va_list; | |
| 134 | +#else | |
| 135 | +typedef char* va_list; | |
| 136 | +#endif | |
| 137 | +#endif | |
| 138 | +/* | |
| 139 | + * The structure underlying the FILE type. | |
| 140 | + * | |
| 141 | + * I still believe that nobody in their right mind should make use of the | |
| 142 | + * internals of this structure. Provided by Pedro A. Aranda Gutiirrez | |
| 143 | + * <paag@tid.es>. | |
| 144 | + */ | |
| 145 | +#ifndef _FILE_DEFINED | |
| 146 | +#define _FILE_DEFINED | |
| 147 | +typedef struct _iobuf | |
| 148 | +{ | |
| 149 | + char* _ptr; | |
| 150 | + int _cnt; | |
| 151 | + char* _base; | |
| 152 | + int _flag; | |
| 153 | + int _file; | |
| 154 | + int _charbuf; | |
| 155 | + int _bufsiz; | |
| 156 | + char* _tmpfname; | |
| 157 | +} FILE; | |
| 158 | +#endif /* Not _FILE_DEFINED */ | |
| 159 | + | |
| 160 | + | |
| 161 | +/* | |
| 162 | + * The standard file handles | |
| 163 | + */ | |
| 164 | +#ifndef __DECLSPEC_SUPPORTED | |
| 165 | + | |
| 166 | +extern FILE (*__imp__iob)[]; /* A pointer to an array of FILE */ | |
| 167 | + | |
| 168 | +#define _iob (*__imp__iob) /* An array of FILE */ | |
| 169 | + | |
| 170 | +#else /* __DECLSPEC_SUPPORTED */ | |
| 171 | + | |
| 172 | +__MINGW_IMPORT FILE _iob[]; /* An array of FILE imported from DLL. */ | |
| 173 | + | |
| 174 | +#endif /* __DECLSPEC_SUPPORTED */ | |
| 175 | + | |
| 176 | +#define stdin (&_iob[STDIN_FILENO]) | |
| 177 | +#define stdout (&_iob[STDOUT_FILENO]) | |
| 178 | +#define stderr (&_iob[STDERR_FILENO]) | |
| 179 | + | |
| 180 | +#ifdef __cplusplus | |
| 181 | +extern "C" { | |
| 182 | +#endif | |
| 183 | + | |
| 184 | +/* | |
| 185 | + * File Operations | |
| 186 | + */ | |
| 187 | +FILE* fopen (const char*, const char*); | |
| 188 | +FILE* freopen (const char*, const char*, FILE*); | |
| 189 | +int fflush (FILE*); | |
| 190 | +int fclose (FILE*); | |
| 191 | +/* MS puts remove & rename (but not wide versions) in io.h also */ | |
| 192 | +int remove (const char*); | |
| 193 | +int rename (const char*, const char*); | |
| 194 | +FILE* tmpfile (void); | |
| 195 | +char* tmpnam (char*); | |
| 196 | +char* _tempnam (const char*, const char*); | |
| 197 | + | |
| 198 | +#ifndef NO_OLDNAMES | |
| 199 | +char* tempnam (const char*, const char*); | |
| 200 | +#endif | |
| 201 | + | |
| 202 | +int setvbuf (FILE*, char*, int, size_t); | |
| 203 | + | |
| 204 | +void setbuf (FILE*, char*); | |
| 205 | + | |
| 206 | +/* | |
| 207 | + * Formatted Output | |
| 208 | + */ | |
| 209 | + | |
| 210 | +int fprintf (FILE*, const char*, ...); | |
| 211 | +int printf (const char*, ...); | |
| 212 | +int sprintf (char*, const char*, ...); | |
| 213 | +int _snprintf (char*, size_t, const char*, ...); | |
| 214 | +int vfprintf (FILE*, const char*, va_list); | |
| 215 | +int vprintf (const char*, va_list); | |
| 216 | +int vsprintf (char*, const char*, va_list); | |
| 217 | +int _vsnprintf (char*, size_t, const char*, va_list); | |
| 218 | + | |
| 219 | +#ifndef __NO_ISOCEXT /* externs in libmingwex.a */ | |
| 220 | +int snprintf(char* s, size_t n, const char* format, ...); | |
| 221 | +extern inline int vsnprintf (char* s, size_t n, const char* format, | |
| 222 | + va_list arg) | |
| 223 | + { return _vsnprintf ( s, n, format, arg); } | |
| 224 | +#endif | |
| 225 | + | |
| 226 | +/* | |
| 227 | + * Formatted Input | |
| 228 | + */ | |
| 229 | + | |
| 230 | +int fscanf (FILE*, const char*, ...); | |
| 231 | +int scanf (const char*, ...); | |
| 232 | +int sscanf (const char*, const char*, ...); | |
| 233 | +/* | |
| 234 | + * Character Input and Output Functions | |
| 235 | + */ | |
| 236 | + | |
| 237 | +int fgetc (FILE*); | |
| 238 | +char* fgets (char*, int, FILE*); | |
| 239 | +int fputc (int, FILE*); | |
| 240 | +int fputs (const char*, FILE*); | |
| 241 | +int getc (FILE*); | |
| 242 | +int getchar (void); | |
| 243 | +char* gets (char*); | |
| 244 | +int putc (int, FILE*); | |
| 245 | +int putchar (int); | |
| 246 | +int puts (const char*); | |
| 247 | +int ungetc (int, FILE*); | |
| 248 | + | |
| 249 | +/* | |
| 250 | + * Direct Input and Output Functions | |
| 251 | + */ | |
| 252 | + | |
| 253 | +size_t fread (void*, size_t, size_t, FILE*); | |
| 254 | +size_t fwrite (const void*, size_t, size_t, FILE*); | |
| 255 | + | |
| 256 | +/* | |
| 257 | + * File Positioning Functions | |
| 258 | + */ | |
| 259 | + | |
| 260 | +int fseek (FILE*, long, int); | |
| 261 | +long ftell (FILE*); | |
| 262 | +void rewind (FILE*); | |
| 263 | + | |
| 264 | +#ifdef __USE_MINGW_FSEEK /* These are in libmingwex.a */ | |
| 265 | +/* | |
| 266 | + * Workaround for limitations on win9x where a file contents are | |
| 267 | + * not zero'd out if you seek past the end and then write. | |
| 268 | + */ | |
| 269 | + | |
| 270 | +int __mingw_fseek (FILE *, long, int); | |
| 271 | +int __mingw_fwrite (const void*, size_t, size_t, FILE*); | |
| 272 | +#define fseek(fp, offset, whence) __mingw_fseek(fp, offset, whence) | |
| 273 | +#define fwrite(buffer, size, count, fp) __mingw_fwrite(buffer, size, count, fp) | |
| 274 | +#endif /* __USE_MINGW_FSEEK */ | |
| 275 | + | |
| 276 | + | |
| 277 | +/* | |
| 278 | + * An opaque data type used for storing file positions... The contents of | |
| 279 | + * this type are unknown, but we (the compiler) need to know the size | |
| 280 | + * because the programmer using fgetpos and fsetpos will be setting aside | |
| 281 | + * storage for fpos_t structres. Actually I tested using a byte array and | |
| 282 | + * it is fairly evident that the fpos_t type is a long (in CRTDLL.DLL). | |
| 283 | + * Perhaps an unsigned long? TODO? It's definitely a 64-bit number in | |
| 284 | + * MSVCRT however, and for now `long long' will do. | |
| 285 | + */ | |
| 286 | +#ifdef __MSVCRT__ | |
| 287 | +typedef long long fpos_t; | |
| 288 | +#else | |
| 289 | +typedef long fpos_t; | |
| 290 | +#endif | |
| 291 | + | |
| 292 | +int fgetpos (FILE*, fpos_t*); | |
| 293 | +int fsetpos (FILE*, const fpos_t*); | |
| 294 | + | |
| 295 | +/* | |
| 296 | + * Error Functions | |
| 297 | + */ | |
| 298 | + | |
| 299 | +void clearerr (FILE*); | |
| 300 | +int feof (FILE*); | |
| 301 | +int ferror (FILE*); | |
| 302 | +void perror (const char*); | |
| 303 | + | |
| 304 | + | |
| 305 | +#ifndef __STRICT_ANSI__ | |
| 306 | +/* | |
| 307 | + * Pipes | |
| 308 | + */ | |
| 309 | +FILE* _popen (const char*, const char*); | |
| 310 | +int _pclose (FILE*); | |
| 311 | + | |
| 312 | +#ifndef NO_OLDNAMES | |
| 313 | +FILE* popen (const char*, const char*); | |
| 314 | +int pclose (FILE*); | |
| 315 | +#endif | |
| 316 | + | |
| 317 | +/* | |
| 318 | + * Other Non ANSI functions | |
| 319 | + */ | |
| 320 | +int _flushall (void); | |
| 321 | +int _fgetchar (void); | |
| 322 | +int _fputchar (int); | |
| 323 | +FILE* _fdopen (int, const char*); | |
| 324 | +int _fileno (FILE*); | |
| 325 | + | |
| 326 | +#ifndef _NO_OLDNAMES | |
| 327 | +int fgetchar (void); | |
| 328 | +int fputchar (int); | |
| 329 | +FILE* fdopen (int, const char*); | |
| 330 | +int fileno (FILE*); | |
| 331 | +#endif /* Not _NO_OLDNAMES */ | |
| 332 | + | |
| 333 | +#endif /* Not __STRICT_ANSI__ */ | |
| 334 | + | |
| 335 | +/* Wide versions */ | |
| 336 | + | |
| 337 | +#ifndef _WSTDIO_DEFINED | |
| 338 | +/* also in wchar.h - keep in sync */ | |
| 339 | +int fwprintf (FILE*, const wchar_t*, ...); | |
| 340 | +int wprintf (const wchar_t*, ...); | |
| 341 | +int swprintf (wchar_t*, const wchar_t*, ...); | |
| 342 | +int _snwprintf (wchar_t*, size_t, const wchar_t*, ...); | |
| 343 | +int vfwprintf (FILE*, const wchar_t*, va_list); | |
| 344 | +int vwprintf (const wchar_t*, va_list); | |
| 345 | +int vswprintf (wchar_t*, const wchar_t*, va_list); | |
| 346 | +int _vsnwprintf (wchar_t*, size_t, const wchar_t*, va_list); | |
| 347 | +int fwscanf (FILE*, const wchar_t*, ...); | |
| 348 | +int wscanf (const wchar_t*, ...); | |
| 349 | +int swscanf (const wchar_t*, const wchar_t*, ...); | |
| 350 | +wint_t fgetwc (FILE*); | |
| 351 | +wint_t fputwc (wchar_t, FILE*); | |
| 352 | +wint_t ungetwc (wchar_t, FILE*); | |
| 353 | +#ifdef __MSVCRT__ | |
| 354 | +wchar_t* fgetws (wchar_t*, int, FILE*); | |
| 355 | +int fputws (const wchar_t*, FILE*); | |
| 356 | +wint_t getwc (FILE*); | |
| 357 | +wint_t getwchar (void); | |
| 358 | +wchar_t* _getws (wchar_t*); | |
| 359 | +wint_t putwc (wint_t, FILE*); | |
| 360 | +int _putws (const wchar_t*); | |
| 361 | +wint_t putwchar (wint_t); | |
| 362 | +FILE* _wfopen (const wchar_t*, const wchar_t*); | |
| 363 | +FILE* _wfreopen (const wchar_t*, const wchar_t*, FILE*); | |
| 364 | +FILE* _wfsopen (const wchar_t*, const wchar_t*, int); | |
| 365 | +wchar_t* _wtmpnam (wchar_t*); | |
| 366 | +wchar_t* _wtempnam (const wchar_t*, const wchar_t*); | |
| 367 | +int _wrename (const wchar_t*, const wchar_t*); | |
| 368 | +int _wremove (const wchar_t*); | |
| 369 | +void _wperror (const wchar_t*); | |
| 370 | +FILE* _wpopen (const wchar_t*, const wchar_t*); | |
| 371 | +#endif /* __MSVCRT__ */ | |
| 372 | + | |
| 373 | +#ifndef __NO_ISOCEXT /* externs in libmingwex.a */ | |
| 374 | +int snwprintf(wchar_t* s, size_t n, const wchar_t* format, ...); | |
| 375 | +extern inline int vsnwprintf (wchar_t* s, size_t n, const wchar_t* format, | |
| 376 | + va_list arg) | |
| 377 | + { return _vsnwprintf ( s, n, format, arg); } | |
| 378 | +#endif | |
| 379 | + | |
| 380 | +#define _WSTDIO_DEFINED | |
| 381 | +#endif /* _WSTDIO_DEFINED */ | |
| 382 | + | |
| 383 | +#ifndef __STRICT_ANSI__ | |
| 384 | +#ifdef __MSVCRT__ | |
| 385 | +#ifndef NO_OLDNAMES | |
| 386 | +FILE* wpopen (const wchar_t*, const wchar_t*); | |
| 387 | +#endif /* not NO_OLDNAMES */ | |
| 388 | +#endif /* MSVCRT runtime */ | |
| 389 | + | |
| 390 | +/* | |
| 391 | + * Other Non ANSI wide functions | |
| 392 | + */ | |
| 393 | +wint_t _fgetwchar (void); | |
| 394 | +wint_t _fputwchar (wint_t); | |
| 395 | +int _getw (FILE*); | |
| 396 | +int _putw (int, FILE*); | |
| 397 | + | |
| 398 | +#ifndef _NO_OLDNAMES | |
| 399 | +wint_t fgetwchar (void); | |
| 400 | +wint_t fputwchar (wint_t); | |
| 401 | +int getw (FILE*); | |
| 402 | +int putw (int, FILE*); | |
| 403 | +#endif /* Not _NO_OLDNAMES */ | |
| 404 | + | |
| 405 | +#endif /* __STRICT_ANSI */ | |
| 406 | + | |
| 407 | +#ifdef __cplusplus | |
| 408 | +} | |
| 409 | +#endif | |
| 410 | + | |
| 411 | +#endif /* Not RC_INVOKED */ | |
| 412 | + | |
| 413 | +#endif /* _STDIO_H_ */ | |
| @@ -0,0 +1,482 @@ | ||
| 1 | +/* | |
| 2 | + * stdlib.h | |
| 3 | + * | |
| 4 | + * Definitions for common types, variables, and functions. | |
| 5 | + * | |
| 6 | + * This file is part of the Mingw32 package. | |
| 7 | + * | |
| 8 | + * Contributors: | |
| 9 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 10 | + * | |
| 11 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 12 | + * | |
| 13 | + * This source code is offered for use in the public domain. You may | |
| 14 | + * use, modify or distribute it freely. | |
| 15 | + * | |
| 16 | + * This code is distributed in the hope that it will be useful but | |
| 17 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 18 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 19 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 20 | + * | |
| 21 | + * $Revision: 1.1 $ | |
| 22 | + * $Author: bellard $ | |
| 23 | + * $Date: 2005/04/14 23:49:21 $ | |
| 24 | + * | |
| 25 | + */ | |
| 26 | + | |
| 27 | +#ifndef _STDLIB_H_ | |
| 28 | +#define _STDLIB_H_ | |
| 29 | + | |
| 30 | +/* All the headers include this file. */ | |
| 31 | +#include <_mingw.h> | |
| 32 | + | |
| 33 | + | |
| 34 | +#define __need_size_t | |
| 35 | +#define __need_wchar_t | |
| 36 | +#define __need_NULL | |
| 37 | +#ifndef RC_INVOKED | |
| 38 | +#include <stddef.h> | |
| 39 | +#endif /* RC_INVOKED */ | |
| 40 | + | |
| 41 | +/* | |
| 42 | + * RAND_MAX is the maximum value that may be returned by rand. | |
| 43 | + * The minimum is zero. | |
| 44 | + */ | |
| 45 | +#define RAND_MAX 0x7FFF | |
| 46 | + | |
| 47 | +/* | |
| 48 | + * These values may be used as exit status codes. | |
| 49 | + */ | |
| 50 | +#define EXIT_SUCCESS 0 | |
| 51 | +#define EXIT_FAILURE 1 | |
| 52 | + | |
| 53 | +/* | |
| 54 | + * Definitions for path name functions. | |
| 55 | + * NOTE: All of these values have simply been chosen to be conservatively high. | |
| 56 | + * Remember that with long file names we can no longer depend on | |
| 57 | + * extensions being short. | |
| 58 | + */ | |
| 59 | +#ifndef __STRICT_ANSI__ | |
| 60 | + | |
| 61 | +#ifndef MAX_PATH | |
| 62 | +#define MAX_PATH (260) | |
| 63 | +#endif | |
| 64 | + | |
| 65 | +#define _MAX_PATH MAX_PATH | |
| 66 | +#define _MAX_DRIVE (3) | |
| 67 | +#define _MAX_DIR 256 | |
| 68 | +#define _MAX_FNAME 256 | |
| 69 | +#define _MAX_EXT 256 | |
| 70 | + | |
| 71 | +#endif /* Not __STRICT_ANSI__ */ | |
| 72 | + | |
| 73 | + | |
| 74 | +#ifndef RC_INVOKED | |
| 75 | + | |
| 76 | +#ifdef __cplusplus | |
| 77 | +extern "C" { | |
| 78 | +#endif | |
| 79 | + | |
| 80 | +/* | |
| 81 | + * This seems like a convenient place to declare these variables, which | |
| 82 | + * give programs using WinMain (or main for that matter) access to main-ish | |
| 83 | + * argc and argv. environ is a pointer to a table of environment variables. | |
| 84 | + * NOTE: Strings in _argv and environ are ANSI strings. | |
| 85 | + */ | |
| 86 | +extern int _argc; | |
| 87 | +extern char** _argv; | |
| 88 | + | |
| 89 | +/* imports from runtime dll of the above variables */ | |
| 90 | +#ifdef __MSVCRT__ | |
| 91 | + | |
| 92 | +extern int* __p___argc(void); | |
| 93 | +extern char*** __p___argv(void); | |
| 94 | +extern wchar_t*** __p___wargv(void); | |
| 95 | + | |
| 96 | +#define __argc (*__p___argc()) | |
| 97 | +#define __argv (*__p___argv()) | |
| 98 | +#define __wargv (*__p___wargv()) | |
| 99 | + | |
| 100 | +#else /* !MSVCRT */ | |
| 101 | + | |
| 102 | +#ifndef __DECLSPEC_SUPPORTED | |
| 103 | + | |
| 104 | +extern int* __imp___argc_dll; | |
| 105 | +extern char*** __imp___argv_dll; | |
| 106 | +#define __argc (*__imp___argc_dll) | |
| 107 | +#define __argv (*__imp___argv_dll) | |
| 108 | + | |
| 109 | +#else /* __DECLSPEC_SUPPORTED */ | |
| 110 | + | |
| 111 | +__MINGW_IMPORT int __argc_dll; | |
| 112 | +__MINGW_IMPORT char** __argv_dll; | |
| 113 | +#define __argc __argc_dll | |
| 114 | +#define __argv __argv_dll | |
| 115 | + | |
| 116 | +#endif /* __DECLSPEC_SUPPORTED */ | |
| 117 | + | |
| 118 | +#endif /* __MSVCRT */ | |
| 119 | + | |
| 120 | +/* | |
| 121 | + * Also defined in ctype.h. | |
| 122 | + */ | |
| 123 | + | |
| 124 | +#ifndef MB_CUR_MAX | |
| 125 | +# ifdef __MSVCRT__ | |
| 126 | +# define MB_CUR_MAX __mb_cur_max | |
| 127 | + __MINGW_IMPORT int __mb_cur_max; | |
| 128 | +# else /* not __MSVCRT */ | |
| 129 | +# define MB_CUR_MAX __mb_cur_max_dll | |
| 130 | + __MINGW_IMPORT int __mb_cur_max_dll; | |
| 131 | +# endif /* not __MSVCRT */ | |
| 132 | +#endif /* MB_CUR_MAX */ | |
| 133 | + | |
| 134 | +/* | |
| 135 | + * MS likes to declare errno in stdlib.h as well. | |
| 136 | + */ | |
| 137 | + | |
| 138 | +#ifdef _UWIN | |
| 139 | +#undef errno | |
| 140 | +extern int errno; | |
| 141 | +#else | |
| 142 | +int* _errno(void); | |
| 143 | +#define errno (*_errno()) | |
| 144 | +#endif | |
| 145 | +int* __doserrno(void); | |
| 146 | +#define _doserrno (*__doserrno()) | |
| 147 | + | |
| 148 | +/* | |
| 149 | + * Use environ from the DLL, not as a global. | |
| 150 | + */ | |
| 151 | + | |
| 152 | +#ifdef __MSVCRT__ | |
| 153 | + extern char *** __p__environ(void); | |
| 154 | + extern wchar_t *** __p__wenviron(void); | |
| 155 | +# define _environ (*__p__environ()) | |
| 156 | +# define _wenviron (*__p__wenviron()) | |
| 157 | +#else /* ! __MSVCRT__ */ | |
| 158 | +# ifndef __DECLSPEC_SUPPORTED | |
| 159 | + extern char *** __imp__environ_dll; | |
| 160 | +# define _environ (*__imp__environ_dll) | |
| 161 | +# else /* __DECLSPEC_SUPPORTED */ | |
| 162 | + __MINGW_IMPORT char ** _environ_dll; | |
| 163 | +# define _environ _environ_dll | |
| 164 | +# endif /* __DECLSPEC_SUPPORTED */ | |
| 165 | +#endif /* ! __MSVCRT__ */ | |
| 166 | + | |
| 167 | +#define environ _environ | |
| 168 | + | |
| 169 | +#ifdef __MSVCRT__ | |
| 170 | +/* One of the MSVCRTxx libraries */ | |
| 171 | + | |
| 172 | +#ifndef __DECLSPEC_SUPPORTED | |
| 173 | + extern int* __imp__sys_nerr; | |
| 174 | +# define sys_nerr (*__imp__sys_nerr) | |
| 175 | +#else /* __DECLSPEC_SUPPORTED */ | |
| 176 | + __MINGW_IMPORT int _sys_nerr; | |
| 177 | +# ifndef _UWIN | |
| 178 | +# define sys_nerr _sys_nerr | |
| 179 | +# endif /* _UWIN */ | |
| 180 | +#endif /* __DECLSPEC_SUPPORTED */ | |
| 181 | + | |
| 182 | +#else /* ! __MSVCRT__ */ | |
| 183 | + | |
| 184 | +/* CRTDLL run time library */ | |
| 185 | + | |
| 186 | +#ifndef __DECLSPEC_SUPPORTED | |
| 187 | + extern int* __imp__sys_nerr_dll; | |
| 188 | +# define sys_nerr (*__imp__sys_nerr_dll) | |
| 189 | +#else /* __DECLSPEC_SUPPORTED */ | |
| 190 | + __MINGW_IMPORT int _sys_nerr_dll; | |
| 191 | +# define sys_nerr _sys_nerr_dll | |
| 192 | +#endif /* __DECLSPEC_SUPPORTED */ | |
| 193 | + | |
| 194 | +#endif /* ! __MSVCRT__ */ | |
| 195 | + | |
| 196 | +#ifndef __DECLSPEC_SUPPORTED | |
| 197 | +extern char*** __imp__sys_errlist; | |
| 198 | +#define sys_errlist (*__imp__sys_errlist) | |
| 199 | +#else /* __DECLSPEC_SUPPORTED */ | |
| 200 | +__MINGW_IMPORT char* _sys_errlist[]; | |
| 201 | +#ifndef _UWIN | |
| 202 | +#define sys_errlist _sys_errlist | |
| 203 | +#endif /* _UWIN */ | |
| 204 | +#endif /* __DECLSPEC_SUPPORTED */ | |
| 205 | + | |
| 206 | +/* | |
| 207 | + * OS version and such constants. | |
| 208 | + */ | |
| 209 | +#ifndef __STRICT_ANSI__ | |
| 210 | + | |
| 211 | +#ifdef __MSVCRT__ | |
| 212 | +/* msvcrtxx.dll */ | |
| 213 | + | |
| 214 | +extern unsigned int* __p__osver(void); | |
| 215 | +extern unsigned int* __p__winver(void); | |
| 216 | +extern unsigned int* __p__winmajor(void); | |
| 217 | +extern unsigned int* __p__winminor(void); | |
| 218 | + | |
| 219 | +#define _osver (*__p__osver()) | |
| 220 | +#define _winver (*__p__winver()) | |
| 221 | +#define _winmajor (*__p__winmajor()) | |
| 222 | +#define _winminor (*__p__winminor()) | |
| 223 | + | |
| 224 | +#else | |
| 225 | +/* Not msvcrtxx.dll, thus crtdll.dll */ | |
| 226 | + | |
| 227 | +#ifndef __DECLSPEC_SUPPORTED | |
| 228 | + | |
| 229 | +extern unsigned int* _imp___osver_dll; | |
| 230 | +extern unsigned int* _imp___winver_dll; | |
| 231 | +extern unsigned int* _imp___winmajor_dll; | |
| 232 | +extern unsigned int* _imp___winminor_dll; | |
| 233 | + | |
| 234 | +#define _osver (*_imp___osver_dll) | |
| 235 | +#define _winver (*_imp___winver_dll) | |
| 236 | +#define _winmajor (*_imp___winmajor_dll) | |
| 237 | +#define _winminor (*_imp___winminor_dll) | |
| 238 | + | |
| 239 | +#else /* __DECLSPEC_SUPPORTED */ | |
| 240 | + | |
| 241 | +__MINGW_IMPORT unsigned int _osver_dll; | |
| 242 | +__MINGW_IMPORT unsigned int _winver_dll; | |
| 243 | +__MINGW_IMPORT unsigned int _winmajor_dll; | |
| 244 | +__MINGW_IMPORT unsigned int _winminor_dll; | |
| 245 | + | |
| 246 | +#define _osver _osver_dll | |
| 247 | +#define _winver _winver_dll | |
| 248 | +#define _winmajor _winmajor_dll | |
| 249 | +#define _winminor _winminor_dll | |
| 250 | + | |
| 251 | +#endif /* __DECLSPEC_SUPPORTED */ | |
| 252 | + | |
| 253 | +#endif | |
| 254 | + | |
| 255 | +#if defined __MSVCRT__ | |
| 256 | +/* although the _pgmptr is exported as DATA, | |
| 257 | + * be safe and use the access function __p__pgmptr() to get it. */ | |
| 258 | +char** __p__pgmptr(void); | |
| 259 | +#define _pgmptr (*__p__pgmptr()) | |
| 260 | +wchar_t** __p__wpgmptr(void); | |
| 261 | +#define _wpgmptr (*__p__wpgmptr()) | |
| 262 | +#else /* ! __MSVCRT__ */ | |
| 263 | +# ifndef __DECLSPEC_SUPPORTED | |
| 264 | + extern char** __imp__pgmptr_dll; | |
| 265 | +# define _pgmptr (*__imp__pgmptr_dll) | |
| 266 | +# else /* __DECLSPEC_SUPPORTED */ | |
| 267 | + __MINGW_IMPORT char* _pgmptr_dll; | |
| 268 | +# define _pgmptr _pgmptr_dll | |
| 269 | +# endif /* __DECLSPEC_SUPPORTED */ | |
| 270 | +/* no wide version in CRTDLL */ | |
| 271 | +#endif /* __MSVCRT__ */ | |
| 272 | + | |
| 273 | +#endif /* Not __STRICT_ANSI__ */ | |
| 274 | + | |
| 275 | +#ifdef __GNUC__ | |
| 276 | +#define _ATTRIB_NORETURN __attribute__ ((noreturn)) | |
| 277 | +#else /* Not __GNUC__ */ | |
| 278 | +#define _ATTRIB_NORETURN | |
| 279 | +#endif /* __GNUC__ */ | |
| 280 | + | |
| 281 | +double atof (const char*); | |
| 282 | +int atoi (const char*); | |
| 283 | +long atol (const char*); | |
| 284 | +int _wtoi (const wchar_t *); | |
| 285 | +long _wtol (const wchar_t *); | |
| 286 | + | |
| 287 | +double strtod (const char*, char**); | |
| 288 | +#if !defined __NO_ISOCEXT /* extern stubs in static libmingwex.a */ | |
| 289 | +extern __inline__ float strtof (const char *nptr, char **endptr) | |
| 290 | + { return (strtod (nptr, endptr));} | |
| 291 | +#endif /* __NO_ISOCEXT */ | |
| 292 | + | |
| 293 | +long strtol (const char*, char**, int); | |
| 294 | +unsigned long strtoul (const char*, char**, int); | |
| 295 | + | |
| 296 | +#ifndef _WSTDLIB_DEFINED | |
| 297 | +/* also declared in wchar.h */ | |
| 298 | +double wcstod (const wchar_t*, wchar_t**); | |
| 299 | +#if !defined __NO_ISOCEXT /* extern stub in static libmingwex.a */ | |
| 300 | +extern __inline__ float wcstof( const wchar_t *nptr, wchar_t **endptr) | |
| 301 | +{ return (wcstod(nptr, endptr)); } | |
| 302 | +#endif /* __NO_ISOCEXT */ | |
| 303 | + | |
| 304 | +long wcstol (const wchar_t*, wchar_t**, int); | |
| 305 | +unsigned long wcstoul (const wchar_t*, wchar_t**, int); | |
| 306 | +#define _WSTDLIB_DEFINED | |
| 307 | +#endif | |
| 308 | + | |
| 309 | +size_t wcstombs (char*, const wchar_t*, size_t); | |
| 310 | +int wctomb (char*, wchar_t); | |
| 311 | + | |
| 312 | +int mblen (const char*, size_t); | |
| 313 | +size_t mbstowcs (wchar_t*, const char*, size_t); | |
| 314 | +int mbtowc (wchar_t*, const char*, size_t); | |
| 315 | + | |
| 316 | +int rand (void); | |
| 317 | +void srand (unsigned int); | |
| 318 | + | |
| 319 | +void* calloc (size_t, size_t); | |
| 320 | +void* malloc (size_t); | |
| 321 | +void* realloc (void*, size_t); | |
| 322 | +void free (void*); | |
| 323 | + | |
| 324 | +void abort (void) _ATTRIB_NORETURN; | |
| 325 | +void exit (int) _ATTRIB_NORETURN; | |
| 326 | +int atexit (void (*)(void)); | |
| 327 | + | |
| 328 | +int system (const char*); | |
| 329 | +char* getenv (const char*); | |
| 330 | + | |
| 331 | +void* bsearch (const void*, const void*, size_t, size_t, | |
| 332 | + int (*)(const void*, const void*)); | |
| 333 | +void qsort (const void*, size_t, size_t, | |
| 334 | + int (*)(const void*, const void*)); | |
| 335 | + | |
| 336 | +int abs (int); | |
| 337 | +long labs (long); | |
| 338 | + | |
| 339 | +/* | |
| 340 | + * div_t and ldiv_t are structures used to return the results of div and | |
| 341 | + * ldiv. | |
| 342 | + * | |
| 343 | + * NOTE: div and ldiv appear not to work correctly unless | |
| 344 | + * -fno-pcc-struct-return is specified. This is included in the | |
| 345 | + * mingw32 specs file. | |
| 346 | + */ | |
| 347 | +typedef struct { int quot, rem; } div_t; | |
| 348 | +typedef struct { long quot, rem; } ldiv_t; | |
| 349 | + | |
| 350 | +div_t div (int, int); | |
| 351 | +ldiv_t ldiv (long, long); | |
| 352 | + | |
| 353 | +#ifndef __STRICT_ANSI__ | |
| 354 | + | |
| 355 | +/* | |
| 356 | + * NOTE: Officially the three following functions are obsolete. The Win32 API | |
| 357 | + * functions SetErrorMode, Beep and Sleep are their replacements. | |
| 358 | + */ | |
| 359 | +void _beep (unsigned int, unsigned int); | |
| 360 | +void _seterrormode (int); | |
| 361 | +void _sleep (unsigned long); | |
| 362 | + | |
| 363 | +void _exit (int) _ATTRIB_NORETURN; | |
| 364 | +#if !defined __NO_ISOCEXT /* extern stub in static libmingwex.a */ | |
| 365 | +/* C99 function name */ | |
| 366 | +void _Exit(int) _ATTRIB_NORETURN; /* Declare to get noreturn attribute. */ | |
| 367 | +extern __inline__ void _Exit(int status) | |
| 368 | + { _exit(status); } | |
| 369 | +#endif | |
| 370 | +/* _onexit is MS extension. Use atexit for portability. */ | |
| 371 | +typedef int (* _onexit_t)(void); | |
| 372 | +_onexit_t _onexit( _onexit_t ); | |
| 373 | + | |
| 374 | +int _putenv (const char*); | |
| 375 | +void _searchenv (const char*, const char*, char*); | |
| 376 | + | |
| 377 | + | |
| 378 | +char* _ecvt (double, int, int*, int*); | |
| 379 | +char* _fcvt (double, int, int*, int*); | |
| 380 | +char* _gcvt (double, int, char*); | |
| 381 | + | |
| 382 | +void _makepath (char*, const char*, const char*, const char*, const char*); | |
| 383 | +void _splitpath (const char*, char*, char*, char*, char*); | |
| 384 | +char* _fullpath (char*, const char*, size_t); | |
| 385 | + | |
| 386 | + | |
| 387 | +char* _itoa (int, char*, int); | |
| 388 | +char* _ltoa (long, char*, int); | |
| 389 | +char* _ultoa(unsigned long, char*, int); | |
| 390 | +wchar_t* _itow (int, wchar_t*, int); | |
| 391 | +wchar_t* _ltow (long, wchar_t*, int); | |
| 392 | +wchar_t* _ultow (unsigned long, wchar_t*, int); | |
| 393 | + | |
| 394 | +#ifdef __MSVCRT__ | |
| 395 | +__int64 _atoi64(const char *); | |
| 396 | +char* _i64toa(__int64, char *, int); | |
| 397 | +char* _ui64toa(unsigned __int64, char *, int); | |
| 398 | +__int64 _wtoi64(const wchar_t *); | |
| 399 | +wchar_t* _i64tow(__int64, wchar_t *, int); | |
| 400 | +wchar_t* _ui64tow(unsigned __int64, wchar_t *, int); | |
| 401 | + | |
| 402 | +wchar_t* _wgetenv(const wchar_t*); | |
| 403 | +int _wputenv(const wchar_t*); | |
| 404 | +void _wsearchenv(const wchar_t*, const wchar_t*, wchar_t*); | |
| 405 | +void _wmakepath(wchar_t*, const wchar_t*, const wchar_t*, const wchar_t*, const wchar_t*); | |
| 406 | +void _wsplitpath (const wchar_t*, wchar_t*, wchar_t*, wchar_t*, wchar_t*); | |
| 407 | +wchar_t* _wfullpath (wchar_t*, const wchar_t*, size_t); | |
| 408 | +#endif | |
| 409 | + | |
| 410 | +#ifndef _NO_OLDNAMES | |
| 411 | + | |
| 412 | +int putenv (const char*); | |
| 413 | +void searchenv (const char*, const char*, char*); | |
| 414 | + | |
| 415 | +char* itoa (int, char*, int); | |
| 416 | +char* ltoa (long, char*, int); | |
| 417 | + | |
| 418 | +#ifndef _UWIN | |
| 419 | +char* ecvt (double, int, int*, int*); | |
| 420 | +char* fcvt (double, int, int*, int*); | |
| 421 | +char* gcvt (double, int, char*); | |
| 422 | +#endif /* _UWIN */ | |
| 423 | +#endif /* Not _NO_OLDNAMES */ | |
| 424 | + | |
| 425 | +#endif /* Not __STRICT_ANSI__ */ | |
| 426 | + | |
| 427 | +/* C99 names */ | |
| 428 | + | |
| 429 | +#if !defined __NO_ISOCEXT /* externs in static libmingwex.a */ | |
| 430 | + | |
| 431 | +typedef struct { long long quot, rem; } lldiv_t; | |
| 432 | + | |
| 433 | +lldiv_t lldiv (long long, long long); | |
| 434 | + | |
| 435 | +extern __inline__ long long llabs(long long _j) | |
| 436 | + {return (_j >= 0 ? _j : -_j);} | |
| 437 | + | |
| 438 | +long long strtoll (const char* __restrict__, char** __restrict, int); | |
| 439 | +unsigned long long strtoull (const char* __restrict__, char** __restrict__, int); | |
| 440 | + | |
| 441 | +#if defined (__MSVCRT__) /* these are stubs for MS _i64 versions */ | |
| 442 | +long long atoll (const char *); | |
| 443 | + | |
| 444 | +#if !defined (__STRICT_ANSI__) | |
| 445 | +long long wtoll(const wchar_t *); | |
| 446 | +char* lltoa(long long, char *, int); | |
| 447 | +char* ulltoa(unsigned long long , char *, int); | |
| 448 | +wchar_t* lltow(long long, wchar_t *, int); | |
| 449 | +wchar_t* ulltow(unsigned long long, wchar_t *, int); | |
| 450 | + | |
| 451 | + /* inline using non-ansi functions */ | |
| 452 | +extern __inline__ long long atoll (const char * _c) | |
| 453 | + { return _atoi64 (_c); } | |
| 454 | +extern __inline__ char* lltoa(long long _n, char * _c, int _i) | |
| 455 | + { return _i64toa (_n, _c, _i); } | |
| 456 | +extern __inline__ char* ulltoa(unsigned long long _n, char * _c, int _i) | |
| 457 | + { return _ui64toa (_n, _c, _i); } | |
| 458 | +extern __inline__ long long wtoll(const wchar_t * _w) | |
| 459 | + { return _wtoi64 (_w); } | |
| 460 | +extern __inline__ wchar_t* lltow(long long _n, wchar_t * _w, int _i) | |
| 461 | + { return _i64tow (_n, _w, _i); } | |
| 462 | +extern __inline__ wchar_t* ulltow(unsigned long long _n, wchar_t * _w, int _i) | |
| 463 | + { return _ui64tow (_n, _w, _i); } | |
| 464 | +#endif /* (__STRICT_ANSI__) */ | |
| 465 | + | |
| 466 | +#endif /* __MSVCRT__ */ | |
| 467 | + | |
| 468 | +#endif /* !__NO_ISOCEXT */ | |
| 469 | + | |
| 470 | +/* | |
| 471 | + * Undefine the no return attribute used in some function definitions | |
| 472 | + */ | |
| 473 | +#undef _ATTRIB_NORETURN | |
| 474 | + | |
| 475 | +#ifdef __cplusplus | |
| 476 | +} | |
| 477 | +#endif | |
| 478 | + | |
| 479 | +#endif /* Not RC_INVOKED */ | |
| 480 | + | |
| 481 | +#endif /* Not _STDLIB_H_ */ | |
| 482 | + | |
| @@ -0,0 +1,206 @@ | ||
| 1 | +/* | |
| 2 | + * string.h | |
| 3 | + * | |
| 4 | + * Definitions for memory and string functions. | |
| 5 | + * | |
| 6 | + * This file is part of the Mingw32 package. | |
| 7 | + * | |
| 8 | + * Contributors: | |
| 9 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 10 | + * | |
| 11 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 12 | + * | |
| 13 | + * This source code is offered for use in the public domain. You may | |
| 14 | + * use, modify or distribute it freely. | |
| 15 | + * | |
| 16 | + * This code is distributed in the hope that it will be useful but | |
| 17 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 18 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 19 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 20 | + * | |
| 21 | + * $Revision: 1.1 $ | |
| 22 | + * $Author: bellard $ | |
| 23 | + * $Date: 2005/04/14 23:49:21 $ | |
| 24 | + * | |
| 25 | + */ | |
| 26 | + | |
| 27 | +#ifndef _STRING_H_ | |
| 28 | +#define _STRING_H_ | |
| 29 | + | |
| 30 | +/* All the headers include this file. */ | |
| 31 | +#include <_mingw.h> | |
| 32 | + | |
| 33 | +/* | |
| 34 | + * Define size_t, wchar_t and NULL | |
| 35 | + */ | |
| 36 | +#define __need_size_t | |
| 37 | +#define __need_wchar_t | |
| 38 | +#define __need_NULL | |
| 39 | +#ifndef RC_INVOKED | |
| 40 | +#include <stddef.h> | |
| 41 | +#endif /* Not RC_INVOKED */ | |
| 42 | + | |
| 43 | +#ifndef RC_INVOKED | |
| 44 | + | |
| 45 | +#ifdef __cplusplus | |
| 46 | +extern "C" { | |
| 47 | +#endif | |
| 48 | + | |
| 49 | +/* | |
| 50 | + * Prototypes of the ANSI Standard C library string functions. | |
| 51 | + */ | |
| 52 | +void* memchr (const void*, int, size_t); | |
| 53 | +int memcmp (const void*, const void*, size_t); | |
| 54 | +void* memcpy (void*, const void*, size_t); | |
| 55 | +void* memmove (void*, const void*, size_t); | |
| 56 | +void* memset (void*, int, size_t); | |
| 57 | +char* strcat (char*, const char*); | |
| 58 | +char* strchr (const char*, int); | |
| 59 | +int strcmp (const char*, const char*); | |
| 60 | +int strcoll (const char*, const char*); /* Compare using locale */ | |
| 61 | +char* strcpy (char*, const char*); | |
| 62 | +size_t strcspn (const char*, const char*); | |
| 63 | +char* strerror (int); /* NOTE: NOT an old name wrapper. */ | |
| 64 | +char* _strerror (const char *); | |
| 65 | +size_t strlen (const char*); | |
| 66 | +char* strncat (char*, const char*, size_t); | |
| 67 | +int strncmp (const char*, const char*, size_t); | |
| 68 | +char* strncpy (char*, const char*, size_t); | |
| 69 | +char* strpbrk (const char*, const char*); | |
| 70 | +char* strrchr (const char*, int); | |
| 71 | +size_t strspn (const char*, const char*); | |
| 72 | +char* strstr (const char*, const char*); | |
| 73 | +char* strtok (char*, const char*); | |
| 74 | +size_t strxfrm (char*, const char*, size_t); | |
| 75 | + | |
| 76 | +#ifndef __STRICT_ANSI__ | |
| 77 | +/* | |
| 78 | + * Extra non-ANSI functions provided by the CRTDLL library | |
| 79 | + */ | |
| 80 | +void* _memccpy (void*, const void*, int, size_t); | |
| 81 | +int _memicmp (const void*, const void*, size_t); | |
| 82 | +char* _strdup (const char*); | |
| 83 | +int _strcmpi (const char*, const char*); | |
| 84 | +int _stricmp (const char*, const char*); | |
| 85 | +int _stricoll (const char*, const char*); | |
| 86 | +char* _strlwr (char*); | |
| 87 | +int _strnicmp (const char*, const char*, size_t); | |
| 88 | +char* _strnset (char*, int, size_t); | |
| 89 | +char* _strrev (char*); | |
| 90 | +char* _strset (char*, int); | |
| 91 | +char* _strupr (char*); | |
| 92 | +void _swab (const char*, char*, size_t); | |
| 93 | + | |
| 94 | +/* | |
| 95 | + * Multi-byte character functions | |
| 96 | + */ | |
| 97 | +unsigned char* _mbschr (unsigned char*, unsigned char*); | |
| 98 | +unsigned char* _mbsncat (unsigned char*, const unsigned char*, size_t); | |
| 99 | +unsigned char* _mbstok (unsigned char*, unsigned char*); | |
| 100 | + | |
| 101 | +#ifdef __MSVCRT__ | |
| 102 | +int _strncoll(const char*, const char*, size_t); | |
| 103 | +int _strnicoll(const char*, const char*, size_t); | |
| 104 | +#endif | |
| 105 | + | |
| 106 | +#endif /* Not __STRICT_ANSI__ */ | |
| 107 | + | |
| 108 | +/* | |
| 109 | + * Unicode versions of the standard calls. | |
| 110 | + */ | |
| 111 | +wchar_t* wcscat (wchar_t*, const wchar_t*); | |
| 112 | +wchar_t* wcschr (const wchar_t*, wchar_t); | |
| 113 | +int wcscmp (const wchar_t*, const wchar_t*); | |
| 114 | +int wcscoll (const wchar_t*, const wchar_t*); | |
| 115 | +wchar_t* wcscpy (wchar_t*, const wchar_t*); | |
| 116 | +size_t wcscspn (const wchar_t*, const wchar_t*); | |
| 117 | +/* Note: No wcserror in CRTDLL. */ | |
| 118 | +size_t wcslen (const wchar_t*); | |
| 119 | +wchar_t* wcsncat (wchar_t*, const wchar_t*, size_t); | |
| 120 | +int wcsncmp(const wchar_t*, const wchar_t*, size_t); | |
| 121 | +wchar_t* wcsncpy(wchar_t*, const wchar_t*, size_t); | |
| 122 | +wchar_t* wcspbrk(const wchar_t*, const wchar_t*); | |
| 123 | +wchar_t* wcsrchr(const wchar_t*, wchar_t); | |
| 124 | +size_t wcsspn(const wchar_t*, const wchar_t*); | |
| 125 | +wchar_t* wcsstr(const wchar_t*, const wchar_t*); | |
| 126 | +wchar_t* wcstok(wchar_t*, const wchar_t*); | |
| 127 | +size_t wcsxfrm(wchar_t*, const wchar_t*, size_t); | |
| 128 | + | |
| 129 | +#ifndef __STRICT_ANSI__ | |
| 130 | +/* | |
| 131 | + * Unicode versions of non-ANSI functions provided by CRTDLL. | |
| 132 | + */ | |
| 133 | + | |
| 134 | +/* NOTE: _wcscmpi not provided by CRTDLL, this define is for portability */ | |
| 135 | +#define _wcscmpi _wcsicmp | |
| 136 | + | |
| 137 | +wchar_t* _wcsdup (wchar_t*); | |
| 138 | +int _wcsicmp (const wchar_t*, const wchar_t*); | |
| 139 | +int _wcsicoll (const wchar_t*, const wchar_t*); | |
| 140 | +wchar_t* _wcslwr (wchar_t*); | |
| 141 | +int _wcsnicmp (const wchar_t*, const wchar_t*, size_t); | |
| 142 | +wchar_t* _wcsnset (wchar_t*, wchar_t, size_t); | |
| 143 | +wchar_t* _wcsrev (wchar_t*); | |
| 144 | +wchar_t* _wcsset (wchar_t*, wchar_t); | |
| 145 | +wchar_t* _wcsupr (wchar_t*); | |
| 146 | + | |
| 147 | +#ifdef __MSVCRT__ | |
| 148 | +int _wcsncoll(const wchar_t*, const wchar_t*, size_t); | |
| 149 | +int _wcsnicoll(const wchar_t*, const wchar_t*, size_t); | |
| 150 | +#endif | |
| 151 | + | |
| 152 | + | |
| 153 | +#endif /* Not __STRICT_ANSI__ */ | |
| 154 | + | |
| 155 | + | |
| 156 | +#ifndef __STRICT_ANSI__ | |
| 157 | +#ifndef _NO_OLDNAMES | |
| 158 | + | |
| 159 | +/* | |
| 160 | + * Non-underscored versions of non-ANSI functions. They live in liboldnames.a | |
| 161 | + * and provide a little extra portability. Also a few extra UNIX-isms like | |
| 162 | + * strcasecmp. | |
| 163 | + */ | |
| 164 | + | |
| 165 | +void* memccpy (void*, const void*, int, size_t); | |
| 166 | +int memicmp (const void*, const void*, size_t); | |
| 167 | +char* strdup (const char*); | |
| 168 | +int strcmpi (const char*, const char*); | |
| 169 | +int stricmp (const char*, const char*); | |
| 170 | +int strcasecmp (const char*, const char*); | |
| 171 | +int stricoll (const char*, const char*); | |
| 172 | +char* strlwr (char*); | |
| 173 | +int strnicmp (const char*, const char*, size_t); | |
| 174 | +int strncasecmp (const char*, const char*, size_t); | |
| 175 | +char* strnset (char*, int, size_t); | |
| 176 | +char* strrev (char*); | |
| 177 | +char* strset (char*, int); | |
| 178 | +char* strupr (char*); | |
| 179 | +#ifndef _UWIN | |
| 180 | +void swab (const char*, char*, size_t); | |
| 181 | +#endif /* _UWIN */ | |
| 182 | + | |
| 183 | +/* NOTE: There is no _wcscmpi, but this is for compatibility. */ | |
| 184 | +int wcscmpi (const wchar_t*, const wchar_t*); | |
| 185 | +wchar_t* wcsdup (wchar_t*); | |
| 186 | +int wcsicmp (const wchar_t*, const wchar_t*); | |
| 187 | +int wcsicoll (const wchar_t*, const wchar_t*); | |
| 188 | +wchar_t* wcslwr (wchar_t*); | |
| 189 | +int wcsnicmp (const wchar_t*, const wchar_t*, size_t); | |
| 190 | +wchar_t* wcsnset (wchar_t*, wchar_t, size_t); | |
| 191 | +wchar_t* wcsrev (wchar_t*); | |
| 192 | +wchar_t* wcsset (wchar_t*, wchar_t); | |
| 193 | +wchar_t* wcsupr (wchar_t*); | |
| 194 | + | |
| 195 | +#endif /* Not _NO_OLDNAMES */ | |
| 196 | +#endif /* Not strict ANSI */ | |
| 197 | + | |
| 198 | + | |
| 199 | +#ifdef __cplusplus | |
| 200 | +} | |
| 201 | +#endif | |
| 202 | + | |
| 203 | +#endif /* Not RC_INVOKED */ | |
| 204 | + | |
| 205 | +#endif /* Not _STRING_H_ */ | |
| 206 | + | |
| @@ -0,0 +1,8 @@ | ||
| 1 | +/* | |
| 2 | + * This file is part of the Mingw32 package. | |
| 3 | + * | |
| 4 | + * This fcntl.h maps to the root fcntl.h | |
| 5 | + */ | |
| 6 | +#ifndef __STRICT_ANSI__ | |
| 7 | +#include <fcntl.h> | |
| 8 | +#endif | |
| @@ -0,0 +1,9 @@ | ||
| 1 | +/* | |
| 2 | + * This file is part of the Mingw32 package. | |
| 3 | + * | |
| 4 | + * This file.h maps to the root fcntl.h | |
| 5 | + * TODO? | |
| 6 | + */ | |
| 7 | +#ifndef __STRICT_ANSI__ | |
| 8 | +#include <fcntl.h> | |
| 9 | +#endif | |
| @@ -0,0 +1,52 @@ | ||
| 1 | +/* | |
| 2 | + * locking.h | |
| 3 | + * | |
| 4 | + * Constants for the mode parameter of the locking function. | |
| 5 | + * | |
| 6 | + * This file is part of the Mingw32 package. | |
| 7 | + * | |
| 8 | + * Contributors: | |
| 9 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 10 | + * | |
| 11 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 12 | + * | |
| 13 | + * This source code is offered for use in the public domain. You may | |
| 14 | + * use, modify or distribute it freely. | |
| 15 | + * | |
| 16 | + * This code is distributed in the hope that it will be useful but | |
| 17 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 18 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 19 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 20 | + * | |
| 21 | + * $Revision: 1.1 $ | |
| 22 | + * $Author: bellard $ | |
| 23 | + * $Date: 2005/04/14 23:49:21 $ | |
| 24 | + * | |
| 25 | + */ | |
| 26 | + | |
| 27 | +#ifndef __STRICT_ANSI__ | |
| 28 | + | |
| 29 | +#ifndef _LOCKING_H_ | |
| 30 | +#define _LOCKING_H_ | |
| 31 | + | |
| 32 | +/* All the headers include this file. */ | |
| 33 | +#include <_mingw.h> | |
| 34 | + | |
| 35 | +#define _LK_UNLCK 0 /* Unlock */ | |
| 36 | +#define _LK_LOCK 1 /* Lock */ | |
| 37 | +#define _LK_NBLCK 2 /* Non-blocking lock */ | |
| 38 | +#define _LK_RLCK 3 /* Lock for read only */ | |
| 39 | +#define _LK_NBRLCK 4 /* Non-blocking lock for read only */ | |
| 40 | + | |
| 41 | +#ifndef NO_OLDNAMES | |
| 42 | +#define LK_UNLCK _LK_UNLCK | |
| 43 | +#define LK_LOCK _LK_LOCK | |
| 44 | +#define LK_NBLCK _LK_NBLCK | |
| 45 | +#define LK_RLCK _LK_RLCK | |
| 46 | +#define LK_NBRLCK _LK_NBRLCK | |
| 47 | +#endif /* Not NO_OLDNAMES */ | |
| 48 | + | |
| 49 | +#endif /* Not _LOCKING_H_ */ | |
| 50 | + | |
| 51 | +#endif /* Not __STRICT_ANSI__ */ | |
| 52 | + | |
| @@ -0,0 +1,190 @@ | ||
| 1 | +/* | |
| 2 | + * stat.h | |
| 3 | + * | |
| 4 | + * Symbolic constants for opening and creating files, also stat, fstat and | |
| 5 | + * chmod functions. | |
| 6 | + * | |
| 7 | + * This file is part of the Mingw32 package. | |
| 8 | + * | |
| 9 | + * Contributors: | |
| 10 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 11 | + * | |
| 12 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 13 | + * | |
| 14 | + * This source code is offered for use in the public domain. You may | |
| 15 | + * use, modify or distribute it freely. | |
| 16 | + * | |
| 17 | + * This code is distributed in the hope that it will be useful but | |
| 18 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 19 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 20 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 21 | + * | |
| 22 | + * $Revision: 1.1 $ | |
| 23 | + * $Author: bellard $ | |
| 24 | + * $Date: 2005/04/14 23:49:21 $ | |
| 25 | + * | |
| 26 | + */ | |
| 27 | + | |
| 28 | +#ifndef __STRICT_ANSI__ | |
| 29 | + | |
| 30 | +#ifndef _STAT_H_ | |
| 31 | +#define _STAT_H_ | |
| 32 | + | |
| 33 | +/* All the headers include this file. */ | |
| 34 | +#include <_mingw.h> | |
| 35 | + | |
| 36 | +#define __need_size_t | |
| 37 | +#define __need_wchar_t | |
| 38 | +#ifndef RC_INVOKED | |
| 39 | +#include <stddef.h> | |
| 40 | +#endif /* Not RC_INVOKED */ | |
| 41 | + | |
| 42 | +#include <sys/types.h> | |
| 43 | + | |
| 44 | +/* | |
| 45 | + * Constants for the stat st_mode member. | |
| 46 | + */ | |
| 47 | +#define _S_IFIFO 0x1000 /* FIFO */ | |
| 48 | +#define _S_IFCHR 0x2000 /* Character */ | |
| 49 | +#define _S_IFBLK 0x3000 /* Block: Is this ever set under w32? */ | |
| 50 | +#define _S_IFDIR 0x4000 /* Directory */ | |
| 51 | +#define _S_IFREG 0x8000 /* Regular */ | |
| 52 | + | |
| 53 | +#define _S_IFMT 0xF000 /* File type mask */ | |
| 54 | + | |
| 55 | +#define _S_IEXEC 0x0040 | |
| 56 | +#define _S_IWRITE 0x0080 | |
| 57 | +#define _S_IREAD 0x0100 | |
| 58 | + | |
| 59 | +#define _S_IRWXU (_S_IREAD | _S_IWRITE | _S_IEXEC) | |
| 60 | +#define _S_IXUSR _S_IEXEC | |
| 61 | +#define _S_IWUSR _S_IWRITE | |
| 62 | +#define _S_IRUSR _S_IREAD | |
| 63 | + | |
| 64 | +#define _S_ISDIR(m) (((m) & _S_IFMT) == _S_IFDIR) | |
| 65 | +#define _S_ISFIFO(m) (((m) & _S_IFMT) == _S_IFIFO) | |
| 66 | +#define _S_ISCHR(m) (((m) & _S_IFMT) == _S_IFCHR) | |
| 67 | +#define _S_ISBLK(m) (((m) & _S_IFMT) == _S_IFBLK) | |
| 68 | +#define _S_ISREG(m) (((m) & _S_IFMT) == _S_IFREG) | |
| 69 | + | |
| 70 | +#ifndef _NO_OLDNAMES | |
| 71 | + | |
| 72 | +#define S_IFIFO _S_IFIFO | |
| 73 | +#define S_IFCHR _S_IFCHR | |
| 74 | +#define S_IFBLK _S_IFBLK | |
| 75 | +#define S_IFDIR _S_IFDIR | |
| 76 | +#define S_IFREG _S_IFREG | |
| 77 | +#define S_IFMT _S_IFMT | |
| 78 | +#define S_IEXEC _S_IEXEC | |
| 79 | +#define S_IWRITE _S_IWRITE | |
| 80 | +#define S_IREAD _S_IREAD | |
| 81 | +#define S_IRWXU _S_IRWXU | |
| 82 | +#define S_IXUSR _S_IXUSR | |
| 83 | +#define S_IWUSR _S_IWUSR | |
| 84 | +#define S_IRUSR _S_IRUSR | |
| 85 | + | |
| 86 | +#define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR) | |
| 87 | +#define S_ISFIFO(m) (((m) & S_IFMT) == S_IFIFO) | |
| 88 | +#define S_ISCHR(m) (((m) & S_IFMT) == S_IFCHR) | |
| 89 | +#define S_ISBLK(m) (((m) & S_IFMT) == S_IFBLK) | |
| 90 | +#define S_ISREG(m) (((m) & S_IFMT) == S_IFREG) | |
| 91 | + | |
| 92 | +#endif /* Not _NO_OLDNAMES */ | |
| 93 | + | |
| 94 | +#ifndef RC_INVOKED | |
| 95 | + | |
| 96 | +#ifndef _STAT_DEFINED | |
| 97 | +/* | |
| 98 | + * The structure manipulated and returned by stat and fstat. | |
| 99 | + * | |
| 100 | + * NOTE: If called on a directory the values in the time fields are not only | |
| 101 | + * invalid, they will cause localtime et. al. to return NULL. And calling | |
| 102 | + * asctime with a NULL pointer causes an Invalid Page Fault. So watch it! | |
| 103 | + */ | |
| 104 | +struct _stat | |
| 105 | +{ | |
| 106 | + _dev_t st_dev; /* Equivalent to drive number 0=A 1=B ... */ | |
| 107 | + _ino_t st_ino; /* Always zero ? */ | |
| 108 | + _mode_t st_mode; /* See above constants */ | |
| 109 | + short st_nlink; /* Number of links. */ | |
| 110 | + short st_uid; /* User: Maybe significant on NT ? */ | |
| 111 | + short st_gid; /* Group: Ditto */ | |
| 112 | + _dev_t st_rdev; /* Seems useless (not even filled in) */ | |
| 113 | + _off_t st_size; /* File size in bytes */ | |
| 114 | + time_t st_atime; /* Accessed date (always 00:00 hrs local | |
| 115 | + * on FAT) */ | |
| 116 | + time_t st_mtime; /* Modified time */ | |
| 117 | + time_t st_ctime; /* Creation time */ | |
| 118 | +}; | |
| 119 | + | |
| 120 | +struct stat | |
| 121 | +{ | |
| 122 | + _dev_t st_dev; /* Equivalent to drive number 0=A 1=B ... */ | |
| 123 | + _ino_t st_ino; /* Always zero ? */ | |
| 124 | + _mode_t st_mode; /* See above constants */ | |
| 125 | + short st_nlink; /* Number of links. */ | |
| 126 | + short st_uid; /* User: Maybe significant on NT ? */ | |
| 127 | + short st_gid; /* Group: Ditto */ | |
| 128 | + _dev_t st_rdev; /* Seems useless (not even filled in) */ | |
| 129 | + _off_t st_size; /* File size in bytes */ | |
| 130 | + time_t st_atime; /* Accessed date (always 00:00 hrs local | |
| 131 | + * on FAT) */ | |
| 132 | + time_t st_mtime; /* Modified time */ | |
| 133 | + time_t st_ctime; /* Creation time */ | |
| 134 | +}; | |
| 135 | +#if defined (__MSVCRT__) | |
| 136 | +struct _stati64 { | |
| 137 | + _dev_t st_dev; | |
| 138 | + _ino_t st_ino; | |
| 139 | + unsigned short st_mode; | |
| 140 | + short st_nlink; | |
| 141 | + short st_uid; | |
| 142 | + short st_gid; | |
| 143 | + _dev_t st_rdev; | |
| 144 | + __int64 st_size; | |
| 145 | + time_t st_atime; | |
| 146 | + time_t st_mtime; | |
| 147 | + time_t st_ctime; | |
| 148 | +}; | |
| 149 | +#endif /* __MSVCRT__ */ | |
| 150 | +#define _STAT_DEFINED | |
| 151 | +#endif /* _STAT_DEFINED */ | |
| 152 | + | |
| 153 | +#ifdef __cplusplus | |
| 154 | +extern "C" { | |
| 155 | +#endif | |
| 156 | + | |
| 157 | +int _fstat (int, struct _stat*); | |
| 158 | +int _chmod (const char*, int); | |
| 159 | +int _stat (const char*, struct _stat*); | |
| 160 | + | |
| 161 | +#if defined (__MSVCRT__) | |
| 162 | +int _fstati64(int, struct _stati64 *); | |
| 163 | +int _stati64(const char *, struct _stati64 *); | |
| 164 | +#if !defined ( _WSTAT_DEFINED) /* also declared in wchar.h */ | |
| 165 | +int _wstat(const wchar_t*, struct _stat*); | |
| 166 | +int _wstati64 (const wchar_t*, struct _stati64*); | |
| 167 | +#define _WSTAT_DEFINED | |
| 168 | +#endif /* _WSTAT_DEFIND */ | |
| 169 | +#endif /* __MSVCRT__ */ | |
| 170 | + | |
| 171 | +#ifndef _NO_OLDNAMES | |
| 172 | + | |
| 173 | +/* These functions live in liboldnames.a. */ | |
| 174 | +int fstat (int, struct stat*); | |
| 175 | +int chmod (const char*, int); | |
| 176 | +int stat (const char*, struct stat*); | |
| 177 | + | |
| 178 | +#endif /* Not _NO_OLDNAMES */ | |
| 179 | + | |
| 180 | + | |
| 181 | +#ifdef __cplusplus | |
| 182 | +} | |
| 183 | +#endif | |
| 184 | + | |
| 185 | +#endif /* Not RC_INVOKED */ | |
| 186 | + | |
| 187 | +#endif /* Not _STAT_H_ */ | |
| 188 | + | |
| 189 | +#endif /* Not __STRICT_ANSI__ */ | |
| 190 | + | |
| @@ -0,0 +1,3 @@ | ||
| 1 | + | |
| 2 | +#include <time.h> | |
| 3 | + | |
| @@ -0,0 +1,82 @@ | ||
| 1 | +/* | |
| 2 | + * timeb.h | |
| 3 | + * | |
| 4 | + * Support for the UNIX System V ftime system call. | |
| 5 | + * | |
| 6 | + * This file is part of the Mingw32 package. | |
| 7 | + * | |
| 8 | + * Contributors: | |
| 9 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 10 | + * | |
| 11 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 12 | + * | |
| 13 | + * This source code is offered for use in the public domain. You may | |
| 14 | + * use, modify or distribute it freely. | |
| 15 | + * | |
| 16 | + * This code is distributed in the hope that it will be useful but | |
| 17 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 18 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 19 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 20 | + * | |
| 21 | + * $Revision: 1.1 $ | |
| 22 | + * $Author: bellard $ | |
| 23 | + * $Date: 2005/04/14 23:49:21 $ | |
| 24 | + * | |
| 25 | + */ | |
| 26 | + | |
| 27 | +#ifndef __STRICT_ANSI__ | |
| 28 | + | |
| 29 | +#ifndef _TIMEB_H_ | |
| 30 | +#define _TIMEB_H_ | |
| 31 | + | |
| 32 | +/* All the headers include this file. */ | |
| 33 | +#include <_mingw.h> | |
| 34 | + | |
| 35 | +#ifndef RC_INVOKED | |
| 36 | + | |
| 37 | +/* | |
| 38 | + * TODO: Structure not tested. | |
| 39 | + */ | |
| 40 | +struct _timeb | |
| 41 | +{ | |
| 42 | + long time; | |
| 43 | + short millitm; | |
| 44 | + short timezone; | |
| 45 | + short dstflag; | |
| 46 | +}; | |
| 47 | + | |
| 48 | +#ifndef _NO_OLDNAMES | |
| 49 | +/* | |
| 50 | + * TODO: Structure not tested. | |
| 51 | + */ | |
| 52 | +struct timeb | |
| 53 | +{ | |
| 54 | + long time; | |
| 55 | + short millitm; | |
| 56 | + short timezone; | |
| 57 | + short dstflag; | |
| 58 | +}; | |
| 59 | +#endif | |
| 60 | + | |
| 61 | + | |
| 62 | +#ifdef __cplusplus | |
| 63 | +extern "C" { | |
| 64 | +#endif | |
| 65 | + | |
| 66 | +/* TODO: Not tested. */ | |
| 67 | +void _ftime (struct _timeb*); | |
| 68 | + | |
| 69 | +#ifndef _NO_OLDNAMES | |
| 70 | +void ftime (struct timeb*); | |
| 71 | +#endif /* Not _NO_OLDNAMES */ | |
| 72 | + | |
| 73 | +#ifdef __cplusplus | |
| 74 | +} | |
| 75 | +#endif | |
| 76 | + | |
| 77 | +#endif /* Not RC_INVOKED */ | |
| 78 | + | |
| 79 | +#endif /* Not _TIMEB_H_ */ | |
| 80 | + | |
| 81 | +#endif /* Not __STRICT_ANSI__ */ | |
| 82 | + | |
| @@ -0,0 +1,118 @@ | ||
| 1 | +/* | |
| 2 | + * types.h | |
| 3 | + * | |
| 4 | + * The definition of constants, data types and global variables. | |
| 5 | + * | |
| 6 | + * This file is part of the Mingw32 package. | |
| 7 | + * | |
| 8 | + * Contributors: | |
| 9 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 10 | + * Lots of types supplied by Pedro A. Aranda <paag@tid.es> | |
| 11 | + * | |
| 12 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 13 | + * | |
| 14 | + * This source code is offered for use in the public domain. You may | |
| 15 | + * use, modify or distribute it freely. | |
| 16 | + * | |
| 17 | + * This code is distributed in the hope that it will be useful but | |
| 18 | + * WITHOUT ANY WARRANTY. ALL WARRENTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 19 | + * DISCLAIMED. This includes but is not limited to warrenties of | |
| 20 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 21 | + * | |
| 22 | + * $Revision: 1.1 $ | |
| 23 | + * $Author: bellard $ | |
| 24 | + * $Date: 2005/04/14 23:49:21 $ | |
| 25 | + * | |
| 26 | + */ | |
| 27 | + | |
| 28 | +#ifndef _TYPES_H_ | |
| 29 | +#define _TYPES_H_ | |
| 30 | + | |
| 31 | +/* All the headers include this file. */ | |
| 32 | +#include <_mingw.h> | |
| 33 | + | |
| 34 | +#define __need_wchar_t | |
| 35 | +#define __need_size_t | |
| 36 | +#define __need_ptrdiff_t | |
| 37 | +#ifndef RC_INVOKED | |
| 38 | +#include <stddef.h> | |
| 39 | +#endif /* Not RC_INVOKED */ | |
| 40 | + | |
| 41 | +#ifndef RC_INVOKED | |
| 42 | + | |
| 43 | +#ifndef _TIME_T_DEFINED | |
| 44 | +typedef long time_t; | |
| 45 | +#define _TIME_T_DEFINED | |
| 46 | +#endif | |
| 47 | + | |
| 48 | + | |
| 49 | +#ifndef __STRICT_ANSI__ | |
| 50 | + | |
| 51 | +#ifndef _OFF_T_ | |
| 52 | +#define _OFF_T_ | |
| 53 | +typedef long _off_t; | |
| 54 | + | |
| 55 | +#ifndef _NO_OLDNAMES | |
| 56 | +typedef _off_t off_t; | |
| 57 | +#endif | |
| 58 | +#endif /* Not _OFF_T_ */ | |
| 59 | + | |
| 60 | + | |
| 61 | +#ifndef _DEV_T_ | |
| 62 | +#define _DEV_T_ | |
| 63 | +#ifdef __MSVCRT__ | |
| 64 | +typedef unsigned int _dev_t; | |
| 65 | +#else | |
| 66 | +typedef short _dev_t; | |
| 67 | +#endif | |
| 68 | + | |
| 69 | +#ifndef _NO_OLDNAMES | |
| 70 | +typedef _dev_t dev_t; | |
| 71 | +#endif | |
| 72 | +#endif /* Not _DEV_T_ */ | |
| 73 | + | |
| 74 | + | |
| 75 | +#ifndef _INO_T_ | |
| 76 | +#define _INO_T_ | |
| 77 | +typedef short _ino_t; | |
| 78 | + | |
| 79 | +#ifndef _NO_OLDNAMES | |
| 80 | +typedef _ino_t ino_t; | |
| 81 | +#endif | |
| 82 | +#endif /* Not _INO_T_ */ | |
| 83 | + | |
| 84 | + | |
| 85 | +#ifndef _PID_T_ | |
| 86 | +#define _PID_T_ | |
| 87 | +typedef int _pid_t; | |
| 88 | + | |
| 89 | +#ifndef _NO_OLDNAMES | |
| 90 | +typedef _pid_t pid_t; | |
| 91 | +#endif | |
| 92 | +#endif /* Not _PID_T_ */ | |
| 93 | + | |
| 94 | + | |
| 95 | +#ifndef _MODE_T_ | |
| 96 | +#define _MODE_T_ | |
| 97 | +typedef unsigned short _mode_t; | |
| 98 | + | |
| 99 | +#ifndef _NO_OLDNAMES | |
| 100 | +typedef _mode_t mode_t; | |
| 101 | +#endif | |
| 102 | +#endif /* Not _MODE_T_ */ | |
| 103 | + | |
| 104 | + | |
| 105 | +#ifndef _SIGSET_T_ | |
| 106 | +#define _SIGSET_T_ | |
| 107 | +typedef int _sigset_t; | |
| 108 | + | |
| 109 | +#ifndef _NO_OLDNAMES | |
| 110 | +typedef _sigset_t sigset_t; | |
| 111 | +#endif | |
| 112 | +#endif /* Not _SIGSET_T_ */ | |
| 113 | + | |
| 114 | +#endif /* Not __STRICT_ANSI__ */ | |
| 115 | + | |
| 116 | +#endif /* Not RC_INVOKED */ | |
| 117 | + | |
| 118 | +#endif /* Not _TYPES_H_ */ | |
| @@ -0,0 +1,9 @@ | ||
| 1 | +/* | |
| 2 | + * This file is part of the Mingw32 package. | |
| 3 | + * | |
| 4 | + * unistd.h maps (roughly) to io.h | |
| 5 | + */ | |
| 6 | +#ifndef __STRICT_ANSI__ | |
| 7 | +#include <io.h> | |
| 8 | +#endif | |
| 9 | + | |
| @@ -0,0 +1,89 @@ | ||
| 1 | +/* | |
| 2 | + * utime.h | |
| 3 | + * | |
| 4 | + * Support for the utime function. | |
| 5 | + * | |
| 6 | + * This file is part of the Mingw32 package. | |
| 7 | + * | |
| 8 | + * Contributors: | |
| 9 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 10 | + * | |
| 11 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 12 | + * | |
| 13 | + * This source code is offered for use in the public domain. You may | |
| 14 | + * use, modify or distribute it freely. | |
| 15 | + * | |
| 16 | + * This code is distributed in the hope that it will be useful but | |
| 17 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 18 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 19 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 20 | + * | |
| 21 | + * $Revision: 1.1 $ | |
| 22 | + * $Author: bellard $ | |
| 23 | + * $Date: 2005/04/14 23:49:21 $ | |
| 24 | + * | |
| 25 | + */ | |
| 26 | + | |
| 27 | +#ifndef __STRICT_ANSI__ | |
| 28 | + | |
| 29 | +#ifndef _UTIME_H_ | |
| 30 | +#define _UTIME_H_ | |
| 31 | + | |
| 32 | +/* All the headers include this file. */ | |
| 33 | +#include <_mingw.h> | |
| 34 | + | |
| 35 | +#define __need_wchar_t | |
| 36 | +#define __need_size_t | |
| 37 | +#ifndef RC_INVOKED | |
| 38 | +#include <stddef.h> | |
| 39 | +#endif /* Not RC_INVOKED */ | |
| 40 | +#include <sys/types.h> | |
| 41 | + | |
| 42 | +#ifndef RC_INVOKED | |
| 43 | + | |
| 44 | +/* | |
| 45 | + * Structure used by _utime function. | |
| 46 | + */ | |
| 47 | +struct _utimbuf | |
| 48 | +{ | |
| 49 | + time_t actime; /* Access time */ | |
| 50 | + time_t modtime; /* Modification time */ | |
| 51 | +}; | |
| 52 | + | |
| 53 | + | |
| 54 | +#ifndef _NO_OLDNAMES | |
| 55 | +/* NOTE: Must be the same as _utimbuf above. */ | |
| 56 | +struct utimbuf | |
| 57 | +{ | |
| 58 | + time_t actime; | |
| 59 | + time_t modtime; | |
| 60 | +}; | |
| 61 | +#endif /* Not _NO_OLDNAMES */ | |
| 62 | + | |
| 63 | + | |
| 64 | +#ifdef __cplusplus | |
| 65 | +extern "C" { | |
| 66 | +#endif | |
| 67 | + | |
| 68 | +int _utime (const char*, struct _utimbuf*); | |
| 69 | +int _futime (int, struct _utimbuf*); | |
| 70 | + | |
| 71 | +/* The wide character version, only available for MSVCRT versions of the | |
| 72 | + * C runtime library. */ | |
| 73 | +#ifdef __MSVCRT__ | |
| 74 | +int _wutime (const wchar_t*, struct _utimbuf*); | |
| 75 | +#endif /* MSVCRT runtime */ | |
| 76 | +#ifndef _NO_OLDNAMES | |
| 77 | +int utime (const char*, struct utimbuf*); | |
| 78 | +#endif /* Not _NO_OLDNAMES */ | |
| 79 | + | |
| 80 | +#ifdef __cplusplus | |
| 81 | +} | |
| 82 | +#endif | |
| 83 | + | |
| 84 | +#endif /* Not RC_INVOKED */ | |
| 85 | + | |
| 86 | +#endif /* Not _UTIME_H_ */ | |
| 87 | + | |
| 88 | +#endif /* Not __STRICT_ANSI__ */ | |
| 89 | + | |
| @@ -0,0 +1,367 @@ | ||
| 1 | +/* | |
| 2 | + * tchar.h | |
| 3 | + * | |
| 4 | + * Unicode mapping layer for the standard C library. By including this | |
| 5 | + * file and using the 't' names for string functions | |
| 6 | + * (eg. _tprintf) you can make code which can be easily adapted to both | |
| 7 | + * Unicode and non-unicode environments. In a unicode enabled compile define | |
| 8 | + * _UNICODE before including tchar.h, otherwise the standard non-unicode | |
| 9 | + * library functions will be used. | |
| 10 | + * | |
| 11 | + * Note that you still need to include string.h or stdlib.h etc. to define | |
| 12 | + * the appropriate functions. Also note that there are several defines | |
| 13 | + * included for non-ANSI functions which are commonly available (but using | |
| 14 | + * the convention of prepending an underscore to non-ANSI library function | |
| 15 | + * names). | |
| 16 | + * | |
| 17 | + * This file is part of the Mingw32 package. | |
| 18 | + * | |
| 19 | + * Contributors: | |
| 20 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 21 | + * | |
| 22 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 23 | + * | |
| 24 | + * This source code is offered for use in the public domain. You may | |
| 25 | + * use, modify or distribute it freely. | |
| 26 | + * | |
| 27 | + * This code is distributed in the hope that it will be useful but | |
| 28 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 29 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 30 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 31 | + * | |
| 32 | + * $Revision: 1.1 $ | |
| 33 | + * $Author: bellard $ | |
| 34 | + * $Date: 2005/04/14 23:49:21 $ | |
| 35 | + * | |
| 36 | + */ | |
| 37 | + | |
| 38 | +#ifndef _TCHAR_H_ | |
| 39 | +#define _TCHAR_H_ | |
| 40 | + | |
| 41 | +/* All the headers include this file. */ | |
| 42 | +#include <_mingw.h> | |
| 43 | + | |
| 44 | +/* | |
| 45 | + * NOTE: This tests _UNICODE, which is different from the UNICODE define | |
| 46 | + * used to differentiate Win32 API calls. | |
| 47 | + */ | |
| 48 | +#ifdef _UNICODE | |
| 49 | + | |
| 50 | + | |
| 51 | +/* | |
| 52 | + * Use TCHAR instead of char or wchar_t. It will be appropriately translated | |
| 53 | + * if _UNICODE is correctly defined (or not). | |
| 54 | + */ | |
| 55 | +#ifndef _TCHAR_DEFINED | |
| 56 | +#ifndef RC_INVOKED | |
| 57 | +typedef wchar_t TCHAR; | |
| 58 | +typedef wchar_t _TCHAR; | |
| 59 | +#endif /* Not RC_INVOKED */ | |
| 60 | +#define _TCHAR_DEFINED | |
| 61 | +#endif | |
| 62 | + | |
| 63 | + | |
| 64 | +/* | |
| 65 | + * __TEXT is a private macro whose specific use is to force the expansion of a | |
| 66 | + * macro passed as an argument to the macros _T or _TEXT. DO NOT use this | |
| 67 | + * macro within your programs. It's name and function could change without | |
| 68 | + * notice. | |
| 69 | + */ | |
| 70 | +#define __TEXT(x) L##x | |
| 71 | + | |
| 72 | +/* for porting from other Windows compilers */ | |
| 73 | +#if 0 // no wide startup module | |
| 74 | +#define _tmain wmain | |
| 75 | +#define _tWinMain wWinMain | |
| 76 | +#define _tenviron _wenviron | |
| 77 | +#define __targv __wargv | |
| 78 | +#endif | |
| 79 | + | |
| 80 | +/* | |
| 81 | + * Unicode functions | |
| 82 | + */ | |
| 83 | +#define _tprintf wprintf | |
| 84 | +#define _ftprintf fwprintf | |
| 85 | +#define _stprintf swprintf | |
| 86 | +#define _sntprintf _snwprintf | |
| 87 | +#define _vtprintf vwprintf | |
| 88 | +#define _vftprintf vfwprintf | |
| 89 | +#define _vstprintf vswprintf | |
| 90 | +#define _vsntprintf _vsnwprintf | |
| 91 | +#define _tscanf wscanf | |
| 92 | +#define _ftscanf fwscanf | |
| 93 | +#define _stscanf swscanf | |
| 94 | +#define _fgettc fgetwc | |
| 95 | +#define _fgettchar _fgetwchar | |
| 96 | +#define _fgetts fgetws | |
| 97 | +#define _fputtc fputwc | |
| 98 | +#define _fputtchar _fputwchar | |
| 99 | +#define _fputts fputws | |
| 100 | +#define _gettc getwc | |
| 101 | +#define _getts getws | |
| 102 | +#define _puttc putwc | |
| 103 | +#define _putts putws | |
| 104 | +#define _ungettc ungetwc | |
| 105 | +#define _tcstod wcstod | |
| 106 | +#define _tcstol wcstol | |
| 107 | +#define _tcstoul wcstoul | |
| 108 | +#define _itot _itow | |
| 109 | +#define _ltot _ltow | |
| 110 | +#define _ultot _ultow | |
| 111 | +#define _ttoi _wtoi | |
| 112 | +#define _ttol _wtol | |
| 113 | +#define _tcscat wcscat | |
| 114 | +#define _tcschr wcschr | |
| 115 | +#define _tcscmp wcscmp | |
| 116 | +#define _tcscpy wcscpy | |
| 117 | +#define _tcscspn wcscspn | |
| 118 | +#define _tcslen wcslen | |
| 119 | +#define _tcsncat wcsncat | |
| 120 | +#define _tcsncmp wcsncmp | |
| 121 | +#define _tcsncpy wcsncpy | |
| 122 | +#define _tcspbrk wcspbrk | |
| 123 | +#define _tcsrchr wcsrchr | |
| 124 | +#define _tcsspn wcsspn | |
| 125 | +#define _tcsstr wcsstr | |
| 126 | +#define _tcstok wcstok | |
| 127 | +#define _tcsdup _wcsdup | |
| 128 | +#define _tcsicmp _wcsicmp | |
| 129 | +#define _tcsnicmp _wcsnicmp | |
| 130 | +#define _tcsnset _wcsnset | |
| 131 | +#define _tcsrev _wcsrev | |
| 132 | +#define _tcsset _wcsset | |
| 133 | +#define _tcslwr _wcslwr | |
| 134 | +#define _tcsupr _wcsupr | |
| 135 | +#define _tcsxfrm wcsxfrm | |
| 136 | +#define _tcscoll wcscoll | |
| 137 | +#define _tcsicoll _wcsicoll | |
| 138 | +#define _istalpha iswalpha | |
| 139 | +#define _istupper iswupper | |
| 140 | +#define _istlower iswlower | |
| 141 | +#define _istdigit iswdigit | |
| 142 | +#define _istxdigit iswxdigit | |
| 143 | +#define _istspace iswspace | |
| 144 | +#define _istpunct iswpunct | |
| 145 | +#define _istalnum iswalnum | |
| 146 | +#define _istprint iswprint | |
| 147 | +#define _istgraph iswgraph | |
| 148 | +#define _istcntrl iswcntrl | |
| 149 | +#define _istascii iswascii | |
| 150 | +#define _totupper towupper | |
| 151 | +#define _totlower towlower | |
| 152 | +#define _tcsftime wcsftime | |
| 153 | +/* Macro functions */ | |
| 154 | +#define _tcsdec _wcsdec | |
| 155 | +#define _tcsinc _wcsinc | |
| 156 | +#define _tcsnbcnt _wcsncnt | |
| 157 | +#define _tcsnccnt _wcsncnt | |
| 158 | +#define _tcsnextc _wcsnextc | |
| 159 | +#define _tcsninc _wcsninc | |
| 160 | +#define _tcsspnp _wcsspnp | |
| 161 | +#define _wcsdec(_wcs1, _wcs2) ((_wcs1)>=(_wcs2) ? NULL : (_wcs2)-1) | |
| 162 | +#define _wcsinc(_wcs) ((_wcs)+1) | |
| 163 | +#define _wcsnextc(_wcs) ((unsigned int) *(_wcs)) | |
| 164 | +#define _wcsninc(_wcs, _inc) (((_wcs)+(_inc))) | |
| 165 | +#define _wcsncnt(_wcs, _cnt) ((wcslen(_wcs)>_cnt) ? _count : wcslen(_wcs)) | |
| 166 | +#define _wcsspnp(_wcs1, _wcs2) ((*((_wcs1)+wcsspn(_wcs1,_wcs2))) ? ((_wcs1)+wcsspn(_wcs1,_wcs2)) : NULL) | |
| 167 | + | |
| 168 | +#if 1 // defined __MSVCRT__ | |
| 169 | +/* | |
| 170 | + * These wide functions not in crtdll.dll. | |
| 171 | + * Define macros anyway so that _wfoo rather than _tfoo is undefined | |
| 172 | + */ | |
| 173 | +#define _ttoi64 _wtoi64 | |
| 174 | +#define _i64tot _i64tow | |
| 175 | +#define _ui64tot _ui64tow | |
| 176 | +#define _tasctime _wasctime | |
| 177 | +#define _tctime _wctime | |
| 178 | +#define _tstrdate _wstrdate | |
| 179 | +#define _tstrtime _wstrtime | |
| 180 | +#define _tutime _wutime | |
| 181 | +#define _tcsnccoll _wcsncoll | |
| 182 | +#define _tcsncoll _wcsncoll | |
| 183 | +#define _tcsncicoll _wcsnicoll | |
| 184 | +#define _tcsnicoll _wcsnicoll | |
| 185 | +#define _taccess _waccess | |
| 186 | +#define _tchmod _wchmod | |
| 187 | +#define _tcreat _wcreat | |
| 188 | +#define _tfindfirst _wfindfirst | |
| 189 | +#define _tfindnext _wfindnext | |
| 190 | +#define _tfopen _wfopen | |
| 191 | +#define _tgetenv _wgetenv | |
| 192 | +#define _tmktemp _wmktemp | |
| 193 | +#define _topen _wopen | |
| 194 | +#define _tremove _wremove | |
| 195 | +#define _trename _wrename | |
| 196 | +#define _tsopen _wsopen | |
| 197 | +#define _tsetlocale _wsetlocale | |
| 198 | +#define _tunlink _wunlink | |
| 199 | +#define _tfinddata_t _wfinddata_t | |
| 200 | +#define _tfindfirsti64 _wfindfirsti64 | |
| 201 | +#define _tfindnexti64 _wfindnexti64 | |
| 202 | +#define _tfinddatai64_t _wfinddatai64_t | |
| 203 | +#endif /* __MSVCRT__ */ | |
| 204 | + | |
| 205 | +#else /* Not _UNICODE */ | |
| 206 | + | |
| 207 | +/* | |
| 208 | + * TCHAR, the type you should use instead of char. | |
| 209 | + */ | |
| 210 | +#ifndef _TCHAR_DEFINED | |
| 211 | +#ifndef RC_INVOKED | |
| 212 | +typedef char TCHAR; | |
| 213 | +typedef char _TCHAR; | |
| 214 | +#endif | |
| 215 | +#define _TCHAR_DEFINED | |
| 216 | +#endif | |
| 217 | + | |
| 218 | +/* | |
| 219 | + * __TEXT is a private macro whose specific use is to force the expansion of a | |
| 220 | + * macro passed as an argument to the macros _T or _TEXT. DO NOT use this | |
| 221 | + * macro within your programs. It's name and function could change without | |
| 222 | + * notice. | |
| 223 | + */ | |
| 224 | +#define __TEXT(x) x | |
| 225 | + | |
| 226 | +/* for porting from other Windows compilers */ | |
| 227 | +#define _tmain main | |
| 228 | +#define _tWinMain WinMain | |
| 229 | +#define _tenviron _environ | |
| 230 | +#define __targv __argv | |
| 231 | + | |
| 232 | +/* | |
| 233 | + * Non-unicode (standard) functions | |
| 234 | + */ | |
| 235 | + | |
| 236 | +#define _tprintf printf | |
| 237 | +#define _ftprintf fprintf | |
| 238 | +#define _stprintf sprintf | |
| 239 | +#define _sntprintf _snprintf | |
| 240 | +#define _vtprintf vprintf | |
| 241 | +#define _vftprintf vfprintf | |
| 242 | +#define _vstprintf vsprintf | |
| 243 | +#define _vsntprintf _vsnprintf | |
| 244 | +#define _tscanf scanf | |
| 245 | +#define _ftscanf fscanf | |
| 246 | +#define _stscanf sscanf | |
| 247 | +#define _fgettc fgetc | |
| 248 | +#define _fgettchar _fgetchar | |
| 249 | +#define _fgetts fgets | |
| 250 | +#define _fputtc fputc | |
| 251 | +#define _fputtchar _fputchar | |
| 252 | +#define _fputts fputs | |
| 253 | +#define _tfopen fopen | |
| 254 | +#define _tgetenv getenv | |
| 255 | +#define _gettc getc | |
| 256 | +#define _getts gets | |
| 257 | +#define _puttc putc | |
| 258 | +#define _putts puts | |
| 259 | +#define _ungettc ungetc | |
| 260 | +#define _tcstod strtod | |
| 261 | +#define _tcstol strtol | |
| 262 | +#define _tcstoul strtoul | |
| 263 | +#define _itot _itoa | |
| 264 | +#define _ltot _ltoa | |
| 265 | +#define _ultot _ultoa | |
| 266 | +#define _ttoi atoi | |
| 267 | +#define _ttol atol | |
| 268 | +#define _tcscat strcat | |
| 269 | +#define _tcschr strchr | |
| 270 | +#define _tcscmp strcmp | |
| 271 | +#define _tcscpy strcpy | |
| 272 | +#define _tcscspn strcspn | |
| 273 | +#define _tcslen strlen | |
| 274 | +#define _tcsncat strncat | |
| 275 | +#define _tcsncmp strncmp | |
| 276 | +#define _tcsncpy strncpy | |
| 277 | +#define _tcspbrk strpbrk | |
| 278 | +#define _tcsrchr strrchr | |
| 279 | +#define _tcsspn strspn | |
| 280 | +#define _tcsstr strstr | |
| 281 | +#define _tcstok strtok | |
| 282 | +#define _tcsdup _strdup | |
| 283 | +#define _tcsicmp _stricmp | |
| 284 | +#define _tcsnicmp _strnicmp | |
| 285 | +#define _tcsnset _strnset | |
| 286 | +#define _tcsrev _strrev | |
| 287 | +#define _tcsset _strset | |
| 288 | +#define _tcslwr _strlwr | |
| 289 | +#define _tcsupr _strupr | |
| 290 | +#define _tcsxfrm strxfrm | |
| 291 | +#define _tcscoll strcoll | |
| 292 | +#define _tcsicoll _stricoll | |
| 293 | +#define _istalpha isalpha | |
| 294 | +#define _istupper isupper | |
| 295 | +#define _istlower islower | |
| 296 | +#define _istdigit isdigit | |
| 297 | +#define _istxdigit isxdigit | |
| 298 | +#define _istspace isspace | |
| 299 | +#define _istpunct ispunct | |
| 300 | +#define _istalnum isalnum | |
| 301 | +#define _istprint isprint | |
| 302 | +#define _istgraph isgraph | |
| 303 | +#define _istcntrl iscntrl | |
| 304 | +#define _istascii isascii | |
| 305 | +#define _totupper toupper | |
| 306 | +#define _totlower tolower | |
| 307 | +#define _tasctime asctime | |
| 308 | +#define _tctime ctime | |
| 309 | +#define _tstrdate _strdate | |
| 310 | +#define _tstrtime _strtime | |
| 311 | +#define _tutime _utime | |
| 312 | +#define _tcsftime strftime | |
| 313 | +/* Macro functions */ | |
| 314 | +#define _tcsdec _strdec | |
| 315 | +#define _tcsinc _strinc | |
| 316 | +#define _tcsnbcnt _strncnt | |
| 317 | +#define _tcsnccnt _strncnt | |
| 318 | +#define _tcsnextc _strnextc | |
| 319 | +#define _tcsninc _strninc | |
| 320 | +#define _tcsspnp _strspnp | |
| 321 | +#define _strdec(_str1, _str2) ((_str1)>=(_str2) ? NULL : (_str2)-1) | |
| 322 | +#define _strinc(_str) ((_str)+1) | |
| 323 | +#define _strnextc(_str) ((unsigned int) *(_str)) | |
| 324 | +#define _strninc(_str, _inc) (((_str)+(_inc))) | |
| 325 | +#define _strncnt(_str, _cnt) ((strlen(_str)>_cnt) ? _count : strlen(_str)) | |
| 326 | +#define _strspnp(_str1, _str2) ((*((_str1)+strspn(_str1,_str2))) ? ((_str1)+strspn(_str1,_str2)) : NULL) | |
| 327 | + | |
| 328 | +#define _tchmod _chmod | |
| 329 | +#define _tcreat _creat | |
| 330 | +#define _tfindfirst _findfirst | |
| 331 | +#define _tfindnext _findnext | |
| 332 | +#define _tmktemp _mktemp | |
| 333 | +#define _topen _open | |
| 334 | +#define _taccess _access | |
| 335 | +#define _tremove remove | |
| 336 | +#define _trename rename | |
| 337 | +#define _tsopen _sopen | |
| 338 | +#define _tsetlocale setlocale | |
| 339 | +#define _tunlink _unlink | |
| 340 | +#define _tfinddata_t _finddata_t | |
| 341 | + | |
| 342 | + | |
| 343 | +#if 1 // defined __MSVCRT__ | |
| 344 | +/* Not in crtdll.dll. Define macros anyway? */ | |
| 345 | +#define _ttoi64 _atoi64 | |
| 346 | +#define _i64tot _i64toa | |
| 347 | +#define _ui64tot _ui64toa | |
| 348 | +#define _tcsnccoll _strncoll | |
| 349 | +#define _tcsncoll _strncoll | |
| 350 | +#define _tcsncicoll _strnicoll | |
| 351 | +#define _tcsnicoll _strnicoll | |
| 352 | +#define _tfindfirsti64 _findfirsti64 | |
| 353 | +#define _tfindnexti64 _findnexti64 | |
| 354 | +#define _tfinddatai64_t _finddatai64_t | |
| 355 | +#endif /* __MSVCRT__ */ | |
| 356 | + | |
| 357 | +#endif /* Not _UNICODE */ | |
| 358 | + | |
| 359 | +/* | |
| 360 | + * UNICODE a constant string when _UNICODE is defined else returns the string | |
| 361 | + * unmodified. Also defined in w32api/winnt.h. | |
| 362 | + */ | |
| 363 | +#define _TEXT(x) __TEXT(x) | |
| 364 | +#define _T(x) __TEXT(x) | |
| 365 | + | |
| 366 | +#endif /* Not _TCHAR_H_ */ | |
| 367 | + | |
| @@ -0,0 +1,219 @@ | ||
| 1 | +/* | |
| 2 | + * time.h | |
| 3 | + * | |
| 4 | + * Date and time functions and types. | |
| 5 | + * | |
| 6 | + * This file is part of the Mingw32 package. | |
| 7 | + * | |
| 8 | + * Contributors: | |
| 9 | + * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp> | |
| 10 | + * | |
| 11 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 12 | + * | |
| 13 | + * This source code is offered for use in the public domain. You may | |
| 14 | + * use, modify or distribute it freely. | |
| 15 | + * | |
| 16 | + * This code is distributed in the hope that it will be useful but | |
| 17 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 18 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 19 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 20 | + * | |
| 21 | + * $Revision: 1.1 $ | |
| 22 | + * $Author: bellard $ | |
| 23 | + * $Date: 2005/04/14 23:49:21 $ | |
| 24 | + * | |
| 25 | + */ | |
| 26 | + | |
| 27 | +#ifndef _TIME_H_ | |
| 28 | +#define _TIME_H_ | |
| 29 | + | |
| 30 | +/* All the headers include this file. */ | |
| 31 | +#include <_mingw.h> | |
| 32 | + | |
| 33 | +#define __need_wchar_t | |
| 34 | +#define __need_size_t | |
| 35 | +#ifndef RC_INVOKED | |
| 36 | +#include <stddef.h> | |
| 37 | +#endif /* Not RC_INVOKED */ | |
| 38 | + | |
| 39 | +/* | |
| 40 | + * Need a definition of time_t. | |
| 41 | + */ | |
| 42 | +#include <sys/types.h> | |
| 43 | + | |
| 44 | +/* | |
| 45 | + * Number of clock ticks per second. A clock tick is the unit by which | |
| 46 | + * processor time is measured and is returned by 'clock'. | |
| 47 | + */ | |
| 48 | +#define CLOCKS_PER_SEC ((clock_t)1000) | |
| 49 | +#define CLK_TCK CLOCKS_PER_SEC | |
| 50 | + | |
| 51 | + | |
| 52 | +#ifndef RC_INVOKED | |
| 53 | + | |
| 54 | +/* | |
| 55 | + * A type for storing the current time and date. This is the number of | |
| 56 | + * seconds since midnight Jan 1, 1970. | |
| 57 | + * NOTE: Normally this is defined by the above include of sys/types.h | |
| 58 | + */ | |
| 59 | +#ifndef _TIME_T_DEFINED | |
| 60 | +typedef long time_t; | |
| 61 | +#define _TIME_T_DEFINED | |
| 62 | +#endif | |
| 63 | + | |
| 64 | +/* | |
| 65 | + * A type for measuring processor time (in clock ticks). | |
| 66 | + */ | |
| 67 | +#ifndef _CLOCK_T_DEFINED | |
| 68 | +typedef long clock_t; | |
| 69 | +#define _CLOCK_T_DEFINED | |
| 70 | +#endif | |
| 71 | + | |
| 72 | + | |
| 73 | +/* | |
| 74 | + * A structure for storing all kinds of useful information about the | |
| 75 | + * current (or another) time. | |
| 76 | + */ | |
| 77 | +struct tm | |
| 78 | +{ | |
| 79 | + int tm_sec; /* Seconds: 0-59 (K&R says 0-61?) */ | |
| 80 | + int tm_min; /* Minutes: 0-59 */ | |
| 81 | + int tm_hour; /* Hours since midnight: 0-23 */ | |
| 82 | + int tm_mday; /* Day of the month: 1-31 */ | |
| 83 | + int tm_mon; /* Months *since* january: 0-11 */ | |
| 84 | + int tm_year; /* Years since 1900 */ | |
| 85 | + int tm_wday; /* Days since Sunday (0-6) */ | |
| 86 | + int tm_yday; /* Days since Jan. 1: 0-365 */ | |
| 87 | + int tm_isdst; /* +1 Daylight Savings Time, 0 No DST, | |
| 88 | + * -1 don't know */ | |
| 89 | +}; | |
| 90 | + | |
| 91 | +#ifdef __cplusplus | |
| 92 | +extern "C" { | |
| 93 | +#endif | |
| 94 | + | |
| 95 | +clock_t clock (void); | |
| 96 | +time_t time (time_t*); | |
| 97 | +double difftime (time_t, time_t); | |
| 98 | +time_t mktime (struct tm*); | |
| 99 | + | |
| 100 | +/* | |
| 101 | + * These functions write to and return pointers to static buffers that may | |
| 102 | + * be overwritten by other function calls. Yikes! | |
| 103 | + * | |
| 104 | + * NOTE: localtime, and perhaps the others of the four functions grouped | |
| 105 | + * below may return NULL if their argument is not 'acceptable'. Also note | |
| 106 | + * that calling asctime with a NULL pointer will produce an Invalid Page | |
| 107 | + * Fault and crap out your program. Guess how I know. Hint: stat called on | |
| 108 | + * a directory gives 'invalid' times in st_atime etc... | |
| 109 | + */ | |
| 110 | +char* asctime (const struct tm*); | |
| 111 | +char* ctime (const time_t*); | |
| 112 | +struct tm* gmtime (const time_t*); | |
| 113 | +struct tm* localtime (const time_t*); | |
| 114 | + | |
| 115 | + | |
| 116 | +size_t strftime (char*, size_t, const char*, const struct tm*); | |
| 117 | + | |
| 118 | +size_t wcsftime (wchar_t*, size_t, const wchar_t*, const struct tm*); | |
| 119 | + | |
| 120 | +#ifndef __STRICT_ANSI__ | |
| 121 | +extern void _tzset (void); | |
| 122 | + | |
| 123 | +#ifndef _NO_OLDNAMES | |
| 124 | +extern void tzset (void); | |
| 125 | +#endif | |
| 126 | + | |
| 127 | +size_t strftime(char*, size_t, const char*, const struct tm*); | |
| 128 | +char* _strdate(char*); | |
| 129 | +char* _strtime(char*); | |
| 130 | + | |
| 131 | +#endif /* Not __STRICT_ANSI__ */ | |
| 132 | + | |
| 133 | +/* | |
| 134 | + * _daylight: non zero if daylight savings time is used. | |
| 135 | + * _timezone: difference in seconds between GMT and local time. | |
| 136 | + * _tzname: standard/daylight savings time zone names (an array with two | |
| 137 | + * elements). | |
| 138 | + */ | |
| 139 | +#ifdef __MSVCRT__ | |
| 140 | + | |
| 141 | +/* These are for compatibility with pre-VC 5.0 suppied MSVCRT. */ | |
| 142 | +extern int* __p__daylight (void); | |
| 143 | +extern long* __p__timezone (void); | |
| 144 | +extern char** __p__tzname (void); | |
| 145 | + | |
| 146 | +__MINGW_IMPORT int _daylight; | |
| 147 | +__MINGW_IMPORT long _timezone; | |
| 148 | +__MINGW_IMPORT char *_tzname[2]; | |
| 149 | + | |
| 150 | +#else /* not __MSVCRT (ie. crtdll) */ | |
| 151 | + | |
| 152 | +#ifndef __DECLSPEC_SUPPORTED | |
| 153 | + | |
| 154 | +extern int* __imp__daylight_dll; | |
| 155 | +extern long* __imp__timezone_dll; | |
| 156 | +extern char** __imp__tzname; | |
| 157 | + | |
| 158 | +#define _daylight (*__imp__daylight_dll) | |
| 159 | +#define _timezone (*__imp__timezone_dll) | |
| 160 | +#define _tzname (__imp__tzname) | |
| 161 | + | |
| 162 | +#else /* __DECLSPEC_SUPPORTED */ | |
| 163 | + | |
| 164 | +__MINGW_IMPORT int _daylight_dll; | |
| 165 | +__MINGW_IMPORT long _timezone_dll; | |
| 166 | +__MINGW_IMPORT char* _tzname[2]; | |
| 167 | + | |
| 168 | +#define _daylight _daylight_dll | |
| 169 | +#define _timezone _timezone_dll | |
| 170 | + | |
| 171 | +#endif /* __DECLSPEC_SUPPORTED */ | |
| 172 | + | |
| 173 | +#endif /* not __MSVCRT__ */ | |
| 174 | + | |
| 175 | +#ifndef _NO_OLDNAMES | |
| 176 | + | |
| 177 | +#ifdef __MSVCRT__ | |
| 178 | + | |
| 179 | +/* These go in the oldnames import library for MSVCRT. */ | |
| 180 | +__MINGW_IMPORT int daylight; | |
| 181 | +__MINGW_IMPORT long timezone; | |
| 182 | +__MINGW_IMPORT char *tzname[2]; | |
| 183 | + | |
| 184 | +#ifndef _WTIME_DEFINED | |
| 185 | + | |
| 186 | +/* wide function prototypes, also declared in wchar.h */ | |
| 187 | + | |
| 188 | +wchar_t * _wasctime(const struct tm*); | |
| 189 | +wchar_t * _wctime(const time_t*); | |
| 190 | +wchar_t* _wstrdate(wchar_t*); | |
| 191 | +wchar_t* _wstrtime(wchar_t*); | |
| 192 | + | |
| 193 | +#define _WTIME_DEFINED | |
| 194 | +#endif /* _WTIME_DEFINED */ | |
| 195 | + | |
| 196 | + | |
| 197 | +#else /* not __MSVCRT__ */ | |
| 198 | + | |
| 199 | +/* CRTDLL is royally messed up when it comes to these macros. | |
| 200 | + TODO: import and alias these via oldnames import library instead | |
| 201 | + of macros. */ | |
| 202 | + | |
| 203 | +#define daylight _daylight | |
| 204 | +/* NOTE: timezone not defined because it would conflict with sys/timeb.h. | |
| 205 | + Also, tzname used to a be macro, but now it's in moldname. */ | |
| 206 | +__MINGW_IMPORT char *tzname[2]; | |
| 207 | + | |
| 208 | +#endif /* not __MSVCRT__ */ | |
| 209 | + | |
| 210 | +#endif /* Not _NO_OLDNAMES */ | |
| 211 | + | |
| 212 | +#ifdef __cplusplus | |
| 213 | +} | |
| 214 | +#endif | |
| 215 | + | |
| 216 | +#endif /* Not RC_INVOKED */ | |
| 217 | + | |
| 218 | +#endif /* Not _TIME_H_ */ | |
| 219 | + | |
| @@ -0,0 +1,10 @@ | ||
| 1 | +/* | |
| 2 | + * This file is part of the Mingw32 package. | |
| 3 | + * | |
| 4 | + * unistd.h maps (roughly) to io.h | |
| 5 | + */ | |
| 6 | + | |
| 7 | +#ifndef __STRICT_ANSI__ | |
| 8 | +#include <io.h> | |
| 9 | +#endif | |
| 10 | + | |
| @@ -0,0 +1,4 @@ | ||
| 1 | +/* | |
| 2 | + * TODO: Nothing here yet. Should provide UNIX compatibility constants | |
| 3 | + * comparible to those in limits.h and float.h. | |
| 4 | + */ | |
| @@ -0,0 +1,11 @@ | ||
| 1 | +#ifndef _VARARGS_H | |
| 2 | +#define _VARARGS_H | |
| 3 | + | |
| 4 | +#include <stdarg.h> | |
| 5 | + | |
| 6 | +#define va_dcl | |
| 7 | +#define va_alist __va_alist | |
| 8 | +#undef va_start | |
| 9 | +#define va_start(ap) ap = __builtin_varargs_start | |
| 10 | + | |
| 11 | +#endif | |
| @@ -0,0 +1,318 @@ | ||
| 1 | +/* | |
| 2 | + * wchar.h | |
| 3 | + * | |
| 4 | + * Defines of all functions for supporting wide characters. Actually it | |
| 5 | + * just includes all those headers, which is not a good thing to do from a | |
| 6 | + * processing time point of view, but it does mean that everything will be | |
| 7 | + * in sync. | |
| 8 | + * | |
| 9 | + * This file is part of the Mingw32 package. | |
| 10 | + * | |
| 11 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 12 | + * | |
| 13 | + * This source code is offered for use in the public domain. You may | |
| 14 | + * use, modify or distribute it freely. | |
| 15 | + * | |
| 16 | + * This code is distributed in the hope that it will be useful but | |
| 17 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 18 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 19 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 20 | + * | |
| 21 | + * $Revision: 1.1 $ | |
| 22 | + * $Author: bellard $ | |
| 23 | + * $Date: 2005/04/14 23:49:21 $ | |
| 24 | + * | |
| 25 | + */ | |
| 26 | + | |
| 27 | +#ifndef _WCHAR_H_ | |
| 28 | +#define _WCHAR_H_ | |
| 29 | + | |
| 30 | +/* All the headers include this file. */ | |
| 31 | +#include <_mingw.h> | |
| 32 | + | |
| 33 | +#include <ctype.h> | |
| 34 | +#include <stdio.h> | |
| 35 | +#include <stdlib.h> | |
| 36 | +#include <string.h> | |
| 37 | +#include <time.h> | |
| 38 | +#include <sys/types.h> | |
| 39 | + | |
| 40 | +#define __need_size_t | |
| 41 | +#define __need_wint_t | |
| 42 | +#define __need_wchar_t | |
| 43 | +#ifndef RC_INVOKED | |
| 44 | +#include <stddef.h> | |
| 45 | +#endif /* Not RC_INVOKED */ | |
| 46 | + | |
| 47 | +#define WCHAR_MIN 0 | |
| 48 | +#define WCHAR_MAX ((wchar_t)-1) | |
| 49 | + | |
| 50 | +#ifndef RC_INVOKED | |
| 51 | + | |
| 52 | +#ifdef __cplusplus | |
| 53 | +extern "C" { | |
| 54 | +#endif | |
| 55 | + | |
| 56 | +#ifndef __STRICT_ANSI__ | |
| 57 | + | |
| 58 | +#ifndef _FSIZE_T_DEFINED | |
| 59 | +typedef unsigned long _fsize_t; | |
| 60 | +#define _FSIZE_T_DEFINED | |
| 61 | +#endif | |
| 62 | + | |
| 63 | +#ifndef _WFINDDATA_T_DEFINED | |
| 64 | +struct _wfinddata_t { | |
| 65 | + unsigned attrib; | |
| 66 | + time_t time_create; /* -1 for FAT file systems */ | |
| 67 | + time_t time_access; /* -1 for FAT file systems */ | |
| 68 | + time_t time_write; | |
| 69 | + _fsize_t size; | |
| 70 | + wchar_t name[FILENAME_MAX]; /* may include spaces. */ | |
| 71 | +}; | |
| 72 | +struct _wfinddatai64_t { | |
| 73 | + unsigned attrib; | |
| 74 | + time_t time_create; | |
| 75 | + time_t time_access; | |
| 76 | + time_t time_write; | |
| 77 | + __int64 size; | |
| 78 | + wchar_t name[FILENAME_MAX]; | |
| 79 | +}; | |
| 80 | +#define _WFINDDATA_T_DEFINED | |
| 81 | +#endif | |
| 82 | + | |
| 83 | +/* Wide character versions. Also defined in io.h. */ | |
| 84 | +/* CHECK: I believe these only exist in MSVCRT, and not in CRTDLL. Also | |
| 85 | + applies to other wide character versions? */ | |
| 86 | +#if !defined (_WIO_DEFINED) | |
| 87 | +#if defined (__MSVCRT__) | |
| 88 | +int _waccess (const wchar_t*, int); | |
| 89 | +int _wchmod (const wchar_t*, int); | |
| 90 | +int _wcreat (const wchar_t*, int); | |
| 91 | +long _wfindfirst (wchar_t*, struct _wfinddata_t *); | |
| 92 | +int _wfindnext (long, struct _wfinddata_t *); | |
| 93 | +int _wunlink (const wchar_t*); | |
| 94 | +int _wopen (const wchar_t*, int, ...); | |
| 95 | +int _wsopen (const wchar_t*, int, int, ...); | |
| 96 | +wchar_t* _wmktemp (wchar_t*); | |
| 97 | +long _wfindfirsti64 (const wchar_t*, struct _wfinddatai64_t*); | |
| 98 | +int _wfindnexti64 (long, struct _wfinddatai64_t*); | |
| 99 | +#endif /* defined (__MSVCRT__) */ | |
| 100 | +#define _WIO_DEFINED | |
| 101 | +#endif /* _WIO_DEFINED */ | |
| 102 | + | |
| 103 | +#ifndef _WSTDIO_DEFINED | |
| 104 | +/* also in stdio.h - keep in sync */ | |
| 105 | +int fwprintf (FILE*, const wchar_t*, ...); | |
| 106 | +int wprintf (const wchar_t*, ...); | |
| 107 | +int swprintf (wchar_t*, const wchar_t*, ...); | |
| 108 | +int _snwprintf (wchar_t*, size_t, const wchar_t*, ...); | |
| 109 | +int vfwprintf (FILE*, const wchar_t*, va_list); | |
| 110 | +int vwprintf (const wchar_t*, va_list); | |
| 111 | +int vswprintf (wchar_t*, const wchar_t*, va_list); | |
| 112 | +int _vsnwprintf (wchar_t*, size_t, const wchar_t*, va_list); | |
| 113 | +int fwscanf (FILE*, const wchar_t*, ...); | |
| 114 | +int wscanf (const wchar_t*, ...); | |
| 115 | +int swscanf (const wchar_t*, const wchar_t*, ...); | |
| 116 | +wint_t fgetwc (FILE*); | |
| 117 | +wint_t fputwc (wchar_t, FILE*); | |
| 118 | +wint_t ungetwc (wchar_t, FILE*); | |
| 119 | + | |
| 120 | +#ifndef __NO_ISOCEXT /* externs in libmingwex.a */ | |
| 121 | +int snwprintf(wchar_t* s, size_t n, const wchar_t* format, ...); | |
| 122 | +extern inline int vsnwprintf (wchar_t* s, size_t n, const wchar_t* format, | |
| 123 | + va_list arg) | |
| 124 | + { return _vsnwprintf ( s, n, format, arg); } | |
| 125 | +#endif | |
| 126 | + | |
| 127 | +#ifdef __MSVCRT__ | |
| 128 | +wchar_t* fgetws (wchar_t*, int, FILE*); | |
| 129 | +int fputws (const wchar_t*, FILE*); | |
| 130 | +wint_t getwc (FILE*); | |
| 131 | +wint_t getwchar (void); | |
| 132 | +wchar_t* _getws (wchar_t*); | |
| 133 | +wint_t putwc (wint_t, FILE*); | |
| 134 | +int _putws (const wchar_t*); | |
| 135 | +wint_t putwchar (wint_t); | |
| 136 | + | |
| 137 | +FILE* _wfopen (const wchar_t*, const wchar_t*); | |
| 138 | +FILE* _wfreopen (const wchar_t*, const wchar_t*, FILE*); | |
| 139 | +FILE* _wfsopen (const wchar_t*, const wchar_t*, int); | |
| 140 | +wchar_t* _wtmpnam (wchar_t*); | |
| 141 | +wchar_t* _wtempnam (const wchar_t*, const wchar_t*); | |
| 142 | +int _wrename (const wchar_t*, const wchar_t*); | |
| 143 | +int _wremove (const wchar_t*) | |
| 144 | + | |
| 145 | +FILE* _wpopen (const wchar_t*, const wchar_t*) | |
| 146 | +void _wperror (const wchar_t*); | |
| 147 | +#endif /* __MSVCRT__ */ | |
| 148 | +#define _WSTDIO_DEFINED | |
| 149 | +#endif /* _WSTDIO_DEFINED */ | |
| 150 | + | |
| 151 | +#ifndef _WDIRECT_DEFINED | |
| 152 | +/* Also in direct.h */ | |
| 153 | +#ifdef __MSVCRT__ | |
| 154 | +int _wchdir (const wchar_t*); | |
| 155 | +wchar_t* _wgetcwd (wchar_t*, int); | |
| 156 | +wchar_t* _wgetdcwd (int, wchar_t*, int); | |
| 157 | +int _wmkdir (const wchar_t*); | |
| 158 | +int _wrmdir (const wchar_t*); | |
| 159 | +#endif /* __MSVCRT__ */ | |
| 160 | +#define _WDIRECT_DEFINED | |
| 161 | +#endif /* _WDIRECT_DEFINED */ | |
| 162 | + | |
| 163 | +#ifndef _STAT_DEFINED | |
| 164 | +/* | |
| 165 | + * The structure manipulated and returned by stat and fstat. | |
| 166 | + * | |
| 167 | + * NOTE: If called on a directory the values in the time fields are not only | |
| 168 | + * invalid, they will cause localtime et. al. to return NULL. And calling | |
| 169 | + * asctime with a NULL pointer causes an Invalid Page Fault. So watch it! | |
| 170 | + */ | |
| 171 | +struct _stat | |
| 172 | +{ | |
| 173 | + _dev_t st_dev; /* Equivalent to drive number 0=A 1=B ... */ | |
| 174 | + _ino_t st_ino; /* Always zero ? */ | |
| 175 | + _mode_t st_mode; /* See above constants */ | |
| 176 | + short st_nlink; /* Number of links. */ | |
| 177 | + short st_uid; /* User: Maybe significant on NT ? */ | |
| 178 | + short st_gid; /* Group: Ditto */ | |
| 179 | + _dev_t st_rdev; /* Seems useless (not even filled in) */ | |
| 180 | + _off_t st_size; /* File size in bytes */ | |
| 181 | + time_t st_atime; /* Accessed date (always 00:00 hrs local | |
| 182 | + * on FAT) */ | |
| 183 | + time_t st_mtime; /* Modified time */ | |
| 184 | + time_t st_ctime; /* Creation time */ | |
| 185 | +}; | |
| 186 | + | |
| 187 | +struct stat | |
| 188 | +{ | |
| 189 | + _dev_t st_dev; /* Equivalent to drive number 0=A 1=B ... */ | |
| 190 | + _ino_t st_ino; /* Always zero ? */ | |
| 191 | + _mode_t st_mode; /* See above constants */ | |
| 192 | + short st_nlink; /* Number of links. */ | |
| 193 | + short st_uid; /* User: Maybe significant on NT ? */ | |
| 194 | + short st_gid; /* Group: Ditto */ | |
| 195 | + _dev_t st_rdev; /* Seems useless (not even filled in) */ | |
| 196 | + _off_t st_size; /* File size in bytes */ | |
| 197 | + time_t st_atime; /* Accessed date (always 00:00 hrs local | |
| 198 | + * on FAT) */ | |
| 199 | + time_t st_mtime; /* Modified time */ | |
| 200 | + time_t st_ctime; /* Creation time */ | |
| 201 | +}; | |
| 202 | +#if defined (__MSVCRT__) | |
| 203 | +struct _stati64 { | |
| 204 | + _dev_t st_dev; | |
| 205 | + _ino_t st_ino; | |
| 206 | + unsigned short st_mode; | |
| 207 | + short st_nlink; | |
| 208 | + short st_uid; | |
| 209 | + short st_gid; | |
| 210 | + _dev_t st_rdev; | |
| 211 | + __int64 st_size; | |
| 212 | + time_t st_atime; | |
| 213 | + time_t st_mtime; | |
| 214 | + time_t st_ctime; | |
| 215 | + }; | |
| 216 | +#endif /* __MSVCRT__ */ | |
| 217 | +#define _STAT_DEFINED | |
| 218 | +#endif /* _STAT_DEFINED */ | |
| 219 | + | |
| 220 | +#if !defined ( _WSTAT_DEFINED) | |
| 221 | +/* also declared in sys/stat.h */ | |
| 222 | +#if defined __MSVCRT__ | |
| 223 | +int _wstat (const wchar_t*, struct _stat*); | |
| 224 | +int _wstati64 (const wchar_t*, struct _stati64*); | |
| 225 | +#endif /* __MSVCRT__ */ | |
| 226 | +#define _WSTAT_DEFINED | |
| 227 | +#endif /* ! _WSTAT_DEFIND */ | |
| 228 | + | |
| 229 | +#ifndef _WTIME_DEFINED | |
| 230 | +#ifdef __MSVCRT__ | |
| 231 | +/* wide function prototypes, also declared in time.h */ | |
| 232 | +wchar_t* _wasctime (const struct tm*); | |
| 233 | +wchar_t* _wctime (const time_t*); | |
| 234 | +wchar_t* _wstrdate (wchar_t*); | |
| 235 | +wchar_t* _wstrtime (wchar_t*); | |
| 236 | +#endif /* __MSVCRT__ */ | |
| 237 | +size_t wcsftime (wchar_t*, size_t, const wchar_t*, const struct tm*); | |
| 238 | +#define _WTIME_DEFINED | |
| 239 | +#endif /* _WTIME_DEFINED */ | |
| 240 | + | |
| 241 | +#ifndef _WLOCALE_DEFINED /* also declared in locale.h */ | |
| 242 | +wchar_t* _wsetlocale (int, const wchar_t*); | |
| 243 | +#define _WLOCALE_DEFINED | |
| 244 | +#endif | |
| 245 | + | |
| 246 | +#ifndef _WSTDLIB_DEFINED /* also declared in stdlib.h */ | |
| 247 | +long wcstol (const wchar_t*, wchar_t**, int); | |
| 248 | +unsigned long wcstoul (const wchar_t*, wchar_t**, int); | |
| 249 | +double wcstod (const wchar_t*, wchar_t**); | |
| 250 | +#if !defined __NO_ISOCEXT /* extern stub in static libmingwex.a */ | |
| 251 | +extern __inline__ float wcstof( const wchar_t *nptr, wchar_t **endptr) | |
| 252 | +{ return (wcstod(nptr, endptr)); } | |
| 253 | +#endif /* __NO_ISOCEXT */ | |
| 254 | +#define _WSTDLIB_DEFINED | |
| 255 | +#endif | |
| 256 | + | |
| 257 | + | |
| 258 | +#ifndef _NO_OLDNAMES | |
| 259 | + | |
| 260 | +/* Wide character versions. Also declared in io.h. */ | |
| 261 | +/* CHECK: Are these in the oldnames??? NO! */ | |
| 262 | +#if (0) | |
| 263 | +int waccess (const wchar_t *, int); | |
| 264 | +int wchmod (const wchar_t *, int); | |
| 265 | +int wcreat (const wchar_t *, int); | |
| 266 | +long wfindfirst (wchar_t *, struct _wfinddata_t *); | |
| 267 | +int wfindnext (long, struct _wfinddata_t *); | |
| 268 | +int wunlink (const wchar_t *); | |
| 269 | +int wrename (const wchar_t *, const wchar_t *); | |
| 270 | +int wremove (const wchar_t *); | |
| 271 | +int wopen (const wchar_t *, int, ...); | |
| 272 | +int wsopen (const wchar_t *, int, int, ...); | |
| 273 | +wchar_t* wmktemp (wchar_t *); | |
| 274 | +#endif | |
| 275 | +#endif /* _NO_OLDNAMES */ | |
| 276 | + | |
| 277 | +#endif /* not __STRICT_ANSI__ */ | |
| 278 | + | |
| 279 | +/* These are resolved by -lmsvcp60 */ | |
| 280 | +/* If you don't have msvcp60.dll in your windows system directory, you can | |
| 281 | + easily obtain it with a search from your favorite search engine. */ | |
| 282 | +typedef int mbstate_t; | |
| 283 | +typedef wchar_t _Wint_t; | |
| 284 | + | |
| 285 | +wint_t btowc(int); | |
| 286 | +size_t mbrlen(const char *, size_t, mbstate_t *); | |
| 287 | +size_t mbrtowc(wchar_t *, const char *, size_t, mbstate_t *); | |
| 288 | +size_t mbsrtowcs(wchar_t *, const char **, size_t, mbstate_t *); | |
| 289 | + | |
| 290 | +size_t wcrtomb(char *, wchar_t, mbstate_t *); | |
| 291 | +size_t wcsrtombs(char *, const wchar_t **, size_t, mbstate_t *); | |
| 292 | +int wctob(wint_t); | |
| 293 | + | |
| 294 | +#ifndef __NO_ISOCEXT /* these need static lib libmingwex.a */ | |
| 295 | +extern inline int fwide(FILE* stream, int mode) {return -1;} /* limited to byte orientation */ | |
| 296 | +extern inline int mbsinit(const mbstate_t* ps) {return 1;} | |
| 297 | +wchar_t* wmemset(wchar_t* s, wchar_t c, size_t n); | |
| 298 | +wchar_t* wmemchr(const wchar_t* s, wchar_t c, size_t n); | |
| 299 | +int wmemcmp(const wchar_t* s1, const wchar_t * s2, size_t n); | |
| 300 | +wchar_t* wmemcpy(wchar_t* __restrict__ s1, const wchar_t* __restrict__ s2, | |
| 301 | + size_t n); | |
| 302 | +wchar_t* wmemmove(wchar_t* s1, const wchar_t* s2, size_t n); | |
| 303 | +long long wcstoll(const wchar_t* __restrict__ nptr, | |
| 304 | + wchar_t** __restrict__ endptr, int base); | |
| 305 | +unsigned long long wcstoull(const wchar_t* __restrict__ nptr, | |
| 306 | + wchar_t ** __restrict__ endptr, int base); | |
| 307 | + | |
| 308 | +#endif /* __NO_ISOCEXT */ | |
| 309 | + | |
| 310 | + | |
| 311 | +#ifdef __cplusplus | |
| 312 | +} /* end of extern "C" */ | |
| 313 | +#endif | |
| 314 | + | |
| 315 | +#endif /* Not RC_INVOKED */ | |
| 316 | + | |
| 317 | +#endif /* not _WCHAR_H_ */ | |
| 318 | + | |
| @@ -0,0 +1,127 @@ | ||
| 1 | +/* | |
| 2 | + * wctype.h | |
| 3 | + * | |
| 4 | + * Functions for testing wide character types and converting characters. | |
| 5 | + * | |
| 6 | + * This file is part of the Mingw32 package. | |
| 7 | + * | |
| 8 | + * Contributors: | |
| 9 | + * Created by Mumit Khan <khan@xraylith.wisc.edu> | |
| 10 | + * | |
| 11 | + * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 12 | + * | |
| 13 | + * This source code is offered for use in the public domain. You may | |
| 14 | + * use, modify or distribute it freely. | |
| 15 | + * | |
| 16 | + * This code is distributed in the hope that it will be useful but | |
| 17 | + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 18 | + * DISCLAIMED. This includes but is not limited to warranties of | |
| 19 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 20 | + * | |
| 21 | + */ | |
| 22 | + | |
| 23 | +#ifndef _WCTYPE_H_ | |
| 24 | +#define _WCTYPE_H_ | |
| 25 | + | |
| 26 | +/* All the headers include this file. */ | |
| 27 | +#include <_mingw.h> | |
| 28 | + | |
| 29 | +#define __need_wchar_t | |
| 30 | +#define __need_wint_t | |
| 31 | +#ifndef RC_INVOKED | |
| 32 | +#include <stddef.h> | |
| 33 | +#endif /* Not RC_INVOKED */ | |
| 34 | + | |
| 35 | +/* | |
| 36 | + * The following flags are used to tell iswctype and _isctype what character | |
| 37 | + * types you are looking for. | |
| 38 | + */ | |
| 39 | +#define _UPPER 0x0001 | |
| 40 | +#define _LOWER 0x0002 | |
| 41 | +#define _DIGIT 0x0004 | |
| 42 | +#define _SPACE 0x0008 | |
| 43 | +#define _PUNCT 0x0010 | |
| 44 | +#define _CONTROL 0x0020 | |
| 45 | +#define _BLANK 0x0040 | |
| 46 | +#define _HEX 0x0080 | |
| 47 | +#define _LEADBYTE 0x8000 | |
| 48 | + | |
| 49 | +#define _ALPHA 0x0103 | |
| 50 | + | |
| 51 | +#ifndef RC_INVOKED | |
| 52 | + | |
| 53 | +#ifdef __cplusplus | |
| 54 | +extern "C" { | |
| 55 | +#endif | |
| 56 | + | |
| 57 | +#ifndef WEOF | |
| 58 | +#define WEOF (wchar_t)(0xFFFF) | |
| 59 | +#endif | |
| 60 | + | |
| 61 | +#ifndef _WCTYPE_T_DEFINED | |
| 62 | +typedef wchar_t wctype_t; | |
| 63 | +#define _WCTYPE_T_DEFINED | |
| 64 | +#endif | |
| 65 | + | |
| 66 | +/* Wide character equivalents - also in ctype.h */ | |
| 67 | +int iswalnum(wint_t); | |
| 68 | +int iswalpha(wint_t); | |
| 69 | +int iswascii(wint_t); | |
| 70 | +int iswcntrl(wint_t); | |
| 71 | +int iswctype(wint_t, wctype_t); | |
| 72 | +int is_wctype(wint_t, wctype_t); /* Obsolete! */ | |
| 73 | +int iswdigit(wint_t); | |
| 74 | +int iswgraph(wint_t); | |
| 75 | +int iswlower(wint_t); | |
| 76 | +int iswprint(wint_t); | |
| 77 | +int iswpunct(wint_t); | |
| 78 | +int iswspace(wint_t); | |
| 79 | +int iswupper(wint_t); | |
| 80 | +int iswxdigit(wint_t); | |
| 81 | + | |
| 82 | +wchar_t towlower(wchar_t); | |
| 83 | +wchar_t towupper(wchar_t); | |
| 84 | + | |
| 85 | +int isleadbyte (int); | |
| 86 | + | |
| 87 | +/* Also in ctype.h */ | |
| 88 | + | |
| 89 | +__MINGW_IMPORT unsigned short _ctype[]; | |
| 90 | +#ifdef __MSVCRT__ | |
| 91 | +__MINGW_IMPORT unsigned short* _pctype; | |
| 92 | +#else | |
| 93 | +__MINGW_IMPORT unsigned short* _pctype_dll; | |
| 94 | +#define _pctype _pctype_dll | |
| 95 | +#endif | |
| 96 | + | |
| 97 | +#if !(defined(__NO_CTYPE_INLINES) || defined(__WCTYPE_INLINES_DEFINED)) | |
| 98 | +#define __WCTYPE_INLINES_DEFINED | |
| 99 | +extern inline int iswalnum(wint_t wc) {return (iswctype(wc,_ALPHA|_DIGIT));} | |
| 100 | +extern inline int iswalpha(wint_t wc) {return (iswctype(wc,_ALPHA));} | |
| 101 | +extern inline int iswascii(wint_t wc) {return (((unsigned)wc & 0x7F) ==0);} | |
| 102 | +extern inline int iswcntrl(wint_t wc) {return (iswctype(wc,_CONTROL));} | |
| 103 | +extern inline int iswdigit(wint_t wc) {return (iswctype(wc,_DIGIT));} | |
| 104 | +extern inline int iswgraph(wint_t wc) {return (iswctype(wc,_PUNCT|_ALPHA|_DIGIT));} | |
| 105 | +extern inline int iswlower(wint_t wc) {return (iswctype(wc,_LOWER));} | |
| 106 | +extern inline int iswprint(wint_t wc) {return (iswctype(wc,_BLANK|_PUNCT|_ALPHA|_DIGIT));} | |
| 107 | +extern inline int iswpunct(wint_t wc) {return (iswctype(wc,_PUNCT));} | |
| 108 | +extern inline int iswspace(wint_t wc) {return (iswctype(wc,_SPACE));} | |
| 109 | +extern inline int iswupper(wint_t wc) {return (iswctype(wc,_UPPER));} | |
| 110 | +extern inline int iswxdigit(wint_t wc) {return (iswctype(wc,_HEX));} | |
| 111 | +extern inline int isleadbyte(int c) {return (_pctype[(unsigned char)(c)] & _LEADBYTE);} | |
| 112 | +#endif /* !(defined(__NO_CTYPE_INLINES) || defined(__WCTYPE_INLINES_DEFINED)) */ | |
| 113 | + | |
| 114 | + | |
| 115 | +typedef wchar_t wctrans_t; | |
| 116 | +wint_t towctrans(wint_t, wctrans_t); | |
| 117 | +wctrans_t wctrans(const char*); | |
| 118 | +wctype_t wctype(const char*); | |
| 119 | + | |
| 120 | +#ifdef __cplusplus | |
| 121 | +} | |
| 122 | +#endif | |
| 123 | + | |
| 124 | +#endif /* Not RC_INVOKED */ | |
| 125 | + | |
| 126 | +#endif /* Not _WCTYPE_H_ */ | |
| 127 | + | |
| @@ -0,0 +1,119 @@ | ||
| 1 | +#ifndef _BASETSD_H | |
| 2 | +#define _BASETSD_H | |
| 3 | +#if __GNUC__ >=3 | |
| 4 | +#pragma GCC system_header | |
| 5 | +#endif | |
| 6 | + | |
| 7 | +#ifdef __GNUC__ | |
| 8 | +#ifndef __int64 | |
| 9 | +#define __int64 long long | |
| 10 | +#endif | |
| 11 | +#endif | |
| 12 | + | |
| 13 | +#if defined(_WIN64) | |
| 14 | +#define __int3264 __int64 | |
| 15 | +#define ADDRESS_TAG_BIT 0x40000000000UI64 | |
| 16 | +#else /* !_WIN64 */ | |
| 17 | +#define __int3264 __int32 | |
| 18 | +#define ADDRESS_TAG_BIT 0x80000000UL | |
| 19 | +#define HandleToUlong( h ) ((ULONG)(ULONG_PTR)(h) ) | |
| 20 | +#define HandleToLong( h ) ((LONG)(LONG_PTR) (h) ) | |
| 21 | +#define LongToHandle( h) ((HANDLE)(LONG_PTR) (h)) | |
| 22 | +#define PtrToUlong( p ) ((ULONG)(ULONG_PTR) (p) ) | |
| 23 | +#define PtrToLong( p ) ((LONG)(LONG_PTR) (p) ) | |
| 24 | +#define PtrToUint( p ) ((UINT)(UINT_PTR) (p) ) | |
| 25 | +#define PtrToInt( p ) ((INT)(INT_PTR) (p) ) | |
| 26 | +#define PtrToUshort( p ) ((unsigned short)(ULONG_PTR)(p) ) | |
| 27 | +#define PtrToShort( p ) ((short)(LONG_PTR)(p) ) | |
| 28 | +#define IntToPtr( i ) ((VOID*)(INT_PTR)((int)i)) | |
| 29 | +#define UIntToPtr( ui ) ((VOID*)(UINT_PTR)((unsigned int)ui)) | |
| 30 | +#define LongToPtr( l ) ((VOID*)(LONG_PTR)((long)l)) | |
| 31 | +#define ULongToPtr( ul ) ((VOID*)(ULONG_PTR)((unsigned long)ul)) | |
| 32 | +#endif /* !_WIN64 */ | |
| 33 | + | |
| 34 | +#define UlongToPtr(ul) ULongToPtr(ul) | |
| 35 | +#define UintToPtr(ui) UIntToPtr(ui) | |
| 36 | +#define MAXUINT_PTR (~((UINT_PTR)0)) | |
| 37 | +#define MAXINT_PTR ((INT_PTR)(MAXUINT_PTR >> 1)) | |
| 38 | +#define MININT_PTR (~MAXINT_PTR) | |
| 39 | +#define MAXULONG_PTR (~((ULONG_PTR)0)) | |
| 40 | +#define MAXLONG_PTR ((LONG_PTR)(MAXULONG_PTR >> 1)) | |
| 41 | +#define MINLONG_PTR (~MAXLONG_PTR) | |
| 42 | +#define MAXUHALF_PTR ((UHALF_PTR)~0) | |
| 43 | +#define MAXHALF_PTR ((HALF_PTR)(MAXUHALF_PTR >> 1)) | |
| 44 | +#define MINHALF_PTR (~MAXHALF_PTR) | |
| 45 | + | |
| 46 | +#ifndef RC_INVOKED | |
| 47 | +#ifdef __cplusplus | |
| 48 | +extern "C" { | |
| 49 | +#endif | |
| 50 | +typedef int LONG32, *PLONG32; | |
| 51 | +#ifndef XFree86Server | |
| 52 | +typedef int INT32, *PINT32; | |
| 53 | +#endif /* ndef XFree86Server */ | |
| 54 | +typedef unsigned int ULONG32, *PULONG32; | |
| 55 | +typedef unsigned int DWORD32, *PDWORD32; | |
| 56 | +typedef unsigned int UINT32, *PUINT32; | |
| 57 | + | |
| 58 | +#if defined(_WIN64) | |
| 59 | +typedef __int64 INT_PTR, *PINT_PTR; | |
| 60 | +typedef unsigned __int64 UINT_PTR, *PUINT_PTR; | |
| 61 | +typedef __int64 LONG_PTR, *PLONG_PTR; | |
| 62 | +typedef unsigned __int64 ULONG_PTR, *PULONG_PTR; | |
| 63 | +typedef unsigned __int64 HANDLE_PTR; | |
| 64 | +typedef unsigned int UHALF_PTR, *PUHALF_PTR; | |
| 65 | +typedef int HALF_PTR, *PHALF_PTR; | |
| 66 | + | |
| 67 | +#if 0 /* TODO when WIN64 is here */ | |
| 68 | +inline unsigned long HandleToUlong(const void* h ) | |
| 69 | + { return((unsigned long) h ); } | |
| 70 | +inline long HandleToLong( const void* h ) | |
| 71 | + { return((long) h ); } | |
| 72 | +inline void* LongToHandle( const long h ) | |
| 73 | + { return((void*) (INT_PTR) h ); } | |
| 74 | +inline unsigned long PtrToUlong( const void* p) | |
| 75 | + { return((unsigned long) p ); } | |
| 76 | +inline unsigned int PtrToUint( const void* p ) | |
| 77 | + { return((unsigned int) p ); } | |
| 78 | +inline unsigned short PtrToUshort( const void* p ) | |
| 79 | + { return((unsigned short) p ); } | |
| 80 | +inline long PtrToLong( const void* p ) | |
| 81 | + { return((long) p ); } | |
| 82 | +inline int PtrToInt( const void* p ) | |
| 83 | + { return((int) p ); } | |
| 84 | +inline short PtrToShort( const void* p ) | |
| 85 | + { return((short) p ); } | |
| 86 | +inline void* IntToPtr( const int i ) | |
| 87 | + { return( (void*)(INT_PTR)i ); } | |
| 88 | +inline void* UIntToPtr(const unsigned int ui) | |
| 89 | + { return( (void*)(UINT_PTR)ui ); } | |
| 90 | +inline void* LongToPtr( const long l ) | |
| 91 | + { return( (void*)(LONG_PTR)l ); } | |
| 92 | +inline void* ULongToPtr( const unsigned long ul ) | |
| 93 | + { return( (void*)(ULONG_PTR)ul ); } | |
| 94 | +#endif /* 0_ */ | |
| 95 | + | |
| 96 | +#else /* !_WIN64 */ | |
| 97 | +typedef int INT_PTR, *PINT_PTR; | |
| 98 | +typedef unsigned int UINT_PTR, *PUINT_PTR; | |
| 99 | +typedef long LONG_PTR, *PLONG_PTR; | |
| 100 | +typedef unsigned long ULONG_PTR, *PULONG_PTR; | |
| 101 | +typedef unsigned short UHALF_PTR, *PUHALF_PTR; | |
| 102 | +typedef short HALF_PTR, *PHALF_PTR; | |
| 103 | +typedef unsigned long HANDLE_PTR; | |
| 104 | +#endif /* !_WIN64 */ | |
| 105 | + | |
| 106 | +typedef ULONG_PTR SIZE_T, *PSIZE_T; | |
| 107 | +typedef LONG_PTR SSIZE_T, *PSSIZE_T; | |
| 108 | +typedef ULONG_PTR DWORD_PTR, *PDWORD_PTR; | |
| 109 | +typedef __int64 LONG64, *PLONG64; | |
| 110 | +typedef __int64 INT64, *PINT64; | |
| 111 | +typedef unsigned __int64 ULONG64, *PULONG64; | |
| 112 | +typedef unsigned __int64 DWORD64, *PDWORD64; | |
| 113 | +typedef unsigned __int64 UINT64, *PUINT64; | |
| 114 | +#ifdef __cplusplus | |
| 115 | +} | |
| 116 | +#endif | |
| 117 | +#endif /* !RC_INVOKED */ | |
| 118 | + | |
| 119 | +#endif /* _BASETSD_H */ | |
| @@ -0,0 +1,144 @@ | ||
| 1 | +#ifndef _BASETYPS_H | |
| 2 | +#define _BASETYPS_H | |
| 3 | +#if __GNUC__ >=3 | |
| 4 | +#pragma GCC system_header | |
| 5 | +#endif | |
| 6 | + | |
| 7 | +#ifndef __OBJC__ | |
| 8 | +#ifdef __cplusplus | |
| 9 | +#define EXTERN_C extern "C" | |
| 10 | +#else | |
| 11 | +#define EXTERN_C extern | |
| 12 | +#endif /* __cplusplus */ | |
| 13 | +#define STDMETHODCALLTYPE __stdcall | |
| 14 | +#define STDMETHODVCALLTYPE __cdecl | |
| 15 | +#define STDAPICALLTYPE __stdcall | |
| 16 | +#define STDAPIVCALLTYPE __cdecl | |
| 17 | +#define STDAPI EXTERN_C HRESULT STDAPICALLTYPE | |
| 18 | +#define STDAPI_(t) EXTERN_C t STDAPICALLTYPE | |
| 19 | +#define STDMETHODIMP HRESULT STDMETHODCALLTYPE | |
| 20 | +#define STDMETHODIMP_(t) t STDMETHODCALLTYPE | |
| 21 | +#define STDAPIV EXTERN_C HRESULT STDAPIVCALLTYPE | |
| 22 | +#define STDAPIV_(t) EXTERN_C t STDAPIVCALLTYPE | |
| 23 | +#define STDMETHODIMPV HRESULT STDMETHODVCALLTYPE | |
| 24 | +#define STDMETHODIMPV_(t) t STDMETHODVCALLTYPE | |
| 25 | +#define interface struct | |
| 26 | +#if defined(__cplusplus) && !defined(CINTERFACE) | |
| 27 | +#define STDMETHOD(m) virtual HRESULT STDMETHODCALLTYPE m | |
| 28 | +#define STDMETHOD_(t,m) virtual t STDMETHODCALLTYPE m | |
| 29 | +#define PURE =0 | |
| 30 | +#define THIS_ | |
| 31 | +#define THIS void | |
| 32 | +/* | |
| 33 | + __attribute__((com_interface)) is obsolete in __GNUC__ >= 3 | |
| 34 | + g++ vtables are now COM-compatible by default | |
| 35 | +*/ | |
| 36 | +#if defined(__GNUC__) && __GNUC__ < 3 && !defined(NOCOMATTRIBUTE) | |
| 37 | +#define DECLARE_INTERFACE(i) interface __attribute__((com_interface)) i | |
| 38 | +#define DECLARE_INTERFACE_(i,b) interface __attribute__((com_interface)) i : public b | |
| 39 | +#else | |
| 40 | +#define DECLARE_INTERFACE(i) interface i | |
| 41 | +#define DECLARE_INTERFACE_(i,b) interface i : public b | |
| 42 | +#endif | |
| 43 | +#else | |
| 44 | +#define STDMETHOD(m) HRESULT(STDMETHODCALLTYPE *m) | |
| 45 | +#define STDMETHOD_(t,m) t(STDMETHODCALLTYPE *m) | |
| 46 | +#define PURE | |
| 47 | +#define THIS_ INTERFACE *, | |
| 48 | +#define THIS INTERFACE * | |
| 49 | +#ifndef CONST_VTABLE | |
| 50 | +#define CONST_VTABLE | |
| 51 | +#endif | |
| 52 | +#define DECLARE_INTERFACE(i) \ | |
| 53 | +typedef interface i { CONST_VTABLE struct i##Vtbl *lpVtbl; } i; \ | |
| 54 | +typedef CONST_VTABLE struct i##Vtbl i##Vtbl; \ | |
| 55 | +CONST_VTABLE struct i##Vtbl | |
| 56 | +#define DECLARE_INTERFACE_(i,b) DECLARE_INTERFACE(i) | |
| 57 | +#endif | |
| 58 | +#define BEGIN_INTERFACE | |
| 59 | +#define END_INTERFACE | |
| 60 | + | |
| 61 | +#define FWD_DECL(i) typedef interface i i | |
| 62 | +#if defined(__cplusplus) && !defined(CINTERFACE) | |
| 63 | +#define IENUM_THIS(T) | |
| 64 | +#define IENUM_THIS_(T) | |
| 65 | +#else | |
| 66 | +#define IENUM_THIS(T) T* | |
| 67 | +#define IENUM_THIS_(T) T*, | |
| 68 | +#endif | |
| 69 | +#define DECLARE_ENUMERATOR_(I,T) \ | |
| 70 | +DECLARE_INTERFACE_(I,IUnknown) \ | |
| 71 | +{ \ | |
| 72 | + STDMETHOD(QueryInterface)(IENUM_THIS_(I) REFIID,PVOID*) PURE; \ | |
| 73 | + STDMETHOD_(ULONG,AddRef)(IENUM_THIS(I)) PURE; \ | |
| 74 | + STDMETHOD_(ULONG,Release)(IENUM_THIS(I)) PURE; \ | |
| 75 | + STDMETHOD(Next)(IENUM_THIS_(I) ULONG,T*,ULONG*) PURE; \ | |
| 76 | + STDMETHOD(Skip)(IENUM_THIS_(I) ULONG) PURE; \ | |
| 77 | + STDMETHOD(Reset)(IENUM_THIS(I)) PURE; \ | |
| 78 | + STDMETHOD(Clone)(IENUM_THIS_(I) I**) PURE; \ | |
| 79 | +} | |
| 80 | +#define DECLARE_ENUMERATOR(T) DECLARE_ENUMERATOR_(IEnum##T,T) | |
| 81 | + | |
| 82 | +#endif /* __OBJC__ */ | |
| 83 | + | |
| 84 | +#ifndef _GUID_DEFINED /* also defined in winnt.h */ | |
| 85 | +#define _GUID_DEFINED | |
| 86 | +typedef struct _GUID | |
| 87 | +{ | |
| 88 | + unsigned long Data1; | |
| 89 | + unsigned short Data2; | |
| 90 | + unsigned short Data3; | |
| 91 | + unsigned char Data4[8]; | |
| 92 | +} GUID,*REFGUID,*LPGUID; | |
| 93 | +#endif /* _GUID_DEFINED */ | |
| 94 | +#ifndef UUID_DEFINED | |
| 95 | +#define UUID_DEFINED | |
| 96 | +typedef GUID UUID; | |
| 97 | +#endif /* UUID_DEFINED */ | |
| 98 | +typedef GUID IID; | |
| 99 | +typedef GUID CLSID; | |
| 100 | +typedef CLSID *LPCLSID; | |
| 101 | +typedef IID *LPIID; | |
| 102 | +typedef IID *REFIID; | |
| 103 | +typedef CLSID *REFCLSID; | |
| 104 | +typedef GUID FMTID; | |
| 105 | +typedef FMTID *REFFMTID; | |
| 106 | +typedef unsigned long error_status_t; | |
| 107 | +#define uuid_t UUID | |
| 108 | +typedef unsigned long PROPID; | |
| 109 | + | |
| 110 | +#ifndef _REFGUID_DEFINED | |
| 111 | +#if defined (__cplusplus) && !defined (CINTERFACE) | |
| 112 | +#define REFGUID const GUID& | |
| 113 | +#define REFIID const IID& | |
| 114 | +#define REFCLSID const CLSID& | |
| 115 | +#else | |
| 116 | +#define REFGUID const GUID* const | |
| 117 | +#define REFIID const IID* const | |
| 118 | +#define REFCLSID const CLSID* const | |
| 119 | +#endif | |
| 120 | +#define _REFGUID_DEFINED | |
| 121 | +#define _REFGIID_DEFINED | |
| 122 | +#define _REFCLSID_DEFINED | |
| 123 | +#endif | |
| 124 | +#ifndef GUID_SECTION | |
| 125 | +#define GUID_SECTION ".text" | |
| 126 | +#endif | |
| 127 | +#ifdef __GNUC__ | |
| 128 | +#define GUID_SECT __attribute__ ((section (GUID_SECTION))) | |
| 129 | +#else | |
| 130 | +#define GUID_SECT | |
| 131 | +#endif | |
| 132 | +#if !defined(INITGUID) || (defined(INITGUID) && defined(__cplusplus)) | |
| 133 | +#define GUID_EXT EXTERN_C | |
| 134 | +#else | |
| 135 | +#define GUID_EXT | |
| 136 | +#endif | |
| 137 | +#ifdef INITGUID | |
| 138 | +#define DEFINE_GUID(n,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) GUID_EXT const GUID n GUID_SECT = {l,w1,w2,{b1,b2,b3,b4,b5,b6,b7,b8}} | |
| 139 | +#define DEFINE_OLEGUID(n,l,w1,w2) DEFINE_GUID(n,l,w1,w2,0xC0,0,0,0,0,0,0,0x46) | |
| 140 | +#else | |
| 141 | +#define DEFINE_GUID(n,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) GUID_EXT const GUID n | |
| 142 | +#define DEFINE_OLEGUID(n,l,w1,w2) DEFINE_GUID(n,l,w1,w2,0xC0,0,0,0,0,0,0,0x46) | |
| 143 | +#endif | |
| 144 | +#endif | |
| @@ -0,0 +1,1852 @@ | ||
| 1 | +#ifndef _WINBASE_H | |
| 2 | +#define _WINBASE_H | |
| 3 | +#if __GNUC__ >=3 | |
| 4 | +#pragma GCC system_header | |
| 5 | +#endif | |
| 6 | + | |
| 7 | +#define WINBASEAPI DECLSPEC_IMPORT | |
| 8 | +#ifdef __cplusplus | |
| 9 | +extern "C" { | |
| 10 | +#endif | |
| 11 | + | |
| 12 | +#define SP_SERIALCOMM 1 | |
| 13 | +#define PST_UNSPECIFIED 0 | |
| 14 | +#define PST_RS232 1 | |
| 15 | +#define PST_PARALLELPORT 2 | |
| 16 | +#define PST_RS422 3 | |
| 17 | +#define PST_RS423 4 | |
| 18 | +#define PST_RS449 5 | |
| 19 | +#define PST_MODEM 6 | |
| 20 | +#define PST_FAX 0x21 | |
| 21 | +#define PST_SCANNER 0x22 | |
| 22 | +#define PST_NETWORK_BRIDGE 0x100 | |
| 23 | +#define PST_LAT 0x101 | |
| 24 | +#define PST_TCPIP_TELNET 0x102 | |
| 25 | +#define PST_X25 0x103 | |
| 26 | +#define BAUD_075 1 | |
| 27 | +#define BAUD_110 2 | |
| 28 | +#define BAUD_134_5 4 | |
| 29 | +#define BAUD_150 8 | |
| 30 | +#define BAUD_300 16 | |
| 31 | +#define BAUD_600 32 | |
| 32 | +#define BAUD_1200 64 | |
| 33 | +#define BAUD_1800 128 | |
| 34 | +#define BAUD_2400 256 | |
| 35 | +#define BAUD_4800 512 | |
| 36 | +#define BAUD_7200 1024 | |
| 37 | +#define BAUD_9600 2048 | |
| 38 | +#define BAUD_14400 4096 | |
| 39 | +#define BAUD_19200 8192 | |
| 40 | +#define BAUD_38400 16384 | |
| 41 | +#define BAUD_56K 32768 | |
| 42 | +#define BAUD_128K 65536 | |
| 43 | +#define BAUD_115200 131072 | |
| 44 | +#define BAUD_57600 262144 | |
| 45 | +#define BAUD_USER 0x10000000 | |
| 46 | +#define PCF_DTRDSR 1 | |
| 47 | +#define PCF_RTSCTS 2 | |
| 48 | +#define PCF_RLSD 4 | |
| 49 | +#define PCF_PARITY_CHECK 8 | |
| 50 | +#define PCF_XONXOFF 16 | |
| 51 | +#define PCF_SETXCHAR 32 | |
| 52 | +#define PCF_TOTALTIMEOUTS 64 | |
| 53 | +#define PCF_INTTIMEOUTS 128 | |
| 54 | +#define PCF_SPECIALCHARS 256 | |
| 55 | +#define PCF_16BITMODE 512 | |
| 56 | +#define SP_PARITY 1 | |
| 57 | +#define SP_BAUD 2 | |
| 58 | +#define SP_DATABITS 4 | |
| 59 | +#define SP_STOPBITS 8 | |
| 60 | +#define SP_HANDSHAKING 16 | |
| 61 | +#define SP_PARITY_CHECK 32 | |
| 62 | +#define SP_RLSD 64 | |
| 63 | +#define DATABITS_5 1 | |
| 64 | +#define DATABITS_6 2 | |
| 65 | +#define DATABITS_7 4 | |
| 66 | +#define DATABITS_8 8 | |
| 67 | +#define DATABITS_16 16 | |
| 68 | +#define DATABITS_16X 32 | |
| 69 | +#define STOPBITS_10 1 | |
| 70 | +#define STOPBITS_15 2 | |
| 71 | +#define STOPBITS_20 4 | |
| 72 | +#define PARITY_NONE 256 | |
| 73 | +#define PARITY_ODD 512 | |
| 74 | +#define PARITY_EVEN 1024 | |
| 75 | +#define PARITY_MARK 2048 | |
| 76 | +#define PARITY_SPACE 4096 | |
| 77 | +#define EXCEPTION_DEBUG_EVENT 1 | |
| 78 | +#define CREATE_THREAD_DEBUG_EVENT 2 | |
| 79 | +#define CREATE_PROCESS_DEBUG_EVENT 3 | |
| 80 | +#define EXIT_THREAD_DEBUG_EVENT 4 | |
| 81 | +#define EXIT_PROCESS_DEBUG_EVENT 5 | |
| 82 | +#define LOAD_DLL_DEBUG_EVENT 6 | |
| 83 | +#define UNLOAD_DLL_DEBUG_EVENT 7 | |
| 84 | +#define OUTPUT_DEBUG_STRING_EVENT 8 | |
| 85 | +#define RIP_EVENT 9 | |
| 86 | +#define HFILE_ERROR ((HFILE)-1) | |
| 87 | +#define FILE_BEGIN 0 | |
| 88 | +#define FILE_CURRENT 1 | |
| 89 | +#define FILE_END 2 | |
| 90 | +#define INVALID_SET_FILE_POINTER ((DWORD)-1) | |
| 91 | +#define OF_READ 0 | |
| 92 | +#define OF_READWRITE 2 | |
| 93 | +#define OF_WRITE 1 | |
| 94 | +#define OF_SHARE_COMPAT 0 | |
| 95 | +#define OF_SHARE_DENY_NONE 64 | |
| 96 | +#define OF_SHARE_DENY_READ 48 | |
| 97 | +#define OF_SHARE_DENY_WRITE 32 | |
| 98 | +#define OF_SHARE_EXCLUSIVE 16 | |
| 99 | +#define OF_CANCEL 2048 | |
| 100 | +#define OF_CREATE 4096 | |
| 101 | +#define OF_DELETE 512 | |
| 102 | +#define OF_EXIST 16384 | |
| 103 | +#define OF_PARSE 256 | |
| 104 | +#define OF_PROMPT 8192 | |
| 105 | +#define OF_REOPEN 32768 | |
| 106 | +#define OF_VERIFY 1024 | |
| 107 | +#define NMPWAIT_NOWAIT 1 | |
| 108 | +#define NMPWAIT_WAIT_FOREVER (-1) | |
| 109 | +#define NMPWAIT_USE_DEFAULT_WAIT 0 | |
| 110 | +#define CE_BREAK 16 | |
| 111 | +#define CE_DNS 2048 | |
| 112 | +#define CE_FRAME 8 | |
| 113 | +#define CE_IOE 1024 | |
| 114 | +#define CE_MODE 32768 | |
| 115 | +#define CE_OOP 4096 | |
| 116 | +#define CE_OVERRUN 2 | |
| 117 | +#define CE_PTO 512 | |
| 118 | +#define CE_RXOVER 1 | |
| 119 | +#define CE_RXPARITY 4 | |
| 120 | +#define CE_TXFULL 256 | |
| 121 | +#define PROGRESS_CONTINUE 0 | |
| 122 | +#define PROGRESS_CANCEL 1 | |
| 123 | +#define PROGRESS_STOP 2 | |
| 124 | +#define PROGRESS_QUIET 3 | |
| 125 | +#define CALLBACK_CHUNK_FINISHED 0 | |
| 126 | +#define CALLBACK_STREAM_SWITCH 1 | |
| 127 | +#define COPY_FILE_FAIL_IF_EXISTS 1 | |
| 128 | +#define COPY_FILE_RESTARTABLE 2 | |
| 129 | +#define OFS_MAXPATHNAME 128 | |
| 130 | +#define DUPLICATE_CLOSE_SOURCE 1 | |
| 131 | +#define DUPLICATE_SAME_ACCESS 2 | |
| 132 | +#define FILE_MAP_ALL_ACCESS 0xf001f | |
| 133 | +#define FILE_MAP_READ 4 | |
| 134 | +#define FILE_MAP_WRITE 2 | |
| 135 | +#define FILE_MAP_COPY 1 | |
| 136 | +#define MUTEX_ALL_ACCESS 0x1f0001 | |
| 137 | +#define MUTEX_MODIFY_STATE 1 | |
| 138 | +#define SEMAPHORE_ALL_ACCESS 0x1f0003 | |
| 139 | +#define SEMAPHORE_MODIFY_STATE 2 | |
| 140 | +#define EVENT_ALL_ACCESS 0x1f0003 | |
| 141 | +#define EVENT_MODIFY_STATE 2 | |
| 142 | +#define PIPE_ACCESS_DUPLEX 3 | |
| 143 | +#define PIPE_ACCESS_INBOUND 1 | |
| 144 | +#define PIPE_ACCESS_OUTBOUND 2 | |
| 145 | +#define PIPE_TYPE_BYTE 0 | |
| 146 | +#define PIPE_TYPE_MESSAGE 4 | |
| 147 | +#define PIPE_READMODE_BYTE 0 | |
| 148 | +#define PIPE_READMODE_MESSAGE 2 | |
| 149 | +#define PIPE_WAIT 0 | |
| 150 | +#define PIPE_NOWAIT 1 | |
| 151 | +#define PIPE_CLIENT_END 0 | |
| 152 | +#define PIPE_SERVER_END 1 | |
| 153 | +#define PIPE_UNLIMITED_INSTANCES 255 | |
| 154 | +#define CREATE_DEFAULT_ERROR_MODE 67108864 | |
| 155 | +#define DEBUG_PROCESS 1 | |
| 156 | +#define DEBUG_ONLY_THIS_PROCESS 2 | |
| 157 | +#define CREATE_SUSPENDED 4 | |
| 158 | +#define DETACHED_PROCESS 8 | |
| 159 | +#define CREATE_NEW_CONSOLE 16 | |
| 160 | +#define NORMAL_PRIORITY_CLASS 32 | |
| 161 | +#define IDLE_PRIORITY_CLASS 64 | |
| 162 | +#define HIGH_PRIORITY_CLASS 128 | |
| 163 | +#define REALTIME_PRIORITY_CLASS 256 | |
| 164 | +#define CREATE_NEW_PROCESS_GROUP 512 | |
| 165 | +#define CREATE_UNICODE_ENVIRONMENT 1024 | |
| 166 | +#define CREATE_SEPARATE_WOW_VDM 2048 | |
| 167 | +#define CREATE_SHARED_WOW_VDM 4096 | |
| 168 | +#define CREATE_FORCEDOS 8192 | |
| 169 | +#define CREATE_NO_WINDOW 0x8000000 | |
| 170 | +#define CONSOLE_TEXTMODE_BUFFER 1 | |
| 171 | +#define CREATE_NEW 1 | |
| 172 | +#define CREATE_ALWAYS 2 | |
| 173 | +#define OPEN_EXISTING 3 | |
| 174 | +#define OPEN_ALWAYS 4 | |
| 175 | +#define TRUNCATE_EXISTING 5 | |
| 176 | +#define FILE_FLAG_WRITE_THROUGH 0x80000000 | |
| 177 | +#define FILE_FLAG_OVERLAPPED 1073741824 | |
| 178 | +#define FILE_FLAG_NO_BUFFERING 536870912 | |
| 179 | +#define FILE_FLAG_RANDOM_ACCESS 268435456 | |
| 180 | +#define FILE_FLAG_SEQUENTIAL_SCAN 134217728 | |
| 181 | +#define FILE_FLAG_DELETE_ON_CLOSE 67108864 | |
| 182 | +#define FILE_FLAG_BACKUP_SEMANTICS 33554432 | |
| 183 | +#define FILE_FLAG_POSIX_SEMANTICS 16777216 | |
| 184 | +#define FILE_FLAG_OPEN_REPARSE_POINT 2097152 | |
| 185 | +#define FILE_FLAG_OPEN_NO_RECALL 1048576 | |
| 186 | +#define CLRDTR 6 | |
| 187 | +#define CLRRTS 4 | |
| 188 | +#define SETDTR 5 | |
| 189 | +#define SETRTS 3 | |
| 190 | +#define SETXOFF 1 | |
| 191 | +#define SETXON 2 | |
| 192 | +#define SETBREAK 8 | |
| 193 | +#define CLRBREAK 9 | |
| 194 | +#define STILL_ACTIVE 0x103 | |
| 195 | +#define FIND_FIRST_EX_CASE_SENSITIVE 1 | |
| 196 | +#define SCS_32BIT_BINARY 0 | |
| 197 | +#define SCS_DOS_BINARY 1 | |
| 198 | +#define SCS_OS216_BINARY 5 | |
| 199 | +#define SCS_PIF_BINARY 3 | |
| 200 | +#define SCS_POSIX_BINARY 4 | |
| 201 | +#define SCS_WOW_BINARY 2 | |
| 202 | +#define MAX_COMPUTERNAME_LENGTH 15 | |
| 203 | +#define HW_PROFILE_GUIDLEN 39 | |
| 204 | +#define MAX_PROFILE_LEN 80 | |
| 205 | +#define DOCKINFO_UNDOCKED 1 | |
| 206 | +#define DOCKINFO_DOCKED 2 | |
| 207 | +#define DOCKINFO_USER_SUPPLIED 4 | |
| 208 | +#define DOCKINFO_USER_UNDOCKED (DOCKINFO_USER_SUPPLIED|DOCKINFO_UNDOCKED) | |
| 209 | +#define DOCKINFO_USER_DOCKED (DOCKINFO_USER_SUPPLIED|DOCKINFO_DOCKED) | |
| 210 | +#define DRIVE_REMOVABLE 2 | |
| 211 | +#define DRIVE_FIXED 3 | |
| 212 | +#define DRIVE_REMOTE 4 | |
| 213 | +#define DRIVE_CDROM 5 | |
| 214 | +#define DRIVE_RAMDISK 6 | |
| 215 | +#define DRIVE_UNKNOWN 0 | |
| 216 | +#define DRIVE_NO_ROOT_DIR 1 | |
| 217 | +#define FILE_TYPE_UNKNOWN 0 | |
| 218 | +#define FILE_TYPE_DISK 1 | |
| 219 | +#define FILE_TYPE_CHAR 2 | |
| 220 | +#define FILE_TYPE_PIPE 3 | |
| 221 | +#define FILE_TYPE_REMOTE 0x8000 | |
| 222 | +#define HANDLE_FLAG_INHERIT 1 | |
| 223 | +#define HANDLE_FLAG_PROTECT_FROM_CLOSE 2 | |
| 224 | +#define STD_INPUT_HANDLE (DWORD)(0xfffffff6) | |
| 225 | +#define STD_OUTPUT_HANDLE (DWORD)(0xfffffff5) | |
| 226 | +#define STD_ERROR_HANDLE (DWORD)(0xfffffff4) | |
| 227 | +#define INVALID_HANDLE_VALUE (HANDLE)(-1) | |
| 228 | +#define GET_TAPE_MEDIA_INFORMATION 0 | |
| 229 | +#define GET_TAPE_DRIVE_INFORMATION 1 | |
| 230 | +#define SET_TAPE_MEDIA_INFORMATION 0 | |
| 231 | +#define SET_TAPE_DRIVE_INFORMATION 1 | |
| 232 | +#define THREAD_PRIORITY_ABOVE_NORMAL 1 | |
| 233 | +#define THREAD_PRIORITY_BELOW_NORMAL (-1) | |
| 234 | +#define THREAD_PRIORITY_HIGHEST 2 | |
| 235 | +#define THREAD_PRIORITY_IDLE (-15) | |
| 236 | +#define THREAD_PRIORITY_LOWEST (-2) | |
| 237 | +#define THREAD_PRIORITY_NORMAL 0 | |
| 238 | +#define THREAD_PRIORITY_TIME_CRITICAL 15 | |
| 239 | +#define THREAD_PRIORITY_ERROR_RETURN 2147483647 | |
| 240 | +#define TIME_ZONE_ID_UNKNOWN 0 | |
| 241 | +#define TIME_ZONE_ID_STANDARD 1 | |
| 242 | +#define TIME_ZONE_ID_DAYLIGHT 2 | |
| 243 | +#define TIME_ZONE_ID_INVALID 0xFFFFFFFF | |
| 244 | +#define FS_CASE_IS_PRESERVED 2 | |
| 245 | +#define FS_CASE_SENSITIVE 1 | |
| 246 | +#define FS_UNICODE_STORED_ON_DISK 4 | |
| 247 | +#define FS_PERSISTENT_ACLS 8 | |
| 248 | +#define FS_FILE_COMPRESSION 16 | |
| 249 | +#define FS_VOL_IS_COMPRESSED 32768 | |
| 250 | +#define GMEM_FIXED 0 | |
| 251 | +#define GMEM_MOVEABLE 2 | |
| 252 | +#define GMEM_MODIFY 128 | |
| 253 | +#define GPTR 64 | |
| 254 | +#define GHND 66 | |
| 255 | +#define GMEM_DDESHARE 8192 | |
| 256 | +#define GMEM_DISCARDABLE 256 | |
| 257 | +#define GMEM_LOWER 4096 | |
| 258 | +#define GMEM_NOCOMPACT 16 | |
| 259 | +#define GMEM_NODISCARD 32 | |
| 260 | +#define GMEM_NOT_BANKED 4096 | |
| 261 | +#define GMEM_NOTIFY 16384 | |
| 262 | +#define GMEM_SHARE 8192 | |
| 263 | +#define GMEM_ZEROINIT 64 | |
| 264 | +#define GMEM_DISCARDED 16384 | |
| 265 | +#define GMEM_INVALID_HANDLE 32768 | |
| 266 | +#define GMEM_LOCKCOUNT 255 | |
| 267 | +#define STATUS_WAIT_0 0 | |
| 268 | +#define STATUS_ABANDONED_WAIT_0 0x80 | |
| 269 | +#define STATUS_USER_APC 0xC0 | |
| 270 | +#define STATUS_TIMEOUT 0x102 | |
| 271 | +#define STATUS_PENDING 0x103 | |
| 272 | +#define STATUS_SEGMENT_NOTIFICATION 0x40000005 | |
| 273 | +#define STATUS_GUARD_PAGE_VIOLATION 0x80000001 | |
| 274 | +#define STATUS_DATATYPE_MISALIGNMENT 0x80000002 | |
| 275 | +#define STATUS_BREAKPOINT 0x80000003 | |
| 276 | +#define STATUS_SINGLE_STEP 0x80000004 | |
| 277 | +#define STATUS_ACCESS_VIOLATION 0xC0000005 | |
| 278 | +#define STATUS_IN_PAGE_ERROR 0xC0000006 | |
| 279 | +#define STATUS_INVALID_HANDLE 0xC0000008L | |
| 280 | +#define STATUS_NO_MEMORY 0xC0000017 | |
| 281 | +#define STATUS_ILLEGAL_INSTRUCTION 0xC000001D | |
| 282 | +#define STATUS_NONCONTINUABLE_EXCEPTION 0xC0000025 | |
| 283 | +#define STATUS_INVALID_DISPOSITION 0xC0000026 | |
| 284 | +#define STATUS_ARRAY_BOUNDS_EXCEEDED 0xC000008C | |
| 285 | +#define STATUS_FLOAT_DENORMAL_OPERAND 0xC000008D | |
| 286 | +#define STATUS_FLOAT_DIVIDE_BY_ZERO 0xC000008E | |
| 287 | +#define STATUS_FLOAT_INEXACT_RESULT 0xC000008F | |
| 288 | +#define STATUS_FLOAT_INVALID_OPERATION 0xC0000090 | |
| 289 | +#define STATUS_FLOAT_OVERFLOW 0xC0000091 | |
| 290 | +#define STATUS_FLOAT_STACK_CHECK 0xC0000092 | |
| 291 | +#define STATUS_FLOAT_UNDERFLOW 0xC0000093 | |
| 292 | +#define STATUS_INTEGER_DIVIDE_BY_ZERO 0xC0000094 | |
| 293 | +#define STATUS_INTEGER_OVERFLOW 0xC0000095 | |
| 294 | +#define STATUS_PRIVILEGED_INSTRUCTION 0xC0000096 | |
| 295 | +#define STATUS_STACK_OVERFLOW 0xC00000FD | |
| 296 | +#define STATUS_CONTROL_C_EXIT 0xC000013A | |
| 297 | +#define EXCEPTION_ACCESS_VIOLATION STATUS_ACCESS_VIOLATION | |
| 298 | +#define EXCEPTION_DATATYPE_MISALIGNMENT STATUS_DATATYPE_MISALIGNMENT | |
| 299 | +#define EXCEPTION_BREAKPOINT STATUS_BREAKPOINT | |
| 300 | +#define EXCEPTION_SINGLE_STEP STATUS_SINGLE_STEP | |
| 301 | +#define EXCEPTION_ARRAY_BOUNDS_EXCEEDED STATUS_ARRAY_BOUNDS_EXCEEDED | |
| 302 | +#define EXCEPTION_FLT_DENORMAL_OPERAND STATUS_FLOAT_DENORMAL_OPERAND | |
| 303 | +#define EXCEPTION_FLT_DIVIDE_BY_ZERO STATUS_FLOAT_DIVIDE_BY_ZERO | |
| 304 | +#define EXCEPTION_FLT_INEXACT_RESULT STATUS_FLOAT_INEXACT_RESULT | |
| 305 | +#define EXCEPTION_FLT_INVALID_OPERATION STATUS_FLOAT_INVALID_OPERATION | |
| 306 | +#define EXCEPTION_FLT_OVERFLOW STATUS_FLOAT_OVERFLOW | |
| 307 | +#define EXCEPTION_FLT_STACK_CHECK STATUS_FLOAT_STACK_CHECK | |
| 308 | +#define EXCEPTION_FLT_UNDERFLOW STATUS_FLOAT_UNDERFLOW | |
| 309 | +#define EXCEPTION_INT_DIVIDE_BY_ZERO STATUS_INTEGER_DIVIDE_BY_ZERO | |
| 310 | +#define EXCEPTION_INT_OVERFLOW STATUS_INTEGER_OVERFLOW | |
| 311 | +#define EXCEPTION_PRIV_INSTRUCTION STATUS_PRIVILEGED_INSTRUCTION | |
| 312 | +#define EXCEPTION_IN_PAGE_ERROR STATUS_IN_PAGE_ERROR | |
| 313 | +#define EXCEPTION_ILLEGAL_INSTRUCTION STATUS_ILLEGAL_INSTRUCTION | |
| 314 | +#define EXCEPTION_NONCONTINUABLE_EXCEPTION STATUS_NONCONTINUABLE_EXCEPTION | |
| 315 | +#define EXCEPTION_STACK_OVERFLOW STATUS_STACK_OVERFLOW | |
| 316 | +#define EXCEPTION_INVALID_DISPOSITION STATUS_INVALID_DISPOSITION | |
| 317 | +#define EXCEPTION_GUARD_PAGE STATUS_GUARD_PAGE_VIOLATION | |
| 318 | +#define EXCEPTION_INVALID_HANDLE STATUS_INVALID_HANDLE | |
| 319 | +#define CONTROL_C_EXIT STATUS_CONTROL_C_EXIT | |
| 320 | +#define PROCESS_HEAP_REGION 1 | |
| 321 | +#define PROCESS_HEAP_UNCOMMITTED_RANGE 2 | |
| 322 | +#define PROCESS_HEAP_ENTRY_BUSY 4 | |
| 323 | +#define PROCESS_HEAP_ENTRY_MOVEABLE 16 | |
| 324 | +#define PROCESS_HEAP_ENTRY_DDESHARE 32 | |
| 325 | +#define DONT_RESOLVE_DLL_REFERENCES 1 | |
| 326 | +#define LOAD_LIBRARY_AS_DATAFILE 2 | |
| 327 | +#define LOAD_WITH_ALTERED_SEARCH_PATH 8 | |
| 328 | +#define LMEM_FIXED 0 | |
| 329 | +#define LMEM_MOVEABLE 2 | |
| 330 | +#define LMEM_NONZEROLHND 2 | |
| 331 | +#define LMEM_NONZEROLPTR 0 | |
| 332 | +#define LMEM_DISCARDABLE 3840 | |
| 333 | +#define LMEM_NOCOMPACT 16 | |
| 334 | +#define LMEM_NODISCARD 32 | |
| 335 | +#define LMEM_ZEROINIT 64 | |
| 336 | +#define LMEM_DISCARDED 16384 | |
| 337 | +#define LMEM_MODIFY 128 | |
| 338 | +#define LMEM_INVALID_HANDLE 32768 | |
| 339 | +#define LMEM_LOCKCOUNT 255 | |
| 340 | +#define LPTR 64 | |
| 341 | +#define LHND 66 | |
| 342 | +#define NONZEROLHND 2 | |
| 343 | +#define NONZEROLPTR 0 | |
| 344 | +#define LOCKFILE_FAIL_IMMEDIATELY 1 | |
| 345 | +#define LOCKFILE_EXCLUSIVE_LOCK 2 | |
| 346 | +#define LOGON32_PROVIDER_DEFAULT 0 | |
| 347 | +#define LOGON32_PROVIDER_WINNT35 1 | |
| 348 | +#define LOGON32_LOGON_INTERACTIVE 2 | |
| 349 | +#define LOGON32_LOGON_BATCH 4 | |
| 350 | +#define LOGON32_LOGON_SERVICE 5 | |
| 351 | +#define MOVEFILE_REPLACE_EXISTING 1 | |
| 352 | +#define MOVEFILE_COPY_ALLOWED 2 | |
| 353 | +#define MOVEFILE_DELAY_UNTIL_REBOOT 4 | |
| 354 | +#define MOVEFILE_WRITE_THROUGH 8 | |
| 355 | +#define MAXIMUM_WAIT_OBJECTS 64 | |
| 356 | +#define MAXIMUM_SUSPEND_COUNT 0x7F | |
| 357 | +#define WAIT_OBJECT_0 0 | |
| 358 | +#define WAIT_ABANDONED_0 128 | |
| 359 | +#define WAIT_TIMEOUT 0x102 | |
| 360 | +#define WAIT_IO_COMPLETION 0xC0 | |
| 361 | +#define WAIT_ABANDONED 128 | |
| 362 | +#define WAIT_FAILED 0xFFFFFFFF | |
| 363 | +#define PURGE_TXABORT 1 | |
| 364 | +#define PURGE_RXABORT 2 | |
| 365 | +#define PURGE_TXCLEAR 4 | |
| 366 | +#define PURGE_RXCLEAR 8 | |
| 367 | +#define EVENTLOG_FORWARDS_READ 4 | |
| 368 | +#define EVENTLOG_BACKWARDS_READ 8 | |
| 369 | +#define EVENTLOG_SEEK_READ 2 | |
| 370 | +#define EVENTLOG_SEQUENTIAL_READ 1 | |
| 371 | +#define EVENTLOG_ERROR_TYPE 1 | |
| 372 | +#define EVENTLOG_WARNING_TYPE 2 | |
| 373 | +#define EVENTLOG_INFORMATION_TYPE 4 | |
| 374 | +#define EVENTLOG_AUDIT_SUCCESS 8 | |
| 375 | +#define EVENTLOG_AUDIT_FAILURE 16 | |
| 376 | +#define FORMAT_MESSAGE_ALLOCATE_BUFFER 256 | |
| 377 | +#define FORMAT_MESSAGE_IGNORE_INSERTS 512 | |
| 378 | +#define FORMAT_MESSAGE_FROM_STRING 1024 | |
| 379 | +#define FORMAT_MESSAGE_FROM_HMODULE 2048 | |
| 380 | +#define FORMAT_MESSAGE_FROM_SYSTEM 4096 | |
| 381 | +#define FORMAT_MESSAGE_ARGUMENT_ARRAY 8192 | |
| 382 | +#define FORMAT_MESSAGE_MAX_WIDTH_MASK 255 | |
| 383 | +#define EV_BREAK 64 | |
| 384 | +#define EV_CTS 8 | |
| 385 | +#define EV_DSR 16 | |
| 386 | +#define EV_ERR 128 | |
| 387 | +#define EV_EVENT1 2048 | |
| 388 | +#define EV_EVENT2 4096 | |
| 389 | +#define EV_PERR 512 | |
| 390 | +#define EV_RING 256 | |
| 391 | +#define EV_RLSD 32 | |
| 392 | +#define EV_RX80FULL 1024 | |
| 393 | +#define EV_RXCHAR 1 | |
| 394 | +#define EV_RXFLAG 2 | |
| 395 | +#define EV_TXEMPTY 4 | |
| 396 | +#define SEM_FAILCRITICALERRORS 1 | |
| 397 | +#define SEM_NOALIGNMENTFAULTEXCEPT 4 | |
| 398 | +#define SEM_NOGPFAULTERRORBOX 2 | |
| 399 | +#define SEM_NOOPENFILEERRORBOX 32768 | |
| 400 | +#define SLE_ERROR 1 | |
| 401 | +#define SLE_MINORERROR 2 | |
| 402 | +#define SLE_WARNING 3 | |
| 403 | +#define SHUTDOWN_NORETRY 1 | |
| 404 | +#define EXCEPTION_EXECUTE_HANDLER 1 | |
| 405 | +#define EXCEPTION_CONTINUE_EXECUTION (-1) | |
| 406 | +#define EXCEPTION_CONTINUE_SEARCH 0 | |
| 407 | +#define MAXINTATOM 0xC000 | |
| 408 | +#define INVALID_ATOM ((ATOM)0) | |
| 409 | +#define IGNORE 0 | |
| 410 | +#define INFINITE 0xFFFFFFFF | |
| 411 | +#define NOPARITY 0 | |
| 412 | +#define ODDPARITY 1 | |
| 413 | +#define EVENPARITY 2 | |
| 414 | +#define MARKPARITY 3 | |
| 415 | +#define SPACEPARITY 4 | |
| 416 | +#define ONESTOPBIT 0 | |
| 417 | +#define ONE5STOPBITS 1 | |
| 418 | +#define TWOSTOPBITS 2 | |
| 419 | +#define CBR_110 110 | |
| 420 | +#define CBR_300 300 | |
| 421 | +#define CBR_600 600 | |
| 422 | +#define CBR_1200 1200 | |
| 423 | +#define CBR_2400 2400 | |
| 424 | +#define CBR_4800 4800 | |
| 425 | +#define CBR_9600 9600 | |
| 426 | +#define CBR_14400 14400 | |
| 427 | +#define CBR_19200 19200 | |
| 428 | +#define CBR_38400 38400 | |
| 429 | +#define CBR_56000 56000 | |
| 430 | +#define CBR_57600 57600 | |
| 431 | +#define CBR_115200 115200 | |
| 432 | +#define CBR_128000 128000 | |
| 433 | +#define CBR_256000 256000 | |
| 434 | +#define BACKUP_INVALID 0 | |
| 435 | +#define BACKUP_DATA 1 | |
| 436 | +#define BACKUP_EA_DATA 2 | |
| 437 | +#define BACKUP_SECURITY_DATA 3 | |
| 438 | +#define BACKUP_ALTERNATE_DATA 4 | |
| 439 | +#define BACKUP_LINK 5 | |
| 440 | +#define BACKUP_PROPERTY_DATA 6 | |
| 441 | +#define BACKUP_OBJECT_ID 7 | |
| 442 | +#define BACKUP_REPARSE_DATA 8 | |
| 443 | +#define BACKUP_SPARSE_BLOCK 9 | |
| 444 | +#define STREAM_NORMAL_ATTRIBUTE 0 | |
| 445 | +#define STREAM_MODIFIED_WHEN_READ 1 | |
| 446 | +#define STREAM_CONTAINS_SECURITY 2 | |
| 447 | +#define STREAM_CONTAINS_PROPERTIES 4 | |
| 448 | +#define STARTF_USESHOWWINDOW 1 | |
| 449 | +#define STARTF_USESIZE 2 | |
| 450 | +#define STARTF_USEPOSITION 4 | |
| 451 | +#define STARTF_USECOUNTCHARS 8 | |
| 452 | +#define STARTF_USEFILLATTRIBUTE 16 | |
| 453 | +#define STARTF_RUNFULLSCREEN 32 | |
| 454 | +#define STARTF_FORCEONFEEDBACK 64 | |
| 455 | +#define STARTF_FORCEOFFFEEDBACK 128 | |
| 456 | +#define STARTF_USESTDHANDLES 256 | |
| 457 | +#define STARTF_USEHOTKEY 512 | |
| 458 | +#define TC_NORMAL 0 | |
| 459 | +#define TC_HARDERR 1 | |
| 460 | +#define TC_GP_TRAP 2 | |
| 461 | +#define TC_SIGNAL 3 | |
| 462 | +#define AC_LINE_OFFLINE 0 | |
| 463 | +#define AC_LINE_ONLINE 1 | |
| 464 | +#define AC_LINE_BACKUP_POWER 2 | |
| 465 | +#define AC_LINE_UNKNOWN 255 | |
| 466 | +#define BATTERY_FLAG_HIGH 1 | |
| 467 | +#define BATTERY_FLAG_LOW 2 | |
| 468 | +#define BATTERY_FLAG_CRITICAL 4 | |
| 469 | +#define BATTERY_FLAG_CHARGING 8 | |
| 470 | +#define BATTERY_FLAG_NO_BATTERY 128 | |
| 471 | +#define BATTERY_FLAG_UNKNOWN 255 | |
| 472 | +#define BATTERY_PERCENTAGE_UNKNOWN 255 | |
| 473 | +#define BATTERY_LIFE_UNKNOWN 0xFFFFFFFF | |
| 474 | +#define DDD_RAW_TARGET_PATH 1 | |
| 475 | +#define DDD_REMOVE_DEFINITION 2 | |
| 476 | +#define DDD_EXACT_MATCH_ON_REMOVE 4 | |
| 477 | +#define HINSTANCE_ERROR 32 | |
| 478 | +#define MS_CTS_ON 16 | |
| 479 | +#define MS_DSR_ON 32 | |
| 480 | +#define MS_RING_ON 64 | |
| 481 | +#define MS_RLSD_ON 128 | |
| 482 | +#define PROFILE_USER 0x10000000 | |
| 483 | +#define PROFILE_KERNEL 0x20000000 | |
| 484 | +#define PROFILE_SERVER 0x40000000 | |
| 485 | +#define DTR_CONTROL_DISABLE 0 | |
| 486 | +#define DTR_CONTROL_ENABLE 1 | |
| 487 | +#define DTR_CONTROL_HANDSHAKE 2 | |
| 488 | +#define RTS_CONTROL_DISABLE 0 | |
| 489 | +#define RTS_CONTROL_ENABLE 1 | |
| 490 | +#define RTS_CONTROL_HANDSHAKE 2 | |
| 491 | +#define RTS_CONTROL_TOGGLE 3 | |
| 492 | +#define SECURITY_ANONYMOUS (SecurityAnonymous<<16) | |
| 493 | +#define SECURITY_IDENTIFICATION (SecurityIdentification<<16) | |
| 494 | +#define SECURITY_IMPERSONATION (SecurityImpersonation<<16) | |
| 495 | +#define SECURITY_DELEGATION (SecurityDelegation<<16) | |
| 496 | +#define SECURITY_CONTEXT_TRACKING 0x40000 | |
| 497 | +#define SECURITY_EFFECTIVE_ONLY 0x80000 | |
| 498 | +#define SECURITY_SQOS_PRESENT 0x100000 | |
| 499 | +#define SECURITY_VALID_SQOS_FLAGS 0x1F0000 | |
| 500 | +#define INVALID_FILE_SIZE 0xFFFFFFFF | |
| 501 | +#define TLS_OUT_OF_INDEXES (DWORD)0xFFFFFFFF | |
| 502 | + | |
| 503 | +#ifndef RC_INVOKED | |
| 504 | +typedef struct _FILETIME { | |
| 505 | + DWORD dwLowDateTime; | |
| 506 | + DWORD dwHighDateTime; | |
| 507 | +} FILETIME,*PFILETIME,*LPFILETIME; | |
| 508 | +typedef struct _BY_HANDLE_FILE_INFORMATION { | |
| 509 | + DWORD dwFileAttributes; | |
| 510 | + FILETIME ftCreationTime; | |
| 511 | + FILETIME ftLastAccessTime; | |
| 512 | + FILETIME ftLastWriteTime; | |
| 513 | + DWORD dwVolumeSerialNumber; | |
| 514 | + DWORD nFileSizeHigh; | |
| 515 | + DWORD nFileSizeLow; | |
| 516 | + DWORD nNumberOfLinks; | |
| 517 | + DWORD nFileIndexHigh; | |
| 518 | + DWORD nFileIndexLow; | |
| 519 | +} BY_HANDLE_FILE_INFORMATION,*LPBY_HANDLE_FILE_INFORMATION; | |
| 520 | +typedef struct _DCB { | |
| 521 | + DWORD DCBlength; | |
| 522 | + DWORD BaudRate; | |
| 523 | + DWORD fBinary:1; | |
| 524 | + DWORD fParity:1; | |
| 525 | + DWORD fOutxCtsFlow:1; | |
| 526 | + DWORD fOutxDsrFlow:1; | |
| 527 | + DWORD fDtrControl:2; | |
| 528 | + DWORD fDsrSensitivity:1; | |
| 529 | + DWORD fTXContinueOnXoff:1; | |
| 530 | + DWORD fOutX:1; | |
| 531 | + DWORD fInX:1; | |
| 532 | + DWORD fErrorChar:1; | |
| 533 | + DWORD fNull:1; | |
| 534 | + DWORD fRtsControl:2; | |
| 535 | + DWORD fAbortOnError:1; | |
| 536 | + DWORD fDummy2:17; | |
| 537 | + WORD wReserved; | |
| 538 | + WORD XonLim; | |
| 539 | + WORD XoffLim; | |
| 540 | + BYTE ByteSize; | |
| 541 | + BYTE Parity; | |
| 542 | + BYTE StopBits; | |
| 543 | + char XonChar; | |
| 544 | + char XoffChar; | |
| 545 | + char ErrorChar; | |
| 546 | + char EofChar; | |
| 547 | + char EvtChar; | |
| 548 | + WORD wReserved1; | |
| 549 | +} DCB,*LPDCB; | |
| 550 | +typedef struct _COMM_CONFIG { | |
| 551 | + DWORD dwSize; | |
| 552 | + WORD wVersion; | |
| 553 | + WORD wReserved; | |
| 554 | + DCB dcb; | |
| 555 | + DWORD dwProviderSubType; | |
| 556 | + DWORD dwProviderOffset; | |
| 557 | + DWORD dwProviderSize; | |
| 558 | + WCHAR wcProviderData[1]; | |
| 559 | +} COMMCONFIG,*LPCOMMCONFIG; | |
| 560 | +typedef struct _COMMPROP { | |
| 561 | + WORD wPacketLength; | |
| 562 | + WORD wPacketVersion; | |
| 563 | + DWORD dwServiceMask; | |
| 564 | + DWORD dwReserved1; | |
| 565 | + DWORD dwMaxTxQueue; | |
| 566 | + DWORD dwMaxRxQueue; | |
| 567 | + DWORD dwMaxBaud; | |
| 568 | + DWORD dwProvSubType; | |
| 569 | + DWORD dwProvCapabilities; | |
| 570 | + DWORD dwSettableParams; | |
| 571 | + DWORD dwSettableBaud; | |
| 572 | + WORD wSettableData; | |
| 573 | + WORD wSettableStopParity; | |
| 574 | + DWORD dwCurrentTxQueue; | |
| 575 | + DWORD dwCurrentRxQueue; | |
| 576 | + DWORD dwProvSpec1; | |
| 577 | + DWORD dwProvSpec2; | |
| 578 | + WCHAR wcProvChar[1]; | |
| 579 | +} COMMPROP,*LPCOMMPROP; | |
| 580 | +typedef struct _COMMTIMEOUTS { | |
| 581 | + DWORD ReadIntervalTimeout; | |
| 582 | + DWORD ReadTotalTimeoutMultiplier; | |
| 583 | + DWORD ReadTotalTimeoutConstant; | |
| 584 | + DWORD WriteTotalTimeoutMultiplier; | |
| 585 | + DWORD WriteTotalTimeoutConstant; | |
| 586 | +} COMMTIMEOUTS,*LPCOMMTIMEOUTS; | |
| 587 | +typedef struct _COMSTAT { | |
| 588 | + DWORD fCtsHold:1; | |
| 589 | + DWORD fDsrHold:1; | |
| 590 | + DWORD fRlsdHold:1; | |
| 591 | + DWORD fXoffHold:1; | |
| 592 | + DWORD fXoffSent:1; | |
| 593 | + DWORD fEof:1; | |
| 594 | + DWORD fTxim:1; | |
| 595 | + DWORD fReserved:25; | |
| 596 | + DWORD cbInQue; | |
| 597 | + DWORD cbOutQue; | |
| 598 | +} COMSTAT,*LPCOMSTAT; | |
| 599 | +typedef DWORD (WINAPI *LPTHREAD_START_ROUTINE)(LPVOID); | |
| 600 | +typedef struct _CREATE_PROCESS_DEBUG_INFO { | |
| 601 | + HANDLE hFile; | |
| 602 | + HANDLE hProcess; | |
| 603 | + HANDLE hThread; | |
| 604 | + LPVOID lpBaseOfImage; | |
| 605 | + DWORD dwDebugInfoFileOffset; | |
| 606 | + DWORD nDebugInfoSize; | |
| 607 | + LPVOID lpThreadLocalBase; | |
| 608 | + LPTHREAD_START_ROUTINE lpStartAddress; | |
| 609 | + LPVOID lpImageName; | |
| 610 | + WORD fUnicode; | |
| 611 | +} CREATE_PROCESS_DEBUG_INFO,*LPCREATE_PROCESS_DEBUG_INFO; | |
| 612 | +typedef struct _CREATE_THREAD_DEBUG_INFO { | |
| 613 | + HANDLE hThread; | |
| 614 | + LPVOID lpThreadLocalBase; | |
| 615 | + LPTHREAD_START_ROUTINE lpStartAddress; | |
| 616 | +} CREATE_THREAD_DEBUG_INFO,*LPCREATE_THREAD_DEBUG_INFO; | |
| 617 | +typedef struct _EXCEPTION_DEBUG_INFO { | |
| 618 | + EXCEPTION_RECORD ExceptionRecord; | |
| 619 | + DWORD dwFirstChance; | |
| 620 | +} EXCEPTION_DEBUG_INFO,*LPEXCEPTION_DEBUG_INFO; | |
| 621 | +typedef struct _EXIT_THREAD_DEBUG_INFO { | |
| 622 | + DWORD dwExitCode; | |
| 623 | +} EXIT_THREAD_DEBUG_INFO,*LPEXIT_THREAD_DEBUG_INFO; | |
| 624 | +typedef struct _EXIT_PROCESS_DEBUG_INFO { | |
| 625 | + DWORD dwExitCode; | |
| 626 | +} EXIT_PROCESS_DEBUG_INFO,*LPEXIT_PROCESS_DEBUG_INFO; | |
| 627 | +typedef struct _LOAD_DLL_DEBUG_INFO { | |
| 628 | + HANDLE hFile; | |
| 629 | + LPVOID lpBaseOfDll; | |
| 630 | + DWORD dwDebugInfoFileOffset; | |
| 631 | + DWORD nDebugInfoSize; | |
| 632 | + LPVOID lpImageName; | |
| 633 | + WORD fUnicode; | |
| 634 | +} LOAD_DLL_DEBUG_INFO,*LPLOAD_DLL_DEBUG_INFO; | |
| 635 | +typedef struct _UNLOAD_DLL_DEBUG_INFO { | |
| 636 | + LPVOID lpBaseOfDll; | |
| 637 | +} UNLOAD_DLL_DEBUG_INFO,*LPUNLOAD_DLL_DEBUG_INFO; | |
| 638 | +typedef struct _OUTPUT_DEBUG_STRING_INFO { | |
| 639 | + LPSTR lpDebugStringData; | |
| 640 | + WORD fUnicode; | |
| 641 | + WORD nDebugStringLength; | |
| 642 | +} OUTPUT_DEBUG_STRING_INFO,*LPOUTPUT_DEBUG_STRING_INFO; | |
| 643 | +typedef struct _RIP_INFO { | |
| 644 | + DWORD dwError; | |
| 645 | + DWORD dwType; | |
| 646 | +} RIP_INFO,*LPRIP_INFO; | |
| 647 | +typedef struct _DEBUG_EVENT { | |
| 648 | + DWORD dwDebugEventCode; | |
| 649 | + DWORD dwProcessId; | |
| 650 | + DWORD dwThreadId; | |
| 651 | + union { | |
| 652 | + EXCEPTION_DEBUG_INFO Exception; | |
| 653 | + CREATE_THREAD_DEBUG_INFO CreateThread; | |
| 654 | + CREATE_PROCESS_DEBUG_INFO CreateProcessInfo; | |
| 655 | + EXIT_THREAD_DEBUG_INFO ExitThread; | |
| 656 | + EXIT_PROCESS_DEBUG_INFO ExitProcess; | |
| 657 | + LOAD_DLL_DEBUG_INFO LoadDll; | |
| 658 | + UNLOAD_DLL_DEBUG_INFO UnloadDll; | |
| 659 | + OUTPUT_DEBUG_STRING_INFO DebugString; | |
| 660 | + RIP_INFO RipInfo; | |
| 661 | + } u; | |
| 662 | +} DEBUG_EVENT,*LPDEBUG_EVENT; | |
| 663 | +typedef struct _OVERLAPPED { | |
| 664 | + DWORD Internal; | |
| 665 | + DWORD InternalHigh; | |
| 666 | + DWORD Offset; | |
| 667 | + DWORD OffsetHigh; | |
| 668 | + HANDLE hEvent; | |
| 669 | +} OVERLAPPED,*POVERLAPPED,*LPOVERLAPPED; | |
| 670 | +typedef struct _STARTUPINFOA { | |
| 671 | + DWORD cb; | |
| 672 | + LPSTR lpReserved; | |
| 673 | + LPSTR lpDesktop; | |
| 674 | + LPSTR lpTitle; | |
| 675 | + DWORD dwX; | |
| 676 | + DWORD dwY; | |
| 677 | + DWORD dwXSize; | |
| 678 | + DWORD dwYSize; | |
| 679 | + DWORD dwXCountChars; | |
| 680 | + DWORD dwYCountChars; | |
| 681 | + DWORD dwFillAttribute; | |
| 682 | + DWORD dwFlags; | |
| 683 | + WORD wShowWindow; | |
| 684 | + WORD cbReserved2; | |
| 685 | + PBYTE lpReserved2; | |
| 686 | + HANDLE hStdInput; | |
| 687 | + HANDLE hStdOutput; | |
| 688 | + HANDLE hStdError; | |
| 689 | +} STARTUPINFOA,*LPSTARTUPINFOA; | |
| 690 | +typedef struct _STARTUPINFOW { | |
| 691 | + DWORD cb; | |
| 692 | + LPWSTR lpReserved; | |
| 693 | + LPWSTR lpDesktop; | |
| 694 | + LPWSTR lpTitle; | |
| 695 | + DWORD dwX; | |
| 696 | + DWORD dwY; | |
| 697 | + DWORD dwXSize; | |
| 698 | + DWORD dwYSize; | |
| 699 | + DWORD dwXCountChars; | |
| 700 | + DWORD dwYCountChars; | |
| 701 | + DWORD dwFillAttribute; | |
| 702 | + DWORD dwFlags; | |
| 703 | + WORD wShowWindow; | |
| 704 | + WORD cbReserved2; | |
| 705 | + PBYTE lpReserved2; | |
| 706 | + HANDLE hStdInput; | |
| 707 | + HANDLE hStdOutput; | |
| 708 | + HANDLE hStdError; | |
| 709 | +} STARTUPINFOW,*LPSTARTUPINFOW; | |
| 710 | +typedef struct _PROCESS_INFORMATION { | |
| 711 | + HANDLE hProcess; | |
| 712 | + HANDLE hThread; | |
| 713 | + DWORD dwProcessId; | |
| 714 | + DWORD dwThreadId; | |
| 715 | +} PROCESS_INFORMATION,*LPPROCESS_INFORMATION; | |
| 716 | +typedef struct _CRITICAL_SECTION_DEBUG { | |
| 717 | + WORD Type; | |
| 718 | + WORD CreatorBackTraceIndex; | |
| 719 | + struct _CRITICAL_SECTION *CriticalSection; | |
| 720 | + LIST_ENTRY ProcessLocksList; | |
| 721 | + DWORD EntryCount; | |
| 722 | + DWORD ContentionCount; | |
| 723 | + DWORD Spare [2]; | |
| 724 | +} CRITICAL_SECTION_DEBUG,*PCRITICAL_SECTION_DEBUG; | |
| 725 | +typedef struct _CRITICAL_SECTION { | |
| 726 | + PCRITICAL_SECTION_DEBUG DebugInfo; | |
| 727 | + LONG LockCount; | |
| 728 | + LONG RecursionCount; | |
| 729 | + HANDLE OwningThread; | |
| 730 | + HANDLE LockSemaphore; | |
| 731 | + DWORD SpinCount; | |
| 732 | +} CRITICAL_SECTION,*PCRITICAL_SECTION,*LPCRITICAL_SECTION; | |
| 733 | +typedef struct _SYSTEMTIME { | |
| 734 | + WORD wYear; | |
| 735 | + WORD wMonth; | |
| 736 | + WORD wDayOfWeek; | |
| 737 | + WORD wDay; | |
| 738 | + WORD wHour; | |
| 739 | + WORD wMinute; | |
| 740 | + WORD wSecond; | |
| 741 | + WORD wMilliseconds; | |
| 742 | +} SYSTEMTIME,*LPSYSTEMTIME; | |
| 743 | +typedef struct _WIN32_FILE_ATTRIBUTE_DATA { | |
| 744 | + DWORD dwFileAttributes; | |
| 745 | + FILETIME ftCreationTime; | |
| 746 | + FILETIME ftLastAccessTime; | |
| 747 | + FILETIME ftLastWriteTime; | |
| 748 | + DWORD nFileSizeHigh; | |
| 749 | + DWORD nFileSizeLow; | |
| 750 | +} WIN32_FILE_ATTRIBUTE_DATA,*LPWIN32_FILE_ATTRIBUTE_DATA; | |
| 751 | +typedef struct _WIN32_FIND_DATAA { | |
| 752 | + DWORD dwFileAttributes; | |
| 753 | + FILETIME ftCreationTime; | |
| 754 | + FILETIME ftLastAccessTime; | |
| 755 | + FILETIME ftLastWriteTime; | |
| 756 | + DWORD nFileSizeHigh; | |
| 757 | + DWORD nFileSizeLow; | |
| 758 | + DWORD dwReserved0; | |
| 759 | + DWORD dwReserved1; | |
| 760 | + CHAR cFileName[MAX_PATH]; | |
| 761 | + CHAR cAlternateFileName[14]; | |
| 762 | +} WIN32_FIND_DATAA,*LPWIN32_FIND_DATAA; | |
| 763 | +typedef struct _WIN32_FIND_DATAW { | |
| 764 | + DWORD dwFileAttributes; | |
| 765 | + FILETIME ftCreationTime; | |
| 766 | + FILETIME ftLastAccessTime; | |
| 767 | + FILETIME ftLastWriteTime; | |
| 768 | + DWORD nFileSizeHigh; | |
| 769 | + DWORD nFileSizeLow; | |
| 770 | + DWORD dwReserved0; | |
| 771 | + DWORD dwReserved1; | |
| 772 | + WCHAR cFileName[MAX_PATH]; | |
| 773 | + WCHAR cAlternateFileName[14]; | |
| 774 | +} WIN32_FIND_DATAW,*LPWIN32_FIND_DATAW; | |
| 775 | +typedef struct _WIN32_STREAM_ID { | |
| 776 | + DWORD dwStreamId; | |
| 777 | + DWORD dwStreamAttributes; | |
| 778 | + LARGE_INTEGER Size; | |
| 779 | + DWORD dwStreamNameSize; | |
| 780 | + WCHAR cStreamName[ANYSIZE_ARRAY]; | |
| 781 | +} WIN32_STREAM_ID; | |
| 782 | +typedef enum _FINDEX_INFO_LEVELS { | |
| 783 | + FindExInfoStandard, | |
| 784 | + FindExInfoMaxInfoLevel | |
| 785 | +} FINDEX_INFO_LEVELS; | |
| 786 | +typedef enum _FINDEX_SEARCH_OPS { | |
| 787 | + FindExSearchNameMatch, | |
| 788 | + FindExSearchLimitToDirectories, | |
| 789 | + FindExSearchLimitToDevices, | |
| 790 | + FindExSearchMaxSearchOp | |
| 791 | +} FINDEX_SEARCH_OPS; | |
| 792 | +typedef enum _ACL_INFORMATION_CLASS { | |
| 793 | + AclRevisionInformation=1, | |
| 794 | + AclSizeInformation | |
| 795 | +} ACL_INFORMATION_CLASS; | |
| 796 | +typedef struct tagHW_PROFILE_INFOA { | |
| 797 | + DWORD dwDockInfo; | |
| 798 | + CHAR szHwProfileGuid[HW_PROFILE_GUIDLEN]; | |
| 799 | + CHAR szHwProfileName[MAX_PROFILE_LEN]; | |
| 800 | +} HW_PROFILE_INFOA,*LPHW_PROFILE_INFOA; | |
| 801 | +typedef struct tagHW_PROFILE_INFOW { | |
| 802 | + DWORD dwDockInfo; | |
| 803 | + WCHAR szHwProfileGuid[HW_PROFILE_GUIDLEN]; | |
| 804 | + WCHAR szHwProfileName[MAX_PROFILE_LEN]; | |
| 805 | +} HW_PROFILE_INFOW,*LPHW_PROFILE_INFOW; | |
| 806 | +typedef enum _GET_FILEEX_INFO_LEVELS { | |
| 807 | + GetFileExInfoStandard, | |
| 808 | + GetFileExMaxInfoLevel | |
| 809 | +} GET_FILEEX_INFO_LEVELS; | |
| 810 | +typedef struct _SYSTEM_INFO { | |
| 811 | + _ANONYMOUS_UNION union { | |
| 812 | + DWORD dwOemId; | |
| 813 | + _ANONYMOUS_STRUCT struct { | |
| 814 | + WORD wProcessorArchitecture; | |
| 815 | + WORD wReserved; | |
| 816 | + } DUMMYSTRUCTNAME; | |
| 817 | + } DUMMYUNIONNAME; | |
| 818 | + DWORD dwPageSize; | |
| 819 | + PVOID lpMinimumApplicationAddress; | |
| 820 | + PVOID lpMaximumApplicationAddress; | |
| 821 | + DWORD dwActiveProcessorMask; | |
| 822 | + DWORD dwNumberOfProcessors; | |
| 823 | + DWORD dwProcessorType; | |
| 824 | + DWORD dwAllocationGranularity; | |
| 825 | + WORD wProcessorLevel; | |
| 826 | + WORD wProcessorRevision; | |
| 827 | +} SYSTEM_INFO,*LPSYSTEM_INFO; | |
| 828 | +typedef struct _SYSTEM_POWER_STATUS { | |
| 829 | + BYTE ACLineStatus; | |
| 830 | + BYTE BatteryFlag; | |
| 831 | + BYTE BatteryLifePercent; | |
| 832 | + BYTE Reserved1; | |
| 833 | + DWORD BatteryLifeTime; | |
| 834 | + DWORD BatteryFullLifeTime; | |
| 835 | +} SYSTEM_POWER_STATUS,*LPSYSTEM_POWER_STATUS; | |
| 836 | +typedef struct _TIME_ZONE_INFORMATION { | |
| 837 | + LONG Bias; | |
| 838 | + WCHAR StandardName[32]; | |
| 839 | + SYSTEMTIME StandardDate; | |
| 840 | + LONG StandardBias; | |
| 841 | + WCHAR DaylightName[32]; | |
| 842 | + SYSTEMTIME DaylightDate; | |
| 843 | + LONG DaylightBias; | |
| 844 | +} TIME_ZONE_INFORMATION,*LPTIME_ZONE_INFORMATION; | |
| 845 | +typedef struct _MEMORYSTATUS { | |
| 846 | + DWORD dwLength; | |
| 847 | + DWORD dwMemoryLoad; | |
| 848 | + DWORD dwTotalPhys; | |
| 849 | + DWORD dwAvailPhys; | |
| 850 | + DWORD dwTotalPageFile; | |
| 851 | + DWORD dwAvailPageFile; | |
| 852 | + DWORD dwTotalVirtual; | |
| 853 | + DWORD dwAvailVirtual; | |
| 854 | +} MEMORYSTATUS,*LPMEMORYSTATUS; | |
| 855 | +typedef struct _LDT_ENTRY { | |
| 856 | + WORD LimitLow; | |
| 857 | + WORD BaseLow; | |
| 858 | + union { | |
| 859 | + struct { | |
| 860 | + BYTE BaseMid; | |
| 861 | + BYTE Flags1; | |
| 862 | + BYTE Flags2; | |
| 863 | + BYTE BaseHi; | |
| 864 | + } Bytes; | |
| 865 | + struct { | |
| 866 | + DWORD BaseMid:8; | |
| 867 | + DWORD Type:5; | |
| 868 | + DWORD Dpl:2; | |
| 869 | + DWORD Pres:1; | |
| 870 | + DWORD LimitHi:4; | |
| 871 | + DWORD Sys:1; | |
| 872 | + DWORD Reserved_0:1; | |
| 873 | + DWORD Default_Big:1; | |
| 874 | + DWORD Granularity:1; | |
| 875 | + DWORD BaseHi:8; | |
| 876 | + } Bits; | |
| 877 | + } HighWord; | |
| 878 | +} LDT_ENTRY,*PLDT_ENTRY,*LPLDT_ENTRY; | |
| 879 | +typedef struct _PROCESS_HEAP_ENTRY { | |
| 880 | + PVOID lpData; | |
| 881 | + DWORD cbData; | |
| 882 | + BYTE cbOverhead; | |
| 883 | + BYTE iRegionIndex; | |
| 884 | + WORD wFlags; | |
| 885 | + _ANONYMOUS_UNION union { | |
| 886 | + struct { | |
| 887 | + HANDLE hMem; | |
| 888 | + DWORD dwReserved[3]; | |
| 889 | + } Block; | |
| 890 | + struct { | |
| 891 | + DWORD dwCommittedSize; | |
| 892 | + DWORD dwUnCommittedSize; | |
| 893 | + LPVOID lpFirstBlock; | |
| 894 | + LPVOID lpLastBlock; | |
| 895 | + } Region; | |
| 896 | + } DUMMYUNIONNAME; | |
| 897 | +} PROCESS_HEAP_ENTRY,*LPPROCESS_HEAP_ENTRY; | |
| 898 | +typedef struct _OFSTRUCT { | |
| 899 | + BYTE cBytes; | |
| 900 | + BYTE fFixedDisk; | |
| 901 | + WORD nErrCode; | |
| 902 | + WORD Reserved1; | |
| 903 | + WORD Reserved2; | |
| 904 | + CHAR szPathName[OFS_MAXPATHNAME]; | |
| 905 | +} OFSTRUCT,*LPOFSTRUCT,*POFSTRUCT; | |
| 906 | +typedef struct _WIN_CERTIFICATE { | |
| 907 | + DWORD dwLength; | |
| 908 | + WORD wRevision; | |
| 909 | + WORD wCertificateType; | |
| 910 | + BYTE bCertificate[1]; | |
| 911 | +} WIN_CERTIFICATE, *LPWIN_CERTIFICATE; | |
| 912 | + | |
| 913 | +typedef DWORD(WINAPI *LPPROGRESS_ROUTINE)(LARGE_INTEGER,LARGE_INTEGER,LARGE_INTEGER,LARGE_INTEGER,DWORD,DWORD,HANDLE,HANDLE,LPVOID); | |
| 914 | +typedef void(WINAPI *LPFIBER_START_ROUTINE)(PVOID); | |
| 915 | +typedef BOOL(CALLBACK *ENUMRESLANGPROC)(HMODULE,LPCTSTR,LPCTSTR,WORD,LONG); | |
| 916 | +typedef BOOL(CALLBACK *ENUMRESNAMEPROC)(HMODULE,LPCTSTR,LPTSTR,LONG); | |
| 917 | +typedef BOOL(CALLBACK *ENUMRESTYPEPROC)(HMODULE,LPTSTR,LONG); | |
| 918 | +typedef void(CALLBACK *LPOVERLAPPED_COMPLETION_ROUTINE)(DWORD,DWORD,LPOVERLAPPED); | |
| 919 | +typedef LONG(CALLBACK *PTOP_LEVEL_EXCEPTION_FILTER)(LPEXCEPTION_POINTERS); | |
| 920 | +typedef PTOP_LEVEL_EXCEPTION_FILTER LPTOP_LEVEL_EXCEPTION_FILTER; | |
| 921 | +typedef void(APIENTRY *PAPCFUNC)(DWORD); | |
| 922 | +typedef void(CALLBACK *PTIMERAPCROUTINE)(PVOID,DWORD,DWORD); | |
| 923 | +#define MAKEINTATOM(i) (LPTSTR)((DWORD)((WORD)(i))) | |
| 924 | +/* Functions */ | |
| 925 | +#ifndef UNDER_CE | |
| 926 | +int APIENTRY WinMain(HINSTANCE,HINSTANCE,LPSTR,int); | |
| 927 | +#else | |
| 928 | +int APIENTRY WinMain(HINSTANCE,HINSTANCE,LPWSTR,int); | |
| 929 | +#endif | |
| 930 | +int APIENTRY wWinMain(HINSTANCE,HINSTANCE,LPWSTR,int); | |
| 931 | +long WINAPI _hread(HFILE,LPVOID,long); | |
| 932 | +long WINAPI _hwrite(HFILE,LPCSTR,long); | |
| 933 | +HFILE WINAPI _lclose(HFILE); | |
| 934 | +HFILE WINAPI _lcreat(LPCSTR,int); | |
| 935 | +LONG WINAPI _llseek(HFILE,LONG,int); | |
| 936 | +HFILE WINAPI _lopen(LPCSTR,int); | |
| 937 | +UINT WINAPI _lread(HFILE,LPVOID,UINT); | |
| 938 | +UINT WINAPI _lwrite(HFILE,LPCSTR,UINT); | |
| 939 | +#define AbnormalTermination() FALSE | |
| 940 | +BOOL WINAPI AccessCheck(PSECURITY_DESCRIPTOR,HANDLE,DWORD,PGENERIC_MAPPING,PPRIVILEGE_SET,PDWORD,PDWORD,PBOOL); | |
| 941 | +BOOL WINAPI AccessCheckAndAuditAlarmA(LPCSTR,LPVOID,LPSTR,LPSTR,PSECURITY_DESCRIPTOR,DWORD,PGENERIC_MAPPING,BOOL,PDWORD,PBOOL,PBOOL); | |
| 942 | +BOOL WINAPI AccessCheckAndAuditAlarmW(LPCWSTR,LPVOID,LPWSTR,LPWSTR,PSECURITY_DESCRIPTOR,DWORD,PGENERIC_MAPPING,BOOL,PDWORD,PBOOL,PBOOL); | |
| 943 | +BOOL WINAPI AddAccessAllowedAce(PACL,DWORD,DWORD,PSID); | |
| 944 | +BOOL WINAPI AddAccessDeniedAce(PACL,DWORD,DWORD,PSID); | |
| 945 | +BOOL WINAPI AddAce(PACL,DWORD,DWORD,PVOID,DWORD); | |
| 946 | +ATOM WINAPI AddAtomA(LPCSTR); | |
| 947 | +ATOM WINAPI AddAtomW(LPCWSTR); | |
| 948 | +BOOL WINAPI AddAuditAccessAce(PACL,DWORD,DWORD,PSID,BOOL,BOOL); | |
| 949 | +BOOL WINAPI AdjustTokenGroups(HANDLE,BOOL,PTOKEN_GROUPS,DWORD,PTOKEN_GROUPS,PDWORD); | |
| 950 | +BOOL WINAPI AdjustTokenPrivileges(HANDLE,BOOL,PTOKEN_PRIVILEGES,DWORD,PTOKEN_PRIVILEGES,PDWORD); | |
| 951 | +BOOL WINAPI AllocateAndInitializeSid(PSID_IDENTIFIER_AUTHORITY,BYTE,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,PSID*); | |
| 952 | +BOOL WINAPI AllocateLocallyUniqueId(PLUID); | |
| 953 | +BOOL WINAPI AreAllAccessesGranted(DWORD,DWORD); | |
| 954 | +BOOL WINAPI AreAnyAccessesGranted(DWORD,DWORD); | |
| 955 | +BOOL WINAPI AreFileApisANSI(void); | |
| 956 | +BOOL WINAPI BackupEventLogA(HANDLE,LPCSTR); | |
| 957 | +BOOL WINAPI BackupEventLogW(HANDLE,LPCWSTR); | |
| 958 | +BOOL WINAPI BackupRead(HANDLE,PBYTE,DWORD,PDWORD,BOOL,BOOL,PVOID); | |
| 959 | +BOOL WINAPI BackupSeek(HANDLE,DWORD,DWORD,PDWORD,PDWORD,PVOID); | |
| 960 | +BOOL WINAPI BackupWrite(HANDLE,PBYTE,DWORD,PDWORD,BOOL,BOOL,PVOID); | |
| 961 | +BOOL WINAPI Beep(DWORD,DWORD); | |
| 962 | +HANDLE WINAPI BeginUpdateResourceA(LPCSTR,BOOL); | |
| 963 | +HANDLE WINAPI BeginUpdateResourceW(LPCWSTR,BOOL); | |
| 964 | +BOOL WINAPI BuildCommDCBA(LPCSTR,LPDCB); | |
| 965 | +BOOL WINAPI BuildCommDCBW(LPCWSTR,LPDCB); | |
| 966 | +BOOL WINAPI BuildCommDCBAndTimeoutsA(LPCSTR,LPDCB,LPCOMMTIMEOUTS); | |
| 967 | +BOOL WINAPI BuildCommDCBAndTimeoutsW(LPCWSTR,LPDCB,LPCOMMTIMEOUTS); | |
| 968 | +BOOL WINAPI CallNamedPipeA(LPCSTR,PVOID,DWORD,PVOID,DWORD,PDWORD,DWORD); | |
| 969 | +BOOL WINAPI CallNamedPipeW(LPCWSTR,PVOID,DWORD,PVOID,DWORD,PDWORD,DWORD); | |
| 970 | +BOOL WINAPI CancelIo(HANDLE); | |
| 971 | +BOOL WINAPI CancelWaitableTimer(HANDLE); | |
| 972 | +BOOL WINAPI ClearCommBreak(HANDLE); | |
| 973 | +BOOL WINAPI ClearCommError(HANDLE,PDWORD,LPCOMSTAT); | |
| 974 | +BOOL WINAPI ClearEventLogA(HANDLE,LPCSTR); | |
| 975 | +BOOL WINAPI ClearEventLogW(HANDLE,LPCWSTR); | |
| 976 | +BOOL WINAPI CloseEventLog(HANDLE); | |
| 977 | +BOOL WINAPI CloseHandle(HANDLE); | |
| 978 | +BOOL WINAPI CommConfigDialogA(LPCSTR,HWND,LPCOMMCONFIG); | |
| 979 | +BOOL WINAPI CommConfigDialogW(LPCWSTR,HWND,LPCOMMCONFIG); | |
| 980 | +LONG WINAPI CompareFileTime(CONST FILETIME*,CONST FILETIME*); | |
| 981 | +BOOL WINAPI ConnectNamedPipe(HANDLE,LPOVERLAPPED); | |
| 982 | +BOOL WINAPI ContinueDebugEvent(DWORD,DWORD,DWORD); | |
| 983 | +PVOID WINAPI ConvertThreadToFiber(PVOID); | |
| 984 | +BOOL WINAPI CopyFileA(LPCSTR,LPCSTR,BOOL); | |
| 985 | +BOOL WINAPI CopyFileW(LPCWSTR,LPCWSTR,BOOL); | |
| 986 | +BOOL WINAPI CopyFileExA(LPCSTR,LPCSTR,LPPROGRESS_ROUTINE,LPVOID,LPBOOL,DWORD); | |
| 987 | +BOOL WINAPI CopyFileExW(LPCWSTR,LPCWSTR,LPPROGRESS_ROUTINE,LPVOID,LPBOOL,DWORD); | |
| 988 | +#define RtlMoveMemory memmove | |
| 989 | +#define RtlCopyMemory memcpy | |
| 990 | +#define RtlFillMemory(d,l,f) memset((d), (f), (l)) | |
| 991 | +#define RtlZeroMemory(d,l) RtlFillMemory((d),(l),0) | |
| 992 | +#define MoveMemory RtlMoveMemory | |
| 993 | +#define CopyMemory RtlCopyMemory | |
| 994 | +#define FillMemory RtlFillMemory | |
| 995 | +#define ZeroMemory RtlZeroMemory | |
| 996 | +BOOL WINAPI CopySid(DWORD,PSID,PSID); | |
| 997 | +BOOL WINAPI CreateDirectoryA(LPCSTR,LPSECURITY_ATTRIBUTES); | |
| 998 | +BOOL WINAPI CreateDirectoryW(LPCWSTR,LPSECURITY_ATTRIBUTES); | |
| 999 | +BOOL WINAPI CreateDirectoryExA(LPCSTR,LPCSTR,LPSECURITY_ATTRIBUTES); | |
| 1000 | +BOOL WINAPI CreateDirectoryExW(LPCWSTR,LPCWSTR,LPSECURITY_ATTRIBUTES); | |
| 1001 | +HANDLE WINAPI CreateEventA(LPSECURITY_ATTRIBUTES,BOOL,BOOL,LPCSTR); | |
| 1002 | +HANDLE WINAPI CreateEventW(LPSECURITY_ATTRIBUTES,BOOL,BOOL,LPCWSTR); | |
| 1003 | +LPVOID WINAPI CreateFiber(DWORD,LPFIBER_START_ROUTINE,LPVOID); | |
| 1004 | +HANDLE WINAPI CreateFileA(LPCSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE); | |
| 1005 | +HANDLE WINAPI CreateFileW(LPCWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE); | |
| 1006 | +HANDLE WINAPI CreateFileMappingA(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,DWORD,DWORD,LPCSTR); | |
| 1007 | +HANDLE WINAPI CreateFileMappingW(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,DWORD,DWORD,LPCWSTR); | |
| 1008 | +HANDLE WINAPI CreateHardLinkA(LPCSTR,LPCSTR,LPSECURITY_ATTRIBUTES); | |
| 1009 | +HANDLE WINAPI CreateHardLinkW(LPCWSTR,LPCWSTR,LPSECURITY_ATTRIBUTES); | |
| 1010 | +HANDLE WINAPI CreateIoCompletionPort(HANDLE,HANDLE,DWORD,DWORD); | |
| 1011 | +HANDLE WINAPI CreateMailslotA(LPCSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES); | |
| 1012 | +HANDLE WINAPI CreateMailslotW(LPCWSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES); | |
| 1013 | +HANDLE WINAPI CreateMutexA(LPSECURITY_ATTRIBUTES,BOOL,LPCSTR); | |
| 1014 | +HANDLE WINAPI CreateMutexW(LPSECURITY_ATTRIBUTES,BOOL,LPCWSTR); | |
| 1015 | +HANDLE WINAPI CreateNamedPipeA(LPCSTR,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPSECURITY_ATTRIBUTES); | |
| 1016 | +HANDLE WINAPI CreateNamedPipeW(LPCWSTR,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPSECURITY_ATTRIBUTES); | |
| 1017 | +BOOL WINAPI CreatePipe(PHANDLE,PHANDLE,LPSECURITY_ATTRIBUTES,DWORD); | |
| 1018 | +BOOL WINAPI CreatePrivateObjectSecurity(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR*,BOOL,HANDLE,PGENERIC_MAPPING); | |
| 1019 | +BOOL WINAPI CreateProcessA(LPCSTR,LPSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCSTR,LPSTARTUPINFOA,LPPROCESS_INFORMATION); | |
| 1020 | +BOOL WINAPI CreateProcessW(LPCWSTR,LPWSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION); | |
| 1021 | +BOOL WINAPI CreateProcessAsUserA(HANDLE,LPCSTR,LPSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCSTR,LPSTARTUPINFOA,LPPROCESS_INFORMATION); | |
| 1022 | +BOOL WINAPI CreateProcessAsUserW(HANDLE,LPCWSTR,LPWSTR,LPSECURITY_ATTRIBUTES,LPSECURITY_ATTRIBUTES,BOOL,DWORD,PVOID,LPCWSTR,LPSTARTUPINFOW,LPPROCESS_INFORMATION); | |
| 1023 | +HANDLE WINAPI CreateRemoteThread(HANDLE,LPSECURITY_ATTRIBUTES,DWORD,LPTHREAD_START_ROUTINE,LPVOID,DWORD,LPDWORD); | |
| 1024 | +HANDLE WINAPI CreateSemaphoreA(LPSECURITY_ATTRIBUTES,LONG,LONG,LPCSTR); | |
| 1025 | +HANDLE WINAPI CreateSemaphoreW(LPSECURITY_ATTRIBUTES,LONG,LONG,LPCWSTR); | |
| 1026 | +DWORD WINAPI CreateTapePartition(HANDLE,DWORD,DWORD,DWORD); | |
| 1027 | +HANDLE WINAPI CreateThread(LPSECURITY_ATTRIBUTES,DWORD,LPTHREAD_START_ROUTINE,PVOID,DWORD,PDWORD); | |
| 1028 | +HANDLE WINAPI CreateWaitableTimerA(LPSECURITY_ATTRIBUTES,BOOL,LPCSTR); | |
| 1029 | +HANDLE WINAPI CreateWaitableTimerW(LPSECURITY_ATTRIBUTES,BOOL,LPCWSTR); | |
| 1030 | +BOOL WINAPI DebugActiveProcess(DWORD); | |
| 1031 | +void WINAPI DebugBreak(void); | |
| 1032 | +BOOL WINAPI DefineDosDeviceA(DWORD,LPCSTR,LPCSTR); | |
| 1033 | +BOOL WINAPI DefineDosDeviceW(DWORD,LPCWSTR,LPCWSTR); | |
| 1034 | +#define DefineHandleTable(w) ((w),TRUE) | |
| 1035 | +BOOL WINAPI DeleteAce(PACL,DWORD); | |
| 1036 | +ATOM WINAPI DeleteAtom(ATOM); | |
| 1037 | +void WINAPI DeleteCriticalSection(PCRITICAL_SECTION); | |
| 1038 | +void WINAPI DeleteFiber(PVOID); | |
| 1039 | +BOOL WINAPI DeleteFileA(LPCSTR); | |
| 1040 | +BOOL WINAPI DeleteFileW(LPCWSTR); | |
| 1041 | +BOOL WINAPI DeregisterEventSource(HANDLE); | |
| 1042 | +BOOL WINAPI DestroyPrivateObjectSecurity(PSECURITY_DESCRIPTOR*); | |
| 1043 | +BOOL WINAPI DeviceIoControl(HANDLE,DWORD,PVOID,DWORD,PVOID,DWORD,PDWORD,POVERLAPPED); | |
| 1044 | +BOOL WINAPI DisableThreadLibraryCalls(HMODULE); | |
| 1045 | +BOOL WINAPI DisconnectNamedPipe(HANDLE); | |
| 1046 | +BOOL WINAPI DosDateTimeToFileTime(WORD,WORD,LPFILETIME); | |
| 1047 | +BOOL WINAPI DuplicateHandle(HANDLE,HANDLE,HANDLE,PHANDLE,DWORD,BOOL,DWORD); | |
| 1048 | +BOOL WINAPI DuplicateToken(HANDLE,SECURITY_IMPERSONATION_LEVEL,PHANDLE); | |
| 1049 | +BOOL WINAPI DuplicateTokenEx(HANDLE,DWORD,LPSECURITY_ATTRIBUTES,SECURITY_IMPERSONATION_LEVEL,TOKEN_TYPE,PHANDLE); | |
| 1050 | +BOOL WINAPI EndUpdateResourceA(HANDLE,BOOL); | |
| 1051 | +BOOL WINAPI EndUpdateResourceW(HANDLE,BOOL); | |
| 1052 | +void WINAPI EnterCriticalSection(LPCRITICAL_SECTION); | |
| 1053 | +BOOL WINAPI EnumResourceLanguagesA(HINSTANCE,LPCSTR,LPCSTR,ENUMRESLANGPROC,LONG); | |
| 1054 | +BOOL WINAPI EnumResourceLanguagesW(HINSTANCE,LPCWSTR,LPCWSTR,ENUMRESLANGPROC,LONG); | |
| 1055 | +BOOL WINAPI EnumResourceNamesA(HINSTANCE,LPCSTR,ENUMRESNAMEPROC,LONG); | |
| 1056 | +BOOL WINAPI EnumResourceNamesW(HINSTANCE,LPCWSTR,ENUMRESNAMEPROC,LONG); | |
| 1057 | +BOOL WINAPI EnumResourceTypesA(HINSTANCE,ENUMRESTYPEPROC,LONG); | |
| 1058 | +BOOL WINAPI EnumResourceTypesW(HINSTANCE,ENUMRESTYPEPROC,LONG); | |
| 1059 | +BOOL WINAPI EqualPrefixSid(PSID,PSID); | |
| 1060 | +BOOL WINAPI EqualSid(PSID,PSID); | |
| 1061 | +DWORD WINAPI EraseTape(HANDLE,DWORD,BOOL); | |
| 1062 | +BOOL WINAPI EscapeCommFunction(HANDLE,DWORD); | |
| 1063 | +DECLSPEC_NORETURN void WINAPI ExitProcess(UINT); | |
| 1064 | +DECLSPEC_NORETURN void WINAPI ExitThread(DWORD); | |
| 1065 | +DWORD WINAPI ExpandEnvironmentStringsA(LPCSTR,LPSTR,DWORD); | |
| 1066 | +DWORD WINAPI ExpandEnvironmentStringsW(LPCWSTR,LPWSTR,DWORD); | |
| 1067 | +void WINAPI FatalAppExitA(UINT,LPCSTR); | |
| 1068 | +void WINAPI FatalAppExitW(UINT,LPCWSTR); | |
| 1069 | +void WINAPI FatalExit(int); | |
| 1070 | +BOOL WINAPI FileTimeToDosDateTime(CONST FILETIME *,LPWORD,LPWORD); | |
| 1071 | +BOOL WINAPI FileTimeToLocalFileTime(FILETIME *,LPFILETIME); | |
| 1072 | +BOOL WINAPI FileTimeToSystemTime(CONST FILETIME *,LPSYSTEMTIME); | |
| 1073 | +ATOM WINAPI FindAtomA(LPCSTR); | |
| 1074 | +ATOM WINAPI FindAtomW(LPCWSTR); | |
| 1075 | +BOOL WINAPI FindClose(HANDLE); | |
| 1076 | +BOOL WINAPI FindCloseChangeNotification(HANDLE); | |
| 1077 | +HANDLE WINAPI FindFirstChangeNotificationA(LPCSTR,BOOL,DWORD); | |
| 1078 | +HANDLE WINAPI FindFirstChangeNotificationW(LPCWSTR,BOOL,DWORD); | |
| 1079 | +HANDLE WINAPI FindFirstFileA(LPCSTR,LPWIN32_FIND_DATAA); | |
| 1080 | +HANDLE WINAPI FindFirstFileW(LPCWSTR,LPWIN32_FIND_DATAW); | |
| 1081 | +HANDLE WINAPI FindFirstFileExA(LPCSTR,FINDEX_INFO_LEVELS,PVOID,FINDEX_SEARCH_OPS,PVOID,DWORD); | |
| 1082 | +HANDLE WINAPI FindFirstFileExW(LPCWSTR,FINDEX_INFO_LEVELS,PVOID,FINDEX_SEARCH_OPS,PVOID,DWORD); | |
| 1083 | +BOOL WINAPI FindFirstFreeAce(PACL,PVOID*); | |
| 1084 | +BOOL WINAPI FindNextChangeNotification(HANDLE); | |
| 1085 | +BOOL WINAPI FindNextFileA(HANDLE,LPWIN32_FIND_DATAA); | |
| 1086 | +BOOL WINAPI FindNextFileW(HANDLE,LPWIN32_FIND_DATAW); | |
| 1087 | +HRSRC WINAPI FindResourceA(HMODULE,LPCSTR,LPCSTR); | |
| 1088 | +HRSRC WINAPI FindResourceW(HINSTANCE,LPCWSTR,LPCWSTR); | |
| 1089 | +HRSRC WINAPI FindResourceExA(HINSTANCE,LPCSTR,LPCSTR,WORD); | |
| 1090 | +HRSRC WINAPI FindResourceExW(HINSTANCE,LPCWSTR,LPCWSTR,WORD); | |
| 1091 | +BOOL WINAPI FlushFileBuffers(HANDLE); | |
| 1092 | +BOOL WINAPI FlushInstructionCache(HANDLE,PCVOID,DWORD); | |
| 1093 | +BOOL WINAPI FlushViewOfFile(PCVOID,DWORD); | |
| 1094 | +DWORD WINAPI FormatMessageA(DWORD,PCVOID,DWORD,DWORD,LPSTR,DWORD,va_list*); | |
| 1095 | +DWORD WINAPI FormatMessageW(DWORD,PCVOID,DWORD,DWORD,LPWSTR,DWORD,va_list*); | |
| 1096 | +BOOL WINAPI FreeEnvironmentStringsA(LPSTR); | |
| 1097 | +BOOL WINAPI FreeEnvironmentStringsW(LPWSTR); | |
| 1098 | +BOOL WINAPI FreeLibrary(HMODULE); | |
| 1099 | +DECLSPEC_NORETURN void WINAPI FreeLibraryAndExitThread(HMODULE,DWORD); | |
| 1100 | +#define FreeModule(m) FreeLibrary(m) | |
| 1101 | +#define FreeProcInstance(p) (void)(p) | |
| 1102 | +#ifndef XFree86Server | |
| 1103 | +BOOL WINAPI FreeResource(HGLOBAL); | |
| 1104 | +#endif /* ndef XFree86Server */ | |
| 1105 | +PVOID WINAPI FreeSid(PSID); | |
| 1106 | +BOOL WINAPI GetAce(PACL,DWORD,PVOID); | |
| 1107 | +BOOL WINAPI GetAclInformation(PACL,PVOID,DWORD,ACL_INFORMATION_CLASS); | |
| 1108 | +UINT WINAPI GetAtomNameA(ATOM,LPSTR,int); | |
| 1109 | +UINT WINAPI GetAtomNameW(ATOM,LPWSTR,int); | |
| 1110 | +BOOL WINAPI GetBinaryTypeA(LPCSTR,PDWORD); | |
| 1111 | +BOOL WINAPI GetBinaryTypeW(LPCWSTR,PDWORD); | |
| 1112 | +LPSTR WINAPI GetCommandLineA(VOID); | |
| 1113 | +LPWSTR WINAPI GetCommandLineW(VOID); | |
| 1114 | +BOOL WINAPI GetCommConfig(HANDLE,LPCOMMCONFIG,PDWORD); | |
| 1115 | +BOOL WINAPI GetCommMask(HANDLE,PDWORD); | |
| 1116 | +BOOL WINAPI GetCommModemStatus(HANDLE,PDWORD); | |
| 1117 | +BOOL WINAPI GetCommProperties(HANDLE,LPCOMMPROP); | |
| 1118 | +BOOL WINAPI GetCommState(HANDLE,LPDCB); | |
| 1119 | +BOOL WINAPI GetCommTimeouts(HANDLE,LPCOMMTIMEOUTS); | |
| 1120 | +DWORD WINAPI GetCompressedFileSizeA(LPCSTR,PDWORD); | |
| 1121 | +DWORD WINAPI GetCompressedFileSizeW(LPCWSTR,PDWORD); | |
| 1122 | +BOOL WINAPI GetComputerNameA(LPSTR,PDWORD); | |
| 1123 | +BOOL WINAPI GetComputerNameW(LPWSTR,PDWORD); | |
| 1124 | +DWORD WINAPI GetCurrentDirectoryA(DWORD,LPSTR); | |
| 1125 | +DWORD WINAPI GetCurrentDirectoryW(DWORD,LPWSTR); | |
| 1126 | +BOOL WINAPI GetCurrentHwProfileA(LPHW_PROFILE_INFOA); | |
| 1127 | +BOOL WINAPI GetCurrentHwProfileW(LPHW_PROFILE_INFOW); | |
| 1128 | +HANDLE WINAPI GetCurrentProcess(void); | |
| 1129 | +DWORD WINAPI GetCurrentProcessId(void); | |
| 1130 | +HANDLE WINAPI GetCurrentThread(void); | |
| 1131 | +DWORD WINAPI GetCurrentThreadId(void); | |
| 1132 | +#define GetCurrentTime GetTickCount | |
| 1133 | +BOOL WINAPI GetDefaultCommConfigA(LPCSTR,LPCOMMCONFIG,PDWORD); | |
| 1134 | +BOOL WINAPI GetDefaultCommConfigW(LPCWSTR,LPCOMMCONFIG,PDWORD); | |
| 1135 | +BOOL WINAPI GetDiskFreeSpaceA(LPCSTR,PDWORD,PDWORD,PDWORD,PDWORD); | |
| 1136 | +BOOL WINAPI GetDiskFreeSpaceW(LPCWSTR,PDWORD,PDWORD,PDWORD,PDWORD); | |
| 1137 | +BOOL WINAPI GetDiskFreeSpaceExA(LPCSTR,PULARGE_INTEGER,PULARGE_INTEGER,PULARGE_INTEGER); | |
| 1138 | +BOOL WINAPI GetDiskFreeSpaceExW(LPCWSTR,PULARGE_INTEGER,PULARGE_INTEGER,PULARGE_INTEGER); | |
| 1139 | +UINT WINAPI GetDriveTypeA(LPCSTR); | |
| 1140 | +UINT WINAPI GetDriveTypeW(LPCWSTR); | |
| 1141 | +LPSTR WINAPI GetEnvironmentStrings(void); | |
| 1142 | +LPSTR WINAPI GetEnvironmentStringsA(void); | |
| 1143 | +LPWSTR WINAPI GetEnvironmentStringsW(void); | |
| 1144 | +DWORD WINAPI GetEnvironmentVariableA(LPCSTR,LPSTR,DWORD); | |
| 1145 | +DWORD WINAPI GetEnvironmentVariableW(LPCWSTR,LPWSTR,DWORD); | |
| 1146 | +BOOL WINAPI GetExitCodeProcess(HANDLE,PDWORD); | |
| 1147 | +BOOL WINAPI GetExitCodeThread(HANDLE,PDWORD); | |
| 1148 | +DWORD WINAPI GetFileAttributesA(LPCSTR); | |
| 1149 | +DWORD WINAPI GetFileAttributesW(LPCWSTR); | |
| 1150 | +BOOL WINAPI GetFileAttributesExA(LPCSTR,GET_FILEEX_INFO_LEVELS,PVOID); | |
| 1151 | +BOOL WINAPI GetFileAttributesExW(LPCWSTR,GET_FILEEX_INFO_LEVELS,PVOID); | |
| 1152 | +BOOL WINAPI GetFileInformationByHandle(HANDLE,LPBY_HANDLE_FILE_INFORMATION); | |
| 1153 | +BOOL WINAPI GetFileSecurityA(LPCSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD); | |
| 1154 | +BOOL WINAPI GetFileSecurityW(LPCWSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD); | |
| 1155 | +DWORD WINAPI GetFileSize(HANDLE,PDWORD); | |
| 1156 | +BOOL WINAPI GetFileTime(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME); | |
| 1157 | +DWORD WINAPI GetFileType(HANDLE); | |
| 1158 | +#define GetFreeSpace(w) (0x100000L) | |
| 1159 | +DWORD WINAPI GetFullPathNameA(LPCSTR,DWORD,LPSTR,LPSTR*); | |
| 1160 | +DWORD WINAPI GetFullPathNameW(LPCWSTR,DWORD,LPWSTR,LPWSTR*); | |
| 1161 | +BOOL WINAPI GetHandleInformation(HANDLE,PDWORD); | |
| 1162 | +BOOL WINAPI GetKernelObjectSecurity(HANDLE,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD); | |
| 1163 | +DWORD WINAPI GetLengthSid(PSID); | |
| 1164 | +void WINAPI GetLocalTime(LPSYSTEMTIME); | |
| 1165 | +DWORD WINAPI GetLogicalDrives(void); | |
| 1166 | +DWORD WINAPI GetLogicalDriveStringsA(DWORD,LPSTR); | |
| 1167 | +DWORD WINAPI GetLogicalDriveStringsW(DWORD,LPWSTR); | |
| 1168 | +DWORD WINAPI GetLongPathNameA(LPCSTR,LPSTR,DWORD); | |
| 1169 | +DWORD WINAPI GetLongPathNameW(LPCWSTR,LPWSTR,DWORD); | |
| 1170 | +BOOL WINAPI GetMailslotInfo(HANDLE,PDWORD,PDWORD,PDWORD,PDWORD); | |
| 1171 | +DWORD WINAPI GetModuleFileNameA(HINSTANCE,LPSTR,DWORD); | |
| 1172 | +DWORD WINAPI GetModuleFileNameW(HINSTANCE,LPWSTR,DWORD); | |
| 1173 | +HMODULE WINAPI GetModuleHandleA(LPCSTR); | |
| 1174 | +HMODULE WINAPI GetModuleHandleW(LPCWSTR); | |
| 1175 | +BOOL WINAPI GetNamedPipeHandleStateA(HANDLE,PDWORD,PDWORD,PDWORD,PDWORD,LPSTR,DWORD); | |
| 1176 | +BOOL WINAPI GetNamedPipeHandleStateW(HANDLE,PDWORD,PDWORD,PDWORD,PDWORD,LPWSTR,DWORD); | |
| 1177 | +BOOL WINAPI GetNamedPipeInfo(HANDLE,PDWORD,PDWORD,PDWORD,PDWORD); | |
| 1178 | +BOOL WINAPI GetNumberOfEventLogRecords(HANDLE,PDWORD); | |
| 1179 | +BOOL WINAPI GetOldestEventLogRecord(HANDLE,PDWORD); | |
| 1180 | +BOOL WINAPI GetOverlappedResult(HANDLE,LPOVERLAPPED,PDWORD,BOOL); | |
| 1181 | +DWORD WINAPI GetPriorityClass(HANDLE); | |
| 1182 | +BOOL WINAPI GetPrivateObjectSecurity(PSECURITY_DESCRIPTOR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,PDWORD); | |
| 1183 | +UINT WINAPI GetPrivateProfileIntA(LPCSTR,LPCSTR,INT,LPCSTR); | |
| 1184 | +UINT WINAPI GetPrivateProfileIntW(LPCWSTR,LPCWSTR,INT,LPCWSTR); | |
| 1185 | +DWORD WINAPI GetPrivateProfileSectionA(LPCSTR,LPSTR,DWORD,LPCSTR); | |
| 1186 | +DWORD WINAPI GetPrivateProfileSectionW(LPCWSTR,LPWSTR,DWORD,LPCWSTR); | |
| 1187 | +DWORD WINAPI GetPrivateProfileSectionNamesA(LPSTR,DWORD,LPCSTR); | |
| 1188 | +DWORD WINAPI GetPrivateProfileSectionNamesW(LPWSTR,DWORD,LPCWSTR); | |
| 1189 | +DWORD WINAPI GetPrivateProfileStringA(LPCSTR,LPCSTR,LPCSTR,LPSTR,DWORD,LPCSTR); | |
| 1190 | +DWORD WINAPI GetPrivateProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,DWORD,LPCWSTR); | |
| 1191 | +BOOL WINAPI GetPrivateProfileStructA(LPCSTR,LPCSTR,PVOID,UINT,LPCSTR); | |
| 1192 | +BOOL WINAPI GetPrivateProfileStructW(LPCWSTR,LPCWSTR,PVOID,UINT,LPCWSTR); | |
| 1193 | +FARPROC WINAPI GetProcAddress(HINSTANCE,LPCSTR); | |
| 1194 | +BOOL WINAPI GetProcessAffinityMask(HANDLE,PDWORD,PDWORD); | |
| 1195 | +HANDLE WINAPI GetProcessHeap(VOID); | |
| 1196 | +DWORD WINAPI GetProcessHeaps(DWORD,PHANDLE); | |
| 1197 | +BOOL WINAPI GetProcessPriorityBoost(HANDLE,PBOOL); | |
| 1198 | +BOOL WINAPI GetProcessShutdownParameters(PDWORD,PDWORD); | |
| 1199 | +BOOL WINAPI GetProcessTimes(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME,LPFILETIME); | |
| 1200 | +DWORD WINAPI GetProcessVersion(DWORD); | |
| 1201 | +HWINSTA WINAPI GetProcessWindowStation(void); | |
| 1202 | +BOOL WINAPI GetProcessWorkingSetSize(HANDLE,PDWORD,PDWORD); | |
| 1203 | +UINT WINAPI GetProfileIntA(LPCSTR,LPCSTR,INT); | |
| 1204 | +UINT WINAPI GetProfileIntW(LPCWSTR,LPCWSTR,INT); | |
| 1205 | +DWORD WINAPI GetProfileSectionA(LPCSTR,LPSTR,DWORD); | |
| 1206 | +DWORD WINAPI GetProfileSectionW(LPCWSTR,LPWSTR,DWORD); | |
| 1207 | +DWORD WINAPI GetProfileStringA(LPCSTR,LPCSTR,LPCSTR,LPSTR,DWORD); | |
| 1208 | +DWORD WINAPI GetProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,DWORD); | |
| 1209 | +BOOL WINAPI GetQueuedCompletionStatus(HANDLE,PDWORD,PDWORD,LPOVERLAPPED*,DWORD); | |
| 1210 | +BOOL WINAPI GetSecurityDescriptorControl(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR_CONTROL,PDWORD); | |
| 1211 | +BOOL WINAPI GetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR,LPBOOL,PACL*,LPBOOL); | |
| 1212 | +BOOL WINAPI GetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR,PSID*,LPBOOL); | |
| 1213 | +DWORD WINAPI GetSecurityDescriptorLength(PSECURITY_DESCRIPTOR); | |
| 1214 | +BOOL WINAPI GetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR,PSID*,LPBOOL); | |
| 1215 | +BOOL WINAPI GetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR,LPBOOL,PACL*,LPBOOL); | |
| 1216 | +DWORD WINAPI GetShortPathNameA(LPCSTR,LPSTR,DWORD); | |
| 1217 | +DWORD WINAPI GetShortPathNameW(LPCWSTR,LPWSTR,DWORD); | |
| 1218 | +PSID_IDENTIFIER_AUTHORITY WINAPI GetSidIdentifierAuthority(PSID); | |
| 1219 | +DWORD WINAPI GetSidLengthRequired(UCHAR); | |
| 1220 | +PDWORD WINAPI GetSidSubAuthority(PSID,DWORD); | |
| 1221 | +PUCHAR WINAPI GetSidSubAuthorityCount(PSID); | |
| 1222 | +VOID WINAPI GetStartupInfoA(LPSTARTUPINFOA); | |
| 1223 | +VOID WINAPI GetStartupInfoW(LPSTARTUPINFOW); | |
| 1224 | +HANDLE WINAPI GetStdHandle(DWORD); | |
| 1225 | +UINT WINAPI GetSystemDirectoryA(LPSTR,UINT); | |
| 1226 | +UINT WINAPI GetSystemDirectoryW(LPWSTR,UINT); | |
| 1227 | +VOID WINAPI GetSystemInfo(LPSYSTEM_INFO); | |
| 1228 | +BOOL WINAPI GetSystemPowerStatus(LPSYSTEM_POWER_STATUS); | |
| 1229 | +VOID WINAPI GetSystemTime(LPSYSTEMTIME); | |
| 1230 | +BOOL WINAPI GetSystemTimeAdjustment(PDWORD,PDWORD,PBOOL); | |
| 1231 | +void WINAPI GetSystemTimeAsFileTime(LPFILETIME); | |
| 1232 | +DWORD WINAPI GetTapeParameters(HANDLE,DWORD,PDWORD,PVOID); | |
| 1233 | +DWORD WINAPI GetTapePosition(HANDLE,DWORD,PDWORD,PDWORD,PDWORD); | |
| 1234 | +DWORD WINAPI GetTapeStatus(HANDLE); | |
| 1235 | +UINT WINAPI GetTempFileNameA(LPCSTR,LPCSTR,UINT,LPSTR); | |
| 1236 | +UINT WINAPI GetTempFileNameW(LPCWSTR,LPCWSTR,UINT,LPWSTR); | |
| 1237 | +DWORD WINAPI GetTempPathA(DWORD,LPSTR); | |
| 1238 | +DWORD WINAPI GetTempPathW(DWORD,LPWSTR); | |
| 1239 | +BOOL WINAPI GetThreadContext(HANDLE,LPCONTEXT); | |
| 1240 | +int WINAPI GetThreadPriority(HANDLE); | |
| 1241 | +BOOL WINAPI GetThreadPriorityBoost(HANDLE,PBOOL); | |
| 1242 | +BOOL WINAPI GetThreadSelectorEntry(HANDLE,DWORD,LPLDT_ENTRY); | |
| 1243 | +BOOL WINAPI GetThreadTimes(HANDLE,LPFILETIME,LPFILETIME,LPFILETIME,LPFILETIME); | |
| 1244 | +DWORD WINAPI GetTickCount(void); | |
| 1245 | +DWORD WINAPI GetTimeZoneInformation(LPTIME_ZONE_INFORMATION); | |
| 1246 | +BOOL WINAPI GetTokenInformation(HANDLE,TOKEN_INFORMATION_CLASS,PVOID,DWORD,PDWORD); | |
| 1247 | +BOOL WINAPI GetUserNameA (LPSTR,PDWORD); | |
| 1248 | +BOOL WINAPI GetUserNameW(LPWSTR,PDWORD); | |
| 1249 | +DWORD WINAPI GetVersion(void); | |
| 1250 | +BOOL WINAPI GetVersionExA(LPOSVERSIONINFOA); | |
| 1251 | +BOOL WINAPI GetVersionExW(LPOSVERSIONINFOW); | |
| 1252 | +BOOL WINAPI GetVolumeInformationA(LPCSTR,LPSTR,DWORD,PDWORD,PDWORD,PDWORD,LPSTR,DWORD); | |
| 1253 | +BOOL WINAPI GetVolumeInformationW(LPCWSTR,LPWSTR,DWORD,PDWORD,PDWORD,PDWORD,LPWSTR,DWORD); | |
| 1254 | +UINT WINAPI GetWindowsDirectoryA(LPSTR,UINT); | |
| 1255 | +UINT WINAPI GetWindowsDirectoryW(LPWSTR,UINT); | |
| 1256 | +DWORD WINAPI GetWindowThreadProcessId(HWND,PDWORD); | |
| 1257 | +ATOM WINAPI GlobalAddAtomA(LPCSTR); | |
| 1258 | +ATOM WINAPI GlobalAddAtomW( LPCWSTR); | |
| 1259 | +HGLOBAL WINAPI GlobalAlloc(UINT,DWORD); | |
| 1260 | +UINT WINAPI GlobalCompact(DWORD); | |
| 1261 | +ATOM WINAPI GlobalDeleteAtom(ATOM); | |
| 1262 | +HGLOBAL GlobalDiscard(HGLOBAL); | |
| 1263 | +ATOM WINAPI GlobalFindAtomA(LPCSTR); | |
| 1264 | +ATOM WINAPI GlobalFindAtomW(LPCWSTR); | |
| 1265 | +VOID WINAPI GlobalFix(HGLOBAL); | |
| 1266 | +UINT WINAPI GlobalFlags(HGLOBAL); | |
| 1267 | +HGLOBAL WINAPI GlobalFree(HGLOBAL); | |
| 1268 | +UINT WINAPI GlobalGetAtomNameA(ATOM,LPSTR,int); | |
| 1269 | +UINT WINAPI GlobalGetAtomNameW(ATOM,LPWSTR,int); | |
| 1270 | +HGLOBAL WINAPI GlobalHandle(PCVOID); | |
| 1271 | +LPVOID WINAPI GlobalLock(HGLOBAL); | |
| 1272 | +VOID WINAPI GlobalMemoryStatus(LPMEMORYSTATUS); | |
| 1273 | +HGLOBAL WINAPI GlobalReAlloc(HGLOBAL,DWORD,UINT); | |
| 1274 | +DWORD WINAPI GlobalSize(HGLOBAL); | |
| 1275 | +VOID WINAPI GlobalUnfix(HGLOBAL); | |
| 1276 | +BOOL WINAPI GlobalUnlock(HGLOBAL); | |
| 1277 | +BOOL WINAPI GlobalUnWire(HGLOBAL); | |
| 1278 | +PVOID WINAPI GlobalWire(HGLOBAL); | |
| 1279 | +#define HasOverlappedIoCompleted(lpOverlapped) ((lpOverlapped)->Internal != STATUS_PENDING) | |
| 1280 | +PVOID WINAPI HeapAlloc(HANDLE,DWORD,DWORD); | |
| 1281 | +UINT WINAPI HeapCompact(HANDLE,DWORD); | |
| 1282 | +HANDLE WINAPI HeapCreate(DWORD,DWORD,DWORD); | |
| 1283 | +BOOL WINAPI HeapDestroy(HANDLE); | |
| 1284 | +BOOL WINAPI HeapFree(HANDLE,DWORD,PVOID); | |
| 1285 | +BOOL WINAPI HeapLock(HANDLE); | |
| 1286 | +PVOID WINAPI HeapReAlloc(HANDLE,DWORD,PVOID,DWORD); | |
| 1287 | +DWORD WINAPI HeapSize(HANDLE,DWORD,PCVOID); | |
| 1288 | +BOOL WINAPI HeapUnlock(HANDLE); | |
| 1289 | +BOOL WINAPI HeapValidate(HANDLE,DWORD,PCVOID); | |
| 1290 | +BOOL WINAPI HeapWalk(HANDLE,LPPROCESS_HEAP_ENTRY); | |
| 1291 | +BOOL WINAPI ImpersonateLoggedOnUser(HANDLE); | |
| 1292 | +BOOL WINAPI ImpersonateNamedPipeClient(HANDLE); | |
| 1293 | +BOOL WINAPI ImpersonateSelf(SECURITY_IMPERSONATION_LEVEL); | |
| 1294 | +BOOL WINAPI InitAtomTable(DWORD); | |
| 1295 | +BOOL WINAPI InitializeAcl(PACL,DWORD,DWORD); | |
| 1296 | +VOID WINAPI InitializeCriticalSection(LPCRITICAL_SECTION); | |
| 1297 | +#if (_WIN32_WINNT >= 0x0403) /* Needs NT4, SP3 or later. */ | |
| 1298 | +BOOL WINAPI InitializeCriticalSectionAndSpinCount(LPCRITICAL_SECTION,DWORD); | |
| 1299 | +DWORD WINAPI SetCriticalSectionSpinCount(LPCRITICAL_SECTION,DWORD); | |
| 1300 | +#endif | |
| 1301 | +BOOL WINAPI InitializeSecurityDescriptor(PSECURITY_DESCRIPTOR,DWORD); | |
| 1302 | +BOOL WINAPI InitializeSid (PSID,PSID_IDENTIFIER_AUTHORITY,BYTE); | |
| 1303 | +LONG WINAPI InterlockedCompareExchange(LPLONG,LONG,LONG); | |
| 1304 | +/* PVOID WINAPI InterlockedCompareExchangePointer(PVOID*,PVOID,PVOID); */ | |
| 1305 | +#define InterlockedCompareExchangePointer(d,e,c) \ | |
| 1306 | + (PVOID)InterlockedCompareExchange((LPLONG)(d),(LONG)(e),(LONG)(c)) | |
| 1307 | +LONG WINAPI InterlockedDecrement(LPLONG); | |
| 1308 | +LONG WINAPI InterlockedExchange(LPLONG,LONG); | |
| 1309 | +/* PVOID WINAPI InterlockedExchangePointer(PVOID*,PVOID); */ | |
| 1310 | +#define InterlockedExchangePointer(t,v) \ | |
| 1311 | + (PVOID)InterlockedExchange((LPLONG)(t),(LONG)(v)) | |
| 1312 | +LONG WINAPI InterlockedExchangeAdd(PLONG,LONG); | |
| 1313 | +LONG WINAPI InterlockedIncrement(LPLONG); | |
| 1314 | +BOOL WINAPI IsBadCodePtr(FARPROC); | |
| 1315 | +BOOL WINAPI IsBadHugeReadPtr(PCVOID,UINT); | |
| 1316 | +BOOL WINAPI IsBadHugeWritePtr(PVOID,UINT); | |
| 1317 | +BOOL WINAPI IsBadReadPtr(PCVOID,UINT); | |
| 1318 | +BOOL WINAPI IsBadStringPtrA(LPCSTR,UINT); | |
| 1319 | +BOOL WINAPI IsBadStringPtrW(LPCWSTR,UINT); | |
| 1320 | +BOOL WINAPI IsBadWritePtr(PVOID,UINT); | |
| 1321 | +BOOL WINAPI IsDebuggerPresent(void); | |
| 1322 | +BOOL WINAPI IsProcessorFeaturePresent(DWORD); | |
| 1323 | +BOOL WINAPI IsTextUnicode(PCVOID,int,LPINT); | |
| 1324 | +BOOL WINAPI IsValidAcl(PACL); | |
| 1325 | +BOOL WINAPI IsValidSecurityDescriptor(PSECURITY_DESCRIPTOR); | |
| 1326 | +BOOL WINAPI IsValidSid(PSID); | |
| 1327 | +void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION); | |
| 1328 | +#define LimitEmsPages(n) | |
| 1329 | +HINSTANCE WINAPI LoadLibraryA(LPCSTR); | |
| 1330 | +HINSTANCE WINAPI LoadLibraryExA(LPCSTR,HANDLE,DWORD); | |
| 1331 | +HINSTANCE WINAPI LoadLibraryExW(LPCWSTR,HANDLE,DWORD); | |
| 1332 | +HINSTANCE WINAPI LoadLibraryW(LPCWSTR); | |
| 1333 | +DWORD WINAPI LoadModule(LPCSTR,PVOID); | |
| 1334 | +HGLOBAL WINAPI LoadResource(HINSTANCE,HRSRC); | |
| 1335 | +HLOCAL WINAPI LocalAlloc(UINT,UINT); | |
| 1336 | +UINT WINAPI LocalCompact(UINT); | |
| 1337 | +HLOCAL LocalDiscard(HLOCAL); | |
| 1338 | +BOOL WINAPI LocalFileTimeToFileTime(CONST FILETIME *,LPFILETIME); | |
| 1339 | +UINT WINAPI LocalFlags(HLOCAL); | |
| 1340 | +HLOCAL WINAPI LocalFree(HLOCAL); | |
| 1341 | +HLOCAL WINAPI LocalHandle(LPCVOID); | |
| 1342 | +PVOID WINAPI LocalLock(HLOCAL); | |
| 1343 | +HLOCAL WINAPI LocalReAlloc(HLOCAL,UINT,UINT); | |
| 1344 | +UINT WINAPI LocalShrink(HLOCAL,UINT); | |
| 1345 | +UINT WINAPI LocalSize(HLOCAL); | |
| 1346 | +BOOL WINAPI LocalUnlock(HLOCAL); | |
| 1347 | +BOOL WINAPI LockFile(HANDLE,DWORD,DWORD,DWORD,DWORD); | |
| 1348 | +BOOL WINAPI LockFileEx(HANDLE,DWORD,DWORD,DWORD,DWORD,LPOVERLAPPED); | |
| 1349 | +PVOID WINAPI LockResource(HGLOBAL); | |
| 1350 | +#define LockSegment(w) GlobalFix((HANDLE)(w)) | |
| 1351 | +BOOL WINAPI LogonUserA(LPSTR,LPSTR,LPSTR,DWORD,DWORD,PHANDLE); | |
| 1352 | +BOOL WINAPI LogonUserW(LPWSTR,LPWSTR,LPWSTR,DWORD,DWORD,PHANDLE); | |
| 1353 | +BOOL WINAPI LookupAccountNameA(LPCSTR,LPCSTR,PSID,PDWORD,LPSTR,PDWORD,PSID_NAME_USE); | |
| 1354 | +BOOL WINAPI LookupAccountNameW(LPCWSTR,LPCWSTR,PSID,PDWORD,LPWSTR,PDWORD,PSID_NAME_USE); | |
| 1355 | +BOOL WINAPI LookupAccountSidA(LPCSTR,PSID,LPSTR,PDWORD,LPSTR,PDWORD,PSID_NAME_USE); | |
| 1356 | +BOOL WINAPI LookupAccountSidW(LPCWSTR,PSID,LPWSTR,PDWORD,LPWSTR,PDWORD,PSID_NAME_USE); | |
| 1357 | +BOOL WINAPI LookupPrivilegeDisplayNameA(LPCSTR,LPCSTR,LPSTR,PDWORD,PDWORD); | |
| 1358 | +BOOL WINAPI LookupPrivilegeDisplayNameW(LPCWSTR,LPCWSTR,LPWSTR,PDWORD,PDWORD); | |
| 1359 | +BOOL WINAPI LookupPrivilegeNameA(LPCSTR,PLUID,LPSTR,PDWORD); | |
| 1360 | +BOOL WINAPI LookupPrivilegeNameW(LPCWSTR,PLUID,LPWSTR,PDWORD); | |
| 1361 | +BOOL WINAPI LookupPrivilegeValueA(LPCSTR,LPCSTR,PLUID); | |
| 1362 | +BOOL WINAPI LookupPrivilegeValueW(LPCWSTR,LPCWSTR,PLUID); | |
| 1363 | +LPSTR WINAPI lstrcatA(LPSTR,LPCSTR); | |
| 1364 | +LPWSTR WINAPI lstrcatW(LPWSTR,LPCWSTR); | |
| 1365 | +int WINAPI lstrcmpA(LPCSTR,LPCSTR); | |
| 1366 | +int WINAPI lstrcmpiA(LPCSTR,LPCSTR); | |
| 1367 | +int WINAPI lstrcmpiW( LPCWSTR,LPCWSTR); | |
| 1368 | +int WINAPI lstrcmpW(LPCWSTR,LPCWSTR); | |
| 1369 | +LPSTR WINAPI lstrcpyA(LPSTR,LPCSTR); | |
| 1370 | +LPSTR WINAPI lstrcpynA(LPSTR,LPCSTR,int); | |
| 1371 | +LPWSTR WINAPI lstrcpynW(LPWSTR,LPCWSTR,int); | |
| 1372 | +LPWSTR WINAPI lstrcpyW(LPWSTR,LPCWSTR); | |
| 1373 | +int WINAPI lstrlenA(LPCSTR); | |
| 1374 | +int WINAPI lstrlenW(LPCWSTR); | |
| 1375 | +BOOL WINAPI MakeAbsoluteSD(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PDWORD,PACL,PDWORD,PACL,PDWORD,PSID,PDWORD,PSID,PDWORD); | |
| 1376 | +#define MakeProcInstance(p,i) (p) | |
| 1377 | +BOOL WINAPI MakeSelfRelativeSD(PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR,PDWORD); | |
| 1378 | +VOID WINAPI MapGenericMask(PDWORD,PGENERIC_MAPPING); | |
| 1379 | +PVOID WINAPI MapViewOfFile(HANDLE,DWORD,DWORD,DWORD,DWORD); | |
| 1380 | +PVOID WINAPI MapViewOfFileEx(HANDLE,DWORD,DWORD,DWORD,DWORD,PVOID); | |
| 1381 | +BOOL WINAPI MoveFileA(LPCSTR,LPCSTR); | |
| 1382 | +BOOL WINAPI MoveFileExA(LPCSTR,LPCSTR,DWORD); | |
| 1383 | +BOOL WINAPI MoveFileExW(LPCWSTR,LPCWSTR,DWORD); | |
| 1384 | +BOOL WINAPI MoveFileW(LPCWSTR,LPCWSTR); | |
| 1385 | +int WINAPI MulDiv(int,int,int); | |
| 1386 | +BOOL WINAPI NotifyChangeEventLog(HANDLE,HANDLE); | |
| 1387 | +BOOL WINAPI ObjectCloseAuditAlarmA(LPCSTR,PVOID,BOOL); | |
| 1388 | +BOOL WINAPI ObjectCloseAuditAlarmW(LPCWSTR,PVOID,BOOL); | |
| 1389 | +BOOL WINAPI ObjectDeleteAuditAlarmA(LPCSTR,PVOID,BOOL); | |
| 1390 | +BOOL WINAPI ObjectDeleteAuditAlarmW(LPCWSTR,PVOID,BOOL); | |
| 1391 | +BOOL WINAPI ObjectOpenAuditAlarmA(LPCSTR,PVOID,LPSTR,LPSTR,PSECURITY_DESCRIPTOR,HANDLE,DWORD,DWORD,PPRIVILEGE_SET,BOOL,BOOL,PBOOL); | |
| 1392 | +BOOL WINAPI ObjectOpenAuditAlarmW(LPCWSTR,PVOID,LPWSTR,LPWSTR,PSECURITY_DESCRIPTOR,HANDLE,DWORD,DWORD,PPRIVILEGE_SET,BOOL,BOOL,PBOOL); | |
| 1393 | +BOOL WINAPI ObjectPrivilegeAuditAlarmA(LPCSTR,PVOID,HANDLE,DWORD,PPRIVILEGE_SET,BOOL); | |
| 1394 | +BOOL WINAPI ObjectPrivilegeAuditAlarmW(LPCWSTR,PVOID,HANDLE,DWORD,PPRIVILEGE_SET,BOOL); | |
| 1395 | +HANDLE WINAPI OpenBackupEventLogA(LPCSTR,LPCSTR); | |
| 1396 | +HANDLE WINAPI OpenBackupEventLogW(LPCWSTR,LPCWSTR); | |
| 1397 | +HANDLE WINAPI OpenEventA(DWORD,BOOL,LPCSTR); | |
| 1398 | +HANDLE WINAPI OpenEventLogA (LPCSTR,LPCSTR); | |
| 1399 | +HANDLE WINAPI OpenEventLogW(LPCWSTR,LPCWSTR); | |
| 1400 | +HANDLE WINAPI OpenEventW(DWORD,BOOL,LPCWSTR); | |
| 1401 | +HFILE WINAPI OpenFile(LPCSTR,LPOFSTRUCT,UINT); | |
| 1402 | +HANDLE WINAPI OpenFileMappingA(DWORD,BOOL,LPCSTR); | |
| 1403 | +HANDLE WINAPI OpenFileMappingW(DWORD,BOOL,LPCWSTR); | |
| 1404 | +HANDLE WINAPI OpenMutexA(DWORD,BOOL,LPCSTR); | |
| 1405 | +HANDLE WINAPI OpenMutexW(DWORD,BOOL,LPCWSTR); | |
| 1406 | +HANDLE WINAPI OpenProcess(DWORD,BOOL,DWORD); | |
| 1407 | +BOOL WINAPI OpenProcessToken(HANDLE,DWORD,PHANDLE); | |
| 1408 | +HANDLE WINAPI OpenSemaphoreA(DWORD,BOOL,LPCSTR); | |
| 1409 | +HANDLE WINAPI OpenSemaphoreW(DWORD,BOOL,LPCWSTR); | |
| 1410 | +BOOL WINAPI OpenThreadToken(HANDLE,DWORD,BOOL,PHANDLE); | |
| 1411 | +HANDLE WINAPI OpenWaitableTimerA(DWORD,BOOL,LPCSTR); | |
| 1412 | +HANDLE WINAPI OpenWaitableTimerW(DWORD,BOOL,LPCWSTR); | |
| 1413 | +void WINAPI OutputDebugStringA(LPCSTR); | |
| 1414 | +void WINAPI OutputDebugStringW(LPCWSTR); | |
| 1415 | +BOOL WINAPI PeekNamedPipe(HANDLE,PVOID,DWORD,PDWORD,PDWORD,PDWORD); | |
| 1416 | +BOOL WINAPI PostQueuedCompletionStatus(HANDLE,DWORD,DWORD,LPOVERLAPPED); | |
| 1417 | +DWORD WINAPI PrepareTape(HANDLE,DWORD,BOOL); | |
| 1418 | +BOOL WINAPI PrivilegeCheck (HANDLE,PPRIVILEGE_SET,PBOOL); | |
| 1419 | +BOOL WINAPI PrivilegedServiceAuditAlarmA(LPCSTR,LPCSTR,HANDLE,PPRIVILEGE_SET,BOOL); | |
| 1420 | +BOOL WINAPI PrivilegedServiceAuditAlarmW(LPCWSTR,LPCWSTR,HANDLE,PPRIVILEGE_SET,BOOL); | |
| 1421 | +BOOL WINAPI PulseEvent(HANDLE); | |
| 1422 | +BOOL WINAPI PurgeComm(HANDLE,DWORD); | |
| 1423 | +DWORD WINAPI QueryDosDeviceA(LPCSTR,LPSTR,DWORD); | |
| 1424 | +DWORD WINAPI QueryDosDeviceW(LPCWSTR,LPWSTR,DWORD); | |
| 1425 | +BOOL WINAPI QueryPerformanceCounter(PLARGE_INTEGER); | |
| 1426 | +BOOL WINAPI QueryPerformanceFrequency(PLARGE_INTEGER); | |
| 1427 | +DWORD WINAPI QueueUserAPC(PAPCFUNC,HANDLE,DWORD); | |
| 1428 | +void WINAPI RaiseException(DWORD,DWORD,DWORD,const DWORD*); | |
| 1429 | +BOOL WINAPI ReadDirectoryChangesW(HANDLE,PVOID,DWORD,BOOL,DWORD,PDWORD,LPOVERLAPPED,LPOVERLAPPED_COMPLETION_ROUTINE); | |
| 1430 | +BOOL WINAPI ReadEventLogA(HANDLE,DWORD,DWORD,PVOID,DWORD,DWORD *,DWORD *); | |
| 1431 | +BOOL WINAPI ReadEventLogW(HANDLE,DWORD,DWORD,PVOID,DWORD,DWORD *,DWORD *); | |
| 1432 | +BOOL WINAPI ReadFile(HANDLE,PVOID,DWORD,PDWORD,LPOVERLAPPED); | |
| 1433 | +BOOL WINAPI ReadFileEx(HANDLE,PVOID,DWORD,LPOVERLAPPED,LPOVERLAPPED_COMPLETION_ROUTINE); | |
| 1434 | +BOOL WINAPI ReadProcessMemory(HANDLE,PCVOID,PVOID,DWORD,PDWORD); | |
| 1435 | +HANDLE WINAPI RegisterEventSourceA (LPCSTR,LPCSTR); | |
| 1436 | +HANDLE WINAPI RegisterEventSourceW(LPCWSTR,LPCWSTR); | |
| 1437 | +BOOL WINAPI ReleaseMutex(HANDLE); | |
| 1438 | +BOOL WINAPI ReleaseSemaphore(HANDLE,LONG,LPLONG); | |
| 1439 | +BOOL WINAPI RemoveDirectoryA(LPCSTR); | |
| 1440 | +BOOL WINAPI RemoveDirectoryW(LPCWSTR); | |
| 1441 | +BOOL WINAPI ReportEventA(HANDLE,WORD,WORD,DWORD,PSID,WORD,DWORD,LPCSTR*,PVOID); | |
| 1442 | +BOOL WINAPI ReportEventW(HANDLE,WORD,WORD,DWORD,PSID,WORD,DWORD,LPCWSTR*,PVOID); | |
| 1443 | +BOOL WINAPI ResetEvent(HANDLE); | |
| 1444 | +DWORD WINAPI ResumeThread(HANDLE); | |
| 1445 | +BOOL WINAPI RevertToSelf(void); | |
| 1446 | +DWORD WINAPI SearchPathA(LPCSTR,LPCSTR,LPCSTR,DWORD,LPSTR,LPSTR*); | |
| 1447 | +DWORD WINAPI SearchPathW(LPCWSTR,LPCWSTR,LPCWSTR,DWORD,LPWSTR,LPWSTR*); | |
| 1448 | +BOOL WINAPI SetAclInformation(PACL,PVOID,DWORD,ACL_INFORMATION_CLASS); | |
| 1449 | +BOOL WINAPI SetCommBreak(HANDLE); | |
| 1450 | +BOOL WINAPI SetCommConfig(HANDLE,LPCOMMCONFIG,DWORD); | |
| 1451 | +BOOL WINAPI SetCommMask(HANDLE,DWORD); | |
| 1452 | +BOOL WINAPI SetCommState(HANDLE,LPDCB); | |
| 1453 | +BOOL WINAPI SetCommTimeouts(HANDLE,LPCOMMTIMEOUTS); | |
| 1454 | +BOOL WINAPI SetComputerNameA(LPCSTR); | |
| 1455 | +BOOL WINAPI SetComputerNameW(LPCWSTR); | |
| 1456 | +BOOL WINAPI SetCurrentDirectoryA(LPCSTR); | |
| 1457 | +BOOL WINAPI SetCurrentDirectoryW(LPCWSTR); | |
| 1458 | +BOOL WINAPI SetDefaultCommConfigA(LPCSTR,LPCOMMCONFIG,DWORD); | |
| 1459 | +BOOL WINAPI SetDefaultCommConfigW(LPCWSTR,LPCOMMCONFIG,DWORD); | |
| 1460 | +BOOL WINAPI SetEndOfFile(HANDLE); | |
| 1461 | +BOOL WINAPI SetEnvironmentVariableA(LPCSTR,LPCSTR); | |
| 1462 | +BOOL WINAPI SetEnvironmentVariableW(LPCWSTR,LPCWSTR); | |
| 1463 | +UINT WINAPI SetErrorMode(UINT); | |
| 1464 | +BOOL WINAPI SetEvent(HANDLE); | |
| 1465 | +VOID WINAPI SetFileApisToANSI(void); | |
| 1466 | +VOID WINAPI SetFileApisToOEM(void); | |
| 1467 | +BOOL WINAPI SetFileAttributesA(LPCSTR,DWORD); | |
| 1468 | +BOOL WINAPI SetFileAttributesW(LPCWSTR,DWORD); | |
| 1469 | +DWORD WINAPI SetFilePointer(HANDLE,LONG,PLONG,DWORD); | |
| 1470 | +BOOL WINAPI SetFileSecurityA(LPCSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR); | |
| 1471 | +BOOL WINAPI SetFileSecurityW(LPCWSTR,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR); | |
| 1472 | +BOOL WINAPI SetFileTime(HANDLE,const FILETIME*,const FILETIME*,const FILETIME*); | |
| 1473 | +UINT WINAPI SetHandleCount(UINT); | |
| 1474 | +BOOL WINAPI SetHandleInformation(HANDLE,DWORD,DWORD); | |
| 1475 | +BOOL WINAPI SetKernelObjectSecurity(HANDLE,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR); | |
| 1476 | +void WINAPI SetLastError(DWORD); | |
| 1477 | +void WINAPI SetLastErrorEx(DWORD,DWORD); | |
| 1478 | +BOOL WINAPI SetLocalTime(const SYSTEMTIME*); | |
| 1479 | +BOOL WINAPI SetMailslotInfo(HANDLE,DWORD); | |
| 1480 | +BOOL WINAPI SetNamedPipeHandleState(HANDLE,PDWORD,PDWORD,PDWORD); | |
| 1481 | +BOOL WINAPI SetPriorityClass(HANDLE,DWORD); | |
| 1482 | +BOOL WINAPI SetPrivateObjectSecurity(SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,PSECURITY_DESCRIPTOR *,PGENERIC_MAPPING,HANDLE); | |
| 1483 | +BOOL WINAPI SetProcessAffinityMask(HANDLE,DWORD); | |
| 1484 | +BOOL WINAPI SetProcessPriorityBoost(HANDLE,BOOL); | |
| 1485 | +BOOL WINAPI SetProcessShutdownParameters(DWORD,DWORD); | |
| 1486 | +BOOL WINAPI SetProcessWorkingSetSize(HANDLE,DWORD,DWORD); | |
| 1487 | +BOOL WINAPI SetSecurityDescriptorControl(PSECURITY_DESCRIPTOR,SECURITY_DESCRIPTOR_CONTROL,SECURITY_DESCRIPTOR_CONTROL); | |
| 1488 | +BOOL WINAPI SetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR,BOOL,PACL,BOOL); | |
| 1489 | +BOOL WINAPI SetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR,PSID,BOOL); | |
| 1490 | +BOOL WINAPI SetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR,PSID,BOOL); | |
| 1491 | +BOOL WINAPI SetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR,BOOL,PACL,BOOL); | |
| 1492 | +BOOL WINAPI SetStdHandle(DWORD,HANDLE); | |
| 1493 | +#define SetSwapAreaSize(w) (w) | |
| 1494 | +BOOL WINAPI SetSystemPowerState(BOOL,BOOL); | |
| 1495 | +BOOL WINAPI SetSystemTime(const SYSTEMTIME*); | |
| 1496 | +BOOL WINAPI SetSystemTimeAdjustment(DWORD,BOOL); | |
| 1497 | +DWORD WINAPI SetTapeParameters(HANDLE,DWORD,PVOID); | |
| 1498 | +DWORD WINAPI SetTapePosition(HANDLE,DWORD,DWORD,DWORD,DWORD,BOOL); | |
| 1499 | +DWORD WINAPI SetThreadAffinityMask(HANDLE,DWORD); | |
| 1500 | +BOOL WINAPI SetThreadContext(HANDLE,const CONTEXT*); | |
| 1501 | +DWORD WINAPI SetThreadIdealProcessor(HANDLE,DWORD); | |
| 1502 | +BOOL WINAPI SetThreadPriority(HANDLE,int); | |
| 1503 | +BOOL WINAPI SetThreadPriorityBoost(HANDLE,BOOL); | |
| 1504 | +BOOL WINAPI SetThreadToken (PHANDLE,HANDLE); | |
| 1505 | +BOOL WINAPI SetTimeZoneInformation(const TIME_ZONE_INFORMATION *); | |
| 1506 | +BOOL WINAPI SetTokenInformation(HANDLE,TOKEN_INFORMATION_CLASS,PVOID,DWORD); | |
| 1507 | +LPTOP_LEVEL_EXCEPTION_FILTER WINAPI SetUnhandledExceptionFilter(LPTOP_LEVEL_EXCEPTION_FILTER); | |
| 1508 | +BOOL WINAPI SetupComm(HANDLE,DWORD,DWORD); | |
| 1509 | +BOOL WINAPI SetVolumeLabelA(LPCSTR,LPCSTR); | |
| 1510 | +BOOL WINAPI SetVolumeLabelW(LPCWSTR,LPCWSTR); | |
| 1511 | +BOOL WINAPI SetWaitableTimer(HANDLE,const LARGE_INTEGER*,LONG,PTIMERAPCROUTINE,PVOID,BOOL); | |
| 1512 | +BOOL WINAPI SignalObjectAndWait(HANDLE,HANDLE,DWORD,BOOL); | |
| 1513 | +DWORD WINAPI SizeofResource(HINSTANCE,HRSRC); | |
| 1514 | +void WINAPI Sleep(DWORD); | |
| 1515 | +DWORD WINAPI SleepEx(DWORD,BOOL); | |
| 1516 | +DWORD WINAPI SuspendThread(HANDLE); | |
| 1517 | +void WINAPI SwitchToFiber(PVOID); | |
| 1518 | +BOOL WINAPI SwitchToThread(void); | |
| 1519 | +BOOL WINAPI SystemTimeToFileTime(const SYSTEMTIME*,LPFILETIME); | |
| 1520 | +BOOL WINAPI SystemTimeToTzSpecificLocalTime(LPTIME_ZONE_INFORMATION,LPSYSTEMTIME,LPSYSTEMTIME); | |
| 1521 | +BOOL WINAPI TerminateProcess(HANDLE,UINT); | |
| 1522 | +BOOL WINAPI TerminateThread(HANDLE,DWORD); | |
| 1523 | +DWORD WINAPI TlsAlloc(VOID); | |
| 1524 | +BOOL WINAPI TlsFree(DWORD); | |
| 1525 | +PVOID WINAPI TlsGetValue(DWORD); | |
| 1526 | +BOOL WINAPI TlsSetValue(DWORD,PVOID); | |
| 1527 | +BOOL WINAPI TransactNamedPipe(HANDLE,PVOID,DWORD,PVOID,DWORD,PDWORD,LPOVERLAPPED); | |
| 1528 | +BOOL WINAPI TransmitCommChar(HANDLE,char); | |
| 1529 | +BOOL WINAPI TryEnterCriticalSection(LPCRITICAL_SECTION); | |
| 1530 | +LONG WINAPI UnhandledExceptionFilter(LPEXCEPTION_POINTERS); | |
| 1531 | +BOOL WINAPI UnlockFile(HANDLE,DWORD,DWORD,DWORD,DWORD); | |
| 1532 | +BOOL WINAPI UnlockFileEx(HANDLE,DWORD,DWORD,DWORD,LPOVERLAPPED); | |
| 1533 | +#define UnlockResource(h) (h) | |
| 1534 | +#define UnlockSegment(w) GlobalUnfix((HANDLE)(w)) | |
| 1535 | +BOOL WINAPI UnmapViewOfFile(PVOID); | |
| 1536 | +BOOL WINAPI UpdateResourceA(HANDLE,LPCSTR,LPCSTR,WORD,PVOID,DWORD); | |
| 1537 | +BOOL WINAPI UpdateResourceW(HANDLE,LPCWSTR,LPCWSTR,WORD,PVOID,DWORD); | |
| 1538 | +BOOL WINAPI VerifyVersionInfoA(LPOSVERSIONINFOEXA,DWORD,DWORDLONG); | |
| 1539 | +BOOL WINAPI VerifyVersionInfoW(LPOSVERSIONINFOEXW,DWORD,DWORDLONG); | |
| 1540 | +PVOID WINAPI VirtualAlloc(PVOID,DWORD,DWORD,DWORD); | |
| 1541 | +PVOID WINAPI VirtualAllocEx(HANDLE,PVOID,DWORD,DWORD,DWORD); | |
| 1542 | +BOOL WINAPI VirtualFree(PVOID,DWORD,DWORD); | |
| 1543 | +BOOL WINAPI VirtualFreeEx(HANDLE,PVOID,DWORD,DWORD); | |
| 1544 | +BOOL WINAPI VirtualLock(PVOID,DWORD); | |
| 1545 | +BOOL WINAPI VirtualProtect(PVOID,DWORD,DWORD,PDWORD); | |
| 1546 | +BOOL WINAPI VirtualProtectEx(HANDLE,PVOID,DWORD,DWORD,PDWORD); | |
| 1547 | +DWORD WINAPI VirtualQuery(LPCVOID,PMEMORY_BASIC_INFORMATION,DWORD); | |
| 1548 | +DWORD WINAPI VirtualQueryEx(HANDLE,LPCVOID,PMEMORY_BASIC_INFORMATION,DWORD); | |
| 1549 | +BOOL WINAPI VirtualUnlock(PVOID,DWORD); | |
| 1550 | +BOOL WINAPI WaitCommEvent(HANDLE,PDWORD,LPOVERLAPPED); | |
| 1551 | +BOOL WINAPI WaitForDebugEvent(LPDEBUG_EVENT,DWORD); | |
| 1552 | +DWORD WINAPI WaitForMultipleObjects(DWORD,const HANDLE*,BOOL,DWORD); | |
| 1553 | +DWORD WINAPI WaitForMultipleObjectsEx(DWORD,const HANDLE*,BOOL,DWORD,BOOL); | |
| 1554 | +DWORD WINAPI WaitForSingleObject(HANDLE,DWORD); | |
| 1555 | +DWORD WINAPI WaitForSingleObjectEx(HANDLE,DWORD,BOOL); | |
| 1556 | +BOOL WINAPI WaitNamedPipeA(LPCSTR,DWORD); | |
| 1557 | +BOOL WINAPI WaitNamedPipeW(LPCWSTR,DWORD); | |
| 1558 | +BOOL WINAPI WinLoadTrustProvider(GUID*); | |
| 1559 | +BOOL WINAPI WriteFile(HANDLE,PCVOID,DWORD,PDWORD,LPOVERLAPPED); | |
| 1560 | +BOOL WINAPI WriteFileEx(HANDLE,PCVOID,DWORD,LPOVERLAPPED,LPOVERLAPPED_COMPLETION_ROUTINE); | |
| 1561 | +BOOL WINAPI WritePrivateProfileSectionA(LPCSTR,LPCSTR,LPCSTR); | |
| 1562 | +BOOL WINAPI WritePrivateProfileSectionW(LPCWSTR,LPCWSTR,LPCWSTR); | |
| 1563 | +BOOL WINAPI WritePrivateProfileStringA(LPCSTR,LPCSTR,LPCSTR,LPCSTR); | |
| 1564 | +BOOL WINAPI WritePrivateProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR); | |
| 1565 | +BOOL WINAPI WritePrivateProfileStructA(LPCSTR,LPCSTR,PVOID,UINT,LPCSTR); | |
| 1566 | +BOOL WINAPI WritePrivateProfileStructW(LPCWSTR,LPCWSTR,PVOID,UINT,LPCWSTR); | |
| 1567 | +BOOL WINAPI WriteProcessMemory(HANDLE,PVOID,PVOID,DWORD,PDWORD); | |
| 1568 | +BOOL WINAPI WriteProfileSectionA(LPCSTR,LPCSTR); | |
| 1569 | +BOOL WINAPI WriteProfileSectionW(LPCWSTR,LPCWSTR); | |
| 1570 | +BOOL WINAPI WriteProfileStringA(LPCSTR,LPCSTR,LPCSTR); | |
| 1571 | +BOOL WINAPI WriteProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR); | |
| 1572 | +DWORD WINAPI WriteTapemark(HANDLE,DWORD,DWORD,BOOL); | |
| 1573 | +#define Yield() | |
| 1574 | + | |
| 1575 | +#ifdef UNICODE | |
| 1576 | +typedef STARTUPINFOW STARTUPINFO,*LPSTARTUPINFO; | |
| 1577 | +typedef WIN32_FIND_DATAW WIN32_FIND_DATA,*LPWIN32_FIND_DATA; | |
| 1578 | +typedef HW_PROFILE_INFOW HW_PROFILE_INFO,*LPHW_PROFILE_INFO; | |
| 1579 | +#define AccessCheckAndAuditAlarm AccessCheckAndAuditAlarmW | |
| 1580 | +#define AddAtom AddAtomW | |
| 1581 | +#define BackupEventLog BackupEventLogW | |
| 1582 | +#define BeginUpdateResource BeginUpdateResourceW | |
| 1583 | +#define BuildCommDCB BuildCommDCBW | |
| 1584 | +#define BuildCommDCBAndTimeouts BuildCommDCBAndTimeoutsW | |
| 1585 | +#define CallNamedPipe CallNamedPipeW | |
| 1586 | +#define ClearEventLog ClearEventLogW | |
| 1587 | +#define CommConfigDialog CommConfigDialogW | |
| 1588 | +#define CopyFile CopyFileW | |
| 1589 | +#define CopyFileEx CopyFileExW | |
| 1590 | +#define CreateDirectory CreateDirectoryW | |
| 1591 | +#define CreateDirectoryEx CreateDirectoryExW | |
| 1592 | +#define CreateEvent CreateEventW | |
| 1593 | +#define CreateFile CreateFileW | |
| 1594 | +#define CreateFileMapping CreateFileMappingW | |
| 1595 | +#define CreateHardLink CreateHardLinkW | |
| 1596 | +#define CreateMailslot CreateMailslotW | |
| 1597 | +#define CreateMutex CreateMutexW | |
| 1598 | +#define CreateNamedPipe CreateNamedPipeW | |
| 1599 | +#define CreateProcess CreateProcessW | |
| 1600 | +#define CreateProcessAsUser CreateProcessAsUserW | |
| 1601 | +#define CreateSemaphore CreateSemaphoreW | |
| 1602 | +#define CreateWaitableTimer CreateWaitableTimerW | |
| 1603 | +#define DefineDosDevice DefineDosDeviceW | |
| 1604 | +#define DeleteFile DeleteFileW | |
| 1605 | +#define EndUpdateResource EndUpdateResourceW | |
| 1606 | +#define EnumResourceLanguages EnumResourceLanguagesW | |
| 1607 | +#define EnumResourceNames EnumResourceNamesW | |
| 1608 | +#define EnumResourceTypes EnumResourceTypesW | |
| 1609 | +#define ExpandEnvironmentStrings ExpandEnvironmentStringsW | |
| 1610 | +#define FatalAppExit FatalAppExitW | |
| 1611 | +#define FindAtom FindAtomW | |
| 1612 | +#define FindFirstChangeNotification FindFirstChangeNotificationW | |
| 1613 | +#define FindFirstFile FindFirstFileW | |
| 1614 | +#define FindFirstFileEx FindFirstFileExW | |
| 1615 | +#define FindNextFile FindNextFileW | |
| 1616 | +#define FindResource FindResourceW | |
| 1617 | +#define FindResourceEx FindResourceExW | |
| 1618 | +#define FormatMessage FormatMessageW | |
| 1619 | +#define FreeEnvironmentStrings FreeEnvironmentStringsW | |
| 1620 | +#define GetAtomName GetAtomNameW | |
| 1621 | +#define GetBinaryType GetBinaryTypeW | |
| 1622 | +#define GetCommandLine GetCommandLineW | |
| 1623 | +#define GetCompressedFileSize GetCompressedFileSizeW | |
| 1624 | +#define GetComputerName GetComputerNameW | |
| 1625 | +#define GetCurrentDirectory GetCurrentDirectoryW | |
| 1626 | +#define GetDefaultCommConfig GetDefaultCommConfigW | |
| 1627 | +#define GetDiskFreeSpace GetDiskFreeSpaceW | |
| 1628 | +#define GetDiskFreeSpaceEx GetDiskFreeSpaceExW | |
| 1629 | +#define GetDriveType GetDriveTypeW | |
| 1630 | +#define GetEnvironmentStrings GetEnvironmentStringsW | |
| 1631 | +#define GetEnvironmentVariable GetEnvironmentVariableW | |
| 1632 | +#define GetFileAttributes GetFileAttributesW | |
| 1633 | +#define GetFileSecurity GetFileSecurityW | |
| 1634 | +#define GetFileAttributesEx GetFileAttributesExW | |
| 1635 | +#define GetFullPathName GetFullPathNameW | |
| 1636 | +#define GetLogicalDriveStrings GetLogicalDriveStringsW | |
| 1637 | +#define GetLongPathName GetLongPathNameW | |
| 1638 | +#define GetModuleFileName GetModuleFileNameW | |
| 1639 | +#define GetModuleHandle GetModuleHandleW | |
| 1640 | +#define GetNamedPipeHandleState GetNamedPipeHandleStateW | |
| 1641 | +#define GetPrivateProfileInt GetPrivateProfileIntW | |
| 1642 | +#define GetPrivateProfileSection GetPrivateProfileSectionW | |
| 1643 | +#define GetPrivateProfileSectionNames GetPrivateProfileSectionNamesW | |
| 1644 | +#define GetPrivateProfileString GetPrivateProfileStringW | |
| 1645 | +#define GetPrivateProfileStruct GetPrivateProfileStructW | |
| 1646 | +#define GetProfileInt GetProfileIntW | |
| 1647 | +#define GetProfileSection GetProfileSectionW | |
| 1648 | +#define GetProfileString GetProfileStringW | |
| 1649 | +#define GetShortPathName GetShortPathNameW | |
| 1650 | +#define GetStartupInfo GetStartupInfoW | |
| 1651 | +#define GetSystemDirectory GetSystemDirectoryW | |
| 1652 | +#define GetTempFileName GetTempFileNameW | |
| 1653 | +#define GetTempPath GetTempPathW | |
| 1654 | +#define GetUserName GetUserNameW | |
| 1655 | +#define GetVersionEx GetVersionExW | |
| 1656 | +#define GetVolumeInformation GetVolumeInformationW | |
| 1657 | +#define GetWindowsDirectory GetWindowsDirectoryW | |
| 1658 | +#define GlobalAddAtom GlobalAddAtomW | |
| 1659 | +#define GlobalFindAtom GlobalFindAtomW | |
| 1660 | +#define GlobalGetAtomName GlobalGetAtomNameW | |
| 1661 | +#define IsBadStringPtr IsBadStringPtrW | |
| 1662 | +#define LoadLibrary LoadLibraryW | |
| 1663 | +#define LoadLibraryEx LoadLibraryExW | |
| 1664 | +#define LogonUser LogonUserW | |
| 1665 | +#define LookupAccountName LookupAccountNameW | |
| 1666 | +#define LookupAccountSid LookupAccountSidW | |
| 1667 | +#define LookupPrivilegeDisplayName LookupPrivilegeDisplayNameW | |
| 1668 | +#define LookupPrivilegeName LookupPrivilegeNameW | |
| 1669 | +#define LookupPrivilegeValue LookupPrivilegeValueW | |
| 1670 | +#define lstrcat lstrcatW | |
| 1671 | +#define lstrcmp lstrcmpW | |
| 1672 | +#define lstrcmpi lstrcmpiW | |
| 1673 | +#define lstrcpy lstrcpyW | |
| 1674 | +#define lstrcpyn lstrcpynW | |
| 1675 | +#define lstrlen lstrlenW | |
| 1676 | +#define MoveFile MoveFileW | |
| 1677 | +#define MoveFileEx MoveFileExW | |
| 1678 | +#define ObjectCloseAuditAlarm ObjectCloseAuditAlarmW | |
| 1679 | +#define ObjectDeleteAuditAlarm ObjectDeleteAuditAlarmW | |
| 1680 | +#define ObjectOpenAuditAlarm ObjectOpenAuditAlarmW | |
| 1681 | +#define ObjectPrivilegeAuditAlarm ObjectPrivilegeAuditAlarmW | |
| 1682 | +#define OpenBackupEventLog OpenBackupEventLogW | |
| 1683 | +#define OpenEvent OpenEventW | |
| 1684 | +#define OpenEventLog OpenEventLogW | |
| 1685 | +#define OpenFileMapping OpenFileMappingW | |
| 1686 | +#define OpenMutex OpenMutexW | |
| 1687 | +#define OpenSemaphore OpenSemaphoreW | |
| 1688 | +#define OutputDebugString OutputDebugStringW | |
| 1689 | +#define PrivilegedServiceAuditAlarm PrivilegedServiceAuditAlarmW | |
| 1690 | +#define QueryDosDevice QueryDosDeviceW | |
| 1691 | +#define ReadEventLog ReadEventLogW | |
| 1692 | +#define RegisterEventSource RegisterEventSourceW | |
| 1693 | +#define RemoveDirectory RemoveDirectoryW | |
| 1694 | +#define ReportEvent ReportEventW | |
| 1695 | +#define SearchPath SearchPathW | |
| 1696 | +#define SetComputerName SetComputerNameW | |
| 1697 | +#define SetCurrentDirectory SetCurrentDirectoryW | |
| 1698 | +#define SetDefaultCommConfig SetDefaultCommConfigW | |
| 1699 | +#define SetEnvironmentVariable SetEnvironmentVariableW | |
| 1700 | +#define SetFileAttributes SetFileAttributesW | |
| 1701 | +#define SetFileSecurity SetFileSecurityW | |
| 1702 | +#define SetVolumeLabel SetVolumeLabelW | |
| 1703 | +#define UpdateResource UpdateResourceW | |
| 1704 | +#define VerifyVersionInfo VerifyVersionInfoW | |
| 1705 | +#define WaitNamedPipe WaitNamedPipeW | |
| 1706 | +#define WritePrivateProfileSection WritePrivateProfileSectionW | |
| 1707 | +#define WritePrivateProfileString WritePrivateProfileStringW | |
| 1708 | +#define WritePrivateProfileStruct WritePrivateProfileStructW | |
| 1709 | +#define WriteProfileSection WriteProfileSectionW | |
| 1710 | +#define WriteProfileString WriteProfileStringW | |
| 1711 | +#else | |
| 1712 | +typedef STARTUPINFOA STARTUPINFO,*LPSTARTUPINFO; | |
| 1713 | +typedef WIN32_FIND_DATAA WIN32_FIND_DATA,*LPWIN32_FIND_DATA; | |
| 1714 | +typedef HW_PROFILE_INFOA HW_PROFILE_INFO,*LPHW_PROFILE_INFO; | |
| 1715 | +#define AccessCheckAndAuditAlarm AccessCheckAndAuditAlarmA | |
| 1716 | +#define AddAtom AddAtomA | |
| 1717 | +#define BackupEventLog BackupEventLogA | |
| 1718 | +#define BeginUpdateResource BeginUpdateResourceA | |
| 1719 | +#define BuildCommDCB BuildCommDCBA | |
| 1720 | +#define BuildCommDCBAndTimeouts BuildCommDCBAndTimeoutsA | |
| 1721 | +#define CallNamedPipe CallNamedPipeA | |
| 1722 | +#define ClearEventLog ClearEventLogA | |
| 1723 | +#define CommConfigDialog CommConfigDialogA | |
| 1724 | +#define CopyFile CopyFileA | |
| 1725 | +#define CopyFileEx CopyFileExA | |
| 1726 | +#define CreateDirectory CreateDirectoryA | |
| 1727 | +#define CreateDirectoryEx CreateDirectoryExA | |
| 1728 | +#define CreateEvent CreateEventA | |
| 1729 | +#define CreateFile CreateFileA | |
| 1730 | +#define CreateFileMapping CreateFileMappingA | |
| 1731 | +#define CreateHardLink CreateHardLinkA | |
| 1732 | +#define CreateMailslot CreateMailslotA | |
| 1733 | +#define CreateMutex CreateMutexA | |
| 1734 | +#define CreateNamedPipe CreateNamedPipeA | |
| 1735 | +#define CreateProcess CreateProcessA | |
| 1736 | +#define CreateProcessAsUser CreateProcessAsUserA | |
| 1737 | +#define CreateSemaphore CreateSemaphoreA | |
| 1738 | +#define CreateWaitableTimer CreateWaitableTimerA | |
| 1739 | +#define DefineDosDevice DefineDosDeviceA | |
| 1740 | +#define DeleteFile DeleteFileA | |
| 1741 | +#define EndUpdateResource EndUpdateResourceA | |
| 1742 | +#define EnumResourceLanguages EnumResourceLanguagesA | |
| 1743 | +#define EnumResourceNames EnumResourceNamesA | |
| 1744 | +#define EnumResourceTypes EnumResourceTypesA | |
| 1745 | +#define ExpandEnvironmentStrings ExpandEnvironmentStringsA | |
| 1746 | +#define FatalAppExit FatalAppExitA | |
| 1747 | +#define FindAtom FindAtomA | |
| 1748 | +#define FindFirstChangeNotification FindFirstChangeNotificationA | |
| 1749 | +#define FindFirstFile FindFirstFileA | |
| 1750 | +#define FindFirstFileEx FindFirstFileExW | |
| 1751 | +#define FindNextFile FindNextFileA | |
| 1752 | +#define FindResource FindResourceA | |
| 1753 | +#define FindResourceEx FindResourceExA | |
| 1754 | +#define FormatMessage FormatMessageA | |
| 1755 | +#define FreeEnvironmentStrings FreeEnvironmentStringsA | |
| 1756 | +#define GetAtomName GetAtomNameA | |
| 1757 | +#define GetBinaryType GetBinaryTypeA | |
| 1758 | +#define GetCommandLine GetCommandLineA | |
| 1759 | +#define GetComputerName GetComputerNameA | |
| 1760 | +#define GetCompressedFileSize GetCompressedFileSizeA | |
| 1761 | +#define GetCurrentDirectory GetCurrentDirectoryA | |
| 1762 | +#define GetDefaultCommConfig GetDefaultCommConfigA | |
| 1763 | +#define GetDiskFreeSpace GetDiskFreeSpaceA | |
| 1764 | +#define GetDiskFreeSpaceEx GetDiskFreeSpaceExA | |
| 1765 | +#define GetDriveType GetDriveTypeA | |
| 1766 | +#define GetEnvironmentStringsA GetEnvironmentStrings | |
| 1767 | +#define GetEnvironmentVariable GetEnvironmentVariableA | |
| 1768 | +#define GetFileAttributes GetFileAttributesA | |
| 1769 | +#define GetFileSecurity GetFileSecurityA | |
| 1770 | +#define GetFileAttributesEx GetFileAttributesExA | |
| 1771 | +#define GetFullPathName GetFullPathNameA | |
| 1772 | +#define GetLogicalDriveStrings GetLogicalDriveStringsA | |
| 1773 | +#define GetLongPathName GetLongPathNameA | |
| 1774 | +#define GetNamedPipeHandleState GetNamedPipeHandleStateA | |
| 1775 | +#define GetModuleHandle GetModuleHandleA | |
| 1776 | +#define GetModuleFileName GetModuleFileNameA | |
| 1777 | +#define GetPrivateProfileInt GetPrivateProfileIntA | |
| 1778 | +#define GetPrivateProfileSection GetPrivateProfileSectionA | |
| 1779 | +#define GetPrivateProfileSectionNames GetPrivateProfileSectionNamesA | |
| 1780 | +#define GetPrivateProfileString GetPrivateProfileStringA | |
| 1781 | +#define GetPrivateProfileStruct GetPrivateProfileStructA | |
| 1782 | +#define GetProfileInt GetProfileIntA | |
| 1783 | +#define GetProfileSection GetProfileSectionA | |
| 1784 | +#define GetProfileString GetProfileStringA | |
| 1785 | +#define GetShortPathName GetShortPathNameA | |
| 1786 | +#define GetStartupInfo GetStartupInfoA | |
| 1787 | +#define GetSystemDirectory GetSystemDirectoryA | |
| 1788 | +#define GetTempFileName GetTempFileNameA | |
| 1789 | +#define GetTempPath GetTempPathA | |
| 1790 | +#define GetUserName GetUserNameA | |
| 1791 | +#define GetVersionEx GetVersionExA | |
| 1792 | +#define GetVolumeInformation GetVolumeInformationA | |
| 1793 | +#define GetWindowsDirectory GetWindowsDirectoryA | |
| 1794 | +#define GlobalAddAtom GlobalAddAtomA | |
| 1795 | +#define GlobalFindAtom GlobalFindAtomA | |
| 1796 | +#define GlobalGetAtomName GlobalGetAtomNameA | |
| 1797 | +#define IsBadStringPtr IsBadStringPtrA | |
| 1798 | +#define LoadLibrary LoadLibraryA | |
| 1799 | +#define LoadLibraryEx LoadLibraryExA | |
| 1800 | +#define LogonUser LogonUserA | |
| 1801 | +#define LookupAccountName LookupAccountNameA | |
| 1802 | +#define LookupAccountSid LookupAccountSidA | |
| 1803 | +#define LookupPrivilegeDisplayName LookupPrivilegeDisplayNameA | |
| 1804 | +#define LookupPrivilegeName LookupPrivilegeNameA | |
| 1805 | +#define LookupPrivilegeValue LookupPrivilegeValueA | |
| 1806 | +#define lstrcat lstrcatA | |
| 1807 | +#define lstrcmp lstrcmpA | |
| 1808 | +#define lstrcmpi lstrcmpiA | |
| 1809 | +#define lstrcpy lstrcpyA | |
| 1810 | +#define lstrcpyn lstrcpynA | |
| 1811 | +#define lstrlen lstrlenA | |
| 1812 | +#define MoveFile MoveFileA | |
| 1813 | +#define MoveFileEx MoveFileExA | |
| 1814 | +#define ObjectCloseAuditAlarm ObjectCloseAuditAlarmA | |
| 1815 | +#define ObjectDeleteAuditAlarm ObjectDeleteAuditAlarmA | |
| 1816 | +#define ObjectOpenAuditAlarm ObjectOpenAuditAlarmA | |
| 1817 | +#define ObjectPrivilegeAuditAlarm ObjectPrivilegeAuditAlarmA | |
| 1818 | +#define OpenBackupEventLog OpenBackupEventLogA | |
| 1819 | +#define OpenEvent OpenEventA | |
| 1820 | +#define OpenEventLog OpenEventLogA | |
| 1821 | +#define OpenFileMapping OpenFileMappingA | |
| 1822 | +#define OpenMutex OpenMutexA | |
| 1823 | +#define OpenSemaphore OpenSemaphoreA | |
| 1824 | +#define OutputDebugString OutputDebugStringA | |
| 1825 | +#define PrivilegedServiceAuditAlarm PrivilegedServiceAuditAlarmA | |
| 1826 | +#define QueryDosDevice QueryDosDeviceA | |
| 1827 | +#define ReadEventLog ReadEventLogA | |
| 1828 | +#define RegisterEventSource RegisterEventSourceA | |
| 1829 | +#define RemoveDirectory RemoveDirectoryA | |
| 1830 | +#define ReportEvent ReportEventA | |
| 1831 | +#define SearchPath SearchPathA | |
| 1832 | +#define SetComputerName SetComputerNameA | |
| 1833 | +#define SetCurrentDirectory SetCurrentDirectoryA | |
| 1834 | +#define SetDefaultCommConfig SetDefaultCommConfigA | |
| 1835 | +#define SetEnvironmentVariable SetEnvironmentVariableA | |
| 1836 | +#define SetFileAttributes SetFileAttributesA | |
| 1837 | +#define SetFileSecurity SetFileSecurityA | |
| 1838 | +#define SetVolumeLabel SetVolumeLabelA | |
| 1839 | +#define UpdateResource UpdateResourceA | |
| 1840 | +#define VerifyVersionInfo VerifyVersionInfoA | |
| 1841 | +#define WaitNamedPipe WaitNamedPipeA | |
| 1842 | +#define WritePrivateProfileSection WritePrivateProfileSectionA | |
| 1843 | +#define WritePrivateProfileString WritePrivateProfileStringA | |
| 1844 | +#define WritePrivateProfileStruct WritePrivateProfileStructA | |
| 1845 | +#define WriteProfileSection WriteProfileSectionA | |
| 1846 | +#define WriteProfileString WriteProfileStringA | |
| 1847 | +#endif | |
| 1848 | +#endif | |
| 1849 | +#ifdef __cplusplus | |
| 1850 | +} | |
| 1851 | +#endif | |
| 1852 | +#endif /* _WINBASE_H */ | |
| @@ -0,0 +1,207 @@ | ||
| 1 | +#ifndef _WINCON_H | |
| 2 | +#define _WINCON_H | |
| 3 | +#if __GNUC__ >=3 | |
| 4 | +#pragma GCC system_header | |
| 5 | +#endif | |
| 6 | + | |
| 7 | + | |
| 8 | +#ifdef __cplusplus | |
| 9 | +extern "C" { | |
| 10 | +#endif | |
| 11 | + | |
| 12 | +#define FOREGROUND_BLUE 1 | |
| 13 | +#define FOREGROUND_GREEN 2 | |
| 14 | +#define FOREGROUND_RED 4 | |
| 15 | +#define FOREGROUND_INTENSITY 8 | |
| 16 | +#define BACKGROUND_BLUE 16 | |
| 17 | +#define BACKGROUND_GREEN 32 | |
| 18 | +#define BACKGROUND_RED 64 | |
| 19 | +#define BACKGROUND_INTENSITY 128 | |
| 20 | +#define CTRL_C_EVENT 0 | |
| 21 | +#define CTRL_BREAK_EVENT 1 | |
| 22 | +#define CTRL_CLOSE_EVENT 2 | |
| 23 | +#define CTRL_LOGOFF_EVENT 5 | |
| 24 | +#define CTRL_SHUTDOWN_EVENT 6 | |
| 25 | +#define ENABLE_LINE_INPUT 2 | |
| 26 | +#define ENABLE_ECHO_INPUT 4 | |
| 27 | +#define ENABLE_PROCESSED_INPUT 1 | |
| 28 | +#define ENABLE_WINDOW_INPUT 8 | |
| 29 | +#define ENABLE_MOUSE_INPUT 16 | |
| 30 | +#define ENABLE_PROCESSED_OUTPUT 1 | |
| 31 | +#define ENABLE_WRAP_AT_EOL_OUTPUT 2 | |
| 32 | +#define KEY_EVENT 1 | |
| 33 | +#define MOUSE_EVENT 2 | |
| 34 | +#define WINDOW_BUFFER_SIZE_EVENT 4 | |
| 35 | +#define MENU_EVENT 8 | |
| 36 | +#define FOCUS_EVENT 16 | |
| 37 | +#define CAPSLOCK_ON 128 | |
| 38 | +#define ENHANCED_KEY 256 | |
| 39 | +#define RIGHT_ALT_PRESSED 1 | |
| 40 | +#define LEFT_ALT_PRESSED 2 | |
| 41 | +#define RIGHT_CTRL_PRESSED 4 | |
| 42 | +#define LEFT_CTRL_PRESSED 8 | |
| 43 | +#define SHIFT_PRESSED 16 | |
| 44 | +#define NUMLOCK_ON 32 | |
| 45 | +#define SCROLLLOCK_ON 64 | |
| 46 | +#define FROM_LEFT_1ST_BUTTON_PRESSED 1 | |
| 47 | +#define RIGHTMOST_BUTTON_PRESSED 2 | |
| 48 | +#define FROM_LEFT_2ND_BUTTON_PRESSED 4 | |
| 49 | +#define FROM_LEFT_3RD_BUTTON_PRESSED 8 | |
| 50 | +#define FROM_LEFT_4TH_BUTTON_PRESSED 16 | |
| 51 | +#define MOUSE_MOVED 1 | |
| 52 | +#define DOUBLE_CLICK 2 | |
| 53 | +#define MOUSE_WHEELED 4 | |
| 54 | + | |
| 55 | +typedef struct _CHAR_INFO { | |
| 56 | + union { | |
| 57 | + WCHAR UnicodeChar; | |
| 58 | + CHAR AsciiChar; | |
| 59 | + } Char; | |
| 60 | + WORD Attributes; | |
| 61 | +} CHAR_INFO,*PCHAR_INFO; | |
| 62 | +typedef struct _SMALL_RECT { | |
| 63 | + SHORT Left; | |
| 64 | + SHORT Top; | |
| 65 | + SHORT Right; | |
| 66 | + SHORT Bottom; | |
| 67 | +} SMALL_RECT,*PSMALL_RECT; | |
| 68 | +typedef struct _CONSOLE_CURSOR_INFO { | |
| 69 | + DWORD dwSize; | |
| 70 | + BOOL bVisible; | |
| 71 | +} CONSOLE_CURSOR_INFO,*PCONSOLE_CURSOR_INFO; | |
| 72 | +typedef struct _COORD { | |
| 73 | + SHORT X; | |
| 74 | + SHORT Y; | |
| 75 | +} COORD; | |
| 76 | +typedef struct _CONSOLE_SCREEN_BUFFER_INFO { | |
| 77 | + COORD dwSize; | |
| 78 | + COORD dwCursorPosition; | |
| 79 | + WORD wAttributes; | |
| 80 | + SMALL_RECT srWindow; | |
| 81 | + COORD dwMaximumWindowSize; | |
| 82 | +} CONSOLE_SCREEN_BUFFER_INFO,*PCONSOLE_SCREEN_BUFFER_INFO; | |
| 83 | +typedef BOOL(CALLBACK *PHANDLER_ROUTINE)(DWORD); | |
| 84 | +typedef struct _KEY_EVENT_RECORD { | |
| 85 | + BOOL bKeyDown; | |
| 86 | + WORD wRepeatCount; | |
| 87 | + WORD wVirtualKeyCode; | |
| 88 | + WORD wVirtualScanCode; | |
| 89 | + union { | |
| 90 | + WCHAR UnicodeChar; | |
| 91 | + CHAR AsciiChar; | |
| 92 | + } uChar; | |
| 93 | + DWORD dwControlKeyState; | |
| 94 | +} | |
| 95 | +#ifdef __GNUC__ | |
| 96 | +/* gcc's alignment is not what win32 expects */ | |
| 97 | + PACKED | |
| 98 | +#endif | |
| 99 | +KEY_EVENT_RECORD; | |
| 100 | + | |
| 101 | +typedef struct _MOUSE_EVENT_RECORD { | |
| 102 | + COORD dwMousePosition; | |
| 103 | + DWORD dwButtonState; | |
| 104 | + DWORD dwControlKeyState; | |
| 105 | + DWORD dwEventFlags; | |
| 106 | +} MOUSE_EVENT_RECORD; | |
| 107 | +typedef struct _WINDOW_BUFFER_SIZE_RECORD { COORD dwSize; } WINDOW_BUFFER_SIZE_RECORD; | |
| 108 | +typedef struct _MENU_EVENT_RECORD { UINT dwCommandId; } MENU_EVENT_RECORD,*PMENU_EVENT_RECORD; | |
| 109 | +typedef struct _FOCUS_EVENT_RECORD { BOOL bSetFocus; } FOCUS_EVENT_RECORD; | |
| 110 | +typedef struct _INPUT_RECORD { | |
| 111 | + WORD EventType; | |
| 112 | + union { | |
| 113 | + KEY_EVENT_RECORD KeyEvent; | |
| 114 | + MOUSE_EVENT_RECORD MouseEvent; | |
| 115 | + WINDOW_BUFFER_SIZE_RECORD WindowBufferSizeEvent; | |
| 116 | + MENU_EVENT_RECORD MenuEvent; | |
| 117 | + FOCUS_EVENT_RECORD FocusEvent; | |
| 118 | + } Event; | |
| 119 | +} INPUT_RECORD,*PINPUT_RECORD; | |
| 120 | + | |
| 121 | +BOOL WINAPI AllocConsole(void); | |
| 122 | +HANDLE WINAPI CreateConsoleScreenBuffer(DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,PVOID); | |
| 123 | +BOOL WINAPI FillConsoleOutputAttribute(HANDLE,WORD,DWORD,COORD,PDWORD); | |
| 124 | +BOOL WINAPI FillConsoleOutputCharacterA(HANDLE,CHAR,DWORD,COORD,PDWORD); | |
| 125 | +BOOL WINAPI FillConsoleOutputCharacterW(HANDLE,WCHAR,DWORD,COORD,PDWORD); | |
| 126 | +BOOL WINAPI FlushConsoleInputBuffer(HANDLE); | |
| 127 | +BOOL WINAPI FreeConsole(void); | |
| 128 | +BOOL WINAPI GenerateConsoleCtrlEvent(DWORD,DWORD); | |
| 129 | +UINT WINAPI GetConsoleCP(void); | |
| 130 | +BOOL WINAPI GetConsoleCursorInfo(HANDLE,PCONSOLE_CURSOR_INFO); | |
| 131 | +BOOL WINAPI GetConsoleMode(HANDLE,PDWORD); | |
| 132 | +UINT WINAPI GetConsoleOutputCP(void); | |
| 133 | +BOOL WINAPI GetConsoleScreenBufferInfo(HANDLE,PCONSOLE_SCREEN_BUFFER_INFO); | |
| 134 | +DWORD WINAPI GetConsoleTitleA(LPSTR,DWORD); | |
| 135 | +DWORD WINAPI GetConsoleTitleW(LPWSTR,DWORD); | |
| 136 | +COORD WINAPI GetLargestConsoleWindowSize(HANDLE); | |
| 137 | +BOOL WINAPI GetNumberOfConsoleInputEvents(HANDLE,PDWORD); | |
| 138 | +BOOL WINAPI GetNumberOfConsoleMouseButtons(PDWORD); | |
| 139 | +BOOL WINAPI PeekConsoleInputA(HANDLE,PINPUT_RECORD,DWORD,PDWORD); | |
| 140 | +BOOL WINAPI PeekConsoleInputW(HANDLE,PINPUT_RECORD,DWORD,PDWORD); | |
| 141 | +BOOL WINAPI ReadConsoleA(HANDLE,PVOID,DWORD,PDWORD,PVOID); | |
| 142 | +BOOL WINAPI ReadConsoleW(HANDLE,PVOID,DWORD,PDWORD,PVOID); | |
| 143 | +BOOL WINAPI ReadConsoleInputA(HANDLE,PINPUT_RECORD,DWORD,PDWORD); | |
| 144 | +BOOL WINAPI ReadConsoleInputW(HANDLE,PINPUT_RECORD,DWORD,PDWORD); | |
| 145 | +BOOL WINAPI ReadConsoleOutputAttribute(HANDLE,LPWORD,DWORD,COORD,LPDWORD); | |
| 146 | +BOOL WINAPI ReadConsoleOutputCharacterA(HANDLE,LPSTR,DWORD,COORD,PDWORD); | |
| 147 | +BOOL WINAPI ReadConsoleOutputCharacterW(HANDLE,LPWSTR,DWORD,COORD,PDWORD); | |
| 148 | +BOOL WINAPI ReadConsoleOutputA(HANDLE,PCHAR_INFO,COORD,COORD,PSMALL_RECT); | |
| 149 | +BOOL WINAPI ReadConsoleOutputW(HANDLE,PCHAR_INFO,COORD,COORD,PSMALL_RECT); | |
| 150 | +BOOL WINAPI ScrollConsoleScreenBufferA(HANDLE,const SMALL_RECT*,const SMALL_RECT*,COORD,const CHAR_INFO*); | |
| 151 | +BOOL WINAPI ScrollConsoleScreenBufferW(HANDLE,const SMALL_RECT*,const SMALL_RECT*,COORD,const CHAR_INFO*); | |
| 152 | +BOOL WINAPI SetConsoleActiveScreenBuffer(HANDLE); | |
| 153 | +BOOL WINAPI SetConsoleCP(UINT); | |
| 154 | +BOOL WINAPI SetConsoleCtrlHandler(PHANDLER_ROUTINE,BOOL); | |
| 155 | +BOOL WINAPI SetConsoleCursorInfo(HANDLE,const CONSOLE_CURSOR_INFO*); | |
| 156 | +BOOL WINAPI SetConsoleCursorPosition(HANDLE,COORD); | |
| 157 | +BOOL WINAPI SetConsoleMode(HANDLE,DWORD); | |
| 158 | +BOOL WINAPI SetConsoleOutputCP(UINT); | |
| 159 | +BOOL WINAPI SetConsoleScreenBufferSize(HANDLE,COORD); | |
| 160 | +BOOL WINAPI SetConsoleTextAttribute(HANDLE,WORD); | |
| 161 | +BOOL WINAPI SetConsoleTitleA(LPCSTR); | |
| 162 | +BOOL WINAPI SetConsoleTitleW(LPCWSTR); | |
| 163 | +BOOL WINAPI SetConsoleWindowInfo(HANDLE,BOOL,const SMALL_RECT*); | |
| 164 | +BOOL WINAPI WriteConsoleA(HANDLE,PCVOID,DWORD,PDWORD,PVOID); | |
| 165 | +BOOL WINAPI WriteConsoleW(HANDLE,PCVOID,DWORD,PDWORD,PVOID); | |
| 166 | +BOOL WINAPI WriteConsoleInputA(HANDLE,const INPUT_RECORD*,DWORD,PDWORD); | |
| 167 | +BOOL WINAPI WriteConsoleInputW(HANDLE,const INPUT_RECORD*,DWORD,PDWORD); | |
| 168 | +BOOL WINAPI WriteConsoleOutputA(HANDLE,const CHAR_INFO*,COORD,COORD,PSMALL_RECT); | |
| 169 | +BOOL WINAPI WriteConsoleOutputW(HANDLE,const CHAR_INFO*,COORD,COORD,PSMALL_RECT); | |
| 170 | +BOOL WINAPI WriteConsoleOutputAttribute(HANDLE,const WORD*,DWORD,COORD,PDWORD); | |
| 171 | +BOOL WINAPI WriteConsoleOutputCharacterA(HANDLE,LPCSTR,DWORD,COORD,PDWORD); | |
| 172 | +BOOL WINAPI WriteConsoleOutputCharacterW(HANDLE,LPCWSTR,DWORD,COORD,PDWORD); | |
| 173 | + | |
| 174 | +#ifdef UNICODE | |
| 175 | +#define FillConsoleOutputCharacter FillConsoleOutputCharacterW | |
| 176 | +#define GetConsoleTitle GetConsoleTitleW | |
| 177 | +#define PeekConsoleInput PeekConsoleInputW | |
| 178 | +#define ReadConsole ReadConsoleW | |
| 179 | +#define ReadConsoleInput ReadConsoleInputW | |
| 180 | +#define ReadConsoleOutput ReadConsoleOutputW | |
| 181 | +#define ReadConsoleOutputCharacter ReadConsoleOutputCharacterW | |
| 182 | +#define ScrollConsoleScreenBuffer ScrollConsoleScreenBufferW | |
| 183 | +#define SetConsoleTitle SetConsoleTitleW | |
| 184 | +#define WriteConsole WriteConsoleW | |
| 185 | +#define WriteConsoleInput WriteConsoleInputW | |
| 186 | +#define WriteConsoleOutput WriteConsoleOutputW | |
| 187 | +#define WriteConsoleOutputCharacter WriteConsoleOutputCharacterW | |
| 188 | +#else | |
| 189 | +#define FillConsoleOutputCharacter FillConsoleOutputCharacterA | |
| 190 | +#define GetConsoleTitle GetConsoleTitleA | |
| 191 | +#define PeekConsoleInput PeekConsoleInputA | |
| 192 | +#define ReadConsole ReadConsoleA | |
| 193 | +#define ReadConsoleInput ReadConsoleInputA | |
| 194 | +#define ReadConsoleOutput ReadConsoleOutputA | |
| 195 | +#define ReadConsoleOutputCharacter ReadConsoleOutputCharacterA | |
| 196 | +#define ScrollConsoleScreenBuffer ScrollConsoleScreenBufferA | |
| 197 | +#define SetConsoleTitle SetConsoleTitleA | |
| 198 | +#define WriteConsole WriteConsoleA | |
| 199 | +#define WriteConsoleInput WriteConsoleInputA | |
| 200 | +#define WriteConsoleOutput WriteConsoleOutputA | |
| 201 | +#define WriteConsoleOutputCharacter WriteConsoleOutputCharacterA | |
| 202 | +#endif | |
| 203 | + | |
| 204 | +#ifdef __cplusplus | |
| 205 | +} | |
| 206 | +#endif | |
| 207 | +#endif | |
| @@ -0,0 +1,240 @@ | ||
| 1 | +#ifndef _WINDEF_H | |
| 2 | +#define _WINDEF_H | |
| 3 | +#if __GNUC__ >=3 | |
| 4 | +#pragma GCC system_header | |
| 5 | +#endif | |
| 6 | + | |
| 7 | +#ifdef __cplusplus | |
| 8 | +extern "C" { | |
| 9 | +#endif | |
| 10 | + | |
| 11 | +#ifndef WINVER | |
| 12 | +#define WINVER 0x0400 | |
| 13 | +#endif | |
| 14 | +#ifndef _WIN32_WINNT | |
| 15 | +#define _WIN32_WINNT WINVER | |
| 16 | +#endif | |
| 17 | +#ifndef WIN32 | |
| 18 | +#define WIN32 | |
| 19 | +#endif | |
| 20 | +#ifndef _WIN32 | |
| 21 | +#define _WIN32 | |
| 22 | +#endif | |
| 23 | +#define FAR | |
| 24 | +#define far | |
| 25 | +#define NEAR | |
| 26 | +#define near | |
| 27 | +#ifndef CONST | |
| 28 | +#define CONST const | |
| 29 | +#endif | |
| 30 | +#undef MAX_PATH | |
| 31 | +#define MAX_PATH 260 | |
| 32 | + | |
| 33 | +#ifndef NULL | |
| 34 | +#ifdef __cplusplus | |
| 35 | +#define NULL 0 | |
| 36 | +#else | |
| 37 | +#define NULL ((void*)0) | |
| 38 | +#endif | |
| 39 | +#endif | |
| 40 | +#ifndef FALSE | |
| 41 | +#define FALSE 0 | |
| 42 | +#endif | |
| 43 | +#ifndef TRUE | |
| 44 | +#define TRUE 1 | |
| 45 | +#endif | |
| 46 | +#define IN | |
| 47 | +#define OUT | |
| 48 | +#ifndef OPTIONAL | |
| 49 | +#define OPTIONAL | |
| 50 | +#endif | |
| 51 | + | |
| 52 | +#ifdef __GNUC__ | |
| 53 | +#define PACKED __attribute__((packed)) | |
| 54 | +#ifndef _stdcall | |
| 55 | +#define _stdcall __attribute__((stdcall)) | |
| 56 | +#endif | |
| 57 | +#ifndef __stdcall | |
| 58 | +#define __stdcall __attribute__((stdcall)) | |
| 59 | +#endif | |
| 60 | +#ifndef _cdecl | |
| 61 | +#define _cdecl __attribute__((cdecl)) | |
| 62 | +#endif | |
| 63 | +#ifndef __cdecl | |
| 64 | +#define __cdecl __attribute__((cdecl)) | |
| 65 | +#endif | |
| 66 | +#ifndef __declspec | |
| 67 | +#define __declspec(e) __attribute__((e)) | |
| 68 | +#endif | |
| 69 | +#ifndef _declspec | |
| 70 | +#define _declspec(e) __attribute__((e)) | |
| 71 | +#endif | |
| 72 | +#else | |
| 73 | +#define PACKED | |
| 74 | +#define _cdecl | |
| 75 | +#define __cdecl | |
| 76 | +#endif | |
| 77 | + | |
| 78 | +#undef pascal | |
| 79 | +#undef _pascal | |
| 80 | +#undef __pascal | |
| 81 | +#define pascal __stdcall | |
| 82 | +#define _pascal __stdcall | |
| 83 | +#define __pascal __stdcall | |
| 84 | +#define PASCAL _pascal | |
| 85 | +#define CDECL _cdecl | |
| 86 | +#define STDCALL __stdcall | |
| 87 | +#define WINAPI __stdcall | |
| 88 | +#define WINAPIV __cdecl | |
| 89 | +#define APIENTRY __stdcall | |
| 90 | +#define CALLBACK __stdcall | |
| 91 | +#define APIPRIVATE __stdcall | |
| 92 | + | |
| 93 | +#define DECLSPEC_IMPORT __declspec(dllimport) | |
| 94 | +#define DECLSPEC_EXPORT __declspec(dllexport) | |
| 95 | +#ifdef __GNUC__ | |
| 96 | +#define DECLSPEC_NORETURN __declspec(noreturn) | |
| 97 | +#define DECLARE_STDCALL_P( type ) __stdcall type | |
| 98 | +#elif defined(__WATCOMC__) | |
| 99 | +#define DECLSPEC_NORETURN | |
| 100 | +#define DECLARE_STDCALL_P( type ) type __stdcall | |
| 101 | +#endif /* __GNUC__/__WATCOMC__ */ | |
| 102 | +#define MAKEWORD(a,b) ((WORD)(((BYTE)(a))|(((WORD)((BYTE)(b)))<<8))) | |
| 103 | +#define MAKELONG(a,b) ((LONG)(((WORD)(a))|(((DWORD)((WORD)(b)))<<16))) | |
| 104 | +#define LOWORD(l) ((WORD)((DWORD)(l))) | |
| 105 | +#define HIWORD(l) ((WORD)(((DWORD)(l)>>16)&0xFFFF)) | |
| 106 | +#define LOBYTE(w) ((BYTE)(w)) | |
| 107 | +#define HIBYTE(w) ((BYTE)(((WORD)(w)>>8)&0xFF)) | |
| 108 | + | |
| 109 | +#ifndef _export | |
| 110 | +#define _export | |
| 111 | +#endif | |
| 112 | +#ifndef __export | |
| 113 | +#define __export | |
| 114 | +#endif | |
| 115 | + | |
| 116 | +#ifndef NOMINMAX | |
| 117 | +#ifndef max | |
| 118 | +#define max(a,b) ((a)>(b)?(a):(b)) | |
| 119 | +#endif | |
| 120 | +#ifndef min | |
| 121 | +#define min(a,b) ((a)<(b)?(a):(b)) | |
| 122 | +#endif | |
| 123 | +#endif | |
| 124 | + | |
| 125 | +#define UNREFERENCED_PARAMETER(P) {(P)=(P);} | |
| 126 | +#define UNREFERENCED_LOCAL_VARIABLE(L) {(L)=(L);} | |
| 127 | +#define DBG_UNREFERENCED_PARAMETER(P) | |
| 128 | +#define DBG_UNREFERENCED_LOCAL_VARIABLE(L) | |
| 129 | + | |
| 130 | +typedef unsigned long DWORD; | |
| 131 | +typedef int WINBOOL,*PWINBOOL,*LPWINBOOL; | |
| 132 | +/* FIXME: Is there a good solution to this? */ | |
| 133 | +#ifndef XFree86Server | |
| 134 | +#ifndef __OBJC__ | |
| 135 | +typedef WINBOOL BOOL; | |
| 136 | +#else | |
| 137 | +#define BOOL WINBOOL | |
| 138 | +#endif | |
| 139 | +typedef unsigned char BYTE; | |
| 140 | +#endif /* ndef XFree86Server */ | |
| 141 | +typedef BOOL *PBOOL,*LPBOOL; | |
| 142 | +typedef unsigned short WORD; | |
| 143 | +typedef float FLOAT; | |
| 144 | +typedef FLOAT *PFLOAT; | |
| 145 | +typedef BYTE *PBYTE,*LPBYTE; | |
| 146 | +typedef int *PINT,*LPINT; | |
| 147 | +typedef WORD *PWORD,*LPWORD; | |
| 148 | +typedef long *LPLONG; | |
| 149 | +typedef DWORD *PDWORD,*LPDWORD; | |
| 150 | +typedef void *PVOID,*LPVOID; | |
| 151 | +typedef CONST void *PCVOID,*LPCVOID; | |
| 152 | +typedef int INT; | |
| 153 | +typedef unsigned int UINT,*PUINT,*LPUINT; | |
| 154 | + | |
| 155 | +#include <winnt.h> | |
| 156 | + | |
| 157 | +typedef UINT WPARAM; | |
| 158 | +typedef LONG LPARAM; | |
| 159 | +typedef LONG LRESULT; | |
| 160 | +#ifndef _HRESULT_DEFINED | |
| 161 | +typedef LONG HRESULT; | |
| 162 | +#define _HRESULT_DEFINED | |
| 163 | +#endif | |
| 164 | +#ifndef XFree86Server | |
| 165 | +typedef WORD ATOM; | |
| 166 | +#endif /* XFree86Server */ | |
| 167 | +typedef HANDLE HGLOBAL; | |
| 168 | +typedef HANDLE HLOCAL; | |
| 169 | +typedef HANDLE GLOBALHANDLE; | |
| 170 | +typedef HANDLE LOCALHANDLE; | |
| 171 | +typedef void *HGDIOBJ; | |
| 172 | +DECLARE_HANDLE(HACCEL); | |
| 173 | +DECLARE_HANDLE(HBITMAP); | |
| 174 | +DECLARE_HANDLE(HBRUSH); | |
| 175 | +DECLARE_HANDLE(HCOLORSPACE); | |
| 176 | +DECLARE_HANDLE(HDC); | |
| 177 | +DECLARE_HANDLE(HGLRC); | |
| 178 | +DECLARE_HANDLE(HDESK); | |
| 179 | +DECLARE_HANDLE(HENHMETAFILE); | |
| 180 | +DECLARE_HANDLE(HFONT); | |
| 181 | +DECLARE_HANDLE(HICON); | |
| 182 | +DECLARE_HANDLE(HKEY); | |
| 183 | +/* FIXME: How to handle these. SM_CMONITORS etc in winuser.h also. */ | |
| 184 | +/* #if (WINVER >= 0x0500) */ | |
| 185 | +DECLARE_HANDLE(HMONITOR); | |
| 186 | +#define HMONITOR_DECLARED 1 | |
| 187 | +DECLARE_HANDLE(HTERMINAL); | |
| 188 | +DECLARE_HANDLE(HWINEVENTHOOK); | |
| 189 | +/* #endif */ | |
| 190 | +typedef HKEY *PHKEY; | |
| 191 | +DECLARE_HANDLE(HMENU); | |
| 192 | +DECLARE_HANDLE(HMETAFILE); | |
| 193 | +DECLARE_HANDLE(HINSTANCE); | |
| 194 | +typedef HINSTANCE HMODULE; | |
| 195 | +DECLARE_HANDLE(HPALETTE); | |
| 196 | +DECLARE_HANDLE(HPEN); | |
| 197 | +DECLARE_HANDLE(HRGN); | |
| 198 | +DECLARE_HANDLE(HRSRC); | |
| 199 | +DECLARE_HANDLE(HSTR); | |
| 200 | +DECLARE_HANDLE(HTASK); | |
| 201 | +DECLARE_HANDLE(HWND); | |
| 202 | +DECLARE_HANDLE(HWINSTA); | |
| 203 | +DECLARE_HANDLE(HKL); | |
| 204 | +typedef int HFILE; | |
| 205 | +typedef HICON HCURSOR; | |
| 206 | +typedef DWORD COLORREF; | |
| 207 | +typedef int (WINAPI *FARPROC)(); | |
| 208 | +typedef int (WINAPI *NEARPROC)(); | |
| 209 | +typedef int (WINAPI *PROC)(); | |
| 210 | +typedef struct tagRECT { | |
| 211 | + LONG left; | |
| 212 | + LONG top; | |
| 213 | + LONG right; | |
| 214 | + LONG bottom; | |
| 215 | +} RECT,*PRECT,*LPRECT; | |
| 216 | +typedef const RECT *LPCRECT; | |
| 217 | +typedef struct tagRECTL { | |
| 218 | + LONG left; | |
| 219 | + LONG top; | |
| 220 | + LONG right; | |
| 221 | + LONG bottom; | |
| 222 | +} RECTL,*PRECTL,*LPRECTL; | |
| 223 | +typedef const RECTL *LPCRECTL; | |
| 224 | +typedef struct tagPOINT { | |
| 225 | + LONG x; | |
| 226 | + LONG y; | |
| 227 | +} POINT,POINTL,*PPOINT,*LPPOINT,*PPOINTL,*LPPOINTL; | |
| 228 | +typedef struct tagSIZE { | |
| 229 | + LONG cx; | |
| 230 | + LONG cy; | |
| 231 | +} SIZE,SIZEL,*PSIZE,*LPSIZE,*PSIZEL,*LPSIZEL; | |
| 232 | +typedef struct tagPOINTS { | |
| 233 | + SHORT x; | |
| 234 | + SHORT y; | |
| 235 | +} POINTS,*PPOINTS,*LPPOINTS; | |
| 236 | + | |
| 237 | +#ifdef __cplusplus | |
| 238 | +} | |
| 239 | +#endif | |
| 240 | +#endif | |
| @@ -0,0 +1,176 @@ | ||
| 1 | +/* | |
| 2 | + windows.h - main header file for the Win32 API | |
| 3 | + | |
| 4 | + Written by Anders Norlander <anorland@hem2.passagen.se> | |
| 5 | + | |
| 6 | + This file is part of a free library for the Win32 API. | |
| 7 | + | |
| 8 | + This library is distributed in the hope that it will be useful, | |
| 9 | + but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 10 | + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 11 | + | |
| 12 | +*/ | |
| 13 | +#ifndef _WINDOWS_H | |
| 14 | +#define _WINDOWS_H | |
| 15 | +#if __GNUC__ >=3 | |
| 16 | +#pragma GCC system_header | |
| 17 | +#endif | |
| 18 | + | |
| 19 | +/* translate GCC target defines to MS equivalents. Keep this synchronized | |
| 20 | + with winnt.h. */ | |
| 21 | +#if defined(__i686__) && !defined(_M_IX86) | |
| 22 | +#define _M_IX86 600 | |
| 23 | +#elif defined(__i586__) && !defined(_M_IX86) | |
| 24 | +#define _M_IX86 500 | |
| 25 | +#elif defined(__i486__) && !defined(_M_IX86) | |
| 26 | +#define _M_IX86 400 | |
| 27 | +#elif defined(__i386__) && !defined(_M_IX86) | |
| 28 | +#define _M_IX86 300 | |
| 29 | +#endif | |
| 30 | +#if defined(_M_IX86) && !defined(_X86_) | |
| 31 | +#define _X86_ | |
| 32 | +#elif defined(_M_ALPHA) && !defined(_ALPHA_) | |
| 33 | +#define _ALPHA_ | |
| 34 | +#elif defined(_M_PPC) && !defined(_PPC_) | |
| 35 | +#define _PPC_ | |
| 36 | +#elif defined(_M_MRX000) && !defined(_MIPS_) | |
| 37 | +#define _MIPS_ | |
| 38 | +#elif defined(_M_M68K) && !defined(_68K_) | |
| 39 | +#define _68K_ | |
| 40 | +#endif | |
| 41 | + | |
| 42 | +#ifdef RC_INVOKED | |
| 43 | +/* winresrc.h includes the necessary headers */ | |
| 44 | +#include <winresrc.h> | |
| 45 | +#else | |
| 46 | + | |
| 47 | +#ifdef __GNUC__ | |
| 48 | +#ifndef NONAMELESSUNION | |
| 49 | +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95) | |
| 50 | +#define _ANONYMOUS_UNION __extension__ | |
| 51 | +#define _ANONYMOUS_STRUCT __extension__ | |
| 52 | +#else | |
| 53 | +#if defined(__cplusplus) | |
| 54 | +#define _ANONYMOUS_UNION __extension__ | |
| 55 | +#endif /* __cplusplus */ | |
| 56 | +#endif /* __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95) */ | |
| 57 | +#endif /* NONAMELESSUNION */ | |
| 58 | +#elif defined(__WATCOMC__) | |
| 59 | +#define _ANONYMOUS_UNION | |
| 60 | +#define _ANONYMOUS_STRUCT | |
| 61 | +#endif /* __GNUC__/__WATCOMC__ */ | |
| 62 | + | |
| 63 | +#ifndef _ANONYMOUS_UNION | |
| 64 | +#define _ANONYMOUS_UNION | |
| 65 | +#define _UNION_NAME(x) x | |
| 66 | +#define DUMMYUNIONNAME u | |
| 67 | +#define DUMMYUNIONNAME2 u2 | |
| 68 | +#define DUMMYUNIONNAME3 u3 | |
| 69 | +#define DUMMYUNIONNAME4 u4 | |
| 70 | +#define DUMMYUNIONNAME5 u5 | |
| 71 | +#define DUMMYUNIONNAME6 u6 | |
| 72 | +#define DUMMYUNIONNAME7 u7 | |
| 73 | +#define DUMMYUNIONNAME8 u8 | |
| 74 | +#else | |
| 75 | +#define _UNION_NAME(x) | |
| 76 | +#define DUMMYUNIONNAME | |
| 77 | +#define DUMMYUNIONNAME2 | |
| 78 | +#define DUMMYUNIONNAME3 | |
| 79 | +#define DUMMYUNIONNAME4 | |
| 80 | +#define DUMMYUNIONNAME5 | |
| 81 | +#define DUMMYUNIONNAME6 | |
| 82 | +#define DUMMYUNIONNAME7 | |
| 83 | +#define DUMMYUNIONNAME8 | |
| 84 | +#endif | |
| 85 | +#ifndef _ANONYMOUS_STRUCT | |
| 86 | +#define _ANONYMOUS_STRUCT | |
| 87 | +#define _STRUCT_NAME(x) x | |
| 88 | +#define DUMMYSTRUCTNAME s | |
| 89 | +#define DUMMYSTRUCTNAME2 s2 | |
| 90 | +#define DUMMYSTRUCTNAME3 s3 | |
| 91 | +#else | |
| 92 | +#define _STRUCT_NAME(x) | |
| 93 | +#define DUMMYSTRUCTNAME | |
| 94 | +#define DUMMYSTRUCTNAME2 | |
| 95 | +#define DUMMYSTRUCTNAME3 | |
| 96 | +#endif | |
| 97 | + | |
| 98 | +#ifndef NO_STRICT | |
| 99 | +#ifndef STRICT | |
| 100 | +#define STRICT 1 | |
| 101 | +#endif | |
| 102 | +#endif | |
| 103 | + | |
| 104 | +#include <stdarg.h> | |
| 105 | +#include <windef.h> | |
| 106 | +#include <wincon.h> | |
| 107 | +#include <basetyps.h> | |
| 108 | +#include <excpt.h> | |
| 109 | +#include <winbase.h> | |
| 110 | +#ifndef _WINGDI_H | |
| 111 | +#include <wingdi.h> | |
| 112 | +#endif | |
| 113 | +#ifndef _WINUSER_H | |
| 114 | +#include <winuser.h> | |
| 115 | +#endif | |
| 116 | +#ifndef _WINNLS_H | |
| 117 | +#include <winnls.h> | |
| 118 | +#endif | |
| 119 | +#ifndef _WINVER_H | |
| 120 | +#include <winver.h> | |
| 121 | +#endif | |
| 122 | +#ifndef _WINNETWK_H | |
| 123 | +#include <winnetwk.h> | |
| 124 | +#endif | |
| 125 | +#ifndef _WINREG_H | |
| 126 | +#include <winreg.h> | |
| 127 | +#endif | |
| 128 | +#ifndef _WINSVC_H | |
| 129 | +#include <winsvc.h> | |
| 130 | +#endif | |
| 131 | + | |
| 132 | +#ifndef WIN32_LEAN_AND_MEAN | |
| 133 | +#include <commdlg.h> | |
| 134 | +#include <cderr.h> | |
| 135 | +#include <dde.h> | |
| 136 | +#include <ddeml.h> | |
| 137 | +#include <dlgs.h> | |
| 138 | +#include <lzexpand.h> | |
| 139 | +#include <mmsystem.h> | |
| 140 | +#include <nb30.h> | |
| 141 | +#include <rpc.h> | |
| 142 | +#include <shellapi.h> | |
| 143 | +#include <winperf.h> | |
| 144 | +#include <winspool.h> | |
| 145 | +#if defined(Win32_Winsock) | |
| 146 | +#warning "The Win32_Winsock macro name is deprecated.\ | |
| 147 | + Please use __USE_W32_SOCKETS instead" | |
| 148 | +#ifndef __USE_W32_SOCKETS | |
| 149 | +#define __USE_W32_SOCKETS | |
| 150 | +#endif | |
| 151 | +#endif | |
| 152 | +#if defined(__USE_W32_SOCKETS) || !(defined(__CYGWIN__) || defined(__MSYS__) || defined(_UWIN)) | |
| 153 | +#if (_WIN32_WINNT >= 0x0400) | |
| 154 | +#include <winsock2.h> | |
| 155 | +/* | |
| 156 | + * MS likes to include mswsock.h here as well, | |
| 157 | + * but that can cause undefined symbols if | |
| 158 | + * winsock2.h is included before windows.h | |
| 159 | + */ | |
| 160 | +#else | |
| 161 | +#include <winsock.h> | |
| 162 | +#endif /* (_WIN32_WINNT >= 0x0400) */ | |
| 163 | +#endif | |
| 164 | +#endif /* WIN32_LEAN_AND_MEAN */ | |
| 165 | + | |
| 166 | +#endif /* RC_INVOKED */ | |
| 167 | + | |
| 168 | +#ifdef __OBJC__ | |
| 169 | +/* FIXME: Not undefining BOOL here causes all BOOLs to be WINBOOL (int), | |
| 170 | + but undefining it causes trouble as well if a file is included after | |
| 171 | + windows.h | |
| 172 | +*/ | |
| 173 | +#undef BOOL | |
| 174 | +#endif | |
| 175 | + | |
| 176 | +#endif | |
| @@ -0,0 +1,1054 @@ | ||
| 1 | +#ifndef _WINERROR_H | |
| 2 | +#define _WINERROR_H | |
| 3 | +#if __GNUC__ >=3 | |
| 4 | +#pragma GCC system_header | |
| 5 | +#endif | |
| 6 | + | |
| 7 | +#define ERROR_SUCCESS 0L | |
| 8 | +#define NO_ERROR 0L | |
| 9 | +#define ERROR_INVALID_FUNCTION 1L | |
| 10 | +#define ERROR_FILE_NOT_FOUND 2L | |
| 11 | +#define ERROR_PATH_NOT_FOUND 3L | |
| 12 | +#define ERROR_TOO_MANY_OPEN_FILES 4L | |
| 13 | +#define ERROR_ACCESS_DENIED 5L | |
| 14 | +#define ERROR_INVALID_HANDLE 6L | |
| 15 | +#define ERROR_ARENA_TRASHED 7L | |
| 16 | +#define ERROR_NOT_ENOUGH_MEMORY 8L | |
| 17 | +#define ERROR_INVALID_BLOCK 9L | |
| 18 | +#define ERROR_BAD_ENVIRONMENT 10L | |
| 19 | +#define ERROR_BAD_FORMAT 11L | |
| 20 | +#define ERROR_INVALID_ACCESS 12L | |
| 21 | +#define ERROR_INVALID_DATA 13L | |
| 22 | +#define ERROR_OUTOFMEMORY 14L | |
| 23 | +#define ERROR_INVALID_DRIVE 15L | |
| 24 | +#define ERROR_CURRENT_DIRECTORY 16L | |
| 25 | +#define ERROR_NOT_SAME_DEVICE 17L | |
| 26 | +#define ERROR_NO_MORE_FILES 18L | |
| 27 | +#define ERROR_WRITE_PROTECT 19L | |
| 28 | +#define ERROR_BAD_UNIT 20L | |
| 29 | +#define ERROR_NOT_READY 21L | |
| 30 | +#define ERROR_BAD_COMMAND 22L | |
| 31 | +#define ERROR_CRC 23L | |
| 32 | +#define ERROR_BAD_LENGTH 24L | |
| 33 | +#define ERROR_SEEK 25L | |
| 34 | +#define ERROR_NOT_DOS_DISK 26L | |
| 35 | +#define ERROR_SECTOR_NOT_FOUND 27L | |
| 36 | +#define ERROR_OUT_OF_PAPER 28L | |
| 37 | +#define ERROR_WRITE_FAULT 29L | |
| 38 | +#define ERROR_READ_FAULT 30L | |
| 39 | +#define ERROR_GEN_FAILURE 31L | |
| 40 | +#define ERROR_SHARING_VIOLATION 32L | |
| 41 | +#define ERROR_LOCK_VIOLATION 33L | |
| 42 | +#define ERROR_WRONG_DISK 34L | |
| 43 | +#define ERROR_SHARING_BUFFER_EXCEEDED 36L | |
| 44 | +#define ERROR_HANDLE_EOF 38L | |
| 45 | +#define ERROR_HANDLE_DISK_FULL 39L | |
| 46 | +#define ERROR_NOT_SUPPORTED 50L | |
| 47 | +#define ERROR_REM_NOT_LIST 51L | |
| 48 | +#define ERROR_DUP_NAME 52L | |
| 49 | +#define ERROR_BAD_NETPATH 53L | |
| 50 | +#define ERROR_NETWORK_BUSY 54L | |
| 51 | +#define ERROR_DEV_NOT_EXIST 55L | |
| 52 | +#define ERROR_TOO_MANY_CMDS 56L | |
| 53 | +#define ERROR_ADAP_HDW_ERR 57L | |
| 54 | +#define ERROR_BAD_NET_RESP 58L | |
| 55 | +#define ERROR_UNEXP_NET_ERR 59L | |
| 56 | +#define ERROR_BAD_REM_ADAP 60L | |
| 57 | +#define ERROR_PRINTQ_FULL 61L | |
| 58 | +#define ERROR_NO_SPOOL_SPACE 62L | |
| 59 | +#define ERROR_PRINT_CANCELLED 63L | |
| 60 | +#define ERROR_NETNAME_DELETED 64L | |
| 61 | +#define ERROR_NETWORK_ACCESS_DENIED 65L | |
| 62 | +#define ERROR_BAD_DEV_TYPE 66L | |
| 63 | +#define ERROR_BAD_NET_NAME 67L | |
| 64 | +#define ERROR_TOO_MANY_NAMES 68L | |
| 65 | +#define ERROR_TOO_MANY_SESS 69L | |
| 66 | +#define ERROR_SHARING_PAUSED 70L | |
| 67 | +#define ERROR_REQ_NOT_ACCEP 71L | |
| 68 | +#define ERROR_REDIR_PAUSED 72L | |
| 69 | +#define ERROR_FILE_EXISTS 80L | |
| 70 | +#define ERROR_CANNOT_MAKE 82L | |
| 71 | +#define ERROR_FAIL_I24 83L | |
| 72 | +#define ERROR_OUT_OF_STRUCTURES 84L | |
| 73 | +#define ERROR_ALREADY_ASSIGNED 85L | |
| 74 | +#define ERROR_INVALID_PASSWORD 86L | |
| 75 | +#define ERROR_INVALID_PARAMETER 87L | |
| 76 | +#define ERROR_NET_WRITE_FAULT 88L | |
| 77 | +#define ERROR_NO_PROC_SLOTS 89L | |
| 78 | +#define ERROR_TOO_MANY_SEMAPHORES 100L | |
| 79 | +#define ERROR_EXCL_SEM_ALREADY_OWNED 101L | |
| 80 | +#define ERROR_SEM_IS_SET 102L | |
| 81 | +#define ERROR_TOO_MANY_SEM_REQUESTS 103L | |
| 82 | +#define ERROR_INVALID_AT_INTERRUPT_TIME 104L | |
| 83 | +#define ERROR_SEM_OWNER_DIED 105L | |
| 84 | +#define ERROR_SEM_USER_LIMIT 106L | |
| 85 | +#define ERROR_DISK_CHANGE 107L | |
| 86 | +#define ERROR_DRIVE_LOCKED 108L | |
| 87 | +#define ERROR_BROKEN_PIPE 109L | |
| 88 | +#define ERROR_OPEN_FAILED 110L | |
| 89 | +#define ERROR_BUFFER_OVERFLOW 111L | |
| 90 | +#define ERROR_DISK_FULL 112L | |
| 91 | +#define ERROR_NO_MORE_SEARCH_HANDLES 113L | |
| 92 | +#define ERROR_INVALID_TARGET_HANDLE 114L | |
| 93 | +#define ERROR_INVALID_CATEGORY 117L | |
| 94 | +#define ERROR_INVALID_VERIFY_SWITCH 118L | |
| 95 | +#define ERROR_BAD_DRIVER_LEVEL 119L | |
| 96 | +#define ERROR_CALL_NOT_IMPLEMENTED 120L | |
| 97 | +#define ERROR_SEM_TIMEOUT 121L | |
| 98 | +#define ERROR_INSUFFICIENT_BUFFER 122L | |
| 99 | +#define ERROR_INVALID_NAME 123L | |
| 100 | +#define ERROR_INVALID_LEVEL 124L | |
| 101 | +#define ERROR_NO_VOLUME_LABEL 125L | |
| 102 | +#define ERROR_MOD_NOT_FOUND 126L | |
| 103 | +#define ERROR_PROC_NOT_FOUND 127L | |
| 104 | +#define ERROR_WAIT_NO_CHILDREN 128L | |
| 105 | +#define ERROR_CHILD_NOT_COMPLETE 129L | |
| 106 | +#define ERROR_DIRECT_ACCESS_HANDLE 130L | |
| 107 | +#define ERROR_NEGATIVE_SEEK 131L | |
| 108 | +#define ERROR_SEEK_ON_DEVICE 132L | |
| 109 | +#define ERROR_IS_JOIN_TARGET 133L | |
| 110 | +#define ERROR_IS_JOINED 134L | |
| 111 | +#define ERROR_IS_SUBSTED 135L | |
| 112 | +#define ERROR_NOT_JOINED 136L | |
| 113 | +#define ERROR_NOT_SUBSTED 137L | |
| 114 | +#define ERROR_JOIN_TO_JOIN 138L | |
| 115 | +#define ERROR_SUBST_TO_SUBST 139L | |
| 116 | +#define ERROR_JOIN_TO_SUBST 140L | |
| 117 | +#define ERROR_SUBST_TO_JOIN 141L | |
| 118 | +#define ERROR_BUSY_DRIVE 142L | |
| 119 | +#define ERROR_SAME_DRIVE 143L | |
| 120 | +#define ERROR_DIR_NOT_ROOT 144L | |
| 121 | +#define ERROR_DIR_NOT_EMPTY 145L | |
| 122 | +#define ERROR_IS_SUBST_PATH 146L | |
| 123 | +#define ERROR_IS_JOIN_PATH 147L | |
| 124 | +#define ERROR_PATH_BUSY 148L | |
| 125 | +#define ERROR_IS_SUBST_TARGET 149L | |
| 126 | +#define ERROR_SYSTEM_TRACE 150L | |
| 127 | +#define ERROR_INVALID_EVENT_COUNT 151L | |
| 128 | +#define ERROR_TOO_MANY_MUXWAITERS 152L | |
| 129 | +#define ERROR_INVALID_LIST_FORMAT 153L | |
| 130 | +#define ERROR_LABEL_TOO_LONG 154L | |
| 131 | +#define ERROR_TOO_MANY_TCBS 155L | |
| 132 | +#define ERROR_SIGNAL_REFUSED 156L | |
| 133 | +#define ERROR_DISCARDED 157L | |
| 134 | +#define ERROR_NOT_LOCKED 158L | |
| 135 | +#define ERROR_BAD_THREADID_ADDR 159L | |
| 136 | +#define ERROR_BAD_ARGUMENTS 160L | |
| 137 | +#define ERROR_BAD_PATHNAME 161L | |
| 138 | +#define ERROR_SIGNAL_PENDING 162L | |
| 139 | +#define ERROR_MAX_THRDS_REACHED 164L | |
| 140 | +#define ERROR_LOCK_FAILED 167L | |
| 141 | +#define ERROR_BUSY 170L | |
| 142 | +#define ERROR_CANCEL_VIOLATION 173L | |
| 143 | +#define ERROR_ATOMIC_LOCKS_NOT_SUPPORTED 174L | |
| 144 | +#define ERROR_INVALID_SEGMENT_NUMBER 180L | |
| 145 | +#define ERROR_INVALID_ORDINAL 182L | |
| 146 | +#define ERROR_ALREADY_EXISTS 183L | |
| 147 | +#define ERROR_INVALID_FLAG_NUMBER 186L | |
| 148 | +#define ERROR_SEM_NOT_FOUND 187L | |
| 149 | +#define ERROR_INVALID_STARTING_CODESEG 188L | |
| 150 | +#define ERROR_INVALID_STACKSEG 189L | |
| 151 | +#define ERROR_INVALID_MODULETYPE 190L | |
| 152 | +#define ERROR_INVALID_EXE_SIGNATURE 191L | |
| 153 | +#define ERROR_EXE_MARKED_INVALID 192L | |
| 154 | +#define ERROR_BAD_EXE_FORMAT 193L | |
| 155 | +#define ERROR_ITERATED_DATA_EXCEEDS_64k 194L | |
| 156 | +#define ERROR_INVALID_MINALLOCSIZE 195L | |
| 157 | +#define ERROR_DYNLINK_FROM_INVALID_RING 196L | |
| 158 | +#define ERROR_IOPL_NOT_ENABLED 197L | |
| 159 | +#define ERROR_INVALID_SEGDPL 198L | |
| 160 | +#define ERROR_AUTODATASEG_EXCEEDS_64k 199L | |
| 161 | +#define ERROR_RING2SEG_MUST_BE_MOVABLE 200L | |
| 162 | +#define ERROR_RELOC_CHAIN_XEEDS_SEGLIM 201L | |
| 163 | +#define ERROR_INFLOOP_IN_RELOC_CHAIN 202L | |
| 164 | +#define ERROR_ENVVAR_NOT_FOUND 203L | |
| 165 | +#define ERROR_NO_SIGNAL_SENT 205L | |
| 166 | +#define ERROR_FILENAME_EXCED_RANGE 206L | |
| 167 | +#define ERROR_RING2_STACK_IN_USE 207L | |
| 168 | +#define ERROR_META_EXPANSION_TOO_LONG 208L | |
| 169 | +#define ERROR_INVALID_SIGNAL_NUMBER 209L | |
| 170 | +#define ERROR_THREAD_1_INACTIVE 210L | |
| 171 | +#define ERROR_LOCKED 212L | |
| 172 | +#define ERROR_TOO_MANY_MODULES 214L | |
| 173 | +#define ERROR_NESTING_NOT_ALLOWED 215L | |
| 174 | +#define ERROR_BAD_PIPE 230L | |
| 175 | +#define ERROR_PIPE_BUSY 231L | |
| 176 | +#define ERROR_NO_DATA 232L | |
| 177 | +#define ERROR_PIPE_NOT_CONNECTED 233L | |
| 178 | +#define ERROR_MORE_DATA 234L | |
| 179 | +#define ERROR_VC_DISCONNECTED 240L | |
| 180 | +#define ERROR_INVALID_EA_NAME 254L | |
| 181 | +#define ERROR_EA_LIST_INCONSISTENT 255L | |
| 182 | +#define ERROR_NO_MORE_ITEMS 259L | |
| 183 | +#define ERROR_CANNOT_COPY 266L | |
| 184 | +#define ERROR_DIRECTORY 267L | |
| 185 | +#define ERROR_EAS_DIDNT_FIT 275L | |
| 186 | +#define ERROR_EA_FILE_CORRUPT 276L | |
| 187 | +#define ERROR_EA_TABLE_FULL 277L | |
| 188 | +#define ERROR_INVALID_EA_HANDLE 278L | |
| 189 | +#define ERROR_EAS_NOT_SUPPORTED 282L | |
| 190 | +#define ERROR_NOT_OWNER 288L | |
| 191 | +#define ERROR_TOO_MANY_POSTS 298L | |
| 192 | +#define ERROR_PARTIAL_COPY 299L | |
| 193 | +#define ERROR_MR_MID_NOT_FOUND 317L | |
| 194 | +#define ERROR_INVALID_ADDRESS 487L | |
| 195 | +#define ERROR_ARITHMETIC_OVERFLOW 534L | |
| 196 | +#define ERROR_PIPE_CONNECTED 535L | |
| 197 | +#define ERROR_PIPE_LISTENING 536L | |
| 198 | +#define ERROR_EA_ACCESS_DENIED 994L | |
| 199 | +#define ERROR_OPERATION_ABORTED 995L | |
| 200 | +#define ERROR_IO_INCOMPLETE 996L | |
| 201 | +#define ERROR_IO_PENDING 997L | |
| 202 | +#define ERROR_NOACCESS 998L | |
| 203 | +#define ERROR_SWAPERROR 999L | |
| 204 | +#define ERROR_STACK_OVERFLOW 1001L | |
| 205 | +#define ERROR_INVALID_MESSAGE 1002L | |
| 206 | +#define ERROR_CAN_NOT_COMPLETE 1003L | |
| 207 | +#define ERROR_INVALID_FLAGS 1004L | |
| 208 | +#define ERROR_UNRECOGNIZED_VOLUME 1005L | |
| 209 | +#define ERROR_FILE_INVALID 1006L | |
| 210 | +#define ERROR_FULLSCREEN_MODE 1007L | |
| 211 | +#define ERROR_NO_TOKEN 1008L | |
| 212 | +#define ERROR_BADDB 1009L | |
| 213 | +#define ERROR_BADKEY 1010L | |
| 214 | +#define ERROR_CANTOPEN 1011L | |
| 215 | +#define ERROR_CANTREAD 1012L | |
| 216 | +#define ERROR_CANTWRITE 1013L | |
| 217 | +#define ERROR_REGISTRY_RECOVERED 1014L | |
| 218 | +#define ERROR_REGISTRY_CORRUPT 1015L | |
| 219 | +#define ERROR_REGISTRY_IO_FAILED 1016L | |
| 220 | +#define ERROR_NOT_REGISTRY_FILE 1017L | |
| 221 | +#define ERROR_KEY_DELETED 1018L | |
| 222 | +#define ERROR_NO_LOG_SPACE 1019L | |
| 223 | +#define ERROR_KEY_HAS_CHILDREN 1020L | |
| 224 | +#define ERROR_CHILD_MUST_BE_VOLATILE 1021L | |
| 225 | +#define ERROR_NOTIFY_ENUM_DIR 1022L | |
| 226 | +#define ERROR_DEPENDENT_SERVICES_RUNNING 1051L | |
| 227 | +#define ERROR_INVALID_SERVICE_CONTROL 1052L | |
| 228 | +#define ERROR_SERVICE_REQUEST_TIMEOUT 1053L | |
| 229 | +#define ERROR_SERVICE_NO_THREAD 1054L | |
| 230 | +#define ERROR_SERVICE_DATABASE_LOCKED 1055L | |
| 231 | +#define ERROR_SERVICE_ALREADY_RUNNING 1056L | |
| 232 | +#define ERROR_INVALID_SERVICE_ACCOUNT 1057L | |
| 233 | +#define ERROR_SERVICE_DISABLED 1058L | |
| 234 | +#define ERROR_CIRCULAR_DEPENDENCY 1059L | |
| 235 | +#define ERROR_SERVICE_DOES_NOT_EXIST 1060L | |
| 236 | +#define ERROR_SERVICE_CANNOT_ACCEPT_CTRL 1061L | |
| 237 | +#define ERROR_SERVICE_NOT_ACTIVE 1062L | |
| 238 | +#define ERROR_FAILED_SERVICE_CONTROLLER_CONNECT 1063L | |
| 239 | +#define ERROR_EXCEPTION_IN_SERVICE 1064L | |
| 240 | +#define ERROR_DATABASE_DOES_NOT_EXIST 1065L | |
| 241 | +#define ERROR_SERVICE_SPECIFIC_ERROR 1066L | |
| 242 | +#define ERROR_PROCESS_ABORTED 1067L | |
| 243 | +#define ERROR_SERVICE_DEPENDENCY_FAIL 1068L | |
| 244 | +#define ERROR_SERVICE_LOGON_FAILED 1069L | |
| 245 | +#define ERROR_SERVICE_START_HANG 1070L | |
| 246 | +#define ERROR_INVALID_SERVICE_LOCK 1071L | |
| 247 | +#define ERROR_SERVICE_MARKED_FOR_DELETE 1072L | |
| 248 | +#define ERROR_SERVICE_EXISTS 1073L | |
| 249 | +#define ERROR_ALREADY_RUNNING_LKG 1074L | |
| 250 | +#define ERROR_SERVICE_DEPENDENCY_DELETED 1075L | |
| 251 | +#define ERROR_BOOT_ALREADY_ACCEPTED 1076L | |
| 252 | +#define ERROR_SERVICE_NEVER_STARTED 1077L | |
| 253 | +#define ERROR_DUPLICATE_SERVICE_NAME 1078L | |
| 254 | +#define ERROR_END_OF_MEDIA 1100L | |
| 255 | +#define ERROR_FILEMARK_DETECTED 1101L | |
| 256 | +#define ERROR_BEGINNING_OF_MEDIA 1102L | |
| 257 | +#define ERROR_SETMARK_DETECTED 1103L | |
| 258 | +#define ERROR_NO_DATA_DETECTED 1104L | |
| 259 | +#define ERROR_PARTITION_FAILURE 1105L | |
| 260 | +#define ERROR_INVALID_BLOCK_LENGTH 1106L | |
| 261 | +#define ERROR_DEVICE_NOT_PARTITIONED 1107L | |
| 262 | +#define ERROR_UNABLE_TO_LOCK_MEDIA 1108L | |
| 263 | +#define ERROR_UNABLE_TO_UNLOAD_MEDIA 1109L | |
| 264 | +#define ERROR_MEDIA_CHANGED 1110L | |
| 265 | +#define ERROR_BUS_RESET 1111L | |
| 266 | +#define ERROR_NO_MEDIA_IN_DRIVE 1112L | |
| 267 | +#define ERROR_NO_UNICODE_TRANSLATION 1113L | |
| 268 | +#define ERROR_DLL_INIT_FAILED 1114L | |
| 269 | +#define ERROR_SHUTDOWN_IN_PROGRESS 1115L | |
| 270 | +#define ERROR_NO_SHUTDOWN_IN_PROGRESS 1116L | |
| 271 | +#define ERROR_IO_DEVICE 1117L | |
| 272 | +#define ERROR_SERIAL_NO_DEVICE 1118L | |
| 273 | +#define ERROR_IRQ_BUSY 1119L | |
| 274 | +#define ERROR_MORE_WRITES 1120L | |
| 275 | +#define ERROR_COUNTER_TIMEOUT 1121L | |
| 276 | +#define ERROR_FLOPPY_ID_MARK_NOT_FOUND 1122L | |
| 277 | +#define ERROR_FLOPPY_WRONG_CYLINDER 1123L | |
| 278 | +#define ERROR_FLOPPY_UNKNOWN_ERROR 1124L | |
| 279 | +#define ERROR_FLOPPY_BAD_REGISTERS 1125L | |
| 280 | +#define ERROR_DISK_RECALIBRATE_FAILED 1126L | |
| 281 | +#define ERROR_DISK_OPERATION_FAILED 1127L | |
| 282 | +#define ERROR_DISK_RESET_FAILED 1128L | |
| 283 | +#define ERROR_EOM_OVERFLOW 1129L | |
| 284 | +#define ERROR_NOT_ENOUGH_SERVER_MEMORY 1130L | |
| 285 | +#define ERROR_POSSIBLE_DEADLOCK 1131L | |
| 286 | +#define ERROR_MAPPED_ALIGNMENT 1132L | |
| 287 | +#define ERROR_SET_POWER_STATE_VETOED 1140L | |
| 288 | +#define ERROR_SET_POWER_STATE_FAILED 1141L | |
| 289 | +#define ERROR_TOO_MANY_LINKS 1142L | |
| 290 | +#define ERROR_OLD_WIN_VERSION 1150L | |
| 291 | +#define ERROR_APP_WRONG_OS 1151L | |
| 292 | +#define ERROR_SINGLE_INSTANCE_APP 1152L | |
| 293 | +#define ERROR_RMODE_APP 1153L | |
| 294 | +#define ERROR_INVALID_DLL 1154L | |
| 295 | +#define ERROR_NO_ASSOCIATION 1155L | |
| 296 | +#define ERROR_DDE_FAIL 1156L | |
| 297 | +#define ERROR_DLL_NOT_FOUND 1157L | |
| 298 | +#define ERROR_BAD_USERNAME 2202L | |
| 299 | +#define ERROR_NOT_CONNECTED 2250L | |
| 300 | +#define ERROR_OPEN_FILES 2401L | |
| 301 | +#define ERROR_ACTIVE_CONNECTIONS 2402L | |
| 302 | +#define ERROR_DEVICE_IN_USE 2404L | |
| 303 | +#define ERROR_BAD_DEVICE 1200L | |
| 304 | +#define ERROR_CONNECTION_UNAVAIL 1201L | |
| 305 | +#define ERROR_DEVICE_ALREADY_REMEMBERED 1202L | |
| 306 | +#define ERROR_NO_NET_OR_BAD_PATH 1203L | |
| 307 | +#define ERROR_BAD_PROVIDER 1204L | |
| 308 | +#define ERROR_CANNOT_OPEN_PROFILE 1205L | |
| 309 | +#define ERROR_BAD_PROFILE 1206L | |
| 310 | +#define ERROR_NOT_CONTAINER 1207L | |
| 311 | +#define ERROR_EXTENDED_ERROR 1208L | |
| 312 | +#define ERROR_INVALID_GROUPNAME 1209L | |
| 313 | +#define ERROR_INVALID_COMPUTERNAME 1210L | |
| 314 | +#define ERROR_INVALID_EVENTNAME 1211L | |
| 315 | +#define ERROR_INVALID_DOMAINNAME 1212L | |
| 316 | +#define ERROR_INVALID_SERVICENAME 1213L | |
| 317 | +#define ERROR_INVALID_NETNAME 1214L | |
| 318 | +#define ERROR_INVALID_SHARENAME 1215L | |
| 319 | +#define ERROR_INVALID_PASSWORDNAME 1216L | |
| 320 | +#define ERROR_INVALID_MESSAGENAME 1217L | |
| 321 | +#define ERROR_INVALID_MESSAGEDEST 1218L | |
| 322 | +#define ERROR_SESSION_CREDENTIAL_CONFLICT 1219L | |
| 323 | +#define ERROR_REMOTE_SESSION_LIMIT_EXCEEDED 1220L | |
| 324 | +#define ERROR_DUP_DOMAINNAME 1221L | |
| 325 | +#define ERROR_NO_NETWORK 1222L | |
| 326 | +#define ERROR_CANCELLED 1223L | |
| 327 | +#define ERROR_USER_MAPPED_FILE 1224L | |
| 328 | +#define ERROR_CONNECTION_REFUSED 1225L | |
| 329 | +#define ERROR_GRACEFUL_DISCONNECT 1226L | |
| 330 | +#define ERROR_ADDRESS_ALREADY_ASSOCIATED 1227L | |
| 331 | +#define ERROR_ADDRESS_NOT_ASSOCIATED 1228L | |
| 332 | +#define ERROR_CONNECTION_INVALID 1229L | |
| 333 | +#define ERROR_CONNECTION_ACTIVE 1230L | |
| 334 | +#define ERROR_NETWORK_UNREACHABLE 1231L | |
| 335 | +#define ERROR_HOST_UNREACHABLE 1232L | |
| 336 | +#define ERROR_PROTOCOL_UNREACHABLE 1233L | |
| 337 | +#define ERROR_PORT_UNREACHABLE 1234L | |
| 338 | +#define ERROR_REQUEST_ABORTED 1235L | |
| 339 | +#define ERROR_CONNECTION_ABORTED 1236L | |
| 340 | +#define ERROR_RETRY 1237L | |
| 341 | +#define ERROR_CONNECTION_COUNT_LIMIT 1238L | |
| 342 | +#define ERROR_LOGIN_TIME_RESTRICTION 1239L | |
| 343 | +#define ERROR_LOGIN_WKSTA_RESTRICTION 1240L | |
| 344 | +#define ERROR_INCORRECT_ADDRESS 1241L | |
| 345 | +#define ERROR_ALREADY_REGISTERED 1242L | |
| 346 | +#define ERROR_SERVICE_NOT_FOUND 1243L | |
| 347 | +#define ERROR_NOT_AUTHENTICATED 1244L | |
| 348 | +#define ERROR_NOT_LOGGED_ON 1245L | |
| 349 | +#define ERROR_CONTINUE 1246L | |
| 350 | +#define ERROR_ALREADY_INITIALIZED 1247L | |
| 351 | +#define ERROR_NO_MORE_DEVICES 1248L | |
| 352 | +#define ERROR_NOT_ALL_ASSIGNED 1300L | |
| 353 | +#define ERROR_SOME_NOT_MAPPED 1301L | |
| 354 | +#define ERROR_NO_QUOTAS_FOR_ACCOUNT 1302L | |
| 355 | +#define ERROR_LOCAL_USER_SESSION_KEY 1303L | |
| 356 | +#define ERROR_NULL_LM_PASSWORD 1304L | |
| 357 | +#define ERROR_UNKNOWN_REVISION 1305L | |
| 358 | +#define ERROR_REVISION_MISMATCH 1306L | |
| 359 | +#define ERROR_INVALID_OWNER 1307L | |
| 360 | +#define ERROR_INVALID_PRIMARY_GROUP 1308L | |
| 361 | +#define ERROR_NO_IMPERSONATION_TOKEN 1309L | |
| 362 | +#define ERROR_CANT_DISABLE_MANDATORY 1310L | |
| 363 | +#define ERROR_NO_LOGON_SERVERS 1311L | |
| 364 | +#define ERROR_NO_SUCH_LOGON_SESSION 1312L | |
| 365 | +#define ERROR_NO_SUCH_PRIVILEGE 1313L | |
| 366 | +#define ERROR_PRIVILEGE_NOT_HELD 1314L | |
| 367 | +#define ERROR_INVALID_ACCOUNT_NAME 1315L | |
| 368 | +#define ERROR_USER_EXISTS 1316L | |
| 369 | +#define ERROR_NO_SUCH_USER 1317L | |
| 370 | +#define ERROR_GROUP_EXISTS 1318L | |
| 371 | +#define ERROR_NO_SUCH_GROUP 1319L | |
| 372 | +#define ERROR_MEMBER_IN_GROUP 1320L | |
| 373 | +#define ERROR_MEMBER_NOT_IN_GROUP 1321L | |
| 374 | +#define ERROR_LAST_ADMIN 1322L | |
| 375 | +#define ERROR_WRONG_PASSWORD 1323L | |
| 376 | +#define ERROR_ILL_FORMED_PASSWORD 1324L | |
| 377 | +#define ERROR_PASSWORD_RESTRICTION 1325L | |
| 378 | +#define ERROR_LOGON_FAILURE 1326L | |
| 379 | +#define ERROR_ACCOUNT_RESTRICTION 1327L | |
| 380 | +#define ERROR_INVALID_LOGON_HOURS 1328L | |
| 381 | +#define ERROR_INVALID_WORKSTATION 1329L | |
| 382 | +#define ERROR_PASSWORD_EXPIRED 1330L | |
| 383 | +#define ERROR_ACCOUNT_DISABLED 1331L | |
| 384 | +#define ERROR_NONE_MAPPED 1332L | |
| 385 | +#define ERROR_TOO_MANY_LUIDS_REQUESTED 1333L | |
| 386 | +#define ERROR_LUIDS_EXHAUSTED 1334L | |
| 387 | +#define ERROR_INVALID_SUB_AUTHORITY 1335L | |
| 388 | +#define ERROR_INVALID_ACL 1336L | |
| 389 | +#define ERROR_INVALID_SID 1337L | |
| 390 | +#define ERROR_INVALID_SECURITY_DESCR 1338L | |
| 391 | +#define ERROR_BAD_INHERITANCE_ACL 1340L | |
| 392 | +#define ERROR_SERVER_DISABLED 1341L | |
| 393 | +#define ERROR_SERVER_NOT_DISABLED 1342L | |
| 394 | +#define ERROR_INVALID_ID_AUTHORITY 1343L | |
| 395 | +#define ERROR_ALLOTTED_SPACE_EXCEEDED 1344L | |
| 396 | +#define ERROR_INVALID_GROUP_ATTRIBUTES 1345L | |
| 397 | +#define ERROR_BAD_IMPERSONATION_LEVEL 1346L | |
| 398 | +#define ERROR_CANT_OPEN_ANONYMOUS 1347L | |
| 399 | +#define ERROR_BAD_VALIDATION_CLASS 1348L | |
| 400 | +#define ERROR_BAD_TOKEN_TYPE 1349L | |
| 401 | +#define ERROR_NO_SECURITY_ON_OBJECT 1350L | |
| 402 | +#define ERROR_CANT_ACCESS_DOMAIN_INFO 1351L | |
| 403 | +#define ERROR_INVALID_SERVER_STATE 1352L | |
| 404 | +#define ERROR_INVALID_DOMAIN_STATE 1353L | |
| 405 | +#define ERROR_INVALID_DOMAIN_ROLE 1354L | |
| 406 | +#define ERROR_NO_SUCH_DOMAIN 1355L | |
| 407 | +#define ERROR_DOMAIN_EXISTS 1356L | |
| 408 | +#define ERROR_DOMAIN_LIMIT_EXCEEDED 1357L | |
| 409 | +#define ERROR_INTERNAL_DB_CORRUPTION 1358L | |
| 410 | +#define ERROR_INTERNAL_ERROR 1359L | |
| 411 | +#define ERROR_GENERIC_NOT_MAPPED 1360L | |
| 412 | +#define ERROR_BAD_DESCRIPTOR_FORMAT 1361L | |
| 413 | +#define ERROR_NOT_LOGON_PROCESS 1362L | |
| 414 | +#define ERROR_LOGON_SESSION_EXISTS 1363L | |
| 415 | +#define ERROR_NO_SUCH_PACKAGE 1364L | |
| 416 | +#define ERROR_BAD_LOGON_SESSION_STATE 1365L | |
| 417 | +#define ERROR_LOGON_SESSION_COLLISION 1366L | |
| 418 | +#define ERROR_INVALID_LOGON_TYPE 1367L | |
| 419 | +#define ERROR_CANNOT_IMPERSONATE 1368L | |
| 420 | +#define ERROR_RXACT_INVALID_STATE 1369L | |
| 421 | +#define ERROR_RXACT_COMMIT_FAILURE 1370L | |
| 422 | +#define ERROR_SPECIAL_ACCOUNT 1371L | |
| 423 | +#define ERROR_SPECIAL_GROUP 1372L | |
| 424 | +#define ERROR_SPECIAL_USER 1373L | |
| 425 | +#define ERROR_MEMBERS_PRIMARY_GROUP 1374L | |
| 426 | +#define ERROR_TOKEN_ALREADY_IN_USE 1375L | |
| 427 | +#define ERROR_NO_SUCH_ALIAS 1376L | |
| 428 | +#define ERROR_MEMBER_NOT_IN_ALIAS 1377L | |
| 429 | +#define ERROR_MEMBER_IN_ALIAS 1378L | |
| 430 | +#define ERROR_ALIAS_EXISTS 1379L | |
| 431 | +#define ERROR_LOGON_NOT_GRANTED 1380L | |
| 432 | +#define ERROR_TOO_MANY_SECRETS 1381L | |
| 433 | +#define ERROR_SECRET_TOO_LONG 1382L | |
| 434 | +#define ERROR_INTERNAL_DB_ERROR 1383L | |
| 435 | +#define ERROR_TOO_MANY_CONTEXT_IDS 1384L | |
| 436 | +#define ERROR_LOGON_TYPE_NOT_GRANTED 1385L | |
| 437 | +#define ERROR_NT_CROSS_ENCRYPTION_REQUIRED 1386L | |
| 438 | +#define ERROR_NO_SUCH_MEMBER 1387L | |
| 439 | +#define ERROR_INVALID_MEMBER 1388L | |
| 440 | +#define ERROR_TOO_MANY_SIDS 1389L | |
| 441 | +#define ERROR_LM_CROSS_ENCRYPTION_REQUIRED 1390L | |
| 442 | +#define ERROR_NO_INHERITANCE 1391L | |
| 443 | +#define ERROR_FILE_CORRUPT 1392L | |
| 444 | +#define ERROR_DISK_CORRUPT 1393L | |
| 445 | +#define ERROR_NO_USER_SESSION_KEY 1394L | |
| 446 | +#define ERROR_LICENSE_QUOTA_EXCEEDED 1395L | |
| 447 | +#define ERROR_INVALID_WINDOW_HANDLE 1400L | |
| 448 | +#define ERROR_INVALID_MENU_HANDLE 1401L | |
| 449 | +#define ERROR_INVALID_CURSOR_HANDLE 1402L | |
| 450 | +#define ERROR_INVALID_ACCEL_HANDLE 1403L | |
| 451 | +#define ERROR_INVALID_HOOK_HANDLE 1404L | |
| 452 | +#define ERROR_INVALID_DWP_HANDLE 1405L | |
| 453 | +#define ERROR_TLW_WITH_WSCHILD 1406L | |
| 454 | +#define ERROR_CANNOT_FIND_WND_CLASS 1407L | |
| 455 | +#define ERROR_WINDOW_OF_OTHER_THREAD 1408L | |
| 456 | +#define ERROR_HOTKEY_ALREADY_REGISTERED 1409L | |
| 457 | +#define ERROR_CLASS_ALREADY_EXISTS 1410L | |
| 458 | +#define ERROR_CLASS_DOES_NOT_EXIST 1411L | |
| 459 | +#define ERROR_CLASS_HAS_WINDOWS 1412L | |
| 460 | +#define ERROR_INVALID_INDEX 1413L | |
| 461 | +#define ERROR_INVALID_ICON_HANDLE 1414L | |
| 462 | +#define ERROR_PRIVATE_DIALOG_INDEX 1415L | |
| 463 | +#define ERROR_LISTBOX_ID_NOT_FOUND 1416L | |
| 464 | +#define ERROR_NO_WILDCARD_CHARACTERS 1417L | |
| 465 | +#define ERROR_CLIPBOARD_NOT_OPEN 1418L | |
| 466 | +#define ERROR_HOTKEY_NOT_REGISTERED 1419L | |
| 467 | +#define ERROR_WINDOW_NOT_DIALOG 1420L | |
| 468 | +#define ERROR_CONTROL_ID_NOT_FOUND 1421L | |
| 469 | +#define ERROR_INVALID_COMBOBOX_MESSAGE 1422L | |
| 470 | +#define ERROR_WINDOW_NOT_COMBOBOX 1423L | |
| 471 | +#define ERROR_INVALID_EDIT_HEIGHT 1424L | |
| 472 | +#define ERROR_DC_NOT_FOUND 1425L | |
| 473 | +#define ERROR_INVALID_HOOK_FILTER 1426L | |
| 474 | +#define ERROR_INVALID_FILTER_PROC 1427L | |
| 475 | +#define ERROR_HOOK_NEEDS_HMOD 1428L | |
| 476 | +#define ERROR_GLOBAL_ONLY_HOOK 1429L | |
| 477 | +#define ERROR_JOURNAL_HOOK_SET 1430L | |
| 478 | +#define ERROR_HOOK_NOT_INSTALLED 1431L | |
| 479 | +#define ERROR_INVALID_LB_MESSAGE 1432L | |
| 480 | +#define ERROR_SETCOUNT_ON_BAD_LB 1433L | |
| 481 | +#define ERROR_LB_WITHOUT_TABSTOPS 1434L | |
| 482 | +#define ERROR_DESTROY_OBJECT_OF_OTHER_THREAD 1435L | |
| 483 | +#define ERROR_CHILD_WINDOW_MENU 1436L | |
| 484 | +#define ERROR_NO_SYSTEM_MENU 1437L | |
| 485 | +#define ERROR_INVALID_MSGBOX_STYLE 1438L | |
| 486 | +#define ERROR_INVALID_SPI_VALUE 1439L | |
| 487 | +#define ERROR_SCREEN_ALREADY_LOCKED 1440L | |
| 488 | +#define ERROR_HWNDS_HAVE_DIFF_PARENT 1441L | |
| 489 | +#define ERROR_NOT_CHILD_WINDOW 1442L | |
| 490 | +#define ERROR_INVALID_GW_COMMAND 1443L | |
| 491 | +#define ERROR_INVALID_THREAD_ID 1444L | |
| 492 | +#define ERROR_NON_MDICHILD_WINDOW 1445L | |
| 493 | +#define ERROR_POPUP_ALREADY_ACTIVE 1446L | |
| 494 | +#define ERROR_NO_SCROLLBARS 1447L | |
| 495 | +#define ERROR_INVALID_SCROLLBAR_RANGE 1448L | |
| 496 | +#define ERROR_INVALID_SHOWWIN_COMMAND 1449L | |
| 497 | +#define ERROR_NO_SYSTEM_RESOURCES 1450L | |
| 498 | +#define ERROR_NONPAGED_SYSTEM_RESOURCES 1451L | |
| 499 | +#define ERROR_PAGED_SYSTEM_RESOURCES 1452L | |
| 500 | +#define ERROR_WORKING_SET_QUOTA 1453L | |
| 501 | +#define ERROR_PAGEFILE_QUOTA 1454L | |
| 502 | +#define ERROR_COMMITMENT_LIMIT 1455L | |
| 503 | +#define ERROR_MENU_ITEM_NOT_FOUND 1456L | |
| 504 | +#define ERROR_EVENTLOG_FILE_CORRUPT 1500L | |
| 505 | +#define ERROR_EVENTLOG_CANT_START 1501L | |
| 506 | +#define ERROR_LOG_FILE_FULL 1502L | |
| 507 | +#define ERROR_EVENTLOG_FILE_CHANGED 1503L | |
| 508 | +#define RPC_S_INVALID_STRING_BINDING 1700L | |
| 509 | +#define RPC_S_WRONG_KIND_OF_BINDING 1701L | |
| 510 | +#define RPC_S_INVALID_BINDING 1702L | |
| 511 | +#define RPC_S_PROTSEQ_NOT_SUPPORTED 1703L | |
| 512 | +#define RPC_S_INVALID_RPC_PROTSEQ 1704L | |
| 513 | +#define RPC_S_INVALID_STRING_UUID 1705L | |
| 514 | +#define RPC_S_INVALID_ENDPOINT_FORMAT 1706L | |
| 515 | +#define RPC_S_INVALID_NET_ADDR 1707L | |
| 516 | +#define RPC_S_NO_ENDPOINT_FOUND 1708L | |
| 517 | +#define RPC_S_INVALID_TIMEOUT 1709L | |
| 518 | +#define RPC_S_OBJECT_NOT_FOUND 1710L | |
| 519 | +#define RPC_S_ALREADY_REGISTERED 1711L | |
| 520 | +#define RPC_S_TYPE_ALREADY_REGISTERED 1712L | |
| 521 | +#define RPC_S_ALREADY_LISTENING 1713L | |
| 522 | +#define RPC_S_NO_PROTSEQS_REGISTERED 1714L | |
| 523 | +#define RPC_S_NOT_LISTENING 1715L | |
| 524 | +#define RPC_S_UNKNOWN_MGR_TYPE 1716L | |
| 525 | +#define RPC_S_UNKNOWN_IF 1717L | |
| 526 | +#define RPC_S_NO_BINDINGS 1718L | |
| 527 | +#define RPC_S_NO_PROTSEQS 1719L | |
| 528 | +#define RPC_S_CANT_CREATE_ENDPOINT 1720L | |
| 529 | +#define RPC_S_OUT_OF_RESOURCES 1721L | |
| 530 | +#define RPC_S_SERVER_UNAVAILABLE 1722L | |
| 531 | +#define RPC_S_SERVER_TOO_BUSY 1723L | |
| 532 | +#define RPC_S_INVALID_NETWORK_OPTIONS 1724L | |
| 533 | +#define RPC_S_NO_CALL_ACTIVE 1725L | |
| 534 | +#define RPC_S_CALL_FAILED 1726L | |
| 535 | +#define RPC_S_CALL_FAILED_DNE 1727L | |
| 536 | +#define RPC_S_PROTOCOL_ERROR 1728L | |
| 537 | +#define RPC_S_UNSUPPORTED_TRANS_SYN 1730L | |
| 538 | +#define RPC_S_UNSUPPORTED_TYPE 1732L | |
| 539 | +#define RPC_S_INVALID_TAG 1733L | |
| 540 | +#define RPC_S_INVALID_BOUND 1734L | |
| 541 | +#define RPC_S_NO_ENTRY_NAME 1735L | |
| 542 | +#define RPC_S_INVALID_NAME_SYNTAX 1736L | |
| 543 | +#define RPC_S_UNSUPPORTED_NAME_SYNTAX 1737L | |
| 544 | +#define RPC_S_UUID_NO_ADDRESS 1739L | |
| 545 | +#define RPC_S_DUPLICATE_ENDPOINT 1740L | |
| 546 | +#define RPC_S_UNKNOWN_AUTHN_TYPE 1741L | |
| 547 | +#define RPC_S_MAX_CALLS_TOO_SMALL 1742L | |
| 548 | +#define RPC_S_STRING_TOO_LONG 1743L | |
| 549 | +#define RPC_S_PROTSEQ_NOT_FOUND 1744L | |
| 550 | +#define RPC_S_PROCNUM_OUT_OF_RANGE 1745L | |
| 551 | +#define RPC_S_BINDING_HAS_NO_AUTH 1746L | |
| 552 | +#define RPC_S_UNKNOWN_AUTHN_SERVICE 1747L | |
| 553 | +#define RPC_S_UNKNOWN_AUTHN_LEVEL 1748L | |
| 554 | +#define RPC_S_INVALID_AUTH_IDENTITY 1749L | |
| 555 | +#define RPC_S_UNKNOWN_AUTHZ_SERVICE 1750L | |
| 556 | +#define EPT_S_INVALID_ENTRY 1751L | |
| 557 | +#define EPT_S_CANT_PERFORM_OP 1752L | |
| 558 | +#define EPT_S_NOT_REGISTERED 1753L | |
| 559 | +#define RPC_S_NOTHING_TO_EXPORT 1754L | |
| 560 | +#define RPC_S_INCOMPLETE_NAME 1755L | |
| 561 | +#define RPC_S_INVALID_VERS_OPTION 1756L | |
| 562 | +#define RPC_S_NO_MORE_MEMBERS 1757L | |
| 563 | +#define RPC_S_NOT_ALL_OBJS_UNEXPORTED 1758L | |
| 564 | +#define RPC_S_INTERFACE_NOT_FOUND 1759L | |
| 565 | +#define RPC_S_ENTRY_ALREADY_EXISTS 1760L | |
| 566 | +#define RPC_S_ENTRY_NOT_FOUND 1761L | |
| 567 | +#define RPC_S_NAME_SERVICE_UNAVAILABLE 1762L | |
| 568 | +#define RPC_S_INVALID_NAF_ID 1763L | |
| 569 | +#define RPC_S_CANNOT_SUPPORT 1764L | |
| 570 | +#define RPC_S_NO_CONTEXT_AVAILABLE 1765L | |
| 571 | +#define RPC_S_INTERNAL_ERROR 1766L | |
| 572 | +#define RPC_S_ZERO_DIVIDE 1767L | |
| 573 | +#define RPC_S_ADDRESS_ERROR 1768L | |
| 574 | +#define RPC_S_FP_DIV_ZERO 1769L | |
| 575 | +#define RPC_S_FP_UNDERFLOW 1770L | |
| 576 | +#define RPC_S_FP_OVERFLOW 1771L | |
| 577 | +#define RPC_X_NO_MORE_ENTRIES 1772L | |
| 578 | +#define RPC_X_SS_CHAR_TRANS_OPEN_FAIL 1773L | |
| 579 | +#define RPC_X_SS_CHAR_TRANS_SHORT_FILE 1774L | |
| 580 | +#define RPC_X_SS_IN_NULL_CONTEXT 1775L | |
| 581 | +#define RPC_X_SS_CONTEXT_DAMAGED 1777L | |
| 582 | +#define RPC_X_SS_HANDLES_MISMATCH 1778L | |
| 583 | +#define RPC_X_SS_CANNOT_GET_CALL_HANDLE 1779L | |
| 584 | +#define RPC_X_NULL_REF_POINTER 1780L | |
| 585 | +#define RPC_X_ENUM_VALUE_OUT_OF_RANGE 1781L | |
| 586 | +#define RPC_X_BYTE_COUNT_TOO_SMALL 1782L | |
| 587 | +#define RPC_X_BAD_STUB_DATA 1783L | |
| 588 | +#define ERROR_INVALID_USER_BUFFER 1784L | |
| 589 | +#define ERROR_UNRECOGNIZED_MEDIA 1785L | |
| 590 | +#define ERROR_NO_TRUST_LSA_SECRET 1786L | |
| 591 | +#define ERROR_NO_TRUST_SAM_ACCOUNT 1787L | |
| 592 | +#define ERROR_TRUSTED_DOMAIN_FAILURE 1788L | |
| 593 | +#define ERROR_TRUSTED_RELATIONSHIP_FAILURE 1789L | |
| 594 | +#define ERROR_TRUST_FAILURE 1790L | |
| 595 | +#define RPC_S_CALL_IN_PROGRESS 1791L | |
| 596 | +#define ERROR_NETLOGON_NOT_STARTED 1792L | |
| 597 | +#define ERROR_ACCOUNT_EXPIRED 1793L | |
| 598 | +#define ERROR_REDIRECTOR_HAS_OPEN_HANDLES 1794L | |
| 599 | +#define ERROR_PRINTER_DRIVER_ALREADY_INSTALLED 1795L | |
| 600 | +#define ERROR_UNKNOWN_PORT 1796L | |
| 601 | +#define ERROR_UNKNOWN_PRINTER_DRIVER 1797L | |
| 602 | +#define ERROR_UNKNOWN_PRINTPROCESSOR 1798L | |
| 603 | +#define ERROR_INVALID_SEPARATOR_FILE 1799L | |
| 604 | +#define ERROR_INVALID_PRIORITY 1800L | |
| 605 | +#define ERROR_INVALID_PRINTER_NAME 1801L | |
| 606 | +#define ERROR_PRINTER_ALREADY_EXISTS 1802L | |
| 607 | +#define ERROR_INVALID_PRINTER_COMMAND 1803L | |
| 608 | +#define ERROR_INVALID_DATATYPE 1804L | |
| 609 | +#define ERROR_INVALID_ENVIRONMENT 1805L | |
| 610 | +#define RPC_S_NO_MORE_BINDINGS 1806L | |
| 611 | +#define ERROR_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT 1807L | |
| 612 | +#define ERROR_NOLOGON_WORKSTATION_TRUST_ACCOUNT 1808L | |
| 613 | +#define ERROR_NOLOGON_SERVER_TRUST_ACCOUNT 1809L | |
| 614 | +#define ERROR_DOMAIN_TRUST_INCONSISTENT 1810L | |
| 615 | +#define ERROR_SERVER_HAS_OPEN_HANDLES 1811L | |
| 616 | +#define ERROR_RESOURCE_DATA_NOT_FOUND 1812L | |
| 617 | +#define ERROR_RESOURCE_TYPE_NOT_FOUND 1813L | |
| 618 | +#define ERROR_RESOURCE_NAME_NOT_FOUND 1814L | |
| 619 | +#define ERROR_RESOURCE_LANG_NOT_FOUND 1815L | |
| 620 | +#define ERROR_NOT_ENOUGH_QUOTA 1816L | |
| 621 | +#define RPC_S_NO_INTERFACES 1817L | |
| 622 | +#define RPC_S_CALL_CANCELLED 1818L | |
| 623 | +#define RPC_S_BINDING_INCOMPLETE 1819L | |
| 624 | +#define RPC_S_COMM_FAILURE 1820L | |
| 625 | +#define RPC_S_UNSUPPORTED_AUTHN_LEVEL 1821L | |
| 626 | +#define RPC_S_NO_PRINC_NAME 1822L | |
| 627 | +#define RPC_S_NOT_RPC_ERROR 1823L | |
| 628 | +#define RPC_S_UUID_LOCAL_ONLY 1824L | |
| 629 | +#define RPC_S_SEC_PKG_ERROR 1825L | |
| 630 | +#define RPC_S_NOT_CANCELLED 1826L | |
| 631 | +#define RPC_X_INVALID_ES_ACTION 1827L | |
| 632 | +#define RPC_X_WRONG_ES_VERSION 1828L | |
| 633 | +#define RPC_X_WRONG_STUB_VERSION 1829L | |
| 634 | +#define RPC_S_GROUP_MEMBER_NOT_FOUND 1898L | |
| 635 | +#define EPT_S_CANT_CREATE 1899L | |
| 636 | +#define RPC_S_INVALID_OBJECT 1900L | |
| 637 | +#define ERROR_INVALID_TIME 1901L | |
| 638 | +#define ERROR_INVALID_FORM_NAME 1902L | |
| 639 | +#define ERROR_INVALID_FORM_SIZE 1903L | |
| 640 | +#define ERROR_ALREADY_WAITING 1904L | |
| 641 | +#define ERROR_PRINTER_DELETED 1905L | |
| 642 | +#define ERROR_INVALID_PRINTER_STATE 1906L | |
| 643 | +#define ERROR_PASSWORD_MUST_CHANGE 1907L | |
| 644 | +#define ERROR_DOMAIN_CONTROLLER_NOT_FOUND 1908L | |
| 645 | +#define ERROR_ACCOUNT_LOCKED_OUT 1909L | |
| 646 | +#define ERROR_NO_BROWSER_SERVERS_FOUND 6118L | |
| 647 | +#define ERROR_INVALID_PIXEL_FORMAT 2000L | |
| 648 | +#define ERROR_BAD_DRIVER 2001L | |
| 649 | +#define ERROR_INVALID_WINDOW_STYLE 2002L | |
| 650 | +#define ERROR_METAFILE_NOT_SUPPORTED 2003L | |
| 651 | +#define ERROR_TRANSFORM_NOT_SUPPORTED 2004L | |
| 652 | +#define ERROR_CLIPPING_NOT_SUPPORTED 2005L | |
| 653 | +#define ERROR_UNKNOWN_PRINT_MONITOR 3000L | |
| 654 | +#define ERROR_PRINTER_DRIVER_IN_USE 3001L | |
| 655 | +#define ERROR_SPOOL_FILE_NOT_FOUND 3002L | |
| 656 | +#define ERROR_SPL_NO_STARTDOC 3003L | |
| 657 | +#define ERROR_SPL_NO_ADDJOB 3004L | |
| 658 | +#define ERROR_PRINT_PROCESSOR_ALREADY_INSTALLED 3005L | |
| 659 | +#define ERROR_PRINT_MONITOR_ALREADY_INSTALLED 3006L | |
| 660 | +#define ERROR_WINS_INTERNAL 4000L | |
| 661 | +#define ERROR_CAN_NOT_DEL_LOCAL_WINS 4001L | |
| 662 | +#define ERROR_STATIC_INIT 4002L | |
| 663 | +#define ERROR_INC_BACKUP 4003L | |
| 664 | +#define ERROR_FULL_BACKUP 4004L | |
| 665 | +#define ERROR_REC_NON_EXISTENT 4005L | |
| 666 | +#define ERROR_RPL_NOT_ALLOWED 4006L | |
| 667 | +#define SEVERITY_SUCCESS 0 | |
| 668 | +#define SEVERITY_ERROR 1 | |
| 669 | +#define FACILITY_WINDOWS 8 | |
| 670 | +#define FACILITY_STORAGE 3 | |
| 671 | +#define FACILITY_RPC 1 | |
| 672 | +#define FACILITY_WIN32 7 | |
| 673 | +#define FACILITY_CONTROL 10 | |
| 674 | +#define FACILITY_NULL 0 | |
| 675 | +#define FACILITY_ITF 4 | |
| 676 | +#define FACILITY_DISPATCH 2 | |
| 677 | +#define SUCCEEDED(Status) ((HRESULT)(Status) >= 0) | |
| 678 | +#define FAILED(Status) ((HRESULT)(Status)<0) | |
| 679 | +#define IS_ERROR(Status) ((unsigned long)(Status) >> 31 == SEVERITY_ERROR) | |
| 680 | +#define HRESULT_CODE(r) ((r)&0xFFFF) | |
| 681 | +#define SCODE_CODE(c) ((c)&0xFFFF) | |
| 682 | +#define HRESULT_FACILITY(r) (((r)>>16)&0x1fff) | |
| 683 | +#define SCODE_FACILITY(c) (((c)>>16)&0x1fff) | |
| 684 | +#define HRESULT_SEVERITY(r) (((r)>>31)&0x1) | |
| 685 | +#define SCODE_SEVERITY(c) (((c)>>31)&0x1) | |
| 686 | +#define MAKE_HRESULT(s,f,c) ((HRESULT)(((unsigned long)(s)<<31)|((unsigned long)(f)<<16)|((unsigned long)(c)))) | |
| 687 | +#define MAKE_SCODE(s,f,c) ((SCODE)(((unsigned long)(s)<<31)|((unsigned long)(f)<<16)|((unsigned long)(c))) ) | |
| 688 | +#define FACILITY_NT_BIT 0x10000000 | |
| 689 | +#define HRESULT_FROM_WIN32(x) (x?((HRESULT)(((x)&0x0000FFFF)|(FACILITY_WIN32<<16)|0x80000000)):0) | |
| 690 | +#define HRESULT_FROM_NT(x) ((HRESULT)((x)|FACILITY_NT_BIT)) | |
| 691 | +#define GetScode(hr) ((SCODE) (hr)) | |
| 692 | +#define ResultFromScode(sc) ((HRESULT) (sc)) | |
| 693 | +#define PropagateResult(hrPrevious, scBase) ((HRESULT) scBase) | |
| 694 | + | |
| 695 | +#define NOERROR S_OK | |
| 696 | +#define E_UNEXPECTED 0x8000FFFFL | |
| 697 | +#define E_NOTIMPL 0x80004001L | |
| 698 | +#define E_OUTOFMEMORY 0x8007000EL | |
| 699 | +#define E_INVALIDARG 0x80070057L | |
| 700 | +#define E_NOINTERFACE 0x80004002L | |
| 701 | +#define E_POINTER 0x80004003L | |
| 702 | +#define E_HANDLE 0x80070006L | |
| 703 | +#define E_ABORT 0x80004004L | |
| 704 | +#define E_FAIL 0x80004005L | |
| 705 | +#define E_ACCESSDENIED 0x80070005L | |
| 706 | +#define E_PENDING 0x8000000AL | |
| 707 | +#define CO_E_INIT_TLS 0x80004006L | |
| 708 | +#define CO_E_INIT_SHARED_ALLOCATOR 0x80004007L | |
| 709 | +#define CO_E_INIT_MEMORY_ALLOCATOR 0x80004008L | |
| 710 | +#define CO_E_INIT_CLASS_CACHE 0x80004009L | |
| 711 | +#define CO_E_INIT_RPC_CHANNEL 0x8000400AL | |
| 712 | +#define CO_E_INIT_TLS_SET_CHANNEL_CONTROL 0x8000400BL | |
| 713 | +#define CO_E_INIT_TLS_CHANNEL_CONTROL 0x8000400CL | |
| 714 | +#define CO_E_INIT_UNACCEPTED_USER_ALLOCATOR 0x8000400DL | |
| 715 | +#define CO_E_INIT_SCM_MUTEX_EXISTS 0x8000400EL | |
| 716 | +#define CO_E_INIT_SCM_FILE_MAPPING_EXISTS 0x8000400FL | |
| 717 | +#define CO_E_INIT_SCM_MAP_VIEW_OF_FILE 0x80004010L | |
| 718 | +#define CO_E_INIT_SCM_EXEC_FAILURE 0x80004011L | |
| 719 | +#define CO_E_INIT_ONLY_SINGLE_THREADED 0x80004012L | |
| 720 | +#define S_OK (0x00000000L) | |
| 721 | +#define S_FALSE (0x00000001L) | |
| 722 | +#define OLE_E_FIRST 0x80040000L | |
| 723 | +#define OLE_E_LAST 0x800400FFL | |
| 724 | +#define OLE_S_FIRST 0x00040000L | |
| 725 | +#define OLE_S_LAST 0x000400FFL | |
| 726 | +#define OLE_E_OLEVERB 0x80040000L | |
| 727 | +#define OLE_E_ADVF 0x80040001L | |
| 728 | +#define OLE_E_ENUM_NOMORE 0x80040002L | |
| 729 | +#define OLE_E_ADVISENOTSUPPORTED 0x80040003L | |
| 730 | +#define OLE_E_NOCONNECTION 0x80040004L | |
| 731 | +#define OLE_E_NOTRUNNING 0x80040005L | |
| 732 | +#define OLE_E_NOCACHE 0x80040006L | |
| 733 | +#define OLE_E_BLANK 0x80040007L | |
| 734 | +#define OLE_E_CLASSDIFF 0x80040008L | |
| 735 | +#define OLE_E_CANT_GETMONIKER 0x80040009L | |
| 736 | +#define OLE_E_CANT_BINDTOSOURCE 0x8004000AL | |
| 737 | +#define OLE_E_STATIC 0x8004000BL | |
| 738 | +#define OLE_E_PROMPTSAVECANCELLED 0x8004000CL | |
| 739 | +#define OLE_E_INVALIDRECT 0x8004000DL | |
| 740 | +#define OLE_E_WRONGCOMPOBJ 0x8004000EL | |
| 741 | +#define OLE_E_INVALIDHWND 0x8004000FL | |
| 742 | +#define OLE_E_NOT_INPLACEACTIVE 0x80040010L | |
| 743 | +#define OLE_E_CANTCONVERT 0x80040011L | |
| 744 | +#define OLE_E_NOSTORAGE 0x80040012L | |
| 745 | +#define DV_E_FORMATETC 0x80040064L | |
| 746 | +#define DV_E_DVTARGETDEVICE 0x80040065L | |
| 747 | +#define DV_E_STGMEDIUM 0x80040066L | |
| 748 | +#define DV_E_STATDATA 0x80040067L | |
| 749 | +#define DV_E_LINDEX 0x80040068L | |
| 750 | +#define DV_E_TYMED 0x80040069L | |
| 751 | +#define DV_E_CLIPFORMAT 0x8004006AL | |
| 752 | +#define DV_E_DVASPECT 0x8004006BL | |
| 753 | +#define DV_E_DVTARGETDEVICE_SIZE 0x8004006CL | |
| 754 | +#define DV_E_NOIVIEWOBJECT 0x8004006DL | |
| 755 | +#define DRAGDROP_E_FIRST 0x80040100L | |
| 756 | +#define DRAGDROP_E_LAST 0x8004010FL | |
| 757 | +#define DRAGDROP_S_FIRST 0x00040100L | |
| 758 | +#define DRAGDROP_S_LAST 0x0004010FL | |
| 759 | +#define DRAGDROP_E_NOTREGISTERED 0x80040100L | |
| 760 | +#define DRAGDROP_E_ALREADYREGISTERED 0x80040101L | |
| 761 | +#define DRAGDROP_E_INVALIDHWND 0x80040102L | |
| 762 | +#define CLASSFACTORY_E_FIRST 0x80040110L | |
| 763 | +#define CLASSFACTORY_E_LAST 0x8004011FL | |
| 764 | +#define CLASSFACTORY_S_FIRST 0x00040110L | |
| 765 | +#define CLASSFACTORY_S_LAST 0x0004011FL | |
| 766 | +#define CLASS_E_NOAGGREGATION 0x80040110L | |
| 767 | +#define CLASS_E_CLASSNOTAVAILABLE 0x80040111L | |
| 768 | +#define MARSHAL_E_FIRST 0x80040120L | |
| 769 | +#define MARSHAL_E_LAST 0x8004012FL | |
| 770 | +#define MARSHAL_S_FIRST 0x00040120L | |
| 771 | +#define MARSHAL_S_LAST 0x0004012FL | |
| 772 | +#define DATA_E_FIRST 0x80040130L | |
| 773 | +#define DATA_E_LAST 0x8004013FL | |
| 774 | +#define DATA_S_FIRST 0x00040130L | |
| 775 | +#define DATA_S_LAST 0x0004013FL | |
| 776 | +#define VIEW_E_FIRST 0x80040140L | |
| 777 | +#define VIEW_E_LAST 0x8004014FL | |
| 778 | +#define VIEW_S_FIRST 0x00040140L | |
| 779 | +#define VIEW_S_LAST 0x0004014FL | |
| 780 | +#define VIEW_E_DRAW 0x80040140L | |
| 781 | +#define REGDB_E_FIRST 0x80040150L | |
| 782 | +#define REGDB_E_LAST 0x8004015FL | |
| 783 | +#define REGDB_S_FIRST 0x00040150L | |
| 784 | +#define REGDB_S_LAST 0x0004015FL | |
| 785 | +#define REGDB_E_READREGDB 0x80040150L | |
| 786 | +#define REGDB_E_WRITEREGDB 0x80040151L | |
| 787 | +#define REGDB_E_KEYMISSING 0x80040152L | |
| 788 | +#define REGDB_E_INVALIDVALUE 0x80040153L | |
| 789 | +#define REGDB_E_CLASSNOTREG 0x80040154L | |
| 790 | +#define REGDB_E_IIDNOTREG 0x80040155L | |
| 791 | +#define CACHE_E_FIRST 0x80040170L | |
| 792 | +#define CACHE_E_LAST 0x8004017FL | |
| 793 | +#define CACHE_S_FIRST 0x00040170L | |
| 794 | +#define CACHE_S_LAST 0x0004017FL | |
| 795 | +#define CACHE_E_NOCACHE_UPDATED 0x80040170L | |
| 796 | +#define OLEOBJ_E_FIRST 0x80040180L | |
| 797 | +#define OLEOBJ_E_LAST 0x8004018FL | |
| 798 | +#define OLEOBJ_S_FIRST 0x00040180L | |
| 799 | +#define OLEOBJ_S_LAST 0x0004018FL | |
| 800 | +#define OLEOBJ_E_NOVERBS 0x80040180L | |
| 801 | +#define OLEOBJ_E_INVALIDVERB 0x80040181L | |
| 802 | +#define CLIENTSITE_E_FIRST 0x80040190L | |
| 803 | +#define CLIENTSITE_E_LAST 0x8004019FL | |
| 804 | +#define CLIENTSITE_S_FIRST 0x00040190L | |
| 805 | +#define CLIENTSITE_S_LAST 0x0004019FL | |
| 806 | +#define INPLACE_E_NOTUNDOABLE 0x800401A0L | |
| 807 | +#define INPLACE_E_NOTOOLSPACE 0x800401A1L | |
| 808 | +#define INPLACE_E_FIRST 0x800401A0L | |
| 809 | +#define INPLACE_E_LAST 0x800401AFL | |
| 810 | +#define INPLACE_S_FIRST 0x000401A0L | |
| 811 | +#define INPLACE_S_LAST 0x000401AFL | |
| 812 | +#define ENUM_E_FIRST 0x800401B0L | |
| 813 | +#define ENUM_E_LAST 0x800401BFL | |
| 814 | +#define ENUM_S_FIRST 0x000401B0L | |
| 815 | +#define ENUM_S_LAST 0x000401BFL | |
| 816 | +#define CONVERT10_E_FIRST 0x800401C0L | |
| 817 | +#define CONVERT10_E_LAST 0x800401CFL | |
| 818 | +#define CONVERT10_S_FIRST 0x000401C0L | |
| 819 | +#define CONVERT10_S_LAST 0x000401CFL | |
| 820 | +#define CONVERT10_E_OLESTREAM_GET 0x800401C0L | |
| 821 | +#define CONVERT10_E_OLESTREAM_PUT 0x800401C1L | |
| 822 | +#define CONVERT10_E_OLESTREAM_FMT 0x800401C2L | |
| 823 | +#define CONVERT10_E_OLESTREAM_BITMAP_TO_DIB 0x800401C3L | |
| 824 | +#define CONVERT10_E_STG_FMT 0x800401C4L | |
| 825 | +#define CONVERT10_E_STG_NO_STD_STREAM 0x800401C5L | |
| 826 | +#define CONVERT10_E_STG_DIB_TO_BITMAP 0x800401C6L | |
| 827 | +#define CLIPBRD_E_FIRST 0x800401D0L | |
| 828 | +#define CLIPBRD_E_LAST 0x800401DFL | |
| 829 | +#define CLIPBRD_S_FIRST 0x000401D0L | |
| 830 | +#define CLIPBRD_S_LAST 0x000401DFL | |
| 831 | +#define CLIPBRD_E_CANT_OPEN 0x800401D0L | |
| 832 | +#define CLIPBRD_E_CANT_EMPTY 0x800401D1L | |
| 833 | +#define CLIPBRD_E_CANT_SET 0x800401D2L | |
| 834 | +#define CLIPBRD_E_BAD_DATA 0x800401D3L | |
| 835 | +#define CLIPBRD_E_CANT_CLOSE 0x800401D4L | |
| 836 | +#define MK_E_FIRST 0x800401E0L | |
| 837 | +#define MK_E_LAST 0x800401EFL | |
| 838 | +#define MK_S_FIRST 0x000401E0L | |
| 839 | +#define MK_S_LAST 0x000401EFL | |
| 840 | +#define MK_E_CONNECTMANUALLY 0x800401E0L | |
| 841 | +#define MK_E_EXCEEDEDDEADLINE 0x800401E1L | |
| 842 | +#define MK_E_NEEDGENERIC 0x800401E2L | |
| 843 | +#define MK_E_UNAVAILABLE 0x800401E3L | |
| 844 | +#define MK_E_SYNTAX 0x800401E4L | |
| 845 | +#define MK_E_NOOBJECT 0x800401E5L | |
| 846 | +#define MK_E_INVALIDEXTENSION 0x800401E6L | |
| 847 | +#define MK_E_INTERMEDIATEINTERFACENOTSUPPORTED 0x800401E7L | |
| 848 | +#define MK_E_NOTBINDABLE 0x800401E8L | |
| 849 | +#define MK_E_NOTBOUND 0x800401E9L | |
| 850 | +#define MK_E_CANTOPENFILE 0x800401EAL | |
| 851 | +#define MK_E_MUSTBOTHERUSER 0x800401EBL | |
| 852 | +#define MK_E_NOINVERSE 0x800401ECL | |
| 853 | +#define MK_E_NOSTORAGE 0x800401EDL | |
| 854 | +#define MK_E_NOPREFIX 0x800401EEL | |
| 855 | +#define MK_E_ENUMERATION_FAILED 0x800401EFL | |
| 856 | +#define CO_E_FIRST 0x800401F0L | |
| 857 | +#define CO_E_LAST 0x800401FFL | |
| 858 | +#define CO_S_FIRST 0x000401F0L | |
| 859 | +#define CO_S_LAST 0x000401FFL | |
| 860 | +#define CO_E_NOTINITIALIZED 0x800401F0L | |
| 861 | +#define CO_E_ALREADYINITIALIZED 0x800401F1L | |
| 862 | +#define CO_E_CANTDETERMINECLASS 0x800401F2L | |
| 863 | +#define CO_E_CLASSSTRING 0x800401F3L | |
| 864 | +#define CO_E_IIDSTRING 0x800401F4L | |
| 865 | +#define CO_E_APPNOTFOUND 0x800401F5L | |
| 866 | +#define CO_E_APPSINGLEUSE 0x800401F6L | |
| 867 | +#define CO_E_ERRORINAPP 0x800401F7L | |
| 868 | +#define CO_E_DLLNOTFOUND 0x800401F8L | |
| 869 | +#define CO_E_ERRORINDLL 0x800401F9L | |
| 870 | +#define CO_E_WRONGOSFORAPP 0x800401FAL | |
| 871 | +#define CO_E_OBJNOTREG 0x800401FBL | |
| 872 | +#define CO_E_OBJISREG 0x800401FCL | |
| 873 | +#define CO_E_OBJNOTCONNECTED 0x800401FDL | |
| 874 | +#define CO_E_APPDIDNTREG 0x800401FEL | |
| 875 | +#define CO_E_RELEASED 0x800401FFL | |
| 876 | +#define OLE_S_USEREG 0x00040000L | |
| 877 | +#define OLE_S_STATIC 0x00040001L | |
| 878 | +#define OLE_S_MAC_CLIPFORMAT 0x00040002L | |
| 879 | +#define DRAGDROP_S_DROP 0x00040100L | |
| 880 | +#define DRAGDROP_S_CANCEL 0x00040101L | |
| 881 | +#define DRAGDROP_S_USEDEFAULTCURSORS 0x00040102L | |
| 882 | +#define DATA_S_SAMEFORMATETC 0x00040130L | |
| 883 | +#define VIEW_S_ALREADY_FROZEN 0x00040140L | |
| 884 | +#define CACHE_S_FORMATETC_NOTSUPPORTED 0x00040170L | |
| 885 | +#define CACHE_S_SAMECACHE 0x00040171L | |
| 886 | +#define CACHE_S_SOMECACHES_NOTUPDATED 0x00040172L | |
| 887 | +#define OLEOBJ_S_INVALIDVERB 0x00040180L | |
| 888 | +#define OLEOBJ_S_CANNOT_DOVERB_NOW 0x00040181L | |
| 889 | +#define OLEOBJ_S_INVALIDHWND 0x00040182L | |
| 890 | +#define INPLACE_S_TRUNCATED 0x000401A0L | |
| 891 | +#define CONVERT10_S_NO_PRESENTATION 0x000401C0L | |
| 892 | +#define MK_S_REDUCED_TO_SELF 0x000401E2L | |
| 893 | +#define MK_S_ME 0x000401E4L | |
| 894 | +#define MK_S_HIM 0x000401E5L | |
| 895 | +#define MK_S_US 0x000401E6L | |
| 896 | +#define MK_S_MONIKERALREADYREGISTERED 0x000401E7L | |
| 897 | +#define CO_E_CLASS_CREATE_FAILED 0x80080001L | |
| 898 | +#define CO_E_SCM_ERROR 0x80080002L | |
| 899 | +#define CO_E_SCM_RPC_FAILURE 0x80080003L | |
| 900 | +#define CO_E_BAD_PATH 0x80080004L | |
| 901 | +#define CO_E_SERVER_EXEC_FAILURE 0x80080005L | |
| 902 | +#define CO_E_OBJSRV_RPC_FAILURE 0x80080006L | |
| 903 | +#define MK_E_NO_NORMALIZED 0x80080007L | |
| 904 | +#define CO_E_SERVER_STOPPING 0x80080008L | |
| 905 | +#define MEM_E_INVALID_ROOT 0x80080009L | |
| 906 | +#define MEM_E_INVALID_LINK 0x80080010L | |
| 907 | +#define MEM_E_INVALID_SIZE 0x80080011L | |
| 908 | +#define DISP_E_UNKNOWNINTERFACE 0x80020001L | |
| 909 | +#define DISP_E_MEMBERNOTFOUND 0x80020003L | |
| 910 | +#define DISP_E_PARAMNOTFOUND 0x80020004L | |
| 911 | +#define DISP_E_TYPEMISMATCH 0x80020005L | |
| 912 | +#define DISP_E_UNKNOWNNAME 0x80020006L | |
| 913 | +#define DISP_E_NONAMEDARGS 0x80020007L | |
| 914 | +#define DISP_E_BADVARTYPE 0x80020008L | |
| 915 | +#define DISP_E_EXCEPTION 0x80020009L | |
| 916 | +#define DISP_E_OVERFLOW 0x8002000AL | |
| 917 | +#define DISP_E_BADINDEX 0x8002000BL | |
| 918 | +#define DISP_E_UNKNOWNLCID 0x8002000CL | |
| 919 | +#define DISP_E_ARRAYISLOCKED 0x8002000DL | |
| 920 | +#define DISP_E_BADPARAMCOUNT 0x8002000EL | |
| 921 | +#define DISP_E_PARAMNOTOPTIONAL 0x8002000FL | |
| 922 | +#define DISP_E_BADCALLEE 0x80020010L | |
| 923 | +#define DISP_E_NOTACOLLECTION 0x80020011L | |
| 924 | +#define TYPE_E_BUFFERTOOSMALL 0x80028016L | |
| 925 | +#define TYPE_E_INVDATAREAD 0x80028018L | |
| 926 | +#define TYPE_E_UNSUPFORMAT 0x80028019L | |
| 927 | +#define TYPE_E_REGISTRYACCESS 0x8002801CL | |
| 928 | +#define TYPE_E_LIBNOTREGISTERED 0x8002801DL | |
| 929 | +#define TYPE_E_UNDEFINEDTYPE 0x80028027L | |
| 930 | +#define TYPE_E_QUALIFIEDNAMEDISALLOWED 0x80028028L | |
| 931 | +#define TYPE_E_INVALIDSTATE 0x80028029L | |
| 932 | +#define TYPE_E_WRONGTYPEKIND 0x8002802AL | |
| 933 | +#define TYPE_E_ELEMENTNOTFOUND 0x8002802BL | |
| 934 | +#define TYPE_E_AMBIGUOUSNAME 0x8002802CL | |
| 935 | +#define TYPE_E_NAMECONFLICT 0x8002802DL | |
| 936 | +#define TYPE_E_UNKNOWNLCID 0x8002802EL | |
| 937 | +#define TYPE_E_DLLFUNCTIONNOTFOUND 0x8002802FL | |
| 938 | +#define TYPE_E_BADMODULEKIND 0x800288BDL | |
| 939 | +#define TYPE_E_SIZETOOBIG 0x800288C5L | |
| 940 | +#define TYPE_E_DUPLICATEID 0x800288C6L | |
| 941 | +#define TYPE_E_INVALIDID 0x800288CFL | |
| 942 | +#define TYPE_E_TYPEMISMATCH 0x80028CA0L | |
| 943 | +#define TYPE_E_OUTOFBOUNDS 0x80028CA1L | |
| 944 | +#define TYPE_E_IOERROR 0x80028CA2L | |
| 945 | +#define TYPE_E_CANTCREATETMPFILE 0x80028CA3L | |
| 946 | +#define TYPE_E_CANTLOADLIBRARY 0x80029C4AL | |
| 947 | +#define TYPE_E_INCONSISTENTPROPFUNCS 0x80029C83L | |
| 948 | +#define TYPE_E_CIRCULARTYPE 0x80029C84L | |
| 949 | +#define STG_E_INVALIDFUNCTION 0x80030001L | |
| 950 | +#define STG_E_FILENOTFOUND 0x80030002L | |
| 951 | +#define STG_E_PATHNOTFOUND 0x80030003L | |
| 952 | +#define STG_E_TOOMANYOPENFILES 0x80030004L | |
| 953 | +#define STG_E_ACCESSDENIED 0x80030005L | |
| 954 | +#define STG_E_INVALIDHANDLE 0x80030006L | |
| 955 | +#define STG_E_INSUFFICIENTMEMORY 0x80030008L | |
| 956 | +#define STG_E_INVALIDPOINTER 0x80030009L | |
| 957 | +#define STG_E_NOMOREFILES 0x80030012L | |
| 958 | +#define STG_E_DISKISWRITEPROTECTED 0x80030013L | |
| 959 | +#define STG_E_SEEKERROR 0x80030019L | |
| 960 | +#define STG_E_WRITEFAULT 0x8003001DL | |
| 961 | +#define STG_E_READFAULT 0x8003001EL | |
| 962 | +#define STG_E_SHAREVIOLATION 0x80030020L | |
| 963 | +#define STG_E_LOCKVIOLATION 0x80030021L | |
| 964 | +#define STG_E_FILEALREADYEXISTS 0x80030050L | |
| 965 | +#define STG_E_INVALIDPARAMETER 0x80030057L | |
| 966 | +#define STG_E_MEDIUMFULL 0x80030070L | |
| 967 | +#define STG_E_ABNORMALAPIEXIT 0x800300FAL | |
| 968 | +#define STG_E_INVALIDHEADER 0x800300FBL | |
| 969 | +#define STG_E_INVALIDNAME 0x800300FCL | |
| 970 | +#define STG_E_UNKNOWN 0x800300FDL | |
| 971 | +#define STG_E_UNIMPLEMENTEDFUNCTION 0x800300FEL | |
| 972 | +#define STG_E_INVALIDFLAG 0x800300FFL | |
| 973 | +#define STG_E_INUSE 0x80030100L | |
| 974 | +#define STG_E_NOTCURRENT 0x80030101L | |
| 975 | +#define STG_E_REVERTED 0x80030102L | |
| 976 | +#define STG_E_CANTSAVE 0x80030103L | |
| 977 | +#define STG_E_OLDFORMAT 0x80030104L | |
| 978 | +#define STG_E_OLDDLL 0x80030105L | |
| 979 | +#define STG_E_SHAREREQUIRED 0x80030106L | |
| 980 | +#define STG_E_NOTFILEBASEDSTORAGE 0x80030107L | |
| 981 | +#define STG_E_EXTANTMARSHALLINGS 0x80030108L | |
| 982 | +#define STG_S_CONVERTED 0x00030200L | |
| 983 | +#define RPC_E_CALL_REJECTED 0x80010001L | |
| 984 | +#define RPC_E_CALL_CANCELED 0x80010002L | |
| 985 | +#define RPC_E_CANTPOST_INSENDCALL 0x80010003L | |
| 986 | +#define RPC_E_CANTCALLOUT_INASYNCCALL 0x80010004L | |
| 987 | +#define RPC_E_CANTCALLOUT_INEXTERNALCALL 0x80010005L | |
| 988 | +#define RPC_E_CONNECTION_TERMINATED 0x80010006L | |
| 989 | +#define RPC_E_SERVER_DIED 0x80010007L | |
| 990 | +#define RPC_E_CLIENT_DIED 0x80010008L | |
| 991 | +#define RPC_E_INVALID_DATAPACKET 0x80010009L | |
| 992 | +#define RPC_E_CANTTRANSMIT_CALL 0x8001000AL | |
| 993 | +#define RPC_E_CLIENT_CANTMARSHAL_DATA 0x8001000BL | |
| 994 | +#define RPC_E_CLIENT_CANTUNMARSHAL_DATA 0x8001000CL | |
| 995 | +#define RPC_E_SERVER_CANTMARSHAL_DATA 0x8001000DL | |
| 996 | +#define RPC_E_SERVER_CANTUNMARSHAL_DATA 0x8001000EL | |
| 997 | +#define RPC_E_INVALID_DATA 0x8001000FL | |
| 998 | +#define RPC_E_INVALID_PARAMETER 0x80010010L | |
| 999 | +#define RPC_E_CANTCALLOUT_AGAIN 0x80010011L | |
| 1000 | +#define RPC_E_SERVER_DIED_DNE 0x80010012L | |
| 1001 | +#define RPC_E_SYS_CALL_FAILED 0x80010100L | |
| 1002 | +#define RPC_E_OUT_OF_RESOURCES 0x80010101L | |
| 1003 | +#define RPC_E_ATTEMPTED_MULTITHREAD 0x80010102L | |
| 1004 | +#define RPC_E_NOT_REGISTERED 0x80010103L | |
| 1005 | +#define RPC_E_FAULT 0x80010104L | |
| 1006 | +#define RPC_E_SERVERFAULT 0x80010105L | |
| 1007 | +#define RPC_E_CHANGED_MODE 0x80010106L | |
| 1008 | +#define RPC_E_INVALIDMETHOD 0x80010107L | |
| 1009 | +#define RPC_E_DISCONNECTED 0x80010108L | |
| 1010 | +#define RPC_E_RETRY 0x80010109L | |
| 1011 | +#define RPC_E_SERVERCALL_RETRYLATER 0x8001010AL | |
| 1012 | +#define RPC_E_SERVERCALL_REJECTED 0x8001010BL | |
| 1013 | +#define RPC_E_INVALID_CALLDATA 0x8001010CL | |
| 1014 | +#define RPC_E_CANTCALLOUT_ININPUTSYNCCALL 0x8001010DL | |
| 1015 | +#define RPC_E_WRONG_THREAD 0x8001010EL | |
| 1016 | +#define RPC_E_THREAD_NOT_INIT 0x8001010FL | |
| 1017 | +#define RPC_E_UNEXPECTED 0x8001FFFFL | |
| 1018 | + | |
| 1019 | +#define NTE_BAD_UID 0x80090001L | |
| 1020 | +#define NTE_BAD_HASH 0x80090002L | |
| 1021 | +#define NTE_BAD_KEY 0x80090003L | |
| 1022 | +#define NTE_BAD_LEN 0x80090004L | |
| 1023 | +#define NTE_BAD_DATA 0x80090005L | |
| 1024 | +#define NTE_BAD_SIGNATURE 0x80090006L | |
| 1025 | +#define NTE_BAD_VER 0x80090007L | |
| 1026 | +#define NTE_BAD_ALGID 0x80090008L | |
| 1027 | +#define NTE_BAD_FLAGS 0x80090009L | |
| 1028 | +#define NTE_BAD_TYPE 0x8009000AL | |
| 1029 | +#define NTE_BAD_KEY_STATE 0x8009000BL | |
| 1030 | +#define NTE_BAD_HASH_STATE 0x8009000CL | |
| 1031 | +#define NTE_NO_KEY 0x8009000DL | |
| 1032 | +#define NTE_NO_MEMORY 0x8009000EL | |
| 1033 | +#define NTE_EXISTS 0x8009000FL | |
| 1034 | +#define NTE_PERM 0x80090010L | |
| 1035 | +#define NTE_NOT_FOUND 0x80090011L | |
| 1036 | +#define NTE_DOUBLE_ENCRYPT 0x80090012L | |
| 1037 | +#define NTE_BAD_PROVIDER 0x80090013L | |
| 1038 | +#define NTE_BAD_PROV_TYPE 0x80090014L | |
| 1039 | +#define NTE_BAD_PUBLIC_KEY 0x80090015L | |
| 1040 | +#define NTE_BAD_KEYSET 0x80090016L | |
| 1041 | +#define NTE_PROV_TYPE_NOT_DEF 0x80090017L | |
| 1042 | +#define NTE_PROV_TYPE_ENTRY_BAD 0x80090018L | |
| 1043 | +#define NTE_KEYSET_NOT_DEF 0x80090019L | |
| 1044 | +#define NTE_KEYSET_ENTRY_BAD 0x8009001AL | |
| 1045 | +#define NTE_PROV_TYPE_NO_MATCH 0x8009001BL | |
| 1046 | +#define NTE_SIGNATURE_FILE_BAD 0x8009001CL | |
| 1047 | +#define NTE_PROVIDER_DLL_FAIL 0x8009001DL | |
| 1048 | +#define NTE_PROV_DLL_NOT_FOUND 0x8009001EL | |
| 1049 | +#define NTE_BAD_KEYSET_PARAM 0x8009001FL | |
| 1050 | +#define NTE_FAIL 0x80090020L | |
| 1051 | +#define NTE_SYS_ERR 0x80090021L | |
| 1052 | +/* #define NTE_TOKEN_KEYSET_STORAGE ??? */ | |
| 1053 | + | |
| 1054 | +#endif | |
| @@ -0,0 +1,2843 @@ | ||
| 1 | +#ifndef _WINGDI_H | |
| 2 | +#define _WINGDI_H | |
| 3 | +#if __GNUC__ >=3 | |
| 4 | +#pragma GCC system_header | |
| 5 | +#endif | |
| 6 | + | |
| 7 | +#ifdef __cplusplus | |
| 8 | +extern "C" { | |
| 9 | +#endif | |
| 10 | + | |
| 11 | +#define WINGDIAPI | |
| 12 | +#define BI_RGB 0 | |
| 13 | +#define BI_RLE8 1 | |
| 14 | +#define BI_RLE4 2 | |
| 15 | +#define BI_BITFIELDS 3 | |
| 16 | +#define BI_JPEG 4 | |
| 17 | +#define BI_PNG 5 | |
| 18 | +#define LF_FACESIZE 32 | |
| 19 | +#define LF_FULLFACESIZE 64 | |
| 20 | +#define CA_NEGATIVE 1 | |
| 21 | +#define CA_LOG_FILTER 2 | |
| 22 | +#define ILLUMINANT_DEVICE_DEFAULT 0 | |
| 23 | +#define ILLUMINANT_A 1 | |
| 24 | +#define ILLUMINANT_B 2 | |
| 25 | +#define ILLUMINANT_C 3 | |
| 26 | +#define ILLUMINANT_D50 4 | |
| 27 | +#define ILLUMINANT_D55 5 | |
| 28 | +#define ILLUMINANT_D65 6 | |
| 29 | +#define ILLUMINANT_D75 7 | |
| 30 | +#define ILLUMINANT_F2 8 | |
| 31 | +#define ILLUMINANT_MAX_INDEX ILLUMINANT_F2 | |
| 32 | +#define ILLUMINANT_TUNGSTEN ILLUMINANT_A | |
| 33 | +#define ILLUMINANT_DAYLIGHT ILLUMINANT_C | |
| 34 | +#define ILLUMINANT_FLUORESCENT ILLUMINANT_F2 | |
| 35 | +#define ILLUMINANT_NTSC ILLUMINANT_C | |
| 36 | +#define RGB_GAMMA_MIN 2500 | |
| 37 | +#define RGB_GAMMA_MAX 65000 | |
| 38 | +#define REFERENCE_WHITE_MIN 6000 | |
| 39 | +#define REFERENCE_WHITE_MAX 10000 | |
| 40 | +#define REFERENCE_BLACK_MIN 0 | |
| 41 | +#define REFERENCE_BLACK_MAX 4000 | |
| 42 | +#define COLOR_ADJ_MIN (-100) | |
| 43 | +#define COLOR_ADJ_MAX 100 | |
| 44 | +#define CCHDEVICENAME 32 | |
| 45 | +#define CCHFORMNAME 32 | |
| 46 | +#define DI_COMPAT 4 | |
| 47 | +#define DI_DEFAULTSIZE 8 | |
| 48 | +#define DI_IMAGE 2 | |
| 49 | +#define DI_MASK 1 | |
| 50 | +#define DI_NORMAL 3 | |
| 51 | +#define DI_APPBANDING 1 | |
| 52 | +#define EMR_HEADER 1 | |
| 53 | +#define EMR_POLYBEZIER 2 | |
| 54 | +#define EMR_POLYGON 3 | |
| 55 | +#define EMR_POLYLINE 4 | |
| 56 | +#define EMR_POLYBEZIERTO 5 | |
| 57 | +#define EMR_POLYLINETO 6 | |
| 58 | +#define EMR_POLYPOLYLINE 7 | |
| 59 | +#define EMR_POLYPOLYGON 8 | |
| 60 | +#define EMR_SETWINDOWEXTEX 9 | |
| 61 | +#define EMR_SETWINDOWORGEX 10 | |
| 62 | +#define EMR_SETVIEWPORTEXTEX 11 | |
| 63 | +#define EMR_SETVIEWPORTORGEX 12 | |
| 64 | +#define EMR_SETBRUSHORGEX 13 | |
| 65 | +#define EMR_EOF 14 | |
| 66 | +#define EMR_SETPIXELV 15 | |
| 67 | +#define EMR_SETMAPPERFLAGS 16 | |
| 68 | +#define EMR_SETMAPMODE 17 | |
| 69 | +#define EMR_SETBKMODE 18 | |
| 70 | +#define EMR_SETPOLYFILLMODE 19 | |
| 71 | +#define EMR_SETROP2 20 | |
| 72 | +#define EMR_SETSTRETCHBLTMODE 21 | |
| 73 | +#define EMR_SETTEXTALIGN 22 | |
| 74 | +#define EMR_SETCOLORADJUSTMENT 23 | |
| 75 | +#define EMR_SETTEXTCOLOR 24 | |
| 76 | +#define EMR_SETBKCOLOR 25 | |
| 77 | +#define EMR_OFFSETCLIPRGN 26 | |
| 78 | +#define EMR_MOVETOEX 27 | |
| 79 | +#define EMR_SETMETARGN 28 | |
| 80 | +#define EMR_EXCLUDECLIPRECT 29 | |
| 81 | +#define EMR_INTERSECTCLIPRECT 30 | |
| 82 | +#define EMR_SCALEVIEWPORTEXTEX 31 | |
| 83 | +#define EMR_SCALEWINDOWEXTEX 32 | |
| 84 | +#define EMR_SAVEDC 33 | |
| 85 | +#define EMR_RESTOREDC 34 | |
| 86 | +#define EMR_SETWORLDTRANSFORM 35 | |
| 87 | +#define EMR_MODIFYWORLDTRANSFORM 36 | |
| 88 | +#define EMR_SELECTOBJECT 37 | |
| 89 | +#define EMR_CREATEPEN 38 | |
| 90 | +#define EMR_CREATEBRUSHINDIRECT 39 | |
| 91 | +#define EMR_DELETEOBJECT 40 | |
| 92 | +#define EMR_ANGLEARC 41 | |
| 93 | +#define EMR_ELLIPSE 42 | |
| 94 | +#define EMR_RECTANGLE 43 | |
| 95 | +#define EMR_ROUNDRECT 44 | |
| 96 | +#define EMR_ARC 45 | |
| 97 | +#define EMR_CHORD 46 | |
| 98 | +#define EMR_PIE 47 | |
| 99 | +#define EMR_SELECTPALETTE 48 | |
| 100 | +#define EMR_CREATEPALETTE 49 | |
| 101 | +#define EMR_SETPALETTEENTRIES 50 | |
| 102 | +#define EMR_RESIZEPALETTE 51 | |
| 103 | +#define EMR_REALIZEPALETTE 52 | |
| 104 | +#define EMR_EXTFLOODFILL 53 | |
| 105 | +#define EMR_LINETO 54 | |
| 106 | +#define EMR_ARCTO 55 | |
| 107 | +#define EMR_POLYDRAW 56 | |
| 108 | +#define EMR_SETARCDIRECTION 57 | |
| 109 | +#define EMR_SETMITERLIMIT 58 | |
| 110 | +#define EMR_BEGINPATH 59 | |
| 111 | +#define EMR_ENDPATH 60 | |
| 112 | +#define EMR_CLOSEFIGURE 61 | |
| 113 | +#define EMR_FILLPATH 62 | |
| 114 | +#define EMR_STROKEANDFILLPATH 63 | |
| 115 | +#define EMR_STROKEPATH 64 | |
| 116 | +#define EMR_FLATTENPATH 65 | |
| 117 | +#define EMR_WIDENPATH 66 | |
| 118 | +#define EMR_SELECTCLIPPATH 67 | |
| 119 | +#define EMR_ABORTPATH 68 | |
| 120 | +#define EMR_GDICOMMENT 70 | |
| 121 | +#define EMR_FILLRGN 71 | |
| 122 | +#define EMR_FRAMERGN 72 | |
| 123 | +#define EMR_INVERTRGN 73 | |
| 124 | +#define EMR_PAINTRGN 74 | |
| 125 | +#define EMR_EXTSELECTCLIPRGN 75 | |
| 126 | +#define EMR_BITBLT 76 | |
| 127 | +#define EMR_STRETCHBLT 77 | |
| 128 | +#define EMR_MASKBLT 78 | |
| 129 | +#define EMR_PLGBLT 79 | |
| 130 | +#define EMR_SETDIBITSTODEVICE 80 | |
| 131 | +#define EMR_STRETCHDIBITS 81 | |
| 132 | +#define EMR_EXTCREATEFONTINDIRECTW 82 | |
| 133 | +#define EMR_EXTTEXTOUTA 83 | |
| 134 | +#define EMR_EXTTEXTOUTW 84 | |
| 135 | +#define EMR_POLYBEZIER16 85 | |
| 136 | +#define EMR_POLYGON16 86 | |
| 137 | +#define EMR_POLYLINE16 87 | |
| 138 | +#define EMR_POLYBEZIERTO16 88 | |
| 139 | +#define EMR_POLYLINETO16 89 | |
| 140 | +#define EMR_POLYPOLYLINE16 90 | |
| 141 | +#define EMR_POLYPOLYGON16 91 | |
| 142 | +#define EMR_POLYDRAW16 92 | |
| 143 | +#define EMR_CREATEMONOBRUSH 93 | |
| 144 | +#define EMR_CREATEDIBPATTERNBRUSHPT 94 | |
| 145 | +#define EMR_EXTCREATEPEN 95 | |
| 146 | +#define EMR_POLYTEXTOUTA 96 | |
| 147 | +#define EMR_POLYTEXTOUTW 97 | |
| 148 | +#define EMR_SETICMMODE 98 | |
| 149 | +#define EMR_CREATECOLORSPACE 99 | |
| 150 | +#define EMR_SETCOLORSPACE 100 | |
| 151 | +#define EMR_DELETECOLORSPACE 101 | |
| 152 | +#define EMR_GLSRECORD 102 | |
| 153 | +#define EMR_GLSBOUNDEDRECORD 103 | |
| 154 | +#define EMR_PIXELFORMAT 104 | |
| 155 | +#define ENHMETA_SIGNATURE 1179469088 | |
| 156 | +#define EPS_SIGNATURE 0x46535045 | |
| 157 | +#define META_SETBKCOLOR 0x201 | |
| 158 | +#define META_SETBKMODE 0x102 | |
| 159 | +#define META_SETMAPMODE 0x103 | |
| 160 | +#define META_SETROP2 0x104 | |
| 161 | +#define META_SETRELABS 0x105 | |
| 162 | +#define META_SETPOLYFILLMODE 0x106 | |
| 163 | +#define META_SETSTRETCHBLTMODE 0x107 | |
| 164 | +#define META_SETTEXTCHAREXTRA 0x108 | |
| 165 | +#define META_SETTEXTCOLOR 0x209 | |
| 166 | +#define META_SETTEXTJUSTIFICATION 0x20A | |
| 167 | +#define META_SETWINDOWORG 0x20B | |
| 168 | +#define META_SETWINDOWEXT 0x20C | |
| 169 | +#define META_SETVIEWPORTORG 0x20D | |
| 170 | +#define META_SETVIEWPORTEXT 0x20E | |
| 171 | +#define META_OFFSETWINDOWORG 0x20F | |
| 172 | +#define META_SCALEWINDOWEXT 0x410 | |
| 173 | +#define META_OFFSETVIEWPORTORG 0x211 | |
| 174 | +#define META_SCALEVIEWPORTEXT 0x412 | |
| 175 | +#define META_LINETO 0x213 | |
| 176 | +#define META_MOVETO 0x214 | |
| 177 | +#define META_EXCLUDECLIPRECT 0x415 | |
| 178 | +#define META_INTERSECTCLIPRECT 0x416 | |
| 179 | +#define META_ARC 0x817 | |
| 180 | +#define META_ELLIPSE 0x418 | |
| 181 | +#define META_FLOODFILL 0x419 | |
| 182 | +#define META_PIE 0x81A | |
| 183 | +#define META_RECTANGLE 0x41B | |
| 184 | +#define META_ROUNDRECT 0x61C | |
| 185 | +#define META_PATBLT 0x61D | |
| 186 | +#define META_SAVEDC 0x1E | |
| 187 | +#define META_SETPIXEL 0x41F | |
| 188 | +#define META_OFFSETCLIPRGN 0x220 | |
| 189 | +#define META_TEXTOUT 0x521 | |
| 190 | +#define META_BITBLT 0x922 | |
| 191 | +#define META_STRETCHBLT 0xB23 | |
| 192 | +#define META_POLYGON 0x324 | |
| 193 | +#define META_POLYLINE 0x325 | |
| 194 | +#define META_ESCAPE 0x626 | |
| 195 | +#define META_RESTOREDC 0x127 | |
| 196 | +#define META_FILLREGION 0x228 | |
| 197 | +#define META_FRAMEREGION 0x429 | |
| 198 | +#define META_INVERTREGION 0x12A | |
| 199 | +#define META_PAINTREGION 0x12B | |
| 200 | +#define META_SELECTCLIPREGION 0x12C | |
| 201 | +#define META_SELECTOBJECT 0x12D | |
| 202 | +#define META_SETTEXTALIGN 0x12E | |
| 203 | +#define META_CHORD 0x830 | |
| 204 | +#define META_SETMAPPERFLAGS 0x231 | |
| 205 | +#define META_EXTTEXTOUT 0xa32 | |
| 206 | +#define META_SETDIBTODEV 0xd33 | |
| 207 | +#define META_SELECTPALETTE 0x234 | |
| 208 | +#define META_REALIZEPALETTE 0x35 | |
| 209 | +#define META_ANIMATEPALETTE 0x436 | |
| 210 | +#define META_SETPALENTRIES 0x37 | |
| 211 | +#define META_POLYPOLYGON 0x538 | |
| 212 | +#define META_RESIZEPALETTE 0x139 | |
| 213 | +#define META_DIBBITBLT 0x940 | |
| 214 | +#define META_DIBSTRETCHBLT 0xb41 | |
| 215 | +#define META_DIBCREATEPATTERNBRUSH 0x142 | |
| 216 | +#define META_STRETCHDIB 0xf43 | |
| 217 | +#define META_EXTFLOODFILL 0x548 | |
| 218 | +#define META_DELETEOBJECT 0x1f0 | |
| 219 | +#define META_CREATEPALETTE 0xf7 | |
| 220 | +#define META_CREATEPATTERNBRUSH 0x1F9 | |
| 221 | +#define META_CREATEPENINDIRECT 0x2FA | |
| 222 | +#define META_CREATEFONTINDIRECT 0x2FB | |
| 223 | +#define META_CREATEBRUSHINDIRECT 0x2FC | |
| 224 | +#define META_CREATEREGION 0x6FF | |
| 225 | +#define PT_MOVETO 6 | |
| 226 | +#define PT_LINETO 2 | |
| 227 | +#define PT_BEZIERTO 4 | |
| 228 | +#define PT_CLOSEFIGURE 1 | |
| 229 | +#define ELF_VENDOR_SIZE 4 | |
| 230 | +#define ELF_VERSION 0 | |
| 231 | +#define ELF_CULTURE_LATIN 0 | |
| 232 | +#define PFD_TYPE_RGBA 0 | |
| 233 | +#define PFD_TYPE_COLORINDEX 1 | |
| 234 | +#define PFD_MAIN_PLANE 0 | |
| 235 | +#define PFD_OVERLAY_PLANE 1 | |
| 236 | +#define PFD_UNDERLAY_PLANE (-1) | |
| 237 | +#define PFD_DOUBLEBUFFER 1 | |
| 238 | +#define PFD_STEREO 2 | |
| 239 | +#define PFD_DRAW_TO_WINDOW 4 | |
| 240 | +#define PFD_DRAW_TO_BITMAP 8 | |
| 241 | +#define PFD_SUPPORT_GDI 16 | |
| 242 | +#define PFD_SUPPORT_OPENGL 32 | |
| 243 | +#define PFD_GENERIC_FORMAT 64 | |
| 244 | +#define PFD_NEED_PALETTE 128 | |
| 245 | +#define PFD_NEED_SYSTEM_PALETTE 0x00000100 | |
| 246 | +#define PFD_SWAP_EXCHANGE 0x00000200 | |
| 247 | +#define PFD_SWAP_COPY 0x00000400 | |
| 248 | +#define PFD_GENERIC_ACCELERATED 0x00001000 | |
| 249 | +#define PFD_DEPTH_DONTCARE 0x20000000 | |
| 250 | +#define PFD_DOUBLEBUFFER_DONTCARE 0x40000000 | |
| 251 | +#define PFD_STEREO_DONTCARE 0x80000000 | |
| 252 | +#define SP_ERROR (-1) | |
| 253 | +#define SP_OUTOFDISK (-4) | |
| 254 | +#define SP_OUTOFMEMORY (-5) | |
| 255 | +#define SP_USERABORT (-3) | |
| 256 | +#define SP_APPABORT (-2) | |
| 257 | +#define BLACKNESS 0x42 | |
| 258 | +#define NOTSRCERASE 0x1100A6 | |
| 259 | +#define NOTSRCCOPY 0x330008 | |
| 260 | +#define SRCERASE 0x440328 | |
| 261 | +#define DSTINVERT 0x550009 | |
| 262 | +#define PATINVERT 0x5A0049 | |
| 263 | +#define SRCINVERT 0x660046 | |
| 264 | +#define SRCAND 0x8800C6 | |
| 265 | +#define MERGEPAINT 0xBB0226 | |
| 266 | +#define MERGECOPY 0xC000CA | |
| 267 | +#define SRCCOPY 0xCC0020 | |
| 268 | +#define SRCPAINT 0xEE0086 | |
| 269 | +#define PATCOPY 0xF00021 | |
| 270 | +#define PATPAINT 0xFB0A09 | |
| 271 | +#define WHITENESS 0xFF0062 | |
| 272 | +#define R2_BLACK 1 | |
| 273 | +#define R2_COPYPEN 13 | |
| 274 | +#define R2_MASKNOTPEN 3 | |
| 275 | +#define R2_MASKPEN 9 | |
| 276 | +#define R2_MASKPENNOT 5 | |
| 277 | +#define R2_MERGENOTPEN 12 | |
| 278 | +#define R2_MERGEPEN 15 | |
| 279 | +#define R2_MERGEPENNOT 14 | |
| 280 | +#define R2_NOP 11 | |
| 281 | +#define R2_NOT 6 | |
| 282 | +#define R2_NOTCOPYPEN 4 | |
| 283 | +#define R2_NOTMASKPEN 8 | |
| 284 | +#define R2_NOTMERGEPEN 2 | |
| 285 | +#define R2_NOTXORPEN 10 | |
| 286 | +#define R2_WHITE 16 | |
| 287 | +#define R2_XORPEN 7 | |
| 288 | +#define CM_OUT_OF_GAMUT 255 | |
| 289 | +#define CM_IN_GAMUT 0 | |
| 290 | +#define RGN_AND 1 | |
| 291 | +#define RGN_COPY 5 | |
| 292 | +#define RGN_DIFF 4 | |
| 293 | +#define RGN_OR 2 | |
| 294 | +#define RGN_XOR 3 | |
| 295 | +#define NULLREGION 1 | |
| 296 | +#define SIMPLEREGION 2 | |
| 297 | +#define COMPLEXREGION 3 | |
| 298 | +#define ERROR 0 | |
| 299 | +#define CBM_INIT 4 | |
| 300 | +#define DIB_PAL_COLORS 1 | |
| 301 | +#define DIB_RGB_COLORS 0 | |
| 302 | +#define FW_DONTCARE 0 | |
| 303 | +#define FW_THIN 100 | |
| 304 | +#define FW_EXTRALIGHT 200 | |
| 305 | +#define FW_ULTRALIGHT FW_EXTRALIGHT | |
| 306 | +#define FW_LIGHT 300 | |
| 307 | +#define FW_NORMAL 400 | |
| 308 | +#define FW_REGULAR 400 | |
| 309 | +#define FW_MEDIUM 500 | |
| 310 | +#define FW_SEMIBOLD 600 | |
| 311 | +#define FW_DEMIBOLD FW_SEMIBOLD | |
| 312 | +#define FW_BOLD 700 | |
| 313 | +#define FW_EXTRABOLD 800 | |
| 314 | +#define FW_ULTRABOLD FW_EXTRABOLD | |
| 315 | +#define FW_HEAVY 900 | |
| 316 | +#define FW_BLACK FW_HEAVY | |
| 317 | +#define ANSI_CHARSET 0 | |
| 318 | +#define DEFAULT_CHARSET 1 | |
| 319 | +#define SYMBOL_CHARSET 2 | |
| 320 | +#define SHIFTJIS_CHARSET 128 | |
| 321 | +#define HANGEUL_CHARSET 129 | |
| 322 | +#define HANGUL_CHARSET 129 | |
| 323 | +#define GB2312_CHARSET 134 | |
| 324 | +#define CHINESEBIG5_CHARSET 136 | |
| 325 | +#define GREEK_CHARSET 161 | |
| 326 | +#define TURKISH_CHARSET 162 | |
| 327 | +#define HEBREW_CHARSET 177 | |
| 328 | +#define ARABIC_CHARSET 178 | |
| 329 | +#define BALTIC_CHARSET 186 | |
| 330 | +#define RUSSIAN_CHARSET 204 | |
| 331 | +#define THAI_CHARSET 222 | |
| 332 | +#define EASTEUROPE_CHARSET 238 | |
| 333 | +#define OEM_CHARSET 255 | |
| 334 | +#define JOHAB_CHARSET 130 | |
| 335 | +#define VIETNAMESE_CHARSET 163 | |
| 336 | +#define MAC_CHARSET 77 | |
| 337 | +#define BALTIC_CHARSET 186 | |
| 338 | +#define JOHAB_CHARSET 130 | |
| 339 | +#define VIETNAMESE_CHARSET 163 | |
| 340 | +#define OUT_DEFAULT_PRECIS 0 | |
| 341 | +#define OUT_STRING_PRECIS 1 | |
| 342 | +#define OUT_CHARACTER_PRECIS 2 | |
| 343 | +#define OUT_STROKE_PRECIS 3 | |
| 344 | +#define OUT_TT_PRECIS 4 | |
| 345 | +#define OUT_DEVICE_PRECIS 5 | |
| 346 | +#define OUT_RASTER_PRECIS 6 | |
| 347 | +#define OUT_TT_ONLY_PRECIS 7 | |
| 348 | +#define OUT_OUTLINE_PRECIS 8 | |
| 349 | +#define CLIP_DEFAULT_PRECIS 0 | |
| 350 | +#define CLIP_CHARACTER_PRECIS 1 | |
| 351 | +#define CLIP_STROKE_PRECIS 2 | |
| 352 | +#define CLIP_MASK 15 | |
| 353 | +#define CLIP_LH_ANGLES 16 | |
| 354 | +#define CLIP_TT_ALWAYS 32 | |
| 355 | +#define CLIP_EMBEDDED 128 | |
| 356 | +#define DEFAULT_QUALITY 0 | |
| 357 | +#define DRAFT_QUALITY 1 | |
| 358 | +#define PROOF_QUALITY 2 | |
| 359 | +#define NONANTIALIASED_QUALITY 3 | |
| 360 | +#define ANTIALIASED_QUALITY 4 | |
| 361 | +#define DEFAULT_PITCH 0 | |
| 362 | +#define FIXED_PITCH 1 | |
| 363 | +#define VARIABLE_PITCH 2 | |
| 364 | +#define MONO_FONT 8 | |
| 365 | +#define FF_DECORATIVE 80 | |
| 366 | +#define FF_DONTCARE 0 | |
| 367 | +#define FF_MODERN 48 | |
| 368 | +#define FF_ROMAN 16 | |
| 369 | +#define FF_SCRIPT 64 | |
| 370 | +#define FF_SWISS 32 | |
| 371 | +#define PANOSE_COUNT 10 | |
| 372 | +#define PAN_FAMILYTYPE_INDEX 0 | |
| 373 | +#define PAN_SERIFSTYLE_INDEX 1 | |
| 374 | +#define PAN_WEIGHT_INDEX 2 | |
| 375 | +#define PAN_PROPORTION_INDEX 3 | |
| 376 | +#define PAN_CONTRAST_INDEX 4 | |
| 377 | +#define PAN_STROKEVARIATION_INDEX 5 | |
| 378 | +#define PAN_ARMSTYLE_INDEX 6 | |
| 379 | +#define PAN_LETTERFORM_INDEX 7 | |
| 380 | +#define PAN_MIDLINE_INDEX 8 | |
| 381 | +#define PAN_XHEIGHT_INDEX 9 | |
| 382 | +#define PAN_CULTURE_LATIN 0 | |
| 383 | +#define PAN_ANY 0 | |
| 384 | +#define PAN_NO_FIT 1 | |
| 385 | +#define PAN_FAMILY_TEXT_DISPLAY 2 | |
| 386 | +#define PAN_FAMILY_SCRIPT 3 | |
| 387 | +#define PAN_FAMILY_DECORATIVE 4 | |
| 388 | +#define PAN_FAMILY_PICTORIAL 5 | |
| 389 | +#define PAN_SERIF_COVE 2 | |
| 390 | +#define PAN_SERIF_OBTUSE_COVE 3 | |
| 391 | +#define PAN_SERIF_SQUARE_COVE 4 | |
| 392 | +#define PAN_SERIF_OBTUSE_SQUARE_COVE 5 | |
| 393 | +#define PAN_SERIF_SQUARE 6 | |
| 394 | +#define PAN_SERIF_THIN 7 | |
| 395 | +#define PAN_SERIF_BONE 8 | |
| 396 | +#define PAN_SERIF_EXAGGERATED 9 | |
| 397 | +#define PAN_SERIF_TRIANGLE 10 | |
| 398 | +#define PAN_SERIF_NORMAL_SANS 11 | |
| 399 | +#define PAN_SERIF_OBTUSE_SANS 12 | |
| 400 | +#define PAN_SERIF_PERP_SANS 13 | |
| 401 | +#define PAN_SERIF_FLARED 14 | |
| 402 | +#define PAN_SERIF_ROUNDED 15 | |
| 403 | +#define PAN_WEIGHT_VERY_LIGHT 2 | |
| 404 | +#define PAN_WEIGHT_LIGHT 3 | |
| 405 | +#define PAN_WEIGHT_THIN 4 | |
| 406 | +#define PAN_WEIGHT_BOOK 5 | |
| 407 | +#define PAN_WEIGHT_MEDIUM 6 | |
| 408 | +#define PAN_WEIGHT_DEMI 7 | |
| 409 | +#define PAN_WEIGHT_BOLD 8 | |
| 410 | +#define PAN_WEIGHT_HEAVY 9 | |
| 411 | +#define PAN_WEIGHT_BLACK 10 | |
| 412 | +#define PAN_WEIGHT_NORD 11 | |
| 413 | +#define PAN_PROP_OLD_STYLE 2 | |
| 414 | +#define PAN_PROP_MODERN 3 | |
| 415 | +#define PAN_PROP_EVEN_WIDTH 4 | |
| 416 | +#define PAN_PROP_EXPANDED 5 | |
| 417 | +#define PAN_PROP_CONDENSED 6 | |
| 418 | +#define PAN_PROP_VERY_EXPANDED 7 | |
| 419 | +#define PAN_PROP_VERY_CONDENSED 8 | |
| 420 | +#define PAN_PROP_MONOSPACED 9 | |
| 421 | +#define PAN_CONTRAST_NONE 2 | |
| 422 | +#define PAN_CONTRAST_VERY_LOW 3 | |
| 423 | +#define PAN_CONTRAST_LOW 4 | |
| 424 | +#define PAN_CONTRAST_MEDIUM_LOW 5 | |
| 425 | +#define PAN_CONTRAST_MEDIUM 6 | |
| 426 | +#define PAN_CONTRAST_MEDIUM_HIGH 7 | |
| 427 | +#define PAN_CONTRAST_HIGH 8 | |
| 428 | +#define PAN_CONTRAST_VERY_HIGH 9 | |
| 429 | +#define PAN_STROKE_GRADUAL_DIAG 2 | |
| 430 | +#define PAN_STROKE_GRADUAL_TRAN 3 | |
| 431 | +#define PAN_STROKE_GRADUAL_VERT 4 | |
| 432 | +#define PAN_STROKE_GRADUAL_HORZ 5 | |
| 433 | +#define PAN_STROKE_RAPID_VERT 6 | |
| 434 | +#define PAN_STROKE_RAPID_HORZ 7 | |
| 435 | +#define PAN_STROKE_INSTANT_VERT 8 | |
| 436 | +#define PAN_STRAIGHT_ARMS_HORZ 2 | |
| 437 | +#define PAN_STRAIGHT_ARMS_WEDGE 3 | |
| 438 | +#define PAN_STRAIGHT_ARMS_VERT 4 | |
| 439 | +#define PAN_STRAIGHT_ARMS_SINGLE_SERIF 5 | |
| 440 | +#define PAN_STRAIGHT_ARMS_DOUBLE_SERIF 6 | |
| 441 | +#define PAN_BENT_ARMS_HORZ 7 | |
| 442 | +#define PAN_BENT_ARMS_WEDGE 8 | |
| 443 | +#define PAN_BENT_ARMS_VERT 9 | |
| 444 | +#define PAN_BENT_ARMS_SINGLE_SERIF 10 | |
| 445 | +#define PAN_BENT_ARMS_DOUBLE_SERIF 11 | |
| 446 | +#define PAN_LETT_NORMAL_CONTACT 2 | |
| 447 | +#define PAN_LETT_NORMAL_WEIGHTED 3 | |
| 448 | +#define PAN_LETT_NORMAL_BOXED 4 | |
| 449 | +#define PAN_LETT_NORMAL_FLATTENED 5 | |
| 450 | +#define PAN_LETT_NORMAL_ROUNDED 6 | |
| 451 | +#define PAN_LETT_NORMAL_OFF_CENTER 7 | |
| 452 | +#define PAN_LETT_NORMAL_SQUARE 8 | |
| 453 | +#define PAN_LETT_OBLIQUE_CONTACT 9 | |
| 454 | +#define PAN_LETT_OBLIQUE_WEIGHTED 10 | |
| 455 | +#define PAN_LETT_OBLIQUE_BOXED 11 | |
| 456 | +#define PAN_LETT_OBLIQUE_FLATTENED 12 | |
| 457 | +#define PAN_LETT_OBLIQUE_ROUNDED 13 | |
| 458 | +#define PAN_LETT_OBLIQUE_OFF_CENTER 14 | |
| 459 | +#define PAN_LETT_OBLIQUE_SQUARE 15 | |
| 460 | +#define PAN_MIDLINE_STANDARD_TRIMMED 2 | |
| 461 | +#define PAN_MIDLINE_STANDARD_POINTED 3 | |
| 462 | +#define PAN_MIDLINE_STANDARD_SERIFED 4 | |
| 463 | +#define PAN_MIDLINE_HIGH_TRIMMED 5 | |
| 464 | +#define PAN_MIDLINE_HIGH_POINTED 6 | |
| 465 | +#define PAN_MIDLINE_HIGH_SERIFED 7 | |
| 466 | +#define PAN_MIDLINE_CONSTANT_TRIMMED 8 | |
| 467 | +#define PAN_MIDLINE_CONSTANT_POINTED 9 | |
| 468 | +#define PAN_MIDLINE_CONSTANT_SERIFED 10 | |
| 469 | +#define PAN_MIDLINE_LOW_TRIMMED 11 | |
| 470 | +#define PAN_MIDLINE_LOW_POINTED 12 | |
| 471 | +#define PAN_MIDLINE_LOW_SERIFED 13 | |
| 472 | +#define PAN_XHEIGHT_CONSTANT_SMALL 2 | |
| 473 | +#define PAN_XHEIGHT_CONSTANT_STD 3 | |
| 474 | +#define PAN_XHEIGHT_CONSTANT_LARGE 4 | |
| 475 | +#define PAN_XHEIGHT_DUCKING_SMALL 5 | |
| 476 | +#define PAN_XHEIGHT_DUCKING_STD 6 | |
| 477 | +#define PAN_XHEIGHT_DUCKING_LARGE 7 | |
| 478 | +#define FS_LATIN1 1 | |
| 479 | +#define FS_LATIN2 2 | |
| 480 | +#define FS_CYRILLIC 4 | |
| 481 | +#define FS_GREEK 8 | |
| 482 | +#define FS_TURKISH 16 | |
| 483 | +#define FS_HEBREW 32 | |
| 484 | +#define FS_ARABIC 64 | |
| 485 | +#define FS_BALTIC 128 | |
| 486 | +#define FS_THAI 0x10000 | |
| 487 | +#define FS_JISJAPAN 0x20000 | |
| 488 | +#define FS_CHINESESIMP 0x40000 | |
| 489 | +#define FS_WANSUNG 0x80000 | |
| 490 | +#define FS_CHINESETRAD 0x100000 | |
| 491 | +#define FS_JOHAB 0x200000 | |
| 492 | +#define FS_SYMBOL 0x80000000 | |
| 493 | +#define HS_BDIAGONAL 3 | |
| 494 | +#define HS_CROSS 4 | |
| 495 | +#define HS_DIAGCROSS 5 | |
| 496 | +#define HS_FDIAGONAL 2 | |
| 497 | +#define HS_HORIZONTAL 0 | |
| 498 | +#define HS_VERTICAL 1 | |
| 499 | +#define PS_GEOMETRIC 65536 | |
| 500 | +#define PS_COSMETIC 0 | |
| 501 | +#define PS_ALTERNATE 8 | |
| 502 | +#define PS_SOLID 0 | |
| 503 | +#define PS_DASH 1 | |
| 504 | +#define PS_DOT 2 | |
| 505 | +#define PS_DASHDOT 3 | |
| 506 | +#define PS_DASHDOTDOT 4 | |
| 507 | +#define PS_NULL 5 | |
| 508 | +#define PS_USERSTYLE 7 | |
| 509 | +#define PS_INSIDEFRAME 6 | |
| 510 | +#define PS_ENDCAP_ROUND 0 | |
| 511 | +#define PS_ENDCAP_SQUARE 256 | |
| 512 | +#define PS_ENDCAP_FLAT 512 | |
| 513 | +#define PS_JOIN_BEVEL 4096 | |
| 514 | +#define PS_JOIN_MITER 8192 | |
| 515 | +#define PS_JOIN_ROUND 0 | |
| 516 | +#define PS_STYLE_MASK 15 | |
| 517 | +#define PS_ENDCAP_MASK 3840 | |
| 518 | +#define PS_TYPE_MASK 983040 | |
| 519 | +#define ALTERNATE 1 | |
| 520 | +#define WINDING 2 | |
| 521 | +#define DC_BINNAMES 12 | |
| 522 | +#define DC_BINS 6 | |
| 523 | +#define DC_COPIES 18 | |
| 524 | +#define DC_DRIVER 11 | |
| 525 | +#define DC_DATATYPE_PRODUCED 21 | |
| 526 | +#define DC_DUPLEX 7 | |
| 527 | +#define DC_EMF_COMPLIANT 20 | |
| 528 | +#define DC_ENUMRESOLUTIONS 13 | |
| 529 | +#define DC_EXTRA 9 | |
| 530 | +#define DC_FIELDS 1 | |
| 531 | +#define DC_FILEDEPENDENCIES 14 | |
| 532 | +#define DC_MAXEXTENT 5 | |
| 533 | +#define DC_MINEXTENT 4 | |
| 534 | +#define DC_ORIENTATION 17 | |
| 535 | +#define DC_PAPERNAMES 16 | |
| 536 | +#define DC_PAPERS 2 | |
| 537 | +#define DC_PAPERSIZE 3 | |
| 538 | +#define DC_SIZE 8 | |
| 539 | +#define DC_TRUETYPE 15 | |
| 540 | +#define DCTT_BITMAP 1 | |
| 541 | +#define DCTT_DOWNLOAD 2 | |
| 542 | +#define DCTT_SUBDEV 4 | |
| 543 | +#define DCTT_DOWNLOAD_OUTLINE 8 | |
| 544 | +#define DC_VERSION 10 | |
| 545 | +#define DC_BINADJUST 19 | |
| 546 | +#define DC_EMF_COMPLIANT 20 | |
| 547 | +#define DC_DATATYPE_PRODUCED 21 | |
| 548 | +#define DC_MANUFACTURER 23 | |
| 549 | +#define DC_MODEL 24 | |
| 550 | +#define DCBA_FACEUPNONE 0 | |
| 551 | +#define DCBA_FACEUPCENTER 1 | |
| 552 | +#define DCBA_FACEUPLEFT 2 | |
| 553 | +#define DCBA_FACEUPRIGHT 3 | |
| 554 | +#define DCBA_FACEDOWNNONE 256 | |
| 555 | +#define DCBA_FACEDOWNCENTER 257 | |
| 556 | +#define DCBA_FACEDOWNLEFT 258 | |
| 557 | +#define DCBA_FACEDOWNRIGHT 259 | |
| 558 | +#define FLOODFILLBORDER 0 | |
| 559 | +#define FLOODFILLSURFACE 1 | |
| 560 | +#define ETO_CLIPPED 4 | |
| 561 | +#define ETO_GLYPH_INDEX 16 | |
| 562 | +#define ETO_OPAQUE 2 | |
| 563 | +#define ETO_RTLREADING 128 | |
| 564 | +#define GDICOMMENT_WINDOWS_METAFILE (-2147483647) | |
| 565 | +#define GDICOMMENT_BEGINGROUP 2 | |
| 566 | +#define GDICOMMENT_ENDGROUP 3 | |
| 567 | +#define GDICOMMENT_MULTIFORMATS 1073741828 | |
| 568 | +#define GDICOMMENT_IDENTIFIER 1128875079 | |
| 569 | +#define AD_COUNTERCLOCKWISE 1 | |
| 570 | +#define AD_CLOCKWISE 2 | |
| 571 | +#define RDH_RECTANGLES 1 | |
| 572 | +#define GCPCLASS_LATIN 1 | |
| 573 | +#define GCPCLASS_HEBREW 2 | |
| 574 | +#define GCPCLASS_ARABIC 2 | |
| 575 | +#define GCPCLASS_NEUTRAL 3 | |
| 576 | +#define GCPCLASS_LOCALNUMBER 4 | |
| 577 | +#define GCPCLASS_LATINNUMBER 5 | |
| 578 | +#define GCPCLASS_LATINNUMERICTERMINATOR 6 | |
| 579 | +#define GCPCLASS_LATINNUMERICSEPARATOR 7 | |
| 580 | +#define GCPCLASS_NUMERICSEPARATOR 8 | |
| 581 | +#define GCPCLASS_PREBOUNDLTR 128 | |
| 582 | +#define GCPCLASS_PREBOUNDRTL 64 | |
| 583 | +#define GCPCLASS_POSTBOUNDLTR 32 | |
| 584 | +#define GCPCLASS_POSTBOUNDRTL 16 | |
| 585 | +#define GCPGLYPH_LINKBEFORE 0x8000 | |
| 586 | +#define GCPGLYPH_LINKAFTER 0x4000 | |
| 587 | +#define DCB_DISABLE 8 | |
| 588 | +#define DCB_ENABLE 4 | |
| 589 | +#define DCB_RESET 1 | |
| 590 | +#define DCB_SET 3 | |
| 591 | +#define DCB_ACCUMULATE 2 | |
| 592 | +#define DCB_DIRTY 2 | |
| 593 | +#define OBJ_BRUSH 2 | |
| 594 | +#define OBJ_PEN 1 | |
| 595 | +#define OBJ_PAL 5 | |
| 596 | +#define OBJ_FONT 6 | |
| 597 | +#define OBJ_BITMAP 7 | |
| 598 | +#define OBJ_EXTPEN 11 | |
| 599 | +#define OBJ_REGION 8 | |
| 600 | +#define OBJ_DC 3 | |
| 601 | +#define OBJ_MEMDC 10 | |
| 602 | +#define OBJ_METAFILE 9 | |
| 603 | +#define OBJ_METADC 4 | |
| 604 | +#define OBJ_ENHMETAFILE 13 | |
| 605 | +#define OBJ_ENHMETADC 12 | |
| 606 | +#define DRIVERVERSION 0 | |
| 607 | +#define TECHNOLOGY 2 | |
| 608 | +#define DT_PLOTTER 0 | |
| 609 | +#define DT_RASDISPLAY 1 | |
| 610 | +#define DT_RASPRINTER 2 | |
| 611 | +#define DT_RASCAMERA 3 | |
| 612 | +#define DT_CHARSTREAM 4 | |
| 613 | +#define DT_METAFILE 5 | |
| 614 | +#define DT_DISPFILE 6 | |
| 615 | +#define HORZSIZE 4 | |
| 616 | +#define VERTSIZE 6 | |
| 617 | +#define HORZRES 8 | |
| 618 | +#define VERTRES 10 | |
| 619 | +#define LOGPIXELSX 88 | |
| 620 | +#define LOGPIXELSY 90 | |
| 621 | +#define BITSPIXEL 12 | |
| 622 | +#define PLANES 14 | |
| 623 | +#define NUMBRUSHES 16 | |
| 624 | +#define NUMPENS 18 | |
| 625 | +#define NUMFONTS 22 | |
| 626 | +#define NUMCOLORS 24 | |
| 627 | +#define NUMMARKERS 20 | |
| 628 | +#define ASPECTX 40 | |
| 629 | +#define ASPECTY 42 | |
| 630 | +#define ASPECTXY 44 | |
| 631 | +#define PDEVICESIZE 26 | |
| 632 | +#define CLIPCAPS 36 | |
| 633 | +#define SIZEPALETTE 104 | |
| 634 | +#define NUMRESERVED 106 | |
| 635 | +#define COLORRES 108 | |
| 636 | +#define PHYSICALWIDTH 110 | |
| 637 | +#define PHYSICALHEIGHT 111 | |
| 638 | +#define PHYSICALOFFSETX 112 | |
| 639 | +#define PHYSICALOFFSETY 113 | |
| 640 | +#define SCALINGFACTORX 114 | |
| 641 | +#define SCALINGFACTORY 115 | |
| 642 | +#define VREFRESH 116 | |
| 643 | +#define DESKTOPHORZRES 118 | |
| 644 | +#define DESKTOPVERTRES 117 | |
| 645 | +#define BLTALIGNMENT 119 | |
| 646 | +#define RASTERCAPS 38 | |
| 647 | +#define RC_BANDING 2 | |
| 648 | +#define RC_BITBLT 1 | |
| 649 | +#define RC_BITMAP64 8 | |
| 650 | +#define RC_DI_BITMAP 128 | |
| 651 | +#define RC_DIBTODEV 512 | |
| 652 | +#define RC_FLOODFILL 4096 | |
| 653 | +#define RC_GDI20_OUTPUT 16 | |
| 654 | +#define RC_PALETTE 256 | |
| 655 | +#define RC_SCALING 4 | |
| 656 | +#define RC_STRETCHBLT 2048 | |
| 657 | +#define RC_STRETCHDIB 8192 | |
| 658 | +#define RC_DEVBITS 0x8000 | |
| 659 | +#define RC_OP_DX_OUTPUT 0x4000 | |
| 660 | +#define CURVECAPS 28 | |
| 661 | +#define CC_NONE 0 | |
| 662 | +#define CC_CIRCLES 1 | |
| 663 | +#define CC_PIE 2 | |
| 664 | +#define CC_CHORD 4 | |
| 665 | +#define CC_ELLIPSES 8 | |
| 666 | +#define CC_WIDE 16 | |
| 667 | +#define CC_STYLED 32 | |
| 668 | +#define CC_WIDESTYLED 64 | |
| 669 | +#define CC_INTERIORS 128 | |
| 670 | +#define CC_ROUNDRECT 256 | |
| 671 | +#define LINECAPS 30 | |
| 672 | +#define LC_NONE 0 | |
| 673 | +#define LC_POLYLINE 2 | |
| 674 | +#define LC_MARKER 4 | |
| 675 | +#define LC_POLYMARKER 8 | |
| 676 | +#define LC_WIDE 16 | |
| 677 | +#define LC_STYLED 32 | |
| 678 | +#define LC_WIDESTYLED 64 | |
| 679 | +#define LC_INTERIORS 128 | |
| 680 | +#define POLYGONALCAPS 32 | |
| 681 | +#define RC_BANDING 2 | |
| 682 | +#define RC_BIGFONT 1024 | |
| 683 | +#define RC_BITBLT 1 | |
| 684 | +#define RC_BITMAP64 8 | |
| 685 | +#define RC_DEVBITS 0x8000 | |
| 686 | +#define RC_DI_BITMAP 128 | |
| 687 | +#define RC_GDI20_OUTPUT 16 | |
| 688 | +#define RC_GDI20_STATE 32 | |
| 689 | +#define RC_NONE 0 | |
| 690 | +#define RC_OP_DX_OUTPUT 0x4000 | |
| 691 | +#define RC_PALETTE 256 | |
| 692 | +#define RC_SAVEBITMAP 64 | |
| 693 | +#define RC_SCALING 4 | |
| 694 | +#define PC_NONE 0 | |
| 695 | +#define PC_POLYGON 1 | |
| 696 | +#define PC_POLYPOLYGON 256 | |
| 697 | +#define PC_PATHS 512 | |
| 698 | +#define PC_RECTANGLE 2 | |
| 699 | +#define PC_WINDPOLYGON 4 | |
| 700 | +#define PC_SCANLINE 8 | |
| 701 | +#define PC_TRAPEZOID 4 | |
| 702 | +#define PC_WIDE 16 | |
| 703 | +#define PC_STYLED 32 | |
| 704 | +#define PC_WIDESTYLED 64 | |
| 705 | +#define PC_INTERIORS 128 | |
| 706 | +#define PC_PATHS 512 | |
| 707 | +#define TEXTCAPS 34 | |
| 708 | +#define TC_OP_CHARACTER 1 | |
| 709 | +#define TC_OP_STROKE 2 | |
| 710 | +#define TC_CP_STROKE 4 | |
| 711 | +#define TC_CR_90 8 | |
| 712 | +#define TC_CR_ANY 16 | |
| 713 | +#define TC_SF_X_YINDEP 32 | |
| 714 | +#define TC_SA_DOUBLE 64 | |
| 715 | +#define TC_SA_INTEGER 128 | |
| 716 | +#define TC_SA_CONTIN 256 | |
| 717 | +#define TC_EA_DOUBLE 512 | |
| 718 | +#define TC_IA_ABLE 1024 | |
| 719 | +#define TC_UA_ABLE 2048 | |
| 720 | +#define TC_SO_ABLE 4096 | |
| 721 | +#define TC_RA_ABLE 8192 | |
| 722 | +#define TC_VA_ABLE 16384 | |
| 723 | +#define TC_RESERVED 32768 | |
| 724 | +#define TC_SCROLLBLT 65536 | |
| 725 | +#define GCP_DBCS 1 | |
| 726 | +#define GCP_ERROR 0x8000 | |
| 727 | +#define GCP_CLASSIN 0x80000 | |
| 728 | +#define GCP_DIACRITIC 256 | |
| 729 | +#define GCP_DISPLAYZWG 0x400000 | |
| 730 | +#define GCP_GLYPHSHAPE 16 | |
| 731 | +#define GCP_JUSTIFY 0x10000 | |
| 732 | +#define GCP_JUSTIFYIN 0x200000 | |
| 733 | +#define GCP_KASHIDA 1024 | |
| 734 | +#define GCP_LIGATE 32 | |
| 735 | +#define GCP_MAXEXTENT 0x100000 | |
| 736 | +#define GCP_NEUTRALOVERRIDE 0x2000000 | |
| 737 | +#define GCP_NUMERICOVERRIDE 0x1000000 | |
| 738 | +#define GCP_NUMERICSLATIN 0x4000000 | |
| 739 | +#define GCP_NUMERICSLOCAL 0x8000000 | |
| 740 | +#define GCP_REORDER 2 | |
| 741 | +#define GCP_SYMSWAPOFF 0x800000 | |
| 742 | +#define GCP_USEKERNING 8 | |
| 743 | +#define FLI_GLYPHS 0x40000 | |
| 744 | +#define FLI_MASK 0x103b | |
| 745 | +#define GGO_METRICS 0 | |
| 746 | +#define GGO_BITMAP 1 | |
| 747 | +#define GGO_NATIVE 2 | |
| 748 | +#define GGO_BEZIER 3 | |
| 749 | +#define GGO_GRAY2_BITMAP 4 | |
| 750 | +#define GGO_GRAY4_BITMAP 5 | |
| 751 | +#define GGO_GRAY8_BITMAP 6 | |
| 752 | +#define GGO_GLYPH_INDEX 128 | |
| 753 | +#define GGO_UNHINTED 256 | |
| 754 | +#define GM_COMPATIBLE 1 | |
| 755 | +#define GM_ADVANCED 2 | |
| 756 | +#define MM_ANISOTROPIC 8 | |
| 757 | +#define MM_HIENGLISH 5 | |
| 758 | +#define MM_HIMETRIC 3 | |
| 759 | +#define MM_ISOTROPIC 7 | |
| 760 | +#define MM_LOENGLISH 4 | |
| 761 | +#define MM_LOMETRIC 2 | |
| 762 | +#define MM_TEXT 1 | |
| 763 | +#define MM_TWIPS 6 | |
| 764 | +#define MM_MAX_FIXEDSCALE MM_TWIPS | |
| 765 | +#define ABSOLUTE 1 | |
| 766 | +#define RELATIVE 2 | |
| 767 | +#define PC_EXPLICIT 2 | |
| 768 | +#define PC_NOCOLLAPSE 4 | |
| 769 | +#define PC_RESERVED 1 | |
| 770 | +#define CLR_NONE 0xffffffff | |
| 771 | +#define CLR_INVALID CLR_NONE | |
| 772 | +#define CLR_DEFAULT 0xff000000 | |
| 773 | +#define PT_MOVETO 6 | |
| 774 | +#define PT_LINETO 2 | |
| 775 | +#define PT_BEZIERTO 4 | |
| 776 | +#define PT_CLOSEFIGURE 1 | |
| 777 | +#define TT_AVAILABLE 1 | |
| 778 | +#define TT_ENABLED 2 | |
| 779 | +#define BLACK_BRUSH 4 | |
| 780 | +#define DKGRAY_BRUSH 3 | |
| 781 | +#define GRAY_BRUSH 2 | |
| 782 | +#define HOLLOW_BRUSH 5 | |
| 783 | +#define LTGRAY_BRUSH 1 | |
| 784 | +#define NULL_BRUSH 5 | |
| 785 | +#define WHITE_BRUSH 0 | |
| 786 | +#define BLACK_PEN 7 | |
| 787 | +#define NULL_PEN 8 | |
| 788 | +#define WHITE_PEN 6 | |
| 789 | +#define ANSI_FIXED_FONT 11 | |
| 790 | +#define ANSI_VAR_FONT 12 | |
| 791 | +#define DEVICE_DEFAULT_FONT 14 | |
| 792 | +#define DEFAULT_GUI_FONT 17 | |
| 793 | +#define OEM_FIXED_FONT 10 | |
| 794 | +#define SYSTEM_FONT 13 | |
| 795 | +#define SYSTEM_FIXED_FONT 16 | |
| 796 | +#define DEFAULT_PALETTE 15 | |
| 797 | +#define SYSPAL_NOSTATIC 2 | |
| 798 | +#define SYSPAL_STATIC 1 | |
| 799 | +#define SYSPAL_ERROR 0 | |
| 800 | +#define TA_BASELINE 24 | |
| 801 | +#define TA_BOTTOM 8 | |
| 802 | +#define TA_TOP 0 | |
| 803 | +#define TA_CENTER 6 | |
| 804 | +#define TA_LEFT 0 | |
| 805 | +#define TA_RIGHT 2 | |
| 806 | +#define TA_RTLREADING 256 | |
| 807 | +#define TA_NOUPDATECP 0 | |
| 808 | +#define TA_UPDATECP 1 | |
| 809 | +#define TA_MASK (TA_BASELINE+TA_CENTER+TA_UPDATECP+TA_RTLREADING) | |
| 810 | +#define VTA_BASELINE 24 | |
| 811 | +#define VTA_CENTER 6 | |
| 812 | +#define VTA_LEFT TA_BOTTOM | |
| 813 | +#define VTA_RIGHT TA_TOP | |
| 814 | +#define VTA_BOTTOM TA_RIGHT | |
| 815 | +#define VTA_TOP TA_LEFT | |
| 816 | +#define MWT_IDENTITY 1 | |
| 817 | +#define MWT_LEFTMULTIPLY 2 | |
| 818 | +#define MWT_RIGHTMULTIPLY 3 | |
| 819 | +#define OPAQUE 2 | |
| 820 | +#define TRANSPARENT 1 | |
| 821 | +#define BLACKONWHITE 1 | |
| 822 | +#define WHITEONBLACK 2 | |
| 823 | +#define COLORONCOLOR 3 | |
| 824 | +#define HALFTONE 4 | |
| 825 | +#define MAXSTRETCHBLTMODE 4 | |
| 826 | +#define STRETCH_ANDSCANS 1 | |
| 827 | +#define STRETCH_DELETESCANS 3 | |
| 828 | +#define STRETCH_HALFTONE 4 | |
| 829 | +#define STRETCH_ORSCANS 2 | |
| 830 | +#define TCI_SRCCHARSET 1 | |
| 831 | +#define TCI_SRCCODEPAGE 2 | |
| 832 | +#define TCI_SRCFONTSIG 3 | |
| 833 | +#define ICM_ON 2 | |
| 834 | +#define ICM_OFF 1 | |
| 835 | +#define ICM_QUERY 3 | |
| 836 | +#define NEWFRAME 1 | |
| 837 | +#define ABORTDOC 2 | |
| 838 | +#define NEXTBAND 3 | |
| 839 | +#define SETCOLORTABLE 4 | |
| 840 | +#define GETCOLORTABLE 5 | |
| 841 | +#define FLUSHOUTPUT 6 | |
| 842 | +#define DRAFTMODE 7 | |
| 843 | +#define QUERYESCSUPPORT 8 | |
| 844 | +#define SETABORTPROC 9 | |
| 845 | +#define STARTDOC 10 | |
| 846 | +#define ENDDOC 11 | |
| 847 | +#define GETPHYSPAGESIZE 12 | |
| 848 | +#define GETPRINTINGOFFSET 13 | |
| 849 | +#define GETSCALINGFACTOR 14 | |
| 850 | +#define MFCOMMENT 15 | |
| 851 | +#define GETPENWIDTH 16 | |
| 852 | +#define SETCOPYCOUNT 17 | |
| 853 | +#define SELECTPAPERSOURCE 18 | |
| 854 | +#define DEVICEDATA 19 | |
| 855 | +#define PASSTHROUGH 19 | |
| 856 | +#define GETTECHNOLGY 20 | |
| 857 | +#define GETTECHNOLOGY 20 | |
| 858 | +#define SETLINECAP 21 | |
| 859 | +#define SETLINEJOIN 22 | |
| 860 | +#define SETMITERLIMIT 23 | |
| 861 | +#define BANDINFO 24 | |
| 862 | +#define DRAWPATTERNRECT 25 | |
| 863 | +#define GETVECTORPENSIZE 26 | |
| 864 | +#define GETVECTORBRUSHSIZE 27 | |
| 865 | +#define ENABLEDUPLEX 28 | |
| 866 | +#define GETSETPAPERBINS 29 | |
| 867 | +#define GETSETPRINTORIENT 30 | |
| 868 | +#define ENUMPAPERBINS 31 | |
| 869 | +#define SETDIBSCALING 32 | |
| 870 | +#define EPSPRINTING 33 | |
| 871 | +#define ENUMPAPERMETRICS 34 | |
| 872 | +#define GETSETPAPERMETRICS 35 | |
| 873 | +#define POSTSCRIPT_DATA 37 | |
| 874 | +#define POSTSCRIPT_IGNORE 38 | |
| 875 | +#define MOUSETRAILS 39 | |
| 876 | +#define GETDEVICEUNITS 42 | |
| 877 | +#define GETEXTENDEDTEXTMETRICS 256 | |
| 878 | +#define GETEXTENTTABLE 257 | |
| 879 | +#define GETPAIRKERNTABLE 258 | |
| 880 | +#define GETTRACKKERNTABLE 259 | |
| 881 | +#define EXTTEXTOUT 512 | |
| 882 | +#define GETFACENAME 513 | |
| 883 | +#define DOWNLOADFACE 514 | |
| 884 | +#define ENABLERELATIVEWIDTHS 768 | |
| 885 | +#define ENABLEPAIRKERNING 769 | |
| 886 | +#define SETKERNTRACK 770 | |
| 887 | +#define SETALLJUSTVALUES 771 | |
| 888 | +#define SETCHARSET 772 | |
| 889 | +#define STRETCHBLT 2048 | |
| 890 | +#define GETSETSCREENPARAMS 3072 | |
| 891 | +#define QUERYDIBSUPPORT 3073 | |
| 892 | +#define BEGIN_PATH 4096 | |
| 893 | +#define CLIP_TO_PATH 4097 | |
| 894 | +#define END_PATH 4098 | |
| 895 | +#define EXT_DEVICE_CAPS 4099 | |
| 896 | +#define RESTORE_CTM 4100 | |
| 897 | +#define SAVE_CTM 4101 | |
| 898 | +#define SET_ARC_DIRECTION 4102 | |
| 899 | +#define SET_BACKGROUND_COLOR 4103 | |
| 900 | +#define SET_POLY_MODE 4104 | |
| 901 | +#define SET_SCREEN_ANGLE 4105 | |
| 902 | +#define SET_SPREAD 4106 | |
| 903 | +#define TRANSFORM_CTM 4107 | |
| 904 | +#define SET_CLIP_BOX 4108 | |
| 905 | +#define SET_BOUNDS 4109 | |
| 906 | +#define SET_MIRROR_MODE 4110 | |
| 907 | +#define OPENCHANNEL 4110 | |
| 908 | +#define DOWNLOADHEADER 4111 | |
| 909 | +#define CLOSECHANNEL 4112 | |
| 910 | +#define POSTSCRIPT_PASSTHROUGH 4115 | |
| 911 | +#define ENCAPSULATED_POSTSCRIPT 4116 | |
| 912 | +#define QDI_SETDIBITS 1 | |
| 913 | +#define QDI_GETDIBITS 2 | |
| 914 | +#define QDI_DIBTOSCREEN 4 | |
| 915 | +#define QDI_STRETCHDIB 8 | |
| 916 | +#define SP_NOTREPORTED 0x4000 | |
| 917 | +#define PR_JOBSTATUS 0 | |
| 918 | +#define ASPECT_FILTERING 1 | |
| 919 | +#define BS_SOLID 0 | |
| 920 | +#define BS_NULL 1 | |
| 921 | +#define BS_HOLLOW 1 | |
| 922 | +#define BS_HATCHED 2 | |
| 923 | +#define BS_PATTERN 3 | |
| 924 | +#define BS_INDEXED 4 | |
| 925 | +#define BS_DIBPATTERN 5 | |
| 926 | +#define BS_DIBPATTERNPT 6 | |
| 927 | +#define BS_PATTERN8X8 7 | |
| 928 | +#define BS_DIBPATTERN8X8 8 | |
| 929 | +#define LCS_CALIBRATED_RGB 0 | |
| 930 | +#define LCS_DEVICE_RGB 1 | |
| 931 | +#define LCS_DEVICE_CMYK 2 | |
| 932 | +#define LCS_GM_BUSINESS 1 | |
| 933 | +#define LCS_GM_GRAPHICS 2 | |
| 934 | +#define LCS_GM_IMAGES 4 | |
| 935 | +#define RASTER_FONTTYPE 1 | |
| 936 | +#define DEVICE_FONTTYPE 2 | |
| 937 | +#define TRUETYPE_FONTTYPE 4 | |
| 938 | +#define DMORIENT_PORTRAIT 1 | |
| 939 | +#define DMORIENT_LANDSCAPE 2 | |
| 940 | +#define DMPAPER_FIRST 1 | |
| 941 | +#define DMPAPER_LETTER 1 | |
| 942 | +#define DMPAPER_LETTERSMALL 2 | |
| 943 | +#define DMPAPER_TABLOID 3 | |
| 944 | +#define DMPAPER_LEDGER 4 | |
| 945 | +#define DMPAPER_LEGAL 5 | |
| 946 | +#define DMPAPER_STATEMENT 6 | |
| 947 | +#define DMPAPER_EXECUTIVE 7 | |
| 948 | +#define DMPAPER_A3 8 | |
| 949 | +#define DMPAPER_A4 9 | |
| 950 | +#define DMPAPER_A4SMALL 10 | |
| 951 | +#define DMPAPER_A5 11 | |
| 952 | +#define DMPAPER_B4 12 | |
| 953 | +#define DMPAPER_B5 13 | |
| 954 | +#define DMPAPER_FOLIO 14 | |
| 955 | +#define DMPAPER_QUARTO 15 | |
| 956 | +#define DMPAPER_10X14 16 | |
| 957 | +#define DMPAPER_11X17 17 | |
| 958 | +#define DMPAPER_NOTE 18 | |
| 959 | +#define DMPAPER_ENV_9 19 | |
| 960 | +#define DMPAPER_ENV_10 20 | |
| 961 | +#define DMPAPER_ENV_11 21 | |
| 962 | +#define DMPAPER_ENV_12 22 | |
| 963 | +#define DMPAPER_ENV_14 23 | |
| 964 | +#define DMPAPER_CSHEET 24 | |
| 965 | +#define DMPAPER_DSHEET 25 | |
| 966 | +#define DMPAPER_ESHEET 26 | |
| 967 | +#define DMPAPER_ENV_DL 27 | |
| 968 | +#define DMPAPER_ENV_C5 28 | |
| 969 | +#define DMPAPER_ENV_C3 29 | |
| 970 | +#define DMPAPER_ENV_C4 30 | |
| 971 | +#define DMPAPER_ENV_C6 31 | |
| 972 | +#define DMPAPER_ENV_C65 32 | |
| 973 | +#define DMPAPER_ENV_B4 33 | |
| 974 | +#define DMPAPER_ENV_B5 34 | |
| 975 | +#define DMPAPER_ENV_B6 35 | |
| 976 | +#define DMPAPER_ENV_ITALY 36 | |
| 977 | +#define DMPAPER_ENV_MONARCH 37 | |
| 978 | +#define DMPAPER_ENV_PERSONAL 38 | |
| 979 | +#define DMPAPER_FANFOLD_US 39 | |
| 980 | +#define DMPAPER_FANFOLD_STD_GERMAN 40 | |
| 981 | +#define DMPAPER_FANFOLD_LGL_GERMAN 41 | |
| 982 | +#define DMPAPER_ISO_B4 42 | |
| 983 | +#define DMPAPER_JAPANESE_POSTCARD 43 | |
| 984 | +#define DMPAPER_9X11 44 | |
| 985 | +#define DMPAPER_10X11 45 | |
| 986 | +#define DMPAPER_15X11 46 | |
| 987 | +#define DMPAPER_ENV_INVITE 47 | |
| 988 | +#define DMPAPER_RESERVED_48 48 | |
| 989 | +#define DMPAPER_RESERVED_49 49 | |
| 990 | +#define DMPAPER_LETTER_EXTRA 50 | |
| 991 | +#define DMPAPER_LEGAL_EXTRA 51 | |
| 992 | +#define DMPAPER_TABLOID_EXTRA 52 | |
| 993 | +#define DMPAPER_A4_EXTRA 53 | |
| 994 | +#define DMPAPER_LETTER_TRANSVERSE 54 | |
| 995 | +#define DMPAPER_A4_TRANSVERSE 55 | |
| 996 | +#define DMPAPER_LETTER_EXTRA_TRANSVERSE 56 | |
| 997 | +#define DMPAPER_A_PLUS 57 | |
| 998 | +#define DMPAPER_B_PLUS 58 | |
| 999 | +#define DMPAPER_LETTER_PLUS 59 | |
| 1000 | +#define DMPAPER_A4_PLUS 60 | |
| 1001 | +#define DMPAPER_A5_TRANSVERSE 61 | |
| 1002 | +#define DMPAPER_B5_TRANSVERSE 62 | |
| 1003 | +#define DMPAPER_A3_EXTRA 63 | |
| 1004 | +#define DMPAPER_A5_EXTRA 64 | |
| 1005 | +#define DMPAPER_B5_EXTRA 65 | |
| 1006 | +#define DMPAPER_A2 66 | |
| 1007 | +#define DMPAPER_A3_TRANSVERSE 67 | |
| 1008 | +#define DMPAPER_A3_EXTRA_TRANSVERSE 68 | |
| 1009 | +#define DMPAPER_LAST 68 | |
| 1010 | +#define DMPAPER_USER 256 | |
| 1011 | +#define DMBIN_FIRST 1 | |
| 1012 | +#define DMBIN_UPPER 1 | |
| 1013 | +#define DMBIN_ONLYONE 1 | |
| 1014 | +#define DMBIN_LOWER 2 | |
| 1015 | +#define DMBIN_MIDDLE 3 | |
| 1016 | +#define DMBIN_MANUAL 4 | |
| 1017 | +#define DMBIN_ENVELOPE 5 | |
| 1018 | +#define DMBIN_ENVMANUAL 6 | |
| 1019 | +#define DMBIN_AUTO 7 | |
| 1020 | +#define DMBIN_TRACTOR 8 | |
| 1021 | +#define DMBIN_SMALLFMT 9 | |
| 1022 | +#define DMBIN_LARGEFMT 10 | |
| 1023 | +#define DMBIN_LARGECAPACITY 11 | |
| 1024 | +#define DMBIN_CASSETTE 14 | |
| 1025 | +#define DMBIN_FORMSOURCE 15 | |
| 1026 | +#define DMBIN_LAST 15 | |
| 1027 | +#define DMBIN_USER 256 | |
| 1028 | +#define DMRES_DRAFT (-1) | |
| 1029 | +#define DMRES_LOW (-2) | |
| 1030 | +#define DMRES_MEDIUM (-3) | |
| 1031 | +#define DMRES_HIGH (-4) | |
| 1032 | +#define DMCOLOR_MONOCHROME 1 | |
| 1033 | +#define DMCOLOR_COLOR 2 | |
| 1034 | +#define DMDUP_SIMPLEX 1 | |
| 1035 | +#define DMDUP_VERTICAL 2 | |
| 1036 | +#define DMDUP_HORIZONTAL 3 | |
| 1037 | +#define DMTT_BITMAP 1 | |
| 1038 | +#define DMTT_DOWNLOAD 2 | |
| 1039 | +#define DMTT_SUBDEV 3 | |
| 1040 | +#define DMTT_DOWNLOAD_OUTLINE 4 | |
| 1041 | +#define DMCOLLATE_FALSE 0 | |
| 1042 | +#define DMCOLLATE_TRUE 1 | |
| 1043 | +#define DM_GRAYSCALE 1 | |
| 1044 | +#define DM_INTERLACED 2 | |
| 1045 | +#define DM_UPDATE 1 | |
| 1046 | +#define DM_COPY 2 | |
| 1047 | +#define DM_PROMPT 4 | |
| 1048 | +#define DM_MODIFY 8 | |
| 1049 | +#define DM_IN_BUFFER DM_MODIFY | |
| 1050 | +#define DM_IN_PROMPT DM_PROMPT | |
| 1051 | +#define DM_OUT_BUFFER DM_COPY | |
| 1052 | +#define DM_OUT_DEFAULT DM_UPDATE | |
| 1053 | +#define DM_ORIENTATION 1 | |
| 1054 | +#define DM_PAPERSIZE 2 | |
| 1055 | +#define DM_PAPERLENGTH 4 | |
| 1056 | +#define DM_PAPERWIDTH 8 | |
| 1057 | +#define DM_SCALE 16 | |
| 1058 | +#define DM_COPIES 256 | |
| 1059 | +#define DM_DEFAULTSOURCE 512 | |
| 1060 | +#define DM_PRINTQUALITY 1024 | |
| 1061 | +#define DM_COLOR 2048 | |
| 1062 | +#define DM_DUPLEX 4096 | |
| 1063 | +#define DM_YRESOLUTION 8192 | |
| 1064 | +#define DM_TTOPTION 16384 | |
| 1065 | +#define DM_COLLATE 32768 | |
| 1066 | +#define DM_FORMNAME 65536 | |
| 1067 | +#define DM_LOGPIXELS 0x20000 | |
| 1068 | +#define DM_BITSPERPEL 0x40000 | |
| 1069 | +#define DM_PELSWIDTH 0x80000 | |
| 1070 | +#define DM_PELSHEIGHT 0x100000 | |
| 1071 | +#define DM_DISPLAYFLAGS 0x200000 | |
| 1072 | +#define DM_DISPLAYFREQUENCY 0x400000 | |
| 1073 | +#define DM_ICMMETHOD 0x800000 | |
| 1074 | +#define DM_ICMINTENT 0x1000000 | |
| 1075 | +#define DM_MEDIATYPE 0x2000000 | |
| 1076 | +#define DM_DITHERTYPE 0x4000000 | |
| 1077 | +#define DMICMMETHOD_NONE 1 | |
| 1078 | +#define DMICMMETHOD_SYSTEM 2 | |
| 1079 | +#define DMICMMETHOD_DRIVER 3 | |
| 1080 | +#define DMICMMETHOD_DEVICE 4 | |
| 1081 | +#define DMICMMETHOD_USER 256 | |
| 1082 | +#define DMICM_SATURATE 1 | |
| 1083 | +#define DMICM_CONTRAST 2 | |
| 1084 | +#define DMICM_COLORMETRIC 3 | |
| 1085 | +#define DMICM_USER 256 | |
| 1086 | +#define DMMEDIA_STANDARD 1 | |
| 1087 | +#define DMMEDIA_TRANSPARENCY 2 | |
| 1088 | +#define DMMEDIA_GLOSSY 3 | |
| 1089 | +#define DMMEDIA_USER 256 | |
| 1090 | +#define DMDITHER_NONE 1 | |
| 1091 | +#define DMDITHER_COARSE 2 | |
| 1092 | +#define DMDITHER_FINE 3 | |
| 1093 | +#define DMDITHER_LINEART 4 | |
| 1094 | +#define DMDITHER_ERRORDIFFUSION 5 | |
| 1095 | +#define DMDITHER_RESERVED6 6 | |
| 1096 | +#define DMDITHER_RESERVED7 7 | |
| 1097 | +#define DMDITHER_RESERVED8 8 | |
| 1098 | +#define DMDITHER_RESERVED9 9 | |
| 1099 | +#define DMDITHER_GRAYSCALE 10 | |
| 1100 | +#define DMDITHER_USER 256 | |
| 1101 | +#define GDI_ERROR 0xFFFFFFFF | |
| 1102 | +#define HGDI_ERROR ((HANDLE)GDI_ERROR) | |
| 1103 | +#define TMPF_FIXED_PITCH 1 | |
| 1104 | +#define TMPF_VECTOR 2 | |
| 1105 | +#define TMPF_TRUETYPE 4 | |
| 1106 | +#define TMPF_DEVICE 8 | |
| 1107 | +#define NTM_ITALIC 1 | |
| 1108 | +#define NTM_BOLD 32 | |
| 1109 | +#define NTM_REGULAR 64 | |
| 1110 | +#define TT_POLYGON_TYPE 24 | |
| 1111 | +#define TT_PRIM_LINE 1 | |
| 1112 | +#define TT_PRIM_QSPLINE 2 | |
| 1113 | +#define FONTMAPPER_MAX 10 | |
| 1114 | +#define ENHMETA_STOCK_OBJECT 0x80000000 | |
| 1115 | +#define WGL_FONT_LINES 0 | |
| 1116 | +#define WGL_FONT_POLYGONS 1 | |
| 1117 | +#define LPD_DOUBLEBUFFER 1 | |
| 1118 | +#define LPD_STEREO 2 | |
| 1119 | +#define LPD_SUPPORT_GDI 16 | |
| 1120 | +#define LPD_SUPPORT_OPENGL 32 | |
| 1121 | +#define LPD_SHARE_DEPTH 64 | |
| 1122 | +#define LPD_SHARE_STENCIL 128 | |
| 1123 | +#define LPD_SHARE_ACCUM 256 | |
| 1124 | +#define LPD_SWAP_EXCHANGE 512 | |
| 1125 | +#define LPD_SWAP_COPY 1024 | |
| 1126 | +#define LPD_TRANSPARENT 4096 | |
| 1127 | +#define LPD_TYPE_RGBA 0 | |
| 1128 | +#define LPD_TYPE_COLORINDEX 1 | |
| 1129 | +#define WGL_SWAP_MAIN_PLANE 1 | |
| 1130 | +#define WGL_SWAP_OVERLAY1 2 | |
| 1131 | +#define WGL_SWAP_OVERLAY2 4 | |
| 1132 | +#define WGL_SWAP_OVERLAY3 8 | |
| 1133 | +#define WGL_SWAP_OVERLAY4 16 | |
| 1134 | +#define WGL_SWAP_OVERLAY5 32 | |
| 1135 | +#define WGL_SWAP_OVERLAY6 64 | |
| 1136 | +#define WGL_SWAP_OVERLAY7 128 | |
| 1137 | +#define WGL_SWAP_OVERLAY8 256 | |
| 1138 | +#define WGL_SWAP_OVERLAY9 512 | |
| 1139 | +#define WGL_SWAP_OVERLAY10 1024 | |
| 1140 | +#define WGL_SWAP_OVERLAY11 2048 | |
| 1141 | +#define WGL_SWAP_OVERLAY12 4096 | |
| 1142 | +#define WGL_SWAP_OVERLAY13 8192 | |
| 1143 | +#define WGL_SWAP_OVERLAY14 16384 | |
| 1144 | +#define WGL_SWAP_OVERLAY15 32768 | |
| 1145 | +#define WGL_SWAP_UNDERLAY1 65536 | |
| 1146 | +#define WGL_SWAP_UNDERLAY2 0x20000 | |
| 1147 | +#define WGL_SWAP_UNDERLAY3 0x40000 | |
| 1148 | +#define WGL_SWAP_UNDERLAY4 0x80000 | |
| 1149 | +#define WGL_SWAP_UNDERLAY5 0x100000 | |
| 1150 | +#define WGL_SWAP_UNDERLAY6 0x200000 | |
| 1151 | +#define WGL_SWAP_UNDERLAY7 0x400000 | |
| 1152 | +#define WGL_SWAP_UNDERLAY8 0x800000 | |
| 1153 | +#define WGL_SWAP_UNDERLAY9 0x1000000 | |
| 1154 | +#define WGL_SWAP_UNDERLAY10 0x2000000 | |
| 1155 | +#define WGL_SWAP_UNDERLAY11 0x4000000 | |
| 1156 | +#define WGL_SWAP_UNDERLAY12 0x8000000 | |
| 1157 | +#define WGL_SWAP_UNDERLAY13 0x10000000 | |
| 1158 | +#define WGL_SWAP_UNDERLAY14 0x20000000 | |
| 1159 | +#define WGL_SWAP_UNDERLAY15 0x40000000 | |
| 1160 | +#define AC_SRC_OVER 0 | |
| 1161 | +#define LAYOUT_RTL 1 | |
| 1162 | +#define LAYOUT_BITMAPORIENTATIONPRESERVED 8 | |
| 1163 | + | |
| 1164 | +#ifndef RC_INVOKED | |
| 1165 | +typedef struct _ABC { | |
| 1166 | + int abcA; | |
| 1167 | + UINT abcB; | |
| 1168 | + int abcC; | |
| 1169 | +} ABC,*LPABC; | |
| 1170 | +typedef struct _ABCFLOAT { | |
| 1171 | + FLOAT abcfA; | |
| 1172 | + FLOAT abcfB; | |
| 1173 | + FLOAT abcfC; | |
| 1174 | +} ABCFLOAT,*LPABCFLOAT; | |
| 1175 | +typedef struct tagBITMAP { | |
| 1176 | + LONG bmType; | |
| 1177 | + LONG bmWidth; | |
| 1178 | + LONG bmHeight; | |
| 1179 | + LONG bmWidthBytes; | |
| 1180 | + WORD bmPlanes; | |
| 1181 | + WORD bmBitsPixel; | |
| 1182 | + LPVOID bmBits; | |
| 1183 | +} BITMAP,*PBITMAP,*LPBITMAP; | |
| 1184 | +typedef struct tagBITMAPCOREHEADER { | |
| 1185 | + DWORD bcSize; | |
| 1186 | + WORD bcWidth; | |
| 1187 | + WORD bcHeight; | |
| 1188 | + WORD bcPlanes; | |
| 1189 | + WORD bcBitCount; | |
| 1190 | +} BITMAPCOREHEADER,*LPBITMAPCOREHEADER,*PBITMAPCOREHEADER; | |
| 1191 | +#pragma pack(push,1) | |
| 1192 | +typedef struct tagRGBTRIPLE { | |
| 1193 | + BYTE rgbtBlue; | |
| 1194 | + BYTE rgbtGreen; | |
| 1195 | + BYTE rgbtRed; | |
| 1196 | +} RGBTRIPLE; | |
| 1197 | +#pragma pack(pop) | |
| 1198 | +#pragma pack(push,2) | |
| 1199 | +typedef struct tagBITMAPFILEHEADER { | |
| 1200 | + WORD bfType; | |
| 1201 | + DWORD bfSize; | |
| 1202 | + WORD bfReserved1; | |
| 1203 | + WORD bfReserved2; | |
| 1204 | + DWORD bfOffBits; | |
| 1205 | +} BITMAPFILEHEADER,*LPBITMAPFILEHEADER,*PBITMAPFILEHEADER; | |
| 1206 | +#pragma pack(pop) | |
| 1207 | +typedef struct _BITMAPCOREINFO { | |
| 1208 | + BITMAPCOREHEADER bmciHeader; | |
| 1209 | + RGBTRIPLE bmciColors[1]; | |
| 1210 | +} BITMAPCOREINFO,*LPBITMAPCOREINFO,*PBITMAPCOREINFO; | |
| 1211 | +typedef struct tagBITMAPINFOHEADER{ | |
| 1212 | + DWORD biSize; | |
| 1213 | + LONG biWidth; | |
| 1214 | + LONG biHeight; | |
| 1215 | + WORD biPlanes; | |
| 1216 | + WORD biBitCount; | |
| 1217 | + DWORD biCompression; | |
| 1218 | + DWORD biSizeImage; | |
| 1219 | + LONG biXPelsPerMeter; | |
| 1220 | + LONG biYPelsPerMeter; | |
| 1221 | + DWORD biClrUsed; | |
| 1222 | + DWORD biClrImportant; | |
| 1223 | +} BITMAPINFOHEADER,*LPBITMAPINFOHEADER,*PBITMAPINFOHEADER; | |
| 1224 | +typedef struct tagRGBQUAD { | |
| 1225 | + BYTE rgbBlue; | |
| 1226 | + BYTE rgbGreen; | |
| 1227 | + BYTE rgbRed; | |
| 1228 | + BYTE rgbReserved; | |
| 1229 | +} RGBQUAD; | |
| 1230 | +typedef struct tagBITMAPINFO { | |
| 1231 | + BITMAPINFOHEADER bmiHeader; | |
| 1232 | + RGBQUAD bmiColors[1]; | |
| 1233 | +} BITMAPINFO,*LPBITMAPINFO,*PBITMAPINFO; | |
| 1234 | +typedef long FXPT16DOT16,*LPFXPT16DOT16; | |
| 1235 | +typedef long FXPT2DOT30,*LPFXPT2DOT30; | |
| 1236 | +typedef struct tagCIEXYZ { | |
| 1237 | + FXPT2DOT30 ciexyzX; | |
| 1238 | + FXPT2DOT30 ciexyzY; | |
| 1239 | + FXPT2DOT30 ciexyzZ; | |
| 1240 | +} CIEXYZ,*LPCIEXYZ; | |
| 1241 | +typedef struct tagCIEXYZTRIPLE { | |
| 1242 | + CIEXYZ ciexyzRed; | |
| 1243 | + CIEXYZ ciexyzGreen; | |
| 1244 | + CIEXYZ ciexyzBlue; | |
| 1245 | +} CIEXYZTRIPLE,*LPCIEXYZTRIPLE; | |
| 1246 | +typedef struct { | |
| 1247 | + DWORD bV4Size; | |
| 1248 | + LONG bV4Width; | |
| 1249 | + LONG bV4Height; | |
| 1250 | + WORD bV4Planes; | |
| 1251 | + WORD bV4BitCount; | |
| 1252 | + DWORD bV4V4Compression; | |
| 1253 | + DWORD bV4SizeImage; | |
| 1254 | + LONG bV4XPelsPerMeter; | |
| 1255 | + LONG bV4YPelsPerMeter; | |
| 1256 | + DWORD bV4ClrUsed; | |
| 1257 | + DWORD bV4ClrImportant; | |
| 1258 | + DWORD bV4RedMask; | |
| 1259 | + DWORD bV4GreenMask; | |
| 1260 | + DWORD bV4BlueMask; | |
| 1261 | + DWORD bV4AlphaMask; | |
| 1262 | + DWORD bV4CSType; | |
| 1263 | + CIEXYZTRIPLE bV4Endpoints; | |
| 1264 | + DWORD bV4GammaRed; | |
| 1265 | + DWORD bV4GammaGreen; | |
| 1266 | + DWORD bV4GammaBlue; | |
| 1267 | +} BITMAPV4HEADER,*LPBITMAPV4HEADER,*PBITMAPV4HEADER; | |
| 1268 | +typedef struct tagFONTSIGNATURE { | |
| 1269 | + DWORD fsUsb[4]; | |
| 1270 | + DWORD fsCsb[2]; | |
| 1271 | +} FONTSIGNATURE,*LPFONTSIGNATURE; | |
| 1272 | +typedef struct { | |
| 1273 | + UINT ciCharset; | |
| 1274 | + UINT ciACP; | |
| 1275 | + FONTSIGNATURE fs; | |
| 1276 | +} CHARSETINFO,*LPCHARSETINFO; | |
| 1277 | +typedef struct tagCOLORADJUSTMENT { | |
| 1278 | + WORD caSize; | |
| 1279 | + WORD caFlags; | |
| 1280 | + WORD caIlluminantIndex; | |
| 1281 | + WORD caRedGamma; | |
| 1282 | + WORD caGreenGamma; | |
| 1283 | + WORD caBlueGamma; | |
| 1284 | + WORD caReferenceBlack; | |
| 1285 | + WORD caReferenceWhite; | |
| 1286 | + SHORT caContrast; | |
| 1287 | + SHORT caBrightness; | |
| 1288 | + SHORT caColorfulness; | |
| 1289 | + SHORT caRedGreenTint; | |
| 1290 | +} COLORADJUSTMENT,*LPCOLORADJUSTMENT; | |
| 1291 | +typedef struct _devicemodeA { | |
| 1292 | + BYTE dmDeviceName[CCHDEVICENAME]; | |
| 1293 | + WORD dmSpecVersion; | |
| 1294 | + WORD dmDriverVersion; | |
| 1295 | + WORD dmSize; | |
| 1296 | + WORD dmDriverExtra; | |
| 1297 | + DWORD dmFields; | |
| 1298 | + short dmOrientation; | |
| 1299 | + short dmPaperSize; | |
| 1300 | + short dmPaperLength; | |
| 1301 | + short dmPaperWidth; | |
| 1302 | + short dmScale; | |
| 1303 | + short dmCopies; | |
| 1304 | + short dmDefaultSource; | |
| 1305 | + short dmPrintQuality; | |
| 1306 | + short dmColor; | |
| 1307 | + short dmDuplex; | |
| 1308 | + short dmYResolution; | |
| 1309 | + short dmTTOption; | |
| 1310 | + short dmCollate; | |
| 1311 | + BYTE dmFormName[CCHFORMNAME]; | |
| 1312 | + WORD dmLogPixels; | |
| 1313 | + DWORD dmBitsPerPel; | |
| 1314 | + DWORD dmPelsWidth; | |
| 1315 | + DWORD dmPelsHeight; | |
| 1316 | + DWORD dmDisplayFlags; | |
| 1317 | + DWORD dmDisplayFrequency; | |
| 1318 | + DWORD dmICMMethod; | |
| 1319 | + DWORD dmICMIntent; | |
| 1320 | + DWORD dmMediaType; | |
| 1321 | + DWORD dmDitherType; | |
| 1322 | + DWORD dmICCManufacturer; | |
| 1323 | + DWORD dmICCModel; | |
| 1324 | +} DEVMODEA,*LPDEVMODEA,*PDEVMODEA; | |
| 1325 | +typedef struct _devicemodeW { | |
| 1326 | + WCHAR dmDeviceName[CCHDEVICENAME]; | |
| 1327 | + WORD dmSpecVersion; | |
| 1328 | + WORD dmDriverVersion; | |
| 1329 | + WORD dmSize; | |
| 1330 | + WORD dmDriverExtra; | |
| 1331 | + DWORD dmFields; | |
| 1332 | + short dmOrientation; | |
| 1333 | + short dmPaperSize; | |
| 1334 | + short dmPaperLength; | |
| 1335 | + short dmPaperWidth; | |
| 1336 | + short dmScale; | |
| 1337 | + short dmCopies; | |
| 1338 | + short dmDefaultSource; | |
| 1339 | + short dmPrintQuality; | |
| 1340 | + short dmColor; | |
| 1341 | + short dmDuplex; | |
| 1342 | + short dmYResolution; | |
| 1343 | + short dmTTOption; | |
| 1344 | + short dmCollate; | |
| 1345 | + WCHAR dmFormName[CCHFORMNAME]; | |
| 1346 | + WORD dmLogPixels; | |
| 1347 | + DWORD dmBitsPerPel; | |
| 1348 | + DWORD dmPelsWidth; | |
| 1349 | + DWORD dmPelsHeight; | |
| 1350 | + DWORD dmDisplayFlags; | |
| 1351 | + DWORD dmDisplayFrequency; | |
| 1352 | + DWORD dmICMMethod; | |
| 1353 | + DWORD dmICMIntent; | |
| 1354 | + DWORD dmMediaType; | |
| 1355 | + DWORD dmDitherType; | |
| 1356 | + DWORD dmICCManufacturer; | |
| 1357 | + DWORD dmICCModel; | |
| 1358 | +} DEVMODEW,*LPDEVMODEW,*PDEVMODEW; | |
| 1359 | +typedef struct tagDIBSECTION { | |
| 1360 | + BITMAP dsBm; | |
| 1361 | + BITMAPINFOHEADER dsBmih; | |
| 1362 | + DWORD dsBitfields[3]; | |
| 1363 | + HANDLE dshSection; | |
| 1364 | + DWORD dsOffset; | |
| 1365 | +} DIBSECTION; | |
| 1366 | +typedef struct _DOCINFOA { | |
| 1367 | + int cbSize; | |
| 1368 | + LPCTSTR lpszDocName; | |
| 1369 | + LPCTSTR lpszOutput; | |
| 1370 | + LPCTSTR lpszDatatype; | |
| 1371 | + DWORD fwType; | |
| 1372 | +} DOCINFOA,*LPDOCINFOA; | |
| 1373 | +typedef struct _DOCINFOW { | |
| 1374 | + int cbSize; | |
| 1375 | + LPCWSTR lpszDocName; | |
| 1376 | + LPCWSTR lpszOutput; | |
| 1377 | + LPCWSTR lpszDatatype; | |
| 1378 | + DWORD fwType; | |
| 1379 | +} DOCINFOW,*LPDOCINFOW; | |
| 1380 | +typedef struct tagEMR { | |
| 1381 | + DWORD iType; | |
| 1382 | + DWORD nSize; | |
| 1383 | +} EMR,*PEMR; | |
| 1384 | +typedef struct tagEMRANGLEARC { | |
| 1385 | + EMR emr; | |
| 1386 | + POINTL ptlCenter; | |
| 1387 | + DWORD nRadius; | |
| 1388 | + FLOAT eStartAngle; | |
| 1389 | + FLOAT eSweepAngle; | |
| 1390 | +} EMRANGLEARC,*PEMRANGLEARC; | |
| 1391 | +typedef struct tagEMRARC { | |
| 1392 | + EMR emr; | |
| 1393 | + RECTL rclBox; | |
| 1394 | + POINTL ptlStart; | |
| 1395 | + POINTL ptlEnd; | |
| 1396 | +} EMRARC,*PEMRARC,EMRARCTO,*PEMRARCTO,EMRCHORD,*PEMRCHORD,EMRPIE,*PEMRPIE; | |
| 1397 | +typedef struct _XFORM { | |
| 1398 | + FLOAT eM11; | |
| 1399 | + FLOAT eM12; | |
| 1400 | + FLOAT eM21; | |
| 1401 | + FLOAT eM22; | |
| 1402 | + FLOAT eDx; | |
| 1403 | + FLOAT eDy; | |
| 1404 | +} XFORM,*LPXFORM; | |
| 1405 | +typedef struct tagEMRBITBLT { | |
| 1406 | + EMR emr; | |
| 1407 | + RECTL rclBounds; | |
| 1408 | + LONG xDest; | |
| 1409 | + LONG yDest; | |
| 1410 | + LONG cxDest; | |
| 1411 | + LONG cyDest; | |
| 1412 | + DWORD dwRop; | |
| 1413 | + LONG xSrc; | |
| 1414 | + LONG ySrc; | |
| 1415 | + XFORM xformSrc; | |
| 1416 | + COLORREF crBkColorSrc; | |
| 1417 | + DWORD iUsageSrc; | |
| 1418 | + DWORD offBmiSrc; | |
| 1419 | + DWORD offBitsSrc; | |
| 1420 | + DWORD cbBitsSrc; | |
| 1421 | +} EMRBITBLT,*PEMRBITBLT; | |
| 1422 | +typedef struct tagLOGBRUSH { | |
| 1423 | + UINT lbStyle; | |
| 1424 | + COLORREF lbColor; | |
| 1425 | + LONG lbHatch; | |
| 1426 | +} LOGBRUSH,*LPLOGBRUSH; | |
| 1427 | +typedef LOGBRUSH PATTERN,*PPATTERN,*LPPATTERN; | |
| 1428 | +typedef struct tagEMRCREATEBRUSHINDIRECT { | |
| 1429 | + EMR emr; | |
| 1430 | + DWORD ihBrush; | |
| 1431 | + LOGBRUSH lb; | |
| 1432 | +} EMRCREATEBRUSHINDIRECT,*PEMRCREATEBRUSHINDIRECT; | |
| 1433 | +typedef LONG LCSCSTYPE; | |
| 1434 | +typedef LONG LCSGAMUTMATCH; | |
| 1435 | +typedef struct tagLOGCOLORSPACEA { | |
| 1436 | + DWORD lcsSignature; | |
| 1437 | + DWORD lcsVersion; | |
| 1438 | + DWORD lcsSize; | |
| 1439 | + LCSCSTYPE lcsCSType; | |
| 1440 | + LCSGAMUTMATCH lcsIntent; | |
| 1441 | + CIEXYZTRIPLE lcsEndpoints; | |
| 1442 | + DWORD lcsGammaRed; | |
| 1443 | + DWORD lcsGammaGreen; | |
| 1444 | + DWORD lcsGammaBlue; | |
| 1445 | + CHAR lcsFilename[MAX_PATH]; | |
| 1446 | +} LOGCOLORSPACEA,*LPLOGCOLORSPACEA; | |
| 1447 | +typedef struct tagLOGCOLORSPACEW { | |
| 1448 | + DWORD lcsSignature; | |
| 1449 | + DWORD lcsVersion; | |
| 1450 | + DWORD lcsSize; | |
| 1451 | + LCSCSTYPE lcsCSType; | |
| 1452 | + LCSGAMUTMATCH lcsIntent; | |
| 1453 | + CIEXYZTRIPLE lcsEndpoints; | |
| 1454 | + DWORD lcsGammaRed; | |
| 1455 | + DWORD lcsGammaGreen; | |
| 1456 | + DWORD lcsGammaBlue; | |
| 1457 | + WCHAR lcsFilename[MAX_PATH]; | |
| 1458 | +} LOGCOLORSPACEW,*LPLOGCOLORSPACEW; | |
| 1459 | +typedef struct tagEMRCREATECOLORSPACE { | |
| 1460 | + EMR emr; | |
| 1461 | + DWORD ihCS; | |
| 1462 | + LOGCOLORSPACEW lcs; | |
| 1463 | +} EMRCREATECOLORSPACE,*PEMRCREATECOLORSPACE; | |
| 1464 | +typedef struct tagEMRCREATEDIBPATTERNBRUSHPT { | |
| 1465 | + EMR emr; | |
| 1466 | + DWORD ihBrush; | |
| 1467 | + DWORD iUsage; | |
| 1468 | + DWORD offBmi; | |
| 1469 | + DWORD cbBmi; | |
| 1470 | + DWORD offBits; | |
| 1471 | + DWORD cbBits; | |
| 1472 | +} EMRCREATEDIBPATTERNBRUSHPT,*PEMRCREATEDIBPATTERNBRUSHPT; | |
| 1473 | +typedef struct tagEMRCREATEMONOBRUSH { | |
| 1474 | + EMR emr; | |
| 1475 | + DWORD ihBrush; | |
| 1476 | + DWORD iUsage; | |
| 1477 | + DWORD offBmi; | |
| 1478 | + DWORD cbBmi; | |
| 1479 | + DWORD offBits; | |
| 1480 | + DWORD cbBits; | |
| 1481 | +} EMRCREATEMONOBRUSH,*PEMRCREATEMONOBRUSH; | |
| 1482 | +typedef struct tagPALETTEENTRY { | |
| 1483 | + BYTE peRed; | |
| 1484 | + BYTE peGreen; | |
| 1485 | + BYTE peBlue; | |
| 1486 | + BYTE peFlags; | |
| 1487 | +} PALETTEENTRY,*LPPALETTEENTRY,*PPALETTEENTRY; | |
| 1488 | +typedef struct tagLOGPALETTE { | |
| 1489 | + WORD palVersion; | |
| 1490 | + WORD palNumEntries; | |
| 1491 | + PALETTEENTRY palPalEntry[1]; | |
| 1492 | +} LOGPALETTE,*NPLOGPALETTE,*PLOGPALETTE,*LPLOGPALETTE; | |
| 1493 | +typedef struct tagEMRCREATEPALETTE { | |
| 1494 | + EMR emr; | |
| 1495 | + DWORD ihPal; | |
| 1496 | + LOGPALETTE lgpl; | |
| 1497 | +} EMRCREATEPALETTE,*PEMRCREATEPALETTE; | |
| 1498 | +typedef struct tagLOGPEN { | |
| 1499 | + UINT lopnStyle; | |
| 1500 | + POINT lopnWidth; | |
| 1501 | + COLORREF lopnColor; | |
| 1502 | +} LOGPEN,*LPLOGPEN; | |
| 1503 | +typedef struct tagEMRCREATEPEN { | |
| 1504 | + EMR emr; | |
| 1505 | + DWORD ihPen; | |
| 1506 | + LOGPEN lopn; | |
| 1507 | +} EMRCREATEPEN,*PEMRCREATEPEN; | |
| 1508 | +typedef struct tagEMRELLIPSE { | |
| 1509 | + EMR emr; | |
| 1510 | + RECTL rclBox; | |
| 1511 | +} EMRELLIPSE,*PEMRELLIPSE,EMRRECTANGLE,*PEMRRECTANGLE; | |
| 1512 | +typedef struct tagEMREOF { | |
| 1513 | + EMR emr; | |
| 1514 | + DWORD nPalEntries; | |
| 1515 | + DWORD offPalEntries; | |
| 1516 | + DWORD nSizeLast; | |
| 1517 | +} EMREOF,*PEMREOF; | |
| 1518 | +typedef struct tagEMREXCLUDECLIPRECT { | |
| 1519 | + EMR emr; | |
| 1520 | + RECTL rclClip; | |
| 1521 | +} EMREXCLUDECLIPRECT,*PEMREXCLUDECLIPRECT,EMRINTERSECTCLIPRECT,*PEMRINTERSECTCLIPRECT; | |
| 1522 | +typedef struct tagPANOSE { | |
| 1523 | + BYTE bFamilyType; | |
| 1524 | + BYTE bSerifStyle; | |
| 1525 | + BYTE bWeight; | |
| 1526 | + BYTE bProportion; | |
| 1527 | + BYTE bContrast; | |
| 1528 | + BYTE bStrokeVariation; | |
| 1529 | + BYTE bArmStyle; | |
| 1530 | + BYTE bLetterform; | |
| 1531 | + BYTE bMidline; | |
| 1532 | + BYTE bXHeight; | |
| 1533 | +} PANOSE; | |
| 1534 | +typedef struct tagLOGFONTA { | |
| 1535 | + LONG lfHeight; | |
| 1536 | + LONG lfWidth; | |
| 1537 | + LONG lfEscapement; | |
| 1538 | + LONG lfOrientation; | |
| 1539 | + LONG lfWeight; | |
| 1540 | + BYTE lfItalic; | |
| 1541 | + BYTE lfUnderline; | |
| 1542 | + BYTE lfStrikeOut; | |
| 1543 | + BYTE lfCharSet; | |
| 1544 | + BYTE lfOutPrecision; | |
| 1545 | + BYTE lfClipPrecision; | |
| 1546 | + BYTE lfQuality; | |
| 1547 | + BYTE lfPitchAndFamily; | |
| 1548 | + CHAR lfFaceName[LF_FACESIZE]; | |
| 1549 | +} LOGFONTA,*PLOGFONTA,*LPLOGFONTA; | |
| 1550 | +typedef struct tagLOGFONTW { | |
| 1551 | + LONG lfHeight; | |
| 1552 | + LONG lfWidth; | |
| 1553 | + LONG lfEscapement; | |
| 1554 | + LONG lfOrientation; | |
| 1555 | + LONG lfWeight; | |
| 1556 | + BYTE lfItalic; | |
| 1557 | + BYTE lfUnderline; | |
| 1558 | + BYTE lfStrikeOut; | |
| 1559 | + BYTE lfCharSet; | |
| 1560 | + BYTE lfOutPrecision; | |
| 1561 | + BYTE lfClipPrecision; | |
| 1562 | + BYTE lfQuality; | |
| 1563 | + BYTE lfPitchAndFamily; | |
| 1564 | + WCHAR lfFaceName[LF_FACESIZE]; | |
| 1565 | +} LOGFONTW,*PLOGFONTW,*LPLOGFONTW; | |
| 1566 | +typedef struct tagEXTLOGFONTA { | |
| 1567 | + LOGFONTA elfLogFont; | |
| 1568 | + BYTE elfFullName[LF_FULLFACESIZE]; | |
| 1569 | + BYTE elfStyle[LF_FACESIZE]; | |
| 1570 | + DWORD elfVersion; | |
| 1571 | + DWORD elfStyleSize; | |
| 1572 | + DWORD elfMatch; | |
| 1573 | + DWORD elfReserved; | |
| 1574 | + BYTE elfVendorId[ELF_VENDOR_SIZE]; | |
| 1575 | + DWORD elfCulture; | |
| 1576 | + PANOSE elfPanose; | |
| 1577 | +} EXTLOGFONTA,*PEXTLOGFONTA,*LPEXTLOGFONTA; | |
| 1578 | +typedef struct tagEXTLOGFONTW { | |
| 1579 | + LOGFONTW elfLogFont; | |
| 1580 | + WCHAR elfFullName[LF_FULLFACESIZE]; | |
| 1581 | + WCHAR elfStyle[LF_FACESIZE]; | |
| 1582 | + DWORD elfVersion; | |
| 1583 | + DWORD elfStyleSize; | |
| 1584 | + DWORD elfMatch; | |
| 1585 | + DWORD elfReserved; | |
| 1586 | + BYTE elfVendorId[ELF_VENDOR_SIZE]; | |
| 1587 | + DWORD elfCulture; | |
| 1588 | + PANOSE elfPanose; | |
| 1589 | +} EXTLOGFONTW,*PEXTLOGFONTW,*LPEXTLOGFONTW; | |
| 1590 | +typedef struct tagEMREXTCREATEFONTINDIRECTW { | |
| 1591 | + EMR emr; | |
| 1592 | + DWORD ihFont; | |
| 1593 | + EXTLOGFONTW elfw; | |
| 1594 | +} EMREXTCREATEFONTINDIRECTW,*PEMREXTCREATEFONTINDIRECTW; | |
| 1595 | +typedef struct tagEXTLOGPEN { | |
| 1596 | + UINT elpPenStyle; | |
| 1597 | + UINT elpWidth; | |
| 1598 | + UINT elpBrushStyle; | |
| 1599 | + COLORREF elpColor; | |
| 1600 | + LONG elpHatch; | |
| 1601 | + DWORD elpNumEntries; | |
| 1602 | + DWORD elpStyleEntry[1]; | |
| 1603 | +} EXTLOGPEN,*PEXTLOGPEN,*LPEXTLOGPEN; | |
| 1604 | +typedef struct tagEMREXTCREATEPEN { | |
| 1605 | + EMR emr; | |
| 1606 | + DWORD ihPen; | |
| 1607 | + DWORD offBmi; | |
| 1608 | + DWORD cbBmi; | |
| 1609 | + DWORD offBits; | |
| 1610 | + DWORD cbBits; | |
| 1611 | + EXTLOGPEN elp; | |
| 1612 | +} EMREXTCREATEPEN,*PEMREXTCREATEPEN; | |
| 1613 | +typedef struct tagEMREXTFLOODFILL { | |
| 1614 | + EMR emr; | |
| 1615 | + POINTL ptlStart; | |
| 1616 | + COLORREF crColor; | |
| 1617 | + DWORD iMode; | |
| 1618 | +} EMREXTFLOODFILL,*PEMREXTFLOODFILL; | |
| 1619 | +typedef struct tagEMREXTSELECTCLIPRGN { | |
| 1620 | + EMR emr; | |
| 1621 | + DWORD cbRgnData; | |
| 1622 | + DWORD iMode; | |
| 1623 | + BYTE RgnData[1]; | |
| 1624 | +} EMREXTSELECTCLIPRGN,*PEMREXTSELECTCLIPRGN; | |
| 1625 | +typedef struct tagEMRTEXT { | |
| 1626 | + POINTL ptlReference; | |
| 1627 | + DWORD nChars; | |
| 1628 | + DWORD offString; | |
| 1629 | + DWORD fOptions; | |
| 1630 | + RECTL rcl; | |
| 1631 | + DWORD offDx; | |
| 1632 | +} EMRTEXT,*PEMRTEXT; | |
| 1633 | +typedef struct tagEMREXTTEXTOUTA { | |
| 1634 | + EMR emr; | |
| 1635 | + RECTL rclBounds; | |
| 1636 | + DWORD iGraphicsMode; | |
| 1637 | + FLOAT exScale; | |
| 1638 | + FLOAT eyScale; | |
| 1639 | + EMRTEXT emrtext; | |
| 1640 | +} EMREXTTEXTOUTA,*PEMREXTTEXTOUTA,EMREXTTEXTOUTW,*PEMREXTTEXTOUTW; | |
| 1641 | +typedef struct tagEMRFILLPATH { | |
| 1642 | + EMR emr; | |
| 1643 | + RECTL rclBounds; | |
| 1644 | +} EMRFILLPATH,*PEMRFILLPATH,EMRSTROKEANDFILLPATH,*PEMRSTROKEANDFILLPATH,EMRSTROKEPATH,*PEMRSTROKEPATH; | |
| 1645 | +typedef struct tagEMRFILLRGN { | |
| 1646 | + EMR emr; | |
| 1647 | + RECTL rclBounds; | |
| 1648 | + DWORD cbRgnData; | |
| 1649 | + DWORD ihBrush; | |
| 1650 | + BYTE RgnData[1]; | |
| 1651 | +} EMRFILLRGN,*PEMRFILLRGN; | |
| 1652 | +typedef struct tagEMRFORMAT { | |
| 1653 | + DWORD dSignature; | |
| 1654 | + DWORD nVersion; | |
| 1655 | + DWORD cbData; | |
| 1656 | + DWORD offData; | |
| 1657 | +} EMRFORMAT; | |
| 1658 | +typedef struct tagEMRFRAMERGN { | |
| 1659 | + EMR emr; | |
| 1660 | + RECTL rclBounds; | |
| 1661 | + DWORD cbRgnData; | |
| 1662 | + DWORD ihBrush; | |
| 1663 | + SIZEL szlStroke; | |
| 1664 | + BYTE RgnData[1]; | |
| 1665 | +} EMRFRAMERGN,*PEMRFRAMERGN; | |
| 1666 | +typedef struct tagEMRGDICOMMENT { | |
| 1667 | + EMR emr; | |
| 1668 | + DWORD cbData; | |
| 1669 | + BYTE Data[1]; | |
| 1670 | +} EMRGDICOMMENT,*PEMRGDICOMMENT; | |
| 1671 | +typedef struct tagEMRINVERTRGN { | |
| 1672 | + EMR emr; | |
| 1673 | + RECTL rclBounds; | |
| 1674 | + DWORD cbRgnData; | |
| 1675 | + BYTE RgnData[1]; | |
| 1676 | +} EMRINVERTRGN,*PEMRINVERTRGN,EMRPAINTRGN,*PEMRPAINTRGN; | |
| 1677 | +typedef struct tagEMRLINETO { | |
| 1678 | + EMR emr; | |
| 1679 | + POINTL ptl; | |
| 1680 | +} EMRLINETO,*PEMRLINETO,EMRMOVETOEX,*PEMRMOVETOEX; | |
| 1681 | +typedef struct tagEMRMASKBLT { | |
| 1682 | + EMR emr; | |
| 1683 | + RECTL rclBounds; | |
| 1684 | + LONG xDest; | |
| 1685 | + LONG yDest; | |
| 1686 | + LONG cxDest; | |
| 1687 | + LONG cyDest; | |
| 1688 | + DWORD dwRop; | |
| 1689 | + LONG xSrc; | |
| 1690 | + LONG ySrc; | |
| 1691 | + XFORM xformSrc; | |
| 1692 | + COLORREF crBkColorSrc; | |
| 1693 | + DWORD iUsageSrc; | |
| 1694 | + DWORD offBmiSrc; | |
| 1695 | + DWORD cbBmiSrc; | |
| 1696 | + DWORD offBitsSrc; | |
| 1697 | + DWORD cbBitsSrc; | |
| 1698 | + LONG xMask; | |
| 1699 | + LONG yMask; | |
| 1700 | + DWORD iUsageMask; | |
| 1701 | + DWORD offBmiMask; | |
| 1702 | + DWORD cbBmiMask; | |
| 1703 | + DWORD offBitsMask; | |
| 1704 | + DWORD cbBitsMask; | |
| 1705 | +} EMRMASKBLT,*PEMRMASKBLT; | |
| 1706 | +typedef struct tagEMRMODIFYWORLDTRANSFORM { | |
| 1707 | + EMR emr; | |
| 1708 | + XFORM xform; | |
| 1709 | + DWORD iMode; | |
| 1710 | +} EMRMODIFYWORLDTRANSFORM,*PEMRMODIFYWORLDTRANSFORM; | |
| 1711 | +typedef struct tagEMROFFSETCLIPRGN { | |
| 1712 | + EMR emr; | |
| 1713 | + POINTL ptlOffset; | |
| 1714 | +} EMROFFSETCLIPRGN,*PEMROFFSETCLIPRGN; | |
| 1715 | +typedef struct tagEMRPLGBLT { | |
| 1716 | + EMR emr; | |
| 1717 | + RECTL rclBounds; | |
| 1718 | + POINTL aptlDest[3]; | |
| 1719 | + LONG xSrc; | |
| 1720 | + LONG ySrc; | |
| 1721 | + LONG cxSrc; | |
| 1722 | + LONG cySrc; | |
| 1723 | + XFORM xformSrc; | |
| 1724 | + COLORREF crBkColorSrc; | |
| 1725 | + DWORD iUsageSrc; | |
| 1726 | + DWORD offBmiSrc; | |
| 1727 | + DWORD cbBmiSrc; | |
| 1728 | + DWORD offBitsSrc; | |
| 1729 | + DWORD cbBitsSrc; | |
| 1730 | + LONG xMask; | |
| 1731 | + LONG yMask; | |
| 1732 | + DWORD iUsageMask; | |
| 1733 | + DWORD offBmiMask; | |
| 1734 | + DWORD cbBmiMask; | |
| 1735 | + DWORD offBitsMask; | |
| 1736 | + DWORD cbBitsMask; | |
| 1737 | +} EMRPLGBLT,*PEMRPLGBLT; | |
| 1738 | +typedef struct tagEMRPOLYDRAW { | |
| 1739 | + EMR emr; | |
| 1740 | + RECTL rclBounds; | |
| 1741 | + DWORD cptl; | |
| 1742 | + POINTL aptl[1]; | |
| 1743 | + BYTE abTypes[1]; | |
| 1744 | +} EMRPOLYDRAW,*PEMRPOLYDRAW; | |
| 1745 | +typedef struct tagEMRPOLYDRAW16 { | |
| 1746 | + EMR emr; | |
| 1747 | + RECTL rclBounds; | |
| 1748 | + DWORD cpts; | |
| 1749 | + POINTS apts[1]; | |
| 1750 | + BYTE abTypes[1]; | |
| 1751 | +} EMRPOLYDRAW16,*PEMRPOLYDRAW16; | |
| 1752 | +typedef struct tagEMRPOLYLINE { | |
| 1753 | + EMR emr; | |
| 1754 | + RECTL rclBounds; | |
| 1755 | + DWORD cptl; | |
| 1756 | + POINTL aptl[1]; | |
| 1757 | +} EMRPOLYLINE,*PEMRPOLYLINE,EMRPOLYBEZIER,*PEMRPOLYBEZIER,EMRPOLYGON,*PEMRPOLYGON,EMRPOLYBEZIERTO,*PEMRPOLYBEZIERTO,EMRPOLYLINETO,*PEMRPOLYLINETO; | |
| 1758 | +typedef struct tagEMRPOLYLINE16 { | |
| 1759 | + EMR emr; | |
| 1760 | + RECTL rclBounds; | |
| 1761 | + DWORD cpts; | |
| 1762 | + POINTL apts[1]; | |
| 1763 | +} EMRPOLYLINE16,*PEMRPOLYLINE16,EMRPOLYBEZIER16,*PEMRPOLYBEZIER16,EMRPOLYGON16,*PEMRPOLYGON16,EMRPOLYBEZIERTO16,*PEMRPOLYBEZIERTO16,EMRPOLYLINETO16,*PEMRPOLYLINETO16; | |
| 1764 | +typedef struct tagEMRPOLYPOLYLINE { | |
| 1765 | + EMR emr; | |
| 1766 | + RECTL rclBounds; | |
| 1767 | + DWORD nPolys; | |
| 1768 | + DWORD cptl; | |
| 1769 | + DWORD aPolyCounts[1]; | |
| 1770 | + POINTL aptl[1]; | |
| 1771 | +} EMRPOLYPOLYLINE,*PEMRPOLYPOLYLINE,EMRPOLYPOLYGON,*PEMRPOLYPOLYGON; | |
| 1772 | +typedef struct tagEMRPOLYPOLYLINE16 { | |
| 1773 | + EMR emr; | |
| 1774 | + RECTL rclBounds; | |
| 1775 | + DWORD nPolys; | |
| 1776 | + DWORD cpts; | |
| 1777 | + DWORD aPolyCounts[1]; | |
| 1778 | + POINTS apts[1]; | |
| 1779 | +} EMRPOLYPOLYLINE16,*PEMRPOLYPOLYLINE16,EMRPOLYPOLYGON16,*PEMRPOLYPOLYGON16; | |
| 1780 | +typedef struct tagEMRPOLYTEXTOUTA { | |
| 1781 | + EMR emr; | |
| 1782 | + RECTL rclBounds; | |
| 1783 | + DWORD iGraphicsMode; | |
| 1784 | + FLOAT exScale; | |
| 1785 | + FLOAT eyScale; | |
| 1786 | + LONG cStrings; | |
| 1787 | + EMRTEXT aemrtext[1]; | |
| 1788 | +} EMRPOLYTEXTOUTA,*PEMRPOLYTEXTOUTA,EMRPOLYTEXTOUTW,*PEMRPOLYTEXTOUTW; | |
| 1789 | +typedef struct tagEMRRESIZEPALETTE { | |
| 1790 | + EMR emr; | |
| 1791 | + DWORD ihPal; | |
| 1792 | + DWORD cEntries; | |
| 1793 | +} EMRRESIZEPALETTE,*PEMRRESIZEPALETTE; | |
| 1794 | +typedef struct tagEMRRESTOREDC { | |
| 1795 | + EMR emr; | |
| 1796 | + LONG iRelative; | |
| 1797 | +} EMRRESTOREDC,*PEMRRESTOREDC; | |
| 1798 | +typedef struct tagEMRROUNDRECT { | |
| 1799 | + EMR emr; | |
| 1800 | + RECTL rclBox; | |
| 1801 | + SIZEL szlCorner; | |
| 1802 | +} EMRROUNDRECT,*PEMRROUNDRECT; | |
| 1803 | +typedef struct tagEMRSCALEVIEWPORTEXTEX { | |
| 1804 | + EMR emr; | |
| 1805 | + LONG xNum; | |
| 1806 | + LONG xDenom; | |
| 1807 | + LONG yNum; | |
| 1808 | + LONG yDenom; | |
| 1809 | +} EMRSCALEVIEWPORTEXTEX,*PEMRSCALEVIEWPORTEXTEX,EMRSCALEWINDOWEXTEX,*PEMRSCALEWINDOWEXTEX; | |
| 1810 | +typedef struct tagEMRSELECTCOLORSPACE { | |
| 1811 | + EMR emr; | |
| 1812 | + DWORD ihCS; | |
| 1813 | +} EMRSELECTCOLORSPACE,*PEMRSELECTCOLORSPACE,EMRDELETECOLORSPACE,*PEMRDELETECOLORSPACE; | |
| 1814 | +typedef struct tagEMRSELECTOBJECT { | |
| 1815 | + EMR emr; | |
| 1816 | + DWORD ihObject; | |
| 1817 | +} EMRSELECTOBJECT,*PEMRSELECTOBJECT,EMRDELETEOBJECT,*PEMRDELETEOBJECT; | |
| 1818 | +typedef struct tagEMRSELECTPALETTE { | |
| 1819 | + EMR emr; | |
| 1820 | + DWORD ihPal; | |
| 1821 | +} EMRSELECTPALETTE,*PEMRSELECTPALETTE; | |
| 1822 | +typedef struct tagEMRSETARCDIRECTION { | |
| 1823 | + EMR emr; | |
| 1824 | + DWORD iArcDirection; | |
| 1825 | +} EMRSETARCDIRECTION,*PEMRSETARCDIRECTION; | |
| 1826 | +typedef struct tagEMRSETTEXTCOLOR { | |
| 1827 | + EMR emr; | |
| 1828 | + COLORREF crColor; | |
| 1829 | +} EMRSETBKCOLOR,*PEMRSETBKCOLOR,EMRSETTEXTCOLOR,*PEMRSETTEXTCOLOR; | |
| 1830 | +typedef struct tagEMRSETCOLORADJUSTMENT { | |
| 1831 | + EMR emr; | |
| 1832 | + COLORADJUSTMENT ColorAdjustment; | |
| 1833 | +} EMRSETCOLORADJUSTMENT,*PEMRSETCOLORADJUSTMENT; | |
| 1834 | +typedef struct tagEMRSETDIBITSTODEVICE { | |
| 1835 | + EMR emr; | |
| 1836 | + RECTL rclBounds; | |
| 1837 | + LONG xDest; | |
| 1838 | + LONG yDest; | |
| 1839 | + LONG xSrc; | |
| 1840 | + LONG ySrc; | |
| 1841 | + LONG cxSrc; | |
| 1842 | + LONG cySrc; | |
| 1843 | + DWORD offBmiSrc; | |
| 1844 | + DWORD cbBmiSrc; | |
| 1845 | + DWORD offBitsSrc; | |
| 1846 | + DWORD cbBitsSrc; | |
| 1847 | + DWORD iUsageSrc; | |
| 1848 | + DWORD iStartScan; | |
| 1849 | + DWORD cScans; | |
| 1850 | +} EMRSETDIBITSTODEVICE,*PEMRSETDIBITSTODEVICE; | |
| 1851 | +typedef struct tagEMRSETMAPPERFLAGS { | |
| 1852 | + EMR emr; | |
| 1853 | + DWORD dwFlags; | |
| 1854 | +} EMRSETMAPPERFLAGS,*PEMRSETMAPPERFLAGS; | |
| 1855 | +typedef struct tagEMRSETMITERLIMIT { | |
| 1856 | + EMR emr; | |
| 1857 | + FLOAT eMiterLimit; | |
| 1858 | +} EMRSETMITERLIMIT,*PEMRSETMITERLIMIT; | |
| 1859 | +typedef struct tagEMRSETPALETTEENTRIES { | |
| 1860 | + EMR emr; | |
| 1861 | + DWORD ihPal; | |
| 1862 | + DWORD iStart; | |
| 1863 | + DWORD cEntries; | |
| 1864 | + PALETTEENTRY aPalEntries[1]; | |
| 1865 | +} EMRSETPALETTEENTRIES,*PEMRSETPALETTEENTRIES; | |
| 1866 | +typedef struct tagEMRSETPIXELV { | |
| 1867 | + EMR emr; | |
| 1868 | + POINTL ptlPixel; | |
| 1869 | + COLORREF crColor; | |
| 1870 | +} EMRSETPIXELV,*PEMRSETPIXELV; | |
| 1871 | +typedef struct tagEMRSETVIEWPORTEXTEX { | |
| 1872 | + EMR emr; | |
| 1873 | + SIZEL szlExtent; | |
| 1874 | +} EMRSETVIEWPORTEXTEX,*PEMRSETVIEWPORTEXTEX,EMRSETWINDOWEXTEX,*PEMRSETWINDOWEXTEX; | |
| 1875 | +typedef struct tagEMRSETVIEWPORTORGEX { | |
| 1876 | + EMR emr; | |
| 1877 | + POINTL ptlOrigin; | |
| 1878 | +} EMRSETVIEWPORTORGEX,*PEMRSETVIEWPORTORGEX,EMRSETWINDOWORGEX,*PEMRSETWINDOWORGEX,EMRSETBRUSHORGEX,*PEMRSETBRUSHORGEX; | |
| 1879 | +typedef struct tagEMRSETWORLDTRANSFORM { | |
| 1880 | + EMR emr; | |
| 1881 | + XFORM xform; | |
| 1882 | +} EMRSETWORLDTRANSFORM,*PEMRSETWORLDTRANSFORM; | |
| 1883 | +typedef struct tagEMRSTRETCHBLT { | |
| 1884 | + EMR emr; | |
| 1885 | + RECTL rclBounds; | |
| 1886 | + LONG xDest; | |
| 1887 | + LONG yDest; | |
| 1888 | + LONG cxDest; | |
| 1889 | + LONG cyDest; | |
| 1890 | + DWORD dwRop; | |
| 1891 | + LONG xSrc; | |
| 1892 | + LONG ySrc; | |
| 1893 | + XFORM xformSrc; | |
| 1894 | + COLORREF crBkColorSrc; | |
| 1895 | + DWORD iUsageSrc; | |
| 1896 | + DWORD offBmiSrc; | |
| 1897 | + DWORD cbBmiSrc; | |
| 1898 | + DWORD offBitsSrc; | |
| 1899 | + DWORD cbBitsSrc; | |
| 1900 | + LONG cxSrc; | |
| 1901 | + LONG cySrc; | |
| 1902 | +} EMRSTRETCHBLT,*PEMRSTRETCHBLT; | |
| 1903 | +typedef struct tagEMRSTRETCHDIBITS { | |
| 1904 | + EMR emr; | |
| 1905 | + RECTL rclBounds; | |
| 1906 | + LONG xDest; | |
| 1907 | + LONG yDest; | |
| 1908 | + LONG xSrc; | |
| 1909 | + LONG ySrc; | |
| 1910 | + LONG cxSrc; | |
| 1911 | + LONG cySrc; | |
| 1912 | + DWORD offBmiSrc; | |
| 1913 | + DWORD cbBmiSrc; | |
| 1914 | + DWORD offBitsSrc; | |
| 1915 | + DWORD cbBitsSrc; | |
| 1916 | + DWORD iUsageSrc; | |
| 1917 | + DWORD dwRop; | |
| 1918 | + LONG cxDest; | |
| 1919 | + LONG cyDest; | |
| 1920 | +} EMRSTRETCHDIBITS,*PEMRSTRETCHDIBITS; | |
| 1921 | +typedef struct tagABORTPATH { | |
| 1922 | + EMR emr; | |
| 1923 | +} EMRABORTPATH,*PEMRABORTPATH,EMRBEGINPATH,*PEMRBEGINPATH,EMRENDPATH,*PEMRENDPATH,EMRCLOSEFIGURE,*PEMRCLOSEFIGURE,EMRFLATTENPATH,*PEMRFLATTENPATH,EMRWIDENPATH,*PEMRWIDENPATH,EMRSETMETARGN,*PEMRSETMETARGN,EMRSAVEDC,*PEMRSAVEDC,EMRREALIZEPALETTE,*PEMRREALIZEPALETTE; | |
| 1924 | +typedef struct tagEMRSELECTCLIPPATH { | |
| 1925 | + EMR emr; | |
| 1926 | + DWORD iMode; | |
| 1927 | +} EMRSELECTCLIPPATH,*PEMRSELECTCLIPPATH,EMRSETBKMODE,*PEMRSETBKMODE,EMRSETMAPMODE,*PEMRSETMAPMODE,EMRSETPOLYFILLMODE,*PEMRSETPOLYFILLMODE,EMRSETROP2,*PEMRSETROP2,EMRSETSTRETCHBLTMODE,*PEMRSETSTRETCHBLTMODE,EMRSETTEXTALIGN,*PEMRSETTEXTALIGN,EMRENABLEICM,*PEMRENABLEICM; | |
| 1928 | +#pragma pack(push,2) | |
| 1929 | +typedef struct tagMETAHEADER { | |
| 1930 | + WORD mtType; | |
| 1931 | + WORD mtHeaderSize; | |
| 1932 | + WORD mtVersion; | |
| 1933 | + DWORD mtSize; | |
| 1934 | + WORD mtNoObjects; | |
| 1935 | + DWORD mtMaxRecord; | |
| 1936 | + WORD mtNoParameters; | |
| 1937 | +} METAHEADER,*PMETAHEADER,*LPMETAHEADER; | |
| 1938 | +#pragma pack(pop) | |
| 1939 | +typedef struct tagENHMETAHEADER { | |
| 1940 | + DWORD iType; | |
| 1941 | + DWORD nSize; | |
| 1942 | + RECTL rclBounds; | |
| 1943 | + RECTL rclFrame; | |
| 1944 | + DWORD dSignature; | |
| 1945 | + DWORD nVersion; | |
| 1946 | + DWORD nBytes; | |
| 1947 | + DWORD nRecords; | |
| 1948 | + WORD nHandles; | |
| 1949 | + WORD sReserved; | |
| 1950 | + DWORD nDescription; | |
| 1951 | + DWORD offDescription; | |
| 1952 | + DWORD nPalEntries; | |
| 1953 | + SIZEL szlDevice; | |
| 1954 | + SIZEL szlMillimeters; | |
| 1955 | +} ENHMETAHEADER,*LPENHMETAHEADER; | |
| 1956 | +typedef struct tagMETARECORD { | |
| 1957 | + DWORD rdSize; | |
| 1958 | + WORD rdFunction; | |
| 1959 | + WORD rdParm[1]; | |
| 1960 | +} METARECORD,*PMETARECORD,*LPMETARECORD; | |
| 1961 | +typedef struct tagENHMETARECORD { | |
| 1962 | + DWORD iType; | |
| 1963 | + DWORD nSize; | |
| 1964 | + DWORD dParm[1]; | |
| 1965 | +} ENHMETARECORD,*LPENHMETARECORD; | |
| 1966 | +typedef struct tagHANDLETABLE { | |
| 1967 | + HGDIOBJ objectHandle[1]; | |
| 1968 | +} HANDLETABLE,*LPHANDLETABLE; | |
| 1969 | +typedef struct tagTEXTMETRICA { | |
| 1970 | + LONG tmHeight; | |
| 1971 | + LONG tmAscent; | |
| 1972 | + LONG tmDescent; | |
| 1973 | + LONG tmInternalLeading; | |
| 1974 | + LONG tmExternalLeading; | |
| 1975 | + LONG tmAveCharWidth; | |
| 1976 | + LONG tmMaxCharWidth; | |
| 1977 | + LONG tmWeight; | |
| 1978 | + LONG tmOverhang; | |
| 1979 | + LONG tmDigitizedAspectX; | |
| 1980 | + LONG tmDigitizedAspectY; | |
| 1981 | + BYTE tmFirstChar; | |
| 1982 | + BYTE tmLastChar; | |
| 1983 | + BYTE tmDefaultChar; | |
| 1984 | + BYTE tmBreakChar; | |
| 1985 | + BYTE tmItalic; | |
| 1986 | + BYTE tmUnderlined; | |
| 1987 | + BYTE tmStruckOut; | |
| 1988 | + BYTE tmPitchAndFamily; | |
| 1989 | + BYTE tmCharSet; | |
| 1990 | +} TEXTMETRICA,*PTEXTMETRICA,*LPTEXTMETRICA; | |
| 1991 | +typedef struct tagTEXTMETRICW { | |
| 1992 | + LONG tmHeight; | |
| 1993 | + LONG tmAscent; | |
| 1994 | + LONG tmDescent; | |
| 1995 | + LONG tmInternalLeading; | |
| 1996 | + LONG tmExternalLeading; | |
| 1997 | + LONG tmAveCharWidth; | |
| 1998 | + LONG tmMaxCharWidth; | |
| 1999 | + LONG tmWeight; | |
| 2000 | + LONG tmOverhang; | |
| 2001 | + LONG tmDigitizedAspectX; | |
| 2002 | + LONG tmDigitizedAspectY; | |
| 2003 | + WCHAR tmFirstChar; | |
| 2004 | + WCHAR tmLastChar; | |
| 2005 | + WCHAR tmDefaultChar; | |
| 2006 | + WCHAR tmBreakChar; | |
| 2007 | + BYTE tmItalic; | |
| 2008 | + BYTE tmUnderlined; | |
| 2009 | + BYTE tmStruckOut; | |
| 2010 | + BYTE tmPitchAndFamily; | |
| 2011 | + BYTE tmCharSet; | |
| 2012 | +} TEXTMETRICW,*PTEXTMETRICW,*LPTEXTMETRICW; | |
| 2013 | +typedef struct _RGNDATAHEADER { | |
| 2014 | + DWORD dwSize; | |
| 2015 | + DWORD iType; | |
| 2016 | + DWORD nCount; | |
| 2017 | + DWORD nRgnSize; | |
| 2018 | + RECT rcBound; | |
| 2019 | +} RGNDATAHEADER; | |
| 2020 | +typedef struct _RGNDATA { | |
| 2021 | + RGNDATAHEADER rdh; | |
| 2022 | + char Buffer[1]; | |
| 2023 | +} RGNDATA,*LPRGNDATA; | |
| 2024 | +/* for GetRandomRgn */ | |
| 2025 | +#define SYSRGN 4 | |
| 2026 | +typedef struct tagGCP_RESULTSA { | |
| 2027 | + DWORD lStructSize; | |
| 2028 | + LPSTR lpOutString; | |
| 2029 | + UINT *lpOrder; | |
| 2030 | + INT *lpDx; | |
| 2031 | + INT *lpCaretPos; | |
| 2032 | + LPSTR lpClass; | |
| 2033 | + UINT *lpGlyphs; | |
| 2034 | + UINT nGlyphs; | |
| 2035 | + UINT nMaxFit; | |
| 2036 | +} GCP_RESULTSA,*LPGCP_RESULTSA; | |
| 2037 | +typedef struct tagGCP_RESULTSW { | |
| 2038 | + DWORD lStructSize; | |
| 2039 | + LPWSTR lpOutString; | |
| 2040 | + UINT *lpOrder; | |
| 2041 | + INT *lpDx; | |
| 2042 | + INT *lpCaretPos; | |
| 2043 | + LPWSTR lpClass; | |
| 2044 | + UINT *lpGlyphs; | |
| 2045 | + UINT nGlyphs; | |
| 2046 | + UINT nMaxFit; | |
| 2047 | +} GCP_RESULTSW,*LPGCP_RESULTSW; | |
| 2048 | +typedef struct _GLYPHMETRICS { | |
| 2049 | + UINT gmBlackBoxX; | |
| 2050 | + UINT gmBlackBoxY; | |
| 2051 | + POINT gmptGlyphOrigin; | |
| 2052 | + short gmCellIncX; | |
| 2053 | + short gmCellIncY; | |
| 2054 | +} GLYPHMETRICS,*LPGLYPHMETRICS; | |
| 2055 | +typedef struct tagKERNINGPAIR { | |
| 2056 | + WORD wFirst; | |
| 2057 | + WORD wSecond; | |
| 2058 | + int iKernAmount; | |
| 2059 | +} KERNINGPAIR,*LPKERNINGPAIR; | |
| 2060 | +typedef struct _FIXED { | |
| 2061 | + WORD fract; | |
| 2062 | + short value; | |
| 2063 | +} FIXED; | |
| 2064 | +typedef struct _MAT2 { | |
| 2065 | + FIXED eM11; | |
| 2066 | + FIXED eM12; | |
| 2067 | + FIXED eM21; | |
| 2068 | + FIXED eM22; | |
| 2069 | +} MAT2,*LPMAT2; | |
| 2070 | +typedef struct _OUTLINETEXTMETRICA { | |
| 2071 | + UINT otmSize; | |
| 2072 | + TEXTMETRICA otmTextMetrics; | |
| 2073 | + BYTE otmFiller; | |
| 2074 | + PANOSE otmPanoseNumber; | |
| 2075 | + UINT otmfsSelection; | |
| 2076 | + UINT otmfsType; | |
| 2077 | + int otmsCharSlopeRise; | |
| 2078 | + int otmsCharSlopeRun; | |
| 2079 | + int otmItalicAngle; | |
| 2080 | + UINT otmEMSquare; | |
| 2081 | + int otmAscent; | |
| 2082 | + int otmDescent; | |
| 2083 | + UINT otmLineGap; | |
| 2084 | + UINT otmsCapEmHeight; | |
| 2085 | + UINT otmsXHeight; | |
| 2086 | + RECT otmrcFontBox; | |
| 2087 | + int otmMacAscent; | |
| 2088 | + int otmMacDescent; | |
| 2089 | + UINT otmMacLineGap; | |
| 2090 | + UINT otmusMinimumPPEM; | |
| 2091 | + POINT otmptSubscriptSize; | |
| 2092 | + POINT otmptSubscriptOffset; | |
| 2093 | + POINT otmptSuperscriptSize; | |
| 2094 | + POINT otmptSuperscriptOffset; | |
| 2095 | + UINT otmsStrikeoutSize; | |
| 2096 | + int otmsStrikeoutPosition; | |
| 2097 | + int otmsUnderscoreSize; | |
| 2098 | + int otmsUnderscorePosition; | |
| 2099 | + PSTR otmpFamilyName; | |
| 2100 | + PSTR otmpFaceName; | |
| 2101 | + PSTR otmpStyleName; | |
| 2102 | + PSTR otmpFullName; | |
| 2103 | +} OUTLINETEXTMETRICA,*POUTLINETEXTMETRICA,*LPOUTLINETEXTMETRICA; | |
| 2104 | +typedef struct _OUTLINETEXTMETRICW { | |
| 2105 | + UINT otmSize; | |
| 2106 | + TEXTMETRICW otmTextMetrics; | |
| 2107 | + BYTE otmFiller; | |
| 2108 | + PANOSE otmPanoseNumber; | |
| 2109 | + UINT otmfsSelection; | |
| 2110 | + UINT otmfsType; | |
| 2111 | + int otmsCharSlopeRise; | |
| 2112 | + int otmsCharSlopeRun; | |
| 2113 | + int otmItalicAngle; | |
| 2114 | + UINT otmEMSquare; | |
| 2115 | + int otmAscent; | |
| 2116 | + int otmDescent; | |
| 2117 | + UINT otmLineGap; | |
| 2118 | + UINT otmsCapEmHeight; | |
| 2119 | + UINT otmsXHeight; | |
| 2120 | + RECT otmrcFontBox; | |
| 2121 | + int otmMacAscent; | |
| 2122 | + int otmMacDescent; | |
| 2123 | + UINT otmMacLineGap; | |
| 2124 | + UINT otmusMinimumPPEM; | |
| 2125 | + POINT otmptSubscriptSize; | |
| 2126 | + POINT otmptSubscriptOffset; | |
| 2127 | + POINT otmptSuperscriptSize; | |
| 2128 | + POINT otmptSuperscriptOffset; | |
| 2129 | + UINT otmsStrikeoutSize; | |
| 2130 | + int otmsStrikeoutPosition; | |
| 2131 | + int otmsUnderscoreSize; | |
| 2132 | + int otmsUnderscorePosition; | |
| 2133 | + PSTR otmpFamilyName; | |
| 2134 | + PSTR otmpFaceName; | |
| 2135 | + PSTR otmpStyleName; | |
| 2136 | + PSTR otmpFullName; | |
| 2137 | +} OUTLINETEXTMETRICW,*POUTLINETEXTMETRICW,*LPOUTLINETEXTMETRICW; | |
| 2138 | +typedef struct _RASTERIZER_STATUS { | |
| 2139 | + short nSize; | |
| 2140 | + short wFlags; | |
| 2141 | + short nLanguageID; | |
| 2142 | +} RASTERIZER_STATUS,*LPRASTERIZER_STATUS; | |
| 2143 | +typedef struct _POLYTEXTA { | |
| 2144 | + int x; | |
| 2145 | + int y; | |
| 2146 | + UINT n; | |
| 2147 | + LPCSTR lpstr; | |
| 2148 | + UINT uiFlags; | |
| 2149 | + RECT rcl; | |
| 2150 | + int *pdx; | |
| 2151 | +} POLYTEXTA; | |
| 2152 | +typedef struct _POLYTEXTW { | |
| 2153 | + int x; | |
| 2154 | + int y; | |
| 2155 | + UINT n; | |
| 2156 | + LPCWSTR lpstr; | |
| 2157 | + UINT uiFlags; | |
| 2158 | + RECT rcl; | |
| 2159 | + int *pdx; | |
| 2160 | +} POLYTEXTW; | |
| 2161 | +typedef struct tagPIXELFORMATDESCRIPTOR { | |
| 2162 | + WORD nSize; | |
| 2163 | + WORD nVersion; | |
| 2164 | + DWORD dwFlags; | |
| 2165 | + BYTE iPixelType; | |
| 2166 | + BYTE cColorBits; | |
| 2167 | + BYTE cRedBits; | |
| 2168 | + BYTE cRedShift; | |
| 2169 | + BYTE cGreenBits; | |
| 2170 | + BYTE cGreenShift; | |
| 2171 | + BYTE cBlueBits; | |
| 2172 | + BYTE cBlueShift; | |
| 2173 | + BYTE cAlphaBits; | |
| 2174 | + BYTE cAlphaShift; | |
| 2175 | + BYTE cAccumBits; | |
| 2176 | + BYTE cAccumRedBits; | |
| 2177 | + BYTE cAccumGreenBits; | |
| 2178 | + BYTE cAccumBlueBits; | |
| 2179 | + BYTE cAccumAlphaBits; | |
| 2180 | + BYTE cDepthBits; | |
| 2181 | + BYTE cStencilBits; | |
| 2182 | + BYTE cAuxBuffers; | |
| 2183 | + BYTE iLayerType; | |
| 2184 | + BYTE bReserved; | |
| 2185 | + DWORD dwLayerMask; | |
| 2186 | + DWORD dwVisibleMask; | |
| 2187 | + DWORD dwDamageMask; | |
| 2188 | +} PIXELFORMATDESCRIPTOR,*PPIXELFORMATDESCRIPTOR,*LPPIXELFORMATDESCRIPTOR; | |
| 2189 | +typedef struct tagMETAFILEPICT { | |
| 2190 | + LONG mm; | |
| 2191 | + LONG xExt; | |
| 2192 | + LONG yExt; | |
| 2193 | + HMETAFILE hMF; | |
| 2194 | +} METAFILEPICT,*LPMETAFILEPICT; | |
| 2195 | +typedef struct tagLOCALESIGNATURE { | |
| 2196 | + DWORD lsUsb[4]; | |
| 2197 | + DWORD lsCsbDefault[2]; | |
| 2198 | + DWORD lsCsbSupported[2]; | |
| 2199 | +} LOCALESIGNATURE,*PLOCALESIGNATURE,*LPLOCALESIGNATURE; | |
| 2200 | +typedef LONG LCSTYPE; | |
| 2201 | +#pragma pack(push,4) | |
| 2202 | +typedef struct tagNEWTEXTMETRICA { | |
| 2203 | + LONG tmHeight; | |
| 2204 | + LONG tmAscent; | |
| 2205 | + LONG tmDescent; | |
| 2206 | + LONG tmInternalLeading; | |
| 2207 | + LONG tmExternalLeading; | |
| 2208 | + LONG tmAveCharWidth; | |
| 2209 | + LONG tmMaxCharWidth; | |
| 2210 | + LONG tmWeight; | |
| 2211 | + LONG tmOverhang; | |
| 2212 | + LONG tmDigitizedAspectX; | |
| 2213 | + LONG tmDigitizedAspectY; | |
| 2214 | + BYTE tmFirstChar; | |
| 2215 | + BYTE tmLastChar; | |
| 2216 | + BYTE tmDefaultChar; | |
| 2217 | + BYTE tmBreakChar; | |
| 2218 | + BYTE tmItalic; | |
| 2219 | + BYTE tmUnderlined; | |
| 2220 | + BYTE tmStruckOut; | |
| 2221 | + BYTE tmPitchAndFamily; | |
| 2222 | + BYTE tmCharSet; | |
| 2223 | + DWORD ntmFlags; | |
| 2224 | + UINT ntmSizeEM; | |
| 2225 | + UINT ntmCellHeight; | |
| 2226 | + UINT ntmAvgWidth; | |
| 2227 | +} NEWTEXTMETRICA,*PNEWTEXTMETRICA,*LPNEWTEXTMETRICA; | |
| 2228 | +typedef struct tagNEWTEXTMETRICW { | |
| 2229 | + LONG tmHeight; | |
| 2230 | + LONG tmAscent; | |
| 2231 | + LONG tmDescent; | |
| 2232 | + LONG tmInternalLeading; | |
| 2233 | + LONG tmExternalLeading; | |
| 2234 | + LONG tmAveCharWidth; | |
| 2235 | + LONG tmMaxCharWidth; | |
| 2236 | + LONG tmWeight; | |
| 2237 | + LONG tmOverhang; | |
| 2238 | + LONG tmDigitizedAspectX; | |
| 2239 | + LONG tmDigitizedAspectY; | |
| 2240 | + WCHAR tmFirstChar; | |
| 2241 | + WCHAR tmLastChar; | |
| 2242 | + WCHAR tmDefaultChar; | |
| 2243 | + WCHAR tmBreakChar; | |
| 2244 | + BYTE tmItalic; | |
| 2245 | + BYTE tmUnderlined; | |
| 2246 | + BYTE tmStruckOut; | |
| 2247 | + BYTE tmPitchAndFamily; | |
| 2248 | + BYTE tmCharSet; | |
| 2249 | + DWORD ntmFlags; | |
| 2250 | + UINT ntmSizeEM; | |
| 2251 | + UINT ntmCellHeight; | |
| 2252 | + UINT ntmAvgWidth; | |
| 2253 | +} NEWTEXTMETRICW,*PNEWTEXTMETRICW,*LPNEWTEXTMETRICW; | |
| 2254 | +#pragma pack(pop) | |
| 2255 | +typedef struct tagNEWTEXTMETRICEXA { | |
| 2256 | + NEWTEXTMETRICA ntmTm; | |
| 2257 | + FONTSIGNATURE ntmFontSig; | |
| 2258 | +} NEWTEXTMETRICEXA; | |
| 2259 | +typedef struct tagNEWTEXTMETRICEXW { | |
| 2260 | + NEWTEXTMETRICW ntmTm; | |
| 2261 | + FONTSIGNATURE ntmFontSig; | |
| 2262 | +} NEWTEXTMETRICEXW; | |
| 2263 | +typedef struct tagPELARRAY { | |
| 2264 | + LONG paXCount; | |
| 2265 | + LONG paYCount; | |
| 2266 | + LONG paXExt; | |
| 2267 | + LONG paYExt; | |
| 2268 | + BYTE paRGBs; | |
| 2269 | +} PELARRAY,*PPELARRAY,*LPPELARRAY; | |
| 2270 | +typedef struct tagENUMLOGFONTA { | |
| 2271 | + LOGFONTA elfLogFont; | |
| 2272 | + BYTE elfFullName[LF_FULLFACESIZE]; | |
| 2273 | + BYTE elfStyle[LF_FACESIZE]; | |
| 2274 | +} ENUMLOGFONTA,*LPENUMLOGFONTA; | |
| 2275 | +typedef struct tagENUMLOGFONTW { | |
| 2276 | + LOGFONTW elfLogFont; | |
| 2277 | + WCHAR elfFullName[LF_FULLFACESIZE]; | |
| 2278 | + WCHAR elfStyle[LF_FACESIZE]; | |
| 2279 | +} ENUMLOGFONTW,*LPENUMLOGFONTW; | |
| 2280 | +typedef struct tagENUMLOGFONTEXA { | |
| 2281 | + LOGFONTA elfLogFont; | |
| 2282 | + BYTE elfFullName[LF_FULLFACESIZE]; | |
| 2283 | + BYTE elfStyle[LF_FACESIZE]; | |
| 2284 | + BYTE elfScript[LF_FACESIZE]; | |
| 2285 | +} ENUMLOGFONTEXA,*LPENUMLOGFONTEXA; | |
| 2286 | +typedef struct tagENUMLOGFONTEXW { | |
| 2287 | + LOGFONTW elfLogFont; | |
| 2288 | + WCHAR elfFullName[LF_FULLFACESIZE]; | |
| 2289 | + BYTE elfStyle[LF_FACESIZE]; | |
| 2290 | + BYTE elfScript[LF_FACESIZE]; | |
| 2291 | +} ENUMLOGFONTEXW,*LPENUMLOGFONTEXW; | |
| 2292 | +typedef struct tagPOINTFX { | |
| 2293 | + FIXED x; | |
| 2294 | + FIXED y; | |
| 2295 | +} POINTFX,*LPPOINTFX; | |
| 2296 | +typedef struct tagTTPOLYCURVE { | |
| 2297 | + WORD wType; | |
| 2298 | + WORD cpfx; | |
| 2299 | + POINTFX apfx[1]; | |
| 2300 | +} TTPOLYCURVE,*LPTTPOLYCURVE; | |
| 2301 | +typedef struct tagTTPOLYGONHEADER { | |
| 2302 | + DWORD cb; | |
| 2303 | + DWORD dwType; | |
| 2304 | + POINTFX pfxStart; | |
| 2305 | +} TTPOLYGONHEADER,*LPTTPOLYGONHEADER; | |
| 2306 | +typedef struct _POINTFLOAT { | |
| 2307 | + FLOAT x; | |
| 2308 | + FLOAT y; | |
| 2309 | +} POINTFLOAT,*PPOINTFLOAT; | |
| 2310 | +typedef struct _GLYPHMETRICSFLOAT { | |
| 2311 | + FLOAT gmfBlackBoxX; | |
| 2312 | + FLOAT gmfBlackBoxY; | |
| 2313 | + POINTFLOAT gmfptGlyphOrigin; | |
| 2314 | + FLOAT gmfCellIncX; | |
| 2315 | + FLOAT gmfCellIncY; | |
| 2316 | +} GLYPHMETRICSFLOAT,*PGLYPHMETRICSFLOAT,*LPGLYPHMETRICSFLOAT; | |
| 2317 | +typedef struct tagLAYERPLANEDESCRIPTOR { | |
| 2318 | + WORD nSize; | |
| 2319 | + WORD nVersion; | |
| 2320 | + DWORD dwFlags; | |
| 2321 | + BYTE iPixelType; | |
| 2322 | + BYTE cColorBits; | |
| 2323 | + BYTE cRedBits; | |
| 2324 | + BYTE cRedShift; | |
| 2325 | + BYTE cGreenBits; | |
| 2326 | + BYTE cGreenShift; | |
| 2327 | + BYTE cBlueBits; | |
| 2328 | + BYTE cBlueShift; | |
| 2329 | + BYTE cAlphaBits; | |
| 2330 | + BYTE cAlphaShift; | |
| 2331 | + BYTE cAccumBits; | |
| 2332 | + BYTE cAccumRedBits; | |
| 2333 | + BYTE cAccumGreenBits; | |
| 2334 | + BYTE cAccumBlueBits; | |
| 2335 | + BYTE cAccumAlphaBits; | |
| 2336 | + BYTE cDepthBits; | |
| 2337 | + BYTE cStencilBits; | |
| 2338 | + BYTE cAuxBuffers; | |
| 2339 | + BYTE iLayerPlane; | |
| 2340 | + BYTE bReserved; | |
| 2341 | + COLORREF crTransparent; | |
| 2342 | +} LAYERPLANEDESCRIPTOR,*PLAYERPLANEDESCRIPTOR,*LPLAYERPLANEDESCRIPTOR; | |
| 2343 | +typedef struct _BLENDFUNCTION { | |
| 2344 | + BYTE BlendOp; | |
| 2345 | + BYTE BlendFlags; | |
| 2346 | + BYTE SourceConstantAlpha; | |
| 2347 | + BYTE AlphaFormat; | |
| 2348 | +} BLENDFUNCTION,*PBLENDFUNCTION,*LPBLENDFUNCTION; | |
| 2349 | +typedef BOOL (CALLBACK *ABORTPROC)(HDC,int); | |
| 2350 | +typedef int (CALLBACK *MFENUMPROC)(HDC,HANDLETABLE*,METARECORD*,int,LPARAM); | |
| 2351 | +typedef int (CALLBACK *ENHMFENUMPROC)(HDC,HANDLETABLE*,ENHMETARECORD*,int,LPARAM); | |
| 2352 | +typedef int (CALLBACK *OLDFONTENUMPROCA)(const LOGFONTA*,const TEXTMETRICA*,DWORD,LPARAM); | |
| 2353 | +typedef int (CALLBACK *OLDFONTENUMPROCW)(const LOGFONTW*,const TEXTMETRICW*,DWORD,LPARAM); | |
| 2354 | +typedef OLDFONTENUMPROCA FONTENUMPROCA; | |
| 2355 | +typedef OLDFONTENUMPROCW FONTENUMPROCW; | |
| 2356 | +typedef int (CALLBACK *ICMENUMPROCA)(LPSTR,LPARAM); | |
| 2357 | +typedef int (CALLBACK *ICMENUMPROCW)(LPWSTR,LPARAM); | |
| 2358 | +typedef void (CALLBACK *GOBJENUMPROC)(LPVOID,LPARAM); | |
| 2359 | +typedef void (CALLBACK *LINEDDAPROC)(int,int,LPARAM); | |
| 2360 | +typedef UINT (CALLBACK *LPFNDEVMODE)(HWND,HMODULE,LPDEVMODEA,LPSTR,LPSTR,LPDEVMODEA,LPSTR,UINT); | |
| 2361 | +typedef DWORD (CALLBACK *LPFNDEVCAPS)(LPSTR,LPSTR,UINT,LPSTR,LPDEVMODEA); | |
| 2362 | + | |
| 2363 | + | |
| 2364 | +#define RGB(r,g,b) ((DWORD)(((BYTE)(r)|((WORD)(g)<<8))|(((DWORD)(BYTE)(b))<<16))) | |
| 2365 | +#define MAKEPOINTS(l) (*((POINTS*)&(l))) | |
| 2366 | +#define MAKEROP4(f,b) (DWORD)((((b)<<8)&0xFF000000)|(f)) | |
| 2367 | +#define PALETTEINDEX(i) ((0x01000000|(COLORREF)(WORD)(i))) | |
| 2368 | +#define PALETTERGB(r,g,b) (0x02000000|RGB(r,g,b)) | |
| 2369 | +int WINAPI AbortDoc(HDC); | |
| 2370 | +BOOL WINAPI AbortPath(HDC); | |
| 2371 | +int WINAPI AddFontResourceA(LPCSTR); | |
| 2372 | +int WINAPI AddFontResourceW(LPCWSTR); | |
| 2373 | +BOOL WINAPI AngleArc(HDC,int,int,DWORD,FLOAT,FLOAT); | |
| 2374 | +BOOL WINAPI AnimatePalette(HPALETTE,UINT,UINT,const PALETTEENTRY*); | |
| 2375 | +BOOL WINAPI Arc(HDC,int,int,int,int,int,int,int,int); | |
| 2376 | +BOOL WINAPI ArcTo(HDC,int,int,int,int,int,int,int,int); | |
| 2377 | +BOOL WINAPI BeginPath(HDC); | |
| 2378 | +BOOL WINAPI BitBlt(HDC,int,int,int,int,HDC,int,int,DWORD); | |
| 2379 | +BOOL WINAPI CancelDC(HDC); | |
| 2380 | +BOOL WINAPI CheckColorsInGamut(HDC,PVOID,PVOID,DWORD); | |
| 2381 | +BOOL WINAPI Chord(HDC,int,int,int,int,int,int,int,int); | |
| 2382 | +int WINAPI ChoosePixelFormat(HDC,CONST PIXELFORMATDESCRIPTOR*); | |
| 2383 | +HENHMETAFILE WINAPI CloseEnhMetaFile(HDC); | |
| 2384 | +BOOL WINAPI CloseFigure(HDC); | |
| 2385 | +HMETAFILE WINAPI CloseMetaFile(HDC); | |
| 2386 | +BOOL WINAPI ColorMatchToTarget(HDC,HDC,DWORD); | |
| 2387 | +int WINAPI CombineRgn(HRGN,HRGN,HRGN,int); | |
| 2388 | +BOOL WINAPI CombineTransform(LPXFORM,const XFORM*,const XFORM*); | |
| 2389 | +HENHMETAFILE WINAPI CopyEnhMetaFileA(HENHMETAFILE,LPCSTR); | |
| 2390 | +HENHMETAFILE WINAPI CopyEnhMetaFileW(HENHMETAFILE,LPCWSTR); | |
| 2391 | +HMETAFILE WINAPI CopyMetaFileA(HMETAFILE,LPCSTR); | |
| 2392 | +HMETAFILE WINAPI CopyMetaFileW(HMETAFILE,LPCWSTR); | |
| 2393 | +HBITMAP WINAPI CreateBitmap(int,int,UINT,UINT,PCVOID); | |
| 2394 | +HBITMAP WINAPI CreateBitmapIndirect(const BITMAP*); | |
| 2395 | +HBRUSH WINAPI CreateBrushIndirect(const LOGBRUSH*); | |
| 2396 | +HCOLORSPACE WINAPI CreateColorSpaceA(LPLOGCOLORSPACEA); | |
| 2397 | +HCOLORSPACE WINAPI CreateColorSpaceW(LPLOGCOLORSPACEW); | |
| 2398 | +HBITMAP WINAPI CreateCompatibleBitmap(HDC,int,int); | |
| 2399 | +HDC WINAPI CreateCompatibleDC(HDC); | |
| 2400 | +HDC WINAPI CreateDCA(LPCSTR,LPCSTR,LPCSTR,const DEVMODEA*); | |
| 2401 | +HDC WINAPI CreateDCW(LPCWSTR,LPCWSTR,LPCWSTR,const DEVMODEW*); | |
| 2402 | +HBITMAP WINAPI CreateDIBitmap(HDC,const BITMAPINFOHEADER*,DWORD,PCVOID,const BITMAPINFO*,UINT); | |
| 2403 | +HBRUSH WINAPI CreateDIBPatternBrush(HGLOBAL,UINT); | |
| 2404 | +HBRUSH WINAPI CreateDIBPatternBrushPt(PCVOID,UINT); | |
| 2405 | +HBITMAP WINAPI CreateDIBSection(HDC,const BITMAPINFO*,UINT,void**,HANDLE,DWORD); | |
| 2406 | +HBITMAP WINAPI CreateDiscardableBitmap(HDC,int,int); | |
| 2407 | +HRGN WINAPI CreateEllipticRgn(int,int,int,int); | |
| 2408 | +HRGN WINAPI CreateEllipticRgnIndirect(LPCRECT); | |
| 2409 | +HDC WINAPI CreateEnhMetaFileA(HDC,LPCSTR,LPCRECT,LPCSTR); | |
| 2410 | +HDC WINAPI CreateEnhMetaFileW(HDC,LPCWSTR,LPCRECT,LPCWSTR); | |
| 2411 | +HFONT WINAPI CreateFontA(int,int,int,int,int,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPCSTR); | |
| 2412 | +HFONT WINAPI CreateFontW(int,int,int,int,int,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPCWSTR); | |
| 2413 | +HFONT WINAPI CreateFontIndirectA(const LOGFONTA*); | |
| 2414 | +HFONT WINAPI CreateFontIndirectW(const LOGFONTW*); | |
| 2415 | +HPALETTE WINAPI CreateHalftonePalette(HDC); | |
| 2416 | +HBRUSH WINAPI CreateHatchBrush(int,COLORREF); | |
| 2417 | +HDC WINAPI CreateICA(LPCSTR,LPCSTR,LPCSTR,const DEVMODEA*); | |
| 2418 | +HDC WINAPI CreateICW(LPCWSTR,LPCWSTR,LPCWSTR,const DEVMODEW*); | |
| 2419 | +HDC WINAPI CreateMetaFileA(LPCSTR); | |
| 2420 | +HDC WINAPI CreateMetaFileW(LPCWSTR); | |
| 2421 | +HPALETTE WINAPI CreatePalette(const LOGPALETTE*); | |
| 2422 | +HBRUSH WINAPI CreatePatternBrush(HBITMAP); | |
| 2423 | +HPEN WINAPI CreatePen(int,int,COLORREF); | |
| 2424 | +HPEN WINAPI CreatePenIndirect(const LOGPEN*); | |
| 2425 | +HRGN WINAPI CreatePolygonRgn(const POINT*,int,int); | |
| 2426 | +HRGN WINAPI CreatePolyPolygonRgn(const POINT*,const INT*,int,int); | |
| 2427 | +HRGN WINAPI CreateRectRgn(int,int,int,int); | |
| 2428 | +HRGN WINAPI CreateRectRgnIndirect(LPCRECT); | |
| 2429 | +HRGN WINAPI CreateRoundRectRgn(int,int,int,int,int,int); | |
| 2430 | +BOOL WINAPI CreateScalableFontResourceA(DWORD,LPCSTR,LPCSTR,LPCSTR); | |
| 2431 | +BOOL WINAPI CreateScalableFontResourceW(DWORD,LPCWSTR,LPCWSTR,LPCWSTR); | |
| 2432 | +HBRUSH WINAPI CreateSolidBrush(COLORREF); | |
| 2433 | +BOOL WINAPI DeleteColorSpace(HCOLORSPACE); | |
| 2434 | +BOOL WINAPI DeleteDC(HDC); | |
| 2435 | +BOOL WINAPI DeleteEnhMetaFile(HENHMETAFILE); | |
| 2436 | +BOOL WINAPI DeleteMetaFile(HMETAFILE); | |
| 2437 | +BOOL WINAPI DeleteObject(HGDIOBJ); | |
| 2438 | +int WINAPI DescribePixelFormat(HDC,int,UINT,LPPIXELFORMATDESCRIPTOR); | |
| 2439 | +DWORD WINAPI DeviceCapabilitiesA(LPCSTR,LPCSTR,WORD,LPSTR,const DEVMODEA*); | |
| 2440 | +DWORD WINAPI DeviceCapabilitiesW(LPCWSTR,LPCWSTR,WORD,LPWSTR,const DEVMODEW*); | |
| 2441 | +BOOL WINAPI DPtoLP(HDC,LPPOINT,int); | |
| 2442 | +int WINAPI DrawEscape(HDC,int,int,LPCSTR); | |
| 2443 | +BOOL WINAPI Ellipse(HDC,int,int,int,int); | |
| 2444 | +int WINAPI EndDoc(HDC); | |
| 2445 | +int WINAPI EndPage(HDC); | |
| 2446 | +BOOL WINAPI EndPath(HDC); | |
| 2447 | +BOOL WINAPI EnumEnhMetaFile(HDC,HENHMETAFILE,ENHMFENUMPROC,PVOID,LPCRECT); | |
| 2448 | +int WINAPI EnumFontFamiliesA(HDC,LPCSTR,FONTENUMPROCA,LPARAM); | |
| 2449 | +int WINAPI EnumFontFamiliesW(HDC,LPCWSTR,FONTENUMPROCW,LPARAM); | |
| 2450 | +int WINAPI EnumFontFamiliesExA(HDC,PLOGFONTA,FONTENUMPROCA,LPARAM,DWORD); | |
| 2451 | +int WINAPI EnumFontFamiliesExW(HDC,PLOGFONTW,FONTENUMPROCW,LPARAM,DWORD); | |
| 2452 | +int WINAPI EnumFontsA(HDC,LPCSTR,FONTENUMPROCA,LPARAM); | |
| 2453 | +int WINAPI EnumFontsW(HDC,LPCWSTR,FONTENUMPROCA,LPARAM); | |
| 2454 | +int WINAPI EnumICMProfilesA(HDC,ICMENUMPROCA,LPARAM); | |
| 2455 | +int WINAPI EnumICMProfilesW(HDC,ICMENUMPROCW,LPARAM); | |
| 2456 | +BOOL WINAPI EnumMetaFile(HDC,HMETAFILE,MFENUMPROC,LPARAM); | |
| 2457 | +int WINAPI EnumObjects(HDC,int,GOBJENUMPROC,LPARAM); | |
| 2458 | +BOOL WINAPI EqualRgn(HRGN,HRGN); | |
| 2459 | +int WINAPI Escape(HDC,int,int,LPCSTR,PVOID); | |
| 2460 | +int WINAPI ExcludeClipRect(HDC,int,int,int,int); | |
| 2461 | +int WINAPI ExcludeUpdateRgn(HDC,HWND); | |
| 2462 | +HPEN WINAPI ExtCreatePen(DWORD,DWORD,const LOGBRUSH*,DWORD,const DWORD*); | |
| 2463 | +HRGN WINAPI ExtCreateRegion(const XFORM*,DWORD,const RGNDATA*); | |
| 2464 | +int WINAPI ExtEscape(HDC,int,int,LPCSTR,int,LPSTR); | |
| 2465 | +BOOL WINAPI ExtFloodFill(HDC,int,int,COLORREF,UINT); | |
| 2466 | +int WINAPI ExtSelectClipRgn(HDC,HRGN,int); | |
| 2467 | +BOOL WINAPI ExtTextOutA(HDC,int,int,UINT,LPCRECT,LPCSTR,UINT,const INT*); | |
| 2468 | +BOOL WINAPI ExtTextOutW(HDC,int,int,UINT,LPCRECT,LPCWSTR,UINT,const INT*); | |
| 2469 | +BOOL WINAPI FillPath(HDC); | |
| 2470 | +int WINAPI FillRect(HDC,LPCRECT,HBRUSH); | |
| 2471 | +int WINAPI FillRgn(HDC,HRGN,HBRUSH); | |
| 2472 | +BOOL WINAPI FixBrushOrgEx(HDC,int,int,LPPOINT); | |
| 2473 | +BOOL WINAPI FlattenPath(HDC); | |
| 2474 | +BOOL WINAPI FloodFill(HDC,int,int,COLORREF); | |
| 2475 | +BOOL WINAPI GdiComment(HDC,UINT,const BYTE*); | |
| 2476 | +BOOL WINAPI GdiFlush(void); | |
| 2477 | +DWORD WINAPI GdiGetBatchLimit(void); | |
| 2478 | +DWORD WINAPI GdiSetBatchLimit(DWORD); | |
| 2479 | +#define GetCValue(cmyk) ((BYTE)(cmyk)) | |
| 2480 | +#define GetMValue(cmyk) ((BYTE)((cmyk)>> 8)) | |
| 2481 | +#define GetYValue(cmyk) ((BYTE)((cmyk)>>16)) | |
| 2482 | +#define GetKValue(cmyk) ((BYTE)((cmyk)>>24)) | |
| 2483 | +#define CMYK(c,m,y,k) ((COLORREF)((((BYTE)(c)|((WORD)((BYTE)(m))<<8))|(((DWORD)(BYTE)(y))<<16))|(((DWORD)(BYTE)(k))<<24))) | |
| 2484 | +#define GetRValue(c) ((BYTE)(c)) | |
| 2485 | +#define GetGValue(c) ((BYTE)(((WORD)(c))>>8)) | |
| 2486 | +#define GetBValue(c) ((BYTE)((c)>>16)) | |
| 2487 | +int WINAPI GetArcDirection(HDC); | |
| 2488 | +BOOL WINAPI GetAspectRatioFilterEx(HDC,LPSIZE); | |
| 2489 | +LONG WINAPI GetBitmapBits(HBITMAP,LONG,PVOID); | |
| 2490 | +BOOL WINAPI GetBitmapDimensionEx(HBITMAP,LPSIZE); | |
| 2491 | +COLORREF WINAPI GetBkColor(HDC); | |
| 2492 | +int WINAPI GetBkMode(HDC); | |
| 2493 | +UINT WINAPI GetBoundsRect(HDC,LPRECT,UINT); | |
| 2494 | +BOOL WINAPI GetBrushOrgEx(HDC,LPPOINT); | |
| 2495 | +BOOL WINAPI GetCharABCWidthsA(HDC,UINT,UINT,LPABC); | |
| 2496 | +BOOL WINAPI GetCharABCWidthsW(HDC,UINT,UINT,LPABC); | |
| 2497 | +BOOL WINAPI GetCharABCWidthsFloatA(HDC,UINT,UINT,LPABCFLOAT); | |
| 2498 | +BOOL WINAPI GetCharABCWidthsFloatW(HDC,UINT,UINT,LPABCFLOAT); | |
| 2499 | +DWORD WINAPI GetCharacterPlacementA(HDC,LPCSTR,int,int,LPGCP_RESULTSA,DWORD); | |
| 2500 | +DWORD WINAPI GetCharacterPlacementW(HDC,LPCWSTR,int,int,LPGCP_RESULTSW,DWORD); | |
| 2501 | +BOOL WINAPI GetCharWidth32A(HDC,UINT,UINT,LPINT); | |
| 2502 | +BOOL WINAPI GetCharWidth32W(HDC,UINT,UINT,LPINT); | |
| 2503 | +BOOL WINAPI GetCharWidthA(HDC,UINT,UINT,LPINT); | |
| 2504 | +BOOL WINAPI GetCharWidthW(HDC,UINT,UINT,LPINT); | |
| 2505 | +BOOL WINAPI GetCharWidthFloatA(HDC,UINT,UINT,PFLOAT); | |
| 2506 | +BOOL WINAPI GetCharWidthFloatW(HDC,UINT,UINT,PFLOAT); | |
| 2507 | +int WINAPI GetClipBox(HDC,LPRECT); | |
| 2508 | +int WINAPI GetClipRgn(HDC,HRGN); | |
| 2509 | +BOOL WINAPI GetColorAdjustment(HDC,LPCOLORADJUSTMENT); | |
| 2510 | +HANDLE WINAPI GetColorSpace(HDC); | |
| 2511 | +HGDIOBJ WINAPI GetCurrentObject(HDC,UINT); | |
| 2512 | +BOOL WINAPI GetCurrentPositionEx(HDC,LPPOINT); | |
| 2513 | +HCURSOR WINAPI GetCursor(void); | |
| 2514 | +BOOL WINAPI GetDCOrgEx(HDC,LPPOINT); | |
| 2515 | +int WINAPI GetDeviceCaps(HDC,int); | |
| 2516 | +BOOL WINAPI GetDeviceGammaRamp(HDC,PVOID); | |
| 2517 | +UINT WINAPI GetDIBColorTable(HDC,UINT,UINT,RGBQUAD*); | |
| 2518 | +int WINAPI GetDIBits(HDC,HBITMAP,UINT,UINT,PVOID,LPBITMAPINFO,UINT); | |
| 2519 | +HENHMETAFILE WINAPI GetEnhMetaFileA(LPCSTR); | |
| 2520 | +HENHMETAFILE WINAPI GetEnhMetaFileW(LPCWSTR); | |
| 2521 | +UINT WINAPI GetEnhMetaFileDescriptionA(HENHMETAFILE,UINT,LPSTR); | |
| 2522 | +UINT WINAPI GetEnhMetaFileDescriptionW(HENHMETAFILE,UINT,LPWSTR); | |
| 2523 | +UINT WINAPI GetEnhMetaFileHeader(HENHMETAFILE,UINT,LPENHMETAHEADER); | |
| 2524 | +UINT WINAPI GetEnhMetaFilePaletteEntries(HENHMETAFILE,UINT,LPPALETTEENTRY); | |
| 2525 | +UINT WINAPI GetEnhMetaFilePixelFormat(HENHMETAFILE,DWORD,PIXELFORMATDESCRIPTOR*); | |
| 2526 | +DWORD WINAPI GetFontData(HDC,DWORD,DWORD,PVOID,DWORD); | |
| 2527 | +DWORD WINAPI GetFontLanguageInfo(HDC); | |
| 2528 | +DWORD WINAPI GetGlyphOutlineA(HDC,UINT,UINT,LPGLYPHMETRICS,DWORD,PVOID,const MAT2*); | |
| 2529 | +DWORD WINAPI GetGlyphOutlineW(HDC,UINT,UINT,LPGLYPHMETRICS,DWORD,PVOID,const MAT2*); | |
| 2530 | +int WINAPI GetGraphicsMode(HDC); | |
| 2531 | +BOOL WINAPI GetICMProfileA(HDC,DWORD,LPSTR); | |
| 2532 | +BOOL WINAPI GetICMProfileW(HDC,DWORD,LPWSTR); | |
| 2533 | +DWORD WINAPI GetKerningPairsA(HDC,DWORD,LPKERNINGPAIR); | |
| 2534 | +DWORD WINAPI GetKerningPairsW(HDC,DWORD,LPKERNINGPAIR); | |
| 2535 | +BOOL WINAPI GetLogColorSpaceA(HCOLORSPACE,LPLOGCOLORSPACEA,DWORD); | |
| 2536 | +BOOL WINAPI GetLogColorSpaceW(HCOLORSPACE,LPLOGCOLORSPACEW,DWORD); | |
| 2537 | +int WINAPI GetMapMode(HDC); | |
| 2538 | +HMETAFILE WINAPI GetMetaFileA(LPCSTR); | |
| 2539 | +HMETAFILE WINAPI GetMetaFileW(LPCWSTR); | |
| 2540 | +UINT WINAPI GetMetaFileBitsEx(HMETAFILE,UINT,PVOID); | |
| 2541 | +int WINAPI GetMetaRgn(HDC,HRGN); | |
| 2542 | +BOOL WINAPI GetMiterLimit(HDC,PFLOAT); | |
| 2543 | +COLORREF WINAPI GetNearestColor(HDC,COLORREF); | |
| 2544 | +UINT WINAPI GetNearestPaletteIndex(HPALETTE,COLORREF); | |
| 2545 | +int WINAPI GetObjectA(HGDIOBJ,int,PVOID); | |
| 2546 | +int WINAPI GetObjectW(HGDIOBJ,int,PVOID); | |
| 2547 | +DWORD WINAPI GetObjectType(HGDIOBJ); | |
| 2548 | +UINT WINAPI GetOutlineTextMetricsA(HDC,UINT,LPOUTLINETEXTMETRICA); | |
| 2549 | +UINT WINAPI GetOutlineTextMetricsW(HDC,UINT,LPOUTLINETEXTMETRICW); | |
| 2550 | +UINT WINAPI GetPaletteEntries(HPALETTE,UINT,UINT,LPPALETTEENTRY); | |
| 2551 | +int WINAPI GetPath(HDC,LPPOINT,PBYTE,int); | |
| 2552 | +COLORREF WINAPI GetPixel(HDC,int,int); | |
| 2553 | +int WINAPI GetPixelFormat(HDC); | |
| 2554 | +int WINAPI GetPolyFillMode(HDC); | |
| 2555 | +BOOL WINAPI GetRasterizerCaps(LPRASTERIZER_STATUS,UINT); | |
| 2556 | +int WINAPI GetRandomRgn (HDC,HRGN,INT); | |
| 2557 | +DWORD WINAPI GetRegionData(HRGN,DWORD,LPRGNDATA); | |
| 2558 | +int WINAPI GetRgnBox(HRGN,LPRECT); | |
| 2559 | +int WINAPI GetROP2(HDC); | |
| 2560 | +HGDIOBJ WINAPI GetStockObject(int); | |
| 2561 | +int WINAPI GetStretchBltMode(HDC); | |
| 2562 | +UINT WINAPI GetSystemPaletteEntries(HDC,UINT,UINT,LPPALETTEENTRY); | |
| 2563 | +UINT WINAPI GetSystemPaletteUse(HDC); | |
| 2564 | +UINT WINAPI GetTextAlign(HDC); | |
| 2565 | +int WINAPI GetTextCharacterExtra(HDC); | |
| 2566 | +int WINAPI GetTextCharset(HDC); | |
| 2567 | +int WINAPI GetTextCharsetInfo(HDC,LPFONTSIGNATURE,DWORD); | |
| 2568 | +COLORREF WINAPI GetTextColor(HDC); | |
| 2569 | +BOOL WINAPI GetTextExtentExPointA(HDC,LPCSTR,int,int,LPINT,LPINT,LPSIZE); | |
| 2570 | +BOOL WINAPI GetTextExtentExPointW( HDC,LPCWSTR,int,int,LPINT,LPINT,LPSIZE ); | |
| 2571 | +BOOL WINAPI GetTextExtentPointA(HDC,LPCSTR,int,LPSIZE); | |
| 2572 | +BOOL WINAPI GetTextExtentPointW(HDC,LPCWSTR,int,LPSIZE); | |
| 2573 | +BOOL WINAPI GetTextExtentPoint32A(HDC,LPCSTR,int,LPSIZE); | |
| 2574 | +BOOL WINAPI GetTextExtentPoint32W( HDC,LPCWSTR,int,LPSIZE); | |
| 2575 | +int WINAPI GetTextFaceA(HDC,int,LPSTR); | |
| 2576 | +int WINAPI GetTextFaceW(HDC,int,LPWSTR); | |
| 2577 | +BOOL WINAPI GetTextMetricsA(HDC,LPTEXTMETRICA); | |
| 2578 | +BOOL WINAPI GetTextMetricsW(HDC,LPTEXTMETRICW); | |
| 2579 | +BOOL WINAPI GetViewportExtEx(HDC,LPSIZE); | |
| 2580 | +BOOL WINAPI GetViewportOrgEx(HDC,LPPOINT); | |
| 2581 | +BOOL WINAPI GetWindowExtEx(HDC,LPSIZE); | |
| 2582 | +BOOL WINAPI GetWindowOrgEx(HDC,LPPOINT); | |
| 2583 | +UINT WINAPI GetWinMetaFileBits(HENHMETAFILE,UINT,LPBYTE,INT,HDC); | |
| 2584 | +BOOL WINAPI GetWorldTransform(HDC,LPXFORM); | |
| 2585 | +int WINAPI IntersectClipRect(HDC,int,int,int,int); | |
| 2586 | +BOOL WINAPI InvertRgn(HDC,HRGN); | |
| 2587 | +BOOL WINAPI LineDDA(int,int,int,int,LINEDDAPROC,LPARAM); | |
| 2588 | +BOOL WINAPI LineTo(HDC,int,int); | |
| 2589 | +BOOL WINAPI LPtoDP(HDC,LPPOINT,int); | |
| 2590 | +BOOL WINAPI MaskBlt(HDC,int,int,int,int,HDC,int,int,HBITMAP,int,int,DWORD); | |
| 2591 | +BOOL WINAPI ModifyWorldTransform(HDC,const XFORM*,DWORD); | |
| 2592 | +BOOL WINAPI MoveToEx(HDC,int,int,LPPOINT); | |
| 2593 | +int WINAPI OffsetClipRgn(HDC,int,int); | |
| 2594 | +int WINAPI OffsetRgn(HRGN,int,int); | |
| 2595 | +BOOL WINAPI OffsetViewportOrgEx(HDC,int,int,LPPOINT); | |
| 2596 | +BOOL WINAPI OffsetWindowOrgEx(HDC,int,int,LPPOINT); | |
| 2597 | +BOOL WINAPI PaintRgn(HDC,HRGN); | |
| 2598 | +BOOL WINAPI PatBlt(HDC,int,int,int,int,DWORD); | |
| 2599 | +HRGN WINAPI PathToRegion(HDC); | |
| 2600 | +BOOL WINAPI Pie(HDC,int,int,int,int,int,int,int,int); | |
| 2601 | +BOOL WINAPI PlayEnhMetaFile(HDC,HENHMETAFILE,LPCRECT); | |
| 2602 | +BOOL WINAPI PlayEnhMetaFileRecord(HDC,LPHANDLETABLE,const ENHMETARECORD*,UINT); | |
| 2603 | +BOOL WINAPI PlayMetaFile(HDC,HMETAFILE); | |
| 2604 | +BOOL WINAPI PlayMetaFileRecord(HDC,LPHANDLETABLE,LPMETARECORD,UINT); | |
| 2605 | +BOOL WINAPI PlgBlt(HDC,const POINT*,HDC,int,int,int,int,HBITMAP,int,int); | |
| 2606 | +BOOL WINAPI PolyBezier(HDC,const POINT*,DWORD); | |
| 2607 | +BOOL WINAPI PolyBezierTo(HDC,const POINT*,DWORD); | |
| 2608 | +BOOL WINAPI PolyDraw(HDC,const POINT*,const BYTE*,int); | |
| 2609 | +BOOL WINAPI Polygon(HDC,const POINT*,int); | |
| 2610 | +BOOL WINAPI Polyline(HDC,const POINT*,int); | |
| 2611 | +BOOL WINAPI PolylineTo(HDC,const POINT*,DWORD); | |
| 2612 | +BOOL WINAPI PolyPolygon(HDC,const POINT*,const INT*,int); | |
| 2613 | +BOOL WINAPI PolyPolyline(HDC,const POINT*,const DWORD*,DWORD); | |
| 2614 | +BOOL WINAPI PolyTextOutA(HDC,const POLYTEXTA*,int); | |
| 2615 | +BOOL WINAPI PolyTextOutW(HDC,const POLYTEXTW*,int); | |
| 2616 | +BOOL WINAPI PtInRegion(HRGN,int,int); | |
| 2617 | +BOOL WINAPI PtVisible(HDC,int,int); | |
| 2618 | +UINT WINAPI RealizePalette(HDC); | |
| 2619 | +BOOL WINAPI Rectangle(HDC,int,int,int,int); | |
| 2620 | +BOOL WINAPI RectInRegion(HRGN,LPCRECT); | |
| 2621 | +BOOL WINAPI RectVisible(HDC,LPCRECT); | |
| 2622 | +BOOL WINAPI RemoveFontResourceA(LPCSTR); | |
| 2623 | +BOOL WINAPI RemoveFontResourceW(LPCWSTR); | |
| 2624 | +HDC WINAPI ResetDCA(HDC,const DEVMODEA*); | |
| 2625 | +HDC WINAPI ResetDCW(HDC,const DEVMODEW*); | |
| 2626 | +BOOL WINAPI ResizePalette(HPALETTE,UINT); | |
| 2627 | +BOOL WINAPI RestoreDC(HDC,int); | |
| 2628 | +BOOL WINAPI RoundRect(HDC,int,int,int,int,int,int); | |
| 2629 | +int WINAPI SaveDC(HDC); | |
| 2630 | +BOOL WINAPI ScaleViewportExtEx(HDC,int,int,int,int,LPSIZE); | |
| 2631 | +BOOL WINAPI ScaleWindowExtEx(HDC,int,int,int,int,LPSIZE); | |
| 2632 | +BOOL WINAPI SelectClipPath(HDC,int); | |
| 2633 | +int WINAPI SelectClipRgn(HDC,HRGN); | |
| 2634 | +HGDIOBJ WINAPI SelectObject(HDC,HGDIOBJ); | |
| 2635 | +HPALETTE WINAPI SelectPalette(HDC,HPALETTE,BOOL); | |
| 2636 | +int WINAPI SetAbortProc(HDC,ABORTPROC); | |
| 2637 | +int WINAPI SetArcDirection(HDC,int); | |
| 2638 | +LONG WINAPI SetBitmapBits(HBITMAP,DWORD,PCVOID); | |
| 2639 | +BOOL WINAPI SetBitmapDimensionEx(HBITMAP,int,int,LPSIZE); | |
| 2640 | +COLORREF WINAPI SetBkColor(HDC,COLORREF); | |
| 2641 | +int WINAPI SetBkMode(HDC,int); | |
| 2642 | +UINT WINAPI SetBoundsRect(HDC,LPCRECT,UINT); | |
| 2643 | +BOOL WINAPI SetBrushOrgEx(HDC,int,int,LPPOINT); | |
| 2644 | +BOOL WINAPI SetColorAdjustment(HDC,const COLORADJUSTMENT*); | |
| 2645 | +BOOL WINAPI SetColorSpace(HDC,HCOLORSPACE); | |
| 2646 | +BOOL WINAPI SetDeviceGammaRamp(HDC,PVOID); | |
| 2647 | +UINT WINAPI SetDIBColorTable(HDC,UINT,UINT,const RGBQUAD*); | |
| 2648 | +int WINAPI SetDIBits(HDC,HBITMAP,UINT,UINT,PCVOID,const BITMAPINFO*,UINT); | |
| 2649 | +int WINAPI SetDIBitsToDevice(HDC,int,int,DWORD,DWORD,int,int,UINT,UINT,PCVOID,const BITMAPINFO*,UINT); | |
| 2650 | +HENHMETAFILE WINAPI SetEnhMetaFileBits(UINT,const BYTE*); | |
| 2651 | +int WINAPI SetGraphicsMode(HDC,int); | |
| 2652 | +int WINAPI SetICMMode(HDC,int); | |
| 2653 | +BOOL WINAPI SetICMProfileA(HDC,LPSTR); | |
| 2654 | +BOOL WINAPI SetICMProfileW(HDC,LPWSTR); | |
| 2655 | +int WINAPI SetMapMode(HDC,int); | |
| 2656 | +DWORD WINAPI SetMapperFlags(HDC,DWORD); | |
| 2657 | +HMETAFILE WINAPI SetMetaFileBitsEx(UINT,const BYTE *); | |
| 2658 | +int WINAPI SetMetaRgn(HDC); | |
| 2659 | +BOOL WINAPI SetMiterLimit(HDC,FLOAT,PFLOAT); | |
| 2660 | +UINT WINAPI SetPaletteEntries(HPALETTE,UINT,UINT,const PALETTEENTRY*); | |
| 2661 | +COLORREF WINAPI SetPixel(HDC,int,int,COLORREF); | |
| 2662 | +BOOL WINAPI SetPixelFormat(HDC,int,const PIXELFORMATDESCRIPTOR*); | |
| 2663 | +BOOL WINAPI SetPixelV(HDC,int,int,COLORREF); | |
| 2664 | +int WINAPI SetPolyFillMode(HDC,int); | |
| 2665 | +BOOL WINAPI SetRectRgn(HRGN,int,int,int,int); | |
| 2666 | +int WINAPI SetROP2(HDC,int); | |
| 2667 | +int WINAPI SetStretchBltMode(HDC,int); | |
| 2668 | +UINT WINAPI SetSystemPaletteUse(HDC,UINT); | |
| 2669 | +UINT WINAPI SetTextAlign(HDC,UINT); | |
| 2670 | +int WINAPI SetTextCharacterExtra(HDC,int); | |
| 2671 | +COLORREF WINAPI SetTextColor(HDC,COLORREF); | |
| 2672 | +BOOL WINAPI SetTextJustification(HDC,int,int); | |
| 2673 | +BOOL WINAPI SetViewportExtEx(HDC,int,int,LPSIZE); | |
| 2674 | +BOOL WINAPI SetViewportOrgEx(HDC,int,int,LPPOINT); | |
| 2675 | +BOOL WINAPI SetWindowExtEx(HDC,int,int,LPSIZE); | |
| 2676 | +BOOL WINAPI SetWindowOrgEx(HDC,int,int,LPPOINT); | |
| 2677 | +HENHMETAFILE WINAPI SetWinMetaFileBits(UINT,const BYTE*,HDC,const METAFILEPICT*); | |
| 2678 | +BOOL WINAPI SetWorldTransform(HDC,const XFORM *); | |
| 2679 | +int WINAPI StartDocA(HDC,const DOCINFOA*); | |
| 2680 | +int WINAPI StartDocW(HDC,const DOCINFOW*); | |
| 2681 | +int WINAPI StartPage(HDC); | |
| 2682 | +BOOL WINAPI StretchBlt(HDC,int,int,int,int,HDC,int,int,int,int,DWORD); | |
| 2683 | +int WINAPI StretchDIBits(HDC,int,int,int,int,int,int,int,int,const VOID *,const BITMAPINFO *,UINT,DWORD); | |
| 2684 | +BOOL WINAPI StrokeAndFillPath(HDC); | |
| 2685 | +BOOL WINAPI StrokePath(HDC); | |
| 2686 | +BOOL WINAPI SwapBuffers(HDC); | |
| 2687 | +BOOL WINAPI TextOutA(HDC,int,int,LPCSTR,int); | |
| 2688 | +BOOL WINAPI TextOutW(HDC,int,int,LPCWSTR,int); | |
| 2689 | +BOOL WINAPI TranslateCharsetInfo(PDWORD,LPCHARSETINFO,DWORD); | |
| 2690 | +BOOL WINAPI UnrealizeObject(HGDIOBJ); | |
| 2691 | +BOOL WINAPI UpdateColors(HDC); | |
| 2692 | +BOOL WINAPI UpdateICMRegKeyA(DWORD,DWORD,LPSTR,UINT); | |
| 2693 | +BOOL WINAPI UpdateICMRegKeyW(DWORD,DWORD,LPWSTR,UINT); | |
| 2694 | +BOOL WINAPI WidenPath(HDC); | |
| 2695 | +BOOL WINAPI wglCopyContext(HGLRC,HGLRC,UINT); | |
| 2696 | +HGLRC WINAPI wglCreateContext(HDC); | |
| 2697 | +HGLRC WINAPI wglCreateLayerContext(HDC,int); | |
| 2698 | +BOOL WINAPI wglDeleteContext(HGLRC); | |
| 2699 | +BOOL WINAPI wglDescribeLayerPlane(HDC,int,int,UINT,LPLAYERPLANEDESCRIPTOR); | |
| 2700 | +HGLRC WINAPI wglGetCurrentContext(void); | |
| 2701 | +HDC WINAPI wglGetCurrentDC(void); | |
| 2702 | +int WINAPI wglGetLayerPaletteEntries(HDC,int,int,int,COLORREF*); | |
| 2703 | +PROC WINAPI wglGetProcAddress(LPCSTR); | |
| 2704 | +BOOL WINAPI wglMakeCurrent(HDC,HGLRC); | |
| 2705 | +BOOL WINAPI wglRealizeLayerPalette(HDC,int,BOOL); | |
| 2706 | +int WINAPI wglSetLayerPaletteEntries(HDC,int,int,int,const COLORREF*); | |
| 2707 | +BOOL WINAPI wglShareLists(HGLRC,HGLRC); | |
| 2708 | +BOOL WINAPI wglSwapLayerBuffers(HDC,UINT); | |
| 2709 | +BOOL WINAPI wglUseFontBitmapsA(HDC,DWORD,DWORD,DWORD); | |
| 2710 | +BOOL WINAPI wglUseFontBitmapsW(HDC,DWORD,DWORD,DWORD); | |
| 2711 | +BOOL WINAPI wglUseFontOutlinesA(HDC,DWORD,DWORD,DWORD,FLOAT,FLOAT,int,LPGLYPHMETRICSFLOAT); | |
| 2712 | +BOOL WINAPI wglUseFontOutlinesW(HDC,DWORD,DWORD,DWORD,FLOAT,FLOAT,int,LPGLYPHMETRICSFLOAT); | |
| 2713 | + | |
| 2714 | +#ifdef UNICODE | |
| 2715 | +typedef WCHAR BCHAR; | |
| 2716 | +typedef DOCINFOW DOCINFO, *LPDOCINFO; | |
| 2717 | +typedef LOGFONTW LOGFONT,*PLOGFONT,*LPLOGFONT; | |
| 2718 | +typedef TEXTMETRICW TEXTMETRIC,*PTEXTMETRIC,*LPTEXTMETRIC; | |
| 2719 | +#define ICMENUMPROC ICMENUMPROCW | |
| 2720 | +#define FONTENUMPROC FONTENUMPROCW | |
| 2721 | +typedef DEVMODEW DEVMODE,*PDEVMODE,*LPDEVMODE; | |
| 2722 | +typedef EXTLOGFONTW EXTLOGFONT,*PEXTLOGFONT,*LPEXTLOGFONT; | |
| 2723 | +typedef GCP_RESULTSW GCP_RESULTS,*LPGCP_RESULTS; | |
| 2724 | +typedef OUTLINETEXTMETRICW OUTLINETEXTMETRIC,*POUTLINETEXTMETRIC,*LPOUTLINETEXTMETRIC; | |
| 2725 | +typedef POLYTEXTW POLYTEXT; | |
| 2726 | +typedef LOGCOLORSPACEW LOGCOLORSPACE,*LPLOGCOLORSPACE; | |
| 2727 | +typedef NEWTEXTMETRICW NEWTEXTMETRIC,*PNEWTEXTMETRIC,*LPNEWTEXTMETRIC; | |
| 2728 | +typedef NEWTEXTMETRICEXW NEWTEXTMETRICEX; | |
| 2729 | +typedef ENUMLOGFONTW ENUMLOGFONT,*LPENUMLOGFONT; | |
| 2730 | +typedef ENUMLOGFONTEXW ENUMLOGFONTEX,*LPENUMLOGFONTEX; | |
| 2731 | +#define AddFontResource AddFontResourceW | |
| 2732 | +#define CopyEnhMetaFile CopyEnhMetaFileW | |
| 2733 | +#define CopyMetaFile CopyMetaFileW | |
| 2734 | +#define CreateDC CreateDCW | |
| 2735 | +#define CreateEnhMetaFile CreateEnhMetaFileW | |
| 2736 | +#define CreateFont CreateFontW | |
| 2737 | +#define CreateFontIndirect CreateFontIndirectW | |
| 2738 | +#define CreateIC CreateICW | |
| 2739 | +#define CreateMetaFile CreateMetaFileW | |
| 2740 | +#define CreateScalableFontResource CreateScalableFontResourceW | |
| 2741 | +#define DeviceCapabilities DeviceCapabilitiesW | |
| 2742 | +#define EnumFontFamilies EnumFontFamiliesW | |
| 2743 | +#define EnumFontFamiliesEx EnumFontFamiliesExW | |
| 2744 | +#define EnumFonts EnumFontsW | |
| 2745 | +#define EnumICMProfiles EnumICMProfilesW | |
| 2746 | +#define ExtTextOut ExtTextOutW | |
| 2747 | +#define GetCharABCWidthsFloat GetCharABCWidthsFloatW | |
| 2748 | +#define GetCharABCWidths GetCharABCWidthsW | |
| 2749 | +#define GetCharacterPlacement GetCharacterPlacementW | |
| 2750 | +#define GetCharWidth32 GetCharWidth32W | |
| 2751 | +#define GetCharWidthFloat GetCharWidthFloatW | |
| 2752 | +#define GetCharWidth GetCharWidthW | |
| 2753 | +#define GetEnhMetaFile GetEnhMetaFileW | |
| 2754 | +#define GetEnhMetaFileDescription GetEnhMetaFileDescriptionW | |
| 2755 | +#define GetGlyphOutline GetGlyphOutlineW | |
| 2756 | +#define GetICMProfile GetICMProfileW | |
| 2757 | +#define GetKerningPairs GetKerningPairsW | |
| 2758 | +#define GetLogColorSpace GetLogColorSpaceW | |
| 2759 | +#define GetMetaFile GetMetaFileW | |
| 2760 | +#define GetObject GetObjectW | |
| 2761 | +#define GetOutlineTextMetrics GetOutlineTextMetricsW | |
| 2762 | +#define GetTextExtentPoint GetTextExtentPointW | |
| 2763 | +#define GetTextExtentExPoint GetTextExtentExPointW | |
| 2764 | +#define GetTextExtentPoint32 GetTextExtentPoint32W | |
| 2765 | +#define GetTextFace GetTextFaceW | |
| 2766 | +#define GetTextMetrics GetTextMetricsW | |
| 2767 | +#define PolyTextOut PolyTextOutW | |
| 2768 | +#define RemoveFontResource RemoveFontResourceW | |
| 2769 | +#define ResetDC ResetDCW | |
| 2770 | +#define SetICMProfile SetICMProfileW | |
| 2771 | +#define StartDoc StartDocW | |
| 2772 | +#define TextOut TextOutW | |
| 2773 | +#define UpdateICMRegKey UpdateICMRegKeyW | |
| 2774 | +#define wglUseFontBitmaps wglUseFontBitmapsW | |
| 2775 | +#define wglUseFontOutlines wglUseFontOutlinesW | |
| 2776 | +#else | |
| 2777 | +typedef BYTE BCHAR; | |
| 2778 | +typedef DOCINFOA DOCINFO, *LPDOCINFO; | |
| 2779 | +typedef LOGFONTA LOGFONT,*PLOGFONT,*LPLOGFONT; | |
| 2780 | +typedef TEXTMETRICA TEXTMETRIC,*PTEXTMETRIC,*LPTEXTMETRIC; | |
| 2781 | +#define ICMENUMPROC ICMENUMPROCA | |
| 2782 | +#define FONTENUMPROC FONTENUMPROCA | |
| 2783 | +typedef DEVMODEA DEVMODE,*PDEVMODE,*LPDEVMODE; | |
| 2784 | +typedef EXTLOGFONTA EXTLOGFONT,*PEXTLOGFONT,*LPEXTLOGFONT; | |
| 2785 | +typedef GCP_RESULTSA GCP_RESULTS,*LPGCP_RESULTS; | |
| 2786 | +typedef OUTLINETEXTMETRICA OUTLINETEXTMETRIC,*POUTLINETEXTMETRIC,*LPOUTLINETEXTMETRIC; | |
| 2787 | +typedef POLYTEXTA POLYTEXT; | |
| 2788 | +typedef LOGCOLORSPACEA LOGCOLORSPACE,*LPLOGCOLORSPACE; | |
| 2789 | +typedef NEWTEXTMETRICA NEWTEXTMETRIC,*PNEWTEXTMETRIC,*LPNEWTEXTMETRIC; | |
| 2790 | +typedef NEWTEXTMETRICEXA NEWTEXTMETRICEX; | |
| 2791 | +typedef ENUMLOGFONTA ENUMLOGFONT,*LPENUMLOGFONT; | |
| 2792 | +typedef ENUMLOGFONTEXA ENUMLOGFONTEX,*LPENUMLOGFONTEX; | |
| 2793 | +#define AddFontResource AddFontResourceA | |
| 2794 | +#define CopyEnhMetaFile CopyEnhMetaFileA | |
| 2795 | +#define CopyMetaFile CopyMetaFileA | |
| 2796 | +#define CreateDC CreateDCA | |
| 2797 | +#define CreateEnhMetaFile CreateEnhMetaFileA | |
| 2798 | +#define CreateFont CreateFontA | |
| 2799 | +#define CreateFontIndirect CreateFontIndirectA | |
| 2800 | +#define CreateIC CreateICA | |
| 2801 | +#define CreateMetaFile CreateMetaFileA | |
| 2802 | +#define CreateScalableFontResource CreateScalableFontResourceA | |
| 2803 | +#define DeviceCapabilities DeviceCapabilitiesA | |
| 2804 | +#define EnumFontFamilies EnumFontFamiliesA | |
| 2805 | +#define EnumFontFamiliesEx EnumFontFamiliesExA | |
| 2806 | +#define EnumFonts EnumFontsA | |
| 2807 | +#define EnumICMProfiles EnumICMProfilesA | |
| 2808 | +#define ExtTextOut ExtTextOutA | |
| 2809 | +#define GetCharWidthFloat GetCharWidthFloatA | |
| 2810 | +#define GetCharWidth GetCharWidthA | |
| 2811 | +#define GetCharacterPlacement GetCharacterPlacementA | |
| 2812 | +#define GetCharABCWidths GetCharABCWidthsA | |
| 2813 | +#define GetCharABCWidthsFloat GetCharABCWidthsFloatA | |
| 2814 | +#define GetCharWidth32 GetCharWidth32A | |
| 2815 | +#define GetEnhMetaFile GetEnhMetaFileA | |
| 2816 | +#define GetEnhMetaFileDescription GetEnhMetaFileDescriptionA | |
| 2817 | +#define GetGlyphOutline GetGlyphOutlineA | |
| 2818 | +#define GetICMProfile GetICMProfileA | |
| 2819 | +#define GetKerningPairs GetKerningPairsA | |
| 2820 | +#define GetLogColorSpace GetLogColorSpaceA | |
| 2821 | +#define GetMetaFile GetMetaFileA | |
| 2822 | +#define GetObject GetObjectA | |
| 2823 | +#define GetOutlineTextMetrics GetOutlineTextMetricsA | |
| 2824 | +#define GetTextExtentPoint GetTextExtentPointA | |
| 2825 | +#define GetTextExtentExPoint GetTextExtentExPointA | |
| 2826 | +#define GetTextExtentPoint32 GetTextExtentPoint32A | |
| 2827 | +#define GetTextFace GetTextFaceA | |
| 2828 | +#define GetTextMetrics GetTextMetricsA | |
| 2829 | +#define PolyTextOut PolyTextOutA | |
| 2830 | +#define RemoveFontResource RemoveFontResourceA | |
| 2831 | +#define ResetDC ResetDCA | |
| 2832 | +#define SetICMProfile SetICMProfileA | |
| 2833 | +#define StartDoc StartDocA | |
| 2834 | +#define TextOut TextOutA | |
| 2835 | +#define UpdateICMRegKey UpdateICMRegKeyA | |
| 2836 | +#define wglUseFontBitmaps wglUseFontBitmapsA | |
| 2837 | +#define wglUseFontOutlines wglUseFontOutlinesA | |
| 2838 | +#endif | |
| 2839 | +#endif | |
| 2840 | +#ifdef __cplusplus | |
| 2841 | +} | |
| 2842 | +#endif | |
| 2843 | +#endif | |
| @@ -0,0 +1,346 @@ | ||
| 1 | +#ifndef _WINNETWK_H | |
| 2 | +#define _WINNETWK_H | |
| 3 | +#if __GNUC__ >=3 | |
| 4 | +#pragma GCC system_header | |
| 5 | +#endif | |
| 6 | + | |
| 7 | +#ifdef __cplusplus | |
| 8 | +extern "C" { | |
| 9 | +#endif | |
| 10 | +#define WNNC_NET_MSNET 0x00010000 | |
| 11 | +#define WNNC_NET_LANMAN 0x00020000 | |
| 12 | +#define WNNC_NET_NETWARE 0x00030000 | |
| 13 | +#define WNNC_NET_VINES 0x00040000 | |
| 14 | +#define WNNC_NET_10NET 0x00050000 | |
| 15 | +#define WNNC_NET_LOCUS 0x00060000 | |
| 16 | +#define WNNC_NET_SUN_PC_NFS 0x00070000 | |
| 17 | +#define WNNC_NET_LANSTEP 0x00080000 | |
| 18 | +#define WNNC_NET_9TILES 0x00090000 | |
| 19 | +#define WNNC_NET_LANTASTIC 0x000A0000 | |
| 20 | +#define WNNC_NET_AS400 0x000B0000 | |
| 21 | +#define WNNC_NET_FTP_NFS 0x000C0000 | |
| 22 | +#define WNNC_NET_PATHWORKS 0x000D0000 | |
| 23 | +#define WNNC_NET_LIFENET 0x000E0000 | |
| 24 | +#define WNNC_NET_POWERLAN 0x000F0000 | |
| 25 | +#define WNNC_NET_BWNFS 0x00100000 | |
| 26 | +#define WNNC_NET_COGENT 0x00110000 | |
| 27 | +#define WNNC_NET_FARALLON 0x00120000 | |
| 28 | +#define WNNC_NET_APPLETALK 0x00130000 | |
| 29 | +#define WNNC_NET_INTERGRAPH 0x00140000 | |
| 30 | +#define WNNC_NET_SYMFONET 0x00150000 | |
| 31 | +#define WNNC_NET_CLEARCASE 0x00160000 | |
| 32 | +#define WNNC_NET_FRONTIER 0x00170000 | |
| 33 | +#define WNNC_NET_BMC 0x00180000 | |
| 34 | +#define WNNC_NET_DCE 0x00190000 | |
| 35 | +#define WNNC_NET_AVID 0x001A0000 | |
| 36 | +#define WNNC_NET_DOCUSPACE 0x001B0000 | |
| 37 | +#define WNNC_NET_MANGOSOFT 0x001C0000 | |
| 38 | +#define WNNC_NET_SERNET 0x001D0000 | |
| 39 | +#define WNNC_NET_DECORB 0x00200000 | |
| 40 | +#define WNNC_NET_PROTSTOR 0x00210000 | |
| 41 | +#define WNNC_NET_FJ_REDIR 0x00220000 | |
| 42 | +#define WNNC_NET_DISTINCT 0x00230000 | |
| 43 | +#define WNNC_NET_TWINS 0x00240000 | |
| 44 | +#define WNNC_NET_RDR2SAMPLE 0x00250000 | |
| 45 | +#define WNNC_NET_CSC 0x00260000 | |
| 46 | +#define WNNC_NET_3IN1 0x00270000 | |
| 47 | +#define WNNC_NET_EXTENDNET 0x00290000 | |
| 48 | +#define WNNC_NET_OBJECT_DIRE 0x00300000 | |
| 49 | +#define WNNC_NET_MASFAX 0x00310000 | |
| 50 | +#define WNNC_NET_HOB_NFS 0x00320000 | |
| 51 | +#define WNNC_NET_SHIVA 0x00330000 | |
| 52 | +#define WNNC_NET_IBMAL 0x00340000 | |
| 53 | +#define WNNC_CRED_MANAGER 0xFFFF0000 | |
| 54 | + | |
| 55 | +#define RESOURCE_CONNECTED 1 | |
| 56 | +#define RESOURCE_GLOBALNET 2 | |
| 57 | +#define RESOURCE_REMEMBERED 3 | |
| 58 | +#define RESOURCE_RECENT 4 | |
| 59 | +#define RESOURCE_CONTEXT 5 | |
| 60 | +#define RESOURCETYPE_ANY 0 | |
| 61 | +#define RESOURCETYPE_DISK 1 | |
| 62 | +#define RESOURCETYPE_PRINT 2 | |
| 63 | +#define RESOURCETYPE_RESERVED 8 | |
| 64 | +#define RESOURCETYPE_UNKNOWN 0xFFFFFFFF | |
| 65 | +#define RESOURCEUSAGE_CONNECTABLE 0x00000001 | |
| 66 | +#define RESOURCEUSAGE_CONTAINER 0x00000002 | |
| 67 | +#define RESOURCEUSAGE_NOLOCALDEVICE 0x00000004 | |
| 68 | +#define RESOURCEUSAGE_SIBLING 0x00000008 | |
| 69 | +#define RESOURCEUSAGE_ATTACHED 0x00000010 | |
| 70 | +#define RESOURCEUSAGE_ALL (RESOURCEUSAGE_CONNECTABLE | RESOURCEUSAGE_CONTAINER | RESOURCEUSAGE_ATTACHED) | |
| 71 | +#define RESOURCEUSAGE_RESERVED 0x80000000 | |
| 72 | +#define RESOURCEDISPLAYTYPE_GENERIC 0 | |
| 73 | +#define RESOURCEDISPLAYTYPE_DOMAIN 1 | |
| 74 | +#define RESOURCEDISPLAYTYPE_SERVER 2 | |
| 75 | +#define RESOURCEDISPLAYTYPE_SHARE 3 | |
| 76 | +#define RESOURCEDISPLAYTYPE_FILE 4 | |
| 77 | +#define RESOURCEDISPLAYTYPE_GROUP 5 | |
| 78 | +#define RESOURCEDISPLAYTYPE_NETWORK 6 | |
| 79 | +#define RESOURCEDISPLAYTYPE_ROOT 7 | |
| 80 | +#define RESOURCEDISPLAYTYPE_SHAREADMIN 8 | |
| 81 | +#define RESOURCEDISPLAYTYPE_DIRECTORY 9 | |
| 82 | +#define RESOURCEDISPLAYTYPE_TREE 10 | |
| 83 | +#define NETPROPERTY_PERSISTENT 1 | |
| 84 | +#define CONNECT_UPDATE_PROFILE 1 | |
| 85 | +#define CONNECT_UPDATE_RECENT 2 | |
| 86 | +#define CONNECT_TEMPORARY 4 | |
| 87 | +#define CONNECT_INTERACTIVE 8 | |
| 88 | +#define CONNECT_PROMPT 16 | |
| 89 | +#define CONNECT_NEED_DRIVE 32 | |
| 90 | +#define CONNECT_REFCOUNT 64 | |
| 91 | +#define CONNECT_REDIRECT 128 | |
| 92 | +#define CONNECT_LOCALDRIVE 256 | |
| 93 | +#define CONNECT_CURRENT_MEDIA 512 | |
| 94 | +#define CONNDLG_RO_PATH 1 | |
| 95 | +#define CONNDLG_CONN_POINT 2 | |
| 96 | +#define CONNDLG_USE_MRU 4 | |
| 97 | +#define CONNDLG_HIDE_BOX 8 | |
| 98 | +#define CONNDLG_PERSIST 16 | |
| 99 | +#define CONNDLG_NOT_PERSIST 32 | |
| 100 | +#define DISC_UPDATE_PROFILE 1 | |
| 101 | +#define DISC_NO_FORCE 64 | |
| 102 | +#define WNFMT_MULTILINE 1 | |
| 103 | +#define WNFMT_ABBREVIATED 2 | |
| 104 | +#define WNFMT_INENUM 16 | |
| 105 | +#define WNFMT_CONNECTION 32 | |
| 106 | +#define WN_SUCCESS NO_ERROR | |
| 107 | +#define WN_NO_ERROR NO_ERROR | |
| 108 | +#define WN_NOT_SUPPORTED ERROR_NOT_SUPPORTED | |
| 109 | +#define WN_CANCEL ERROR_CANCELLED | |
| 110 | +#define WN_RETRY ERROR_RETRY | |
| 111 | +#define WN_NET_ERROR ERROR_UNEXP_NET_ERR | |
| 112 | +#define WN_MORE_DATA ERROR_MORE_DATA | |
| 113 | +#define WN_BAD_POINTER ERROR_INVALID_ADDRESS | |
| 114 | +#define WN_BAD_VALUE ERROR_INVALID_PARAMETER | |
| 115 | +#define WN_BAD_USER ERROR_BAD_USERNAME | |
| 116 | +#define WN_BAD_PASSWORD ERROR_INVALID_PASSWORD | |
| 117 | +#define WN_ACCESS_DENIED ERROR_ACCESS_DENIED | |
| 118 | +#define WN_FUNCTION_BUSY ERROR_BUSY | |
| 119 | +#define WN_WINDOWS_ERROR ERROR_UNEXP_NET_ERR | |
| 120 | +#define WN_OUT_OF_MEMORY ERROR_NOT_ENOUGH_MEMORY | |
| 121 | +#define WN_NO_NETWORK ERROR_NO_NETWORK | |
| 122 | +#define WN_EXTENDED_ERROR ERROR_EXTENDED_ERROR | |
| 123 | +#define WN_BAD_LEVEL ERROR_INVALID_LEVEL | |
| 124 | +#define WN_BAD_HANDLE ERROR_INVALID_HANDLE | |
| 125 | +#define WN_NOT_INITIALIZING ERROR_ALREADY_INITIALIZED | |
| 126 | +#define WN_NO_MORE_DEVICES ERROR_NO_MORE_DEVICES | |
| 127 | +#define WN_NOT_CONNECTED ERROR_NOT_CONNECTED | |
| 128 | +#define WN_OPEN_FILES ERROR_OPEN_FILES | |
| 129 | +#define WN_DEVICE_IN_USE ERROR_DEVICE_IN_USE | |
| 130 | +#define WN_BAD_NETNAME ERROR_BAD_NET_NAME | |
| 131 | +#define WN_BAD_LOCALNAME ERROR_BAD_DEVICE | |
| 132 | +#define WN_ALREADY_CONNECTED ERROR_ALREADY_ASSIGNED | |
| 133 | +#define WN_DEVICE_ERROR ERROR_GEN_FAILURE | |
| 134 | +#define WN_CONNECTION_CLOSED ERROR_CONNECTION_UNAVAIL | |
| 135 | +#define WN_NO_NET_OR_BAD_PATH ERROR_NO_NET_OR_BAD_PATH | |
| 136 | +#define WN_BAD_PROVIDER ERROR_BAD_PROVIDER | |
| 137 | +#define WN_CANNOT_OPEN_PROFILE ERROR_CANNOT_OPEN_PROFILE | |
| 138 | +#define WN_BAD_PROFILE ERROR_BAD_PROFILE | |
| 139 | +#define WN_BAD_DEV_TYPE ERROR_BAD_DEV_TYPE | |
| 140 | +#define WN_DEVICE_ALREADY_REMEMBERED ERROR_DEVICE_ALREADY_REMEMBERED | |
| 141 | +#define WN_NO_MORE_ENTRIES ERROR_NO_MORE_ITEMS | |
| 142 | +#define WN_NOT_CONTAINER ERROR_NOT_CONTAINER | |
| 143 | +#define WN_NOT_AUTHENTICATED ERROR_NOT_AUTHENTICATED | |
| 144 | +#define WN_NOT_LOGGED_ON ERROR_NOT_LOGGED_ON | |
| 145 | +#define WN_NOT_VALIDATED ERROR_NO_LOGON_SERVERS | |
| 146 | +#define UNIVERSAL_NAME_INFO_LEVEL 1 | |
| 147 | +#define REMOTE_NAME_INFO_LEVEL 2 | |
| 148 | +#define NETINFO_DLL16 1 | |
| 149 | +#define NETINFO_DISKRED 4 | |
| 150 | +#define NETINFO_PRINTERRED 8 | |
| 151 | +#define RP_LOGON 1 | |
| 152 | +#define RP_INIFILE 2 | |
| 153 | +#define PP_DISPLAYERRORS 1 | |
| 154 | +#define WNCON_FORNETCARD 1 | |
| 155 | +#define WNCON_NOTROUTED 2 | |
| 156 | +#define WNCON_SLOWLINK 4 | |
| 157 | +#define WNCON_DYNAMIC 8 | |
| 158 | + | |
| 159 | +#ifndef RC_INVOKED | |
| 160 | +typedef struct _NETRESOURCEA { | |
| 161 | + DWORD dwScope; | |
| 162 | + DWORD dwType; | |
| 163 | + DWORD dwDisplayType; | |
| 164 | + DWORD dwUsage; | |
| 165 | + LPSTR lpLocalName; | |
| 166 | + LPSTR lpRemoteName; | |
| 167 | + LPSTR lpComment ; | |
| 168 | + LPSTR lpProvider; | |
| 169 | +}NETRESOURCEA,*LPNETRESOURCEA; | |
| 170 | +typedef struct _NETRESOURCEW { | |
| 171 | + DWORD dwScope; | |
| 172 | + DWORD dwType; | |
| 173 | + DWORD dwDisplayType; | |
| 174 | + DWORD dwUsage; | |
| 175 | + LPWSTR lpLocalName; | |
| 176 | + LPWSTR lpRemoteName; | |
| 177 | + LPWSTR lpComment ; | |
| 178 | + LPWSTR lpProvider; | |
| 179 | +}NETRESOURCEW,*LPNETRESOURCEW; | |
| 180 | +typedef struct _CONNECTDLGSTRUCTA{ | |
| 181 | + DWORD cbStructure; | |
| 182 | + HWND hwndOwner; | |
| 183 | + LPNETRESOURCEA lpConnRes; | |
| 184 | + DWORD dwFlags; | |
| 185 | + DWORD dwDevNum; | |
| 186 | +} CONNECTDLGSTRUCTA,*LPCONNECTDLGSTRUCTA; | |
| 187 | +typedef struct _CONNECTDLGSTRUCTW{ | |
| 188 | + DWORD cbStructure; | |
| 189 | + HWND hwndOwner; | |
| 190 | + LPNETRESOURCEW lpConnRes; | |
| 191 | + DWORD dwFlags; | |
| 192 | + DWORD dwDevNum; | |
| 193 | +} CONNECTDLGSTRUCTW,*LPCONNECTDLGSTRUCTW; | |
| 194 | +typedef struct _DISCDLGSTRUCTA{ | |
| 195 | + DWORD cbStructure; | |
| 196 | + HWND hwndOwner; | |
| 197 | + LPSTR lpLocalName; | |
| 198 | + LPSTR lpRemoteName; | |
| 199 | + DWORD dwFlags; | |
| 200 | +} DISCDLGSTRUCTA,*LPDISCDLGSTRUCTA; | |
| 201 | +typedef struct _DISCDLGSTRUCTW{ | |
| 202 | + DWORD cbStructure; | |
| 203 | + HWND hwndOwner; | |
| 204 | + LPWSTR lpLocalName; | |
| 205 | + LPWSTR lpRemoteName; | |
| 206 | + DWORD dwFlags; | |
| 207 | +} DISCDLGSTRUCTW,*LPDISCDLGSTRUCTW; | |
| 208 | +typedef struct _UNIVERSAL_NAME_INFOA { LPSTR lpUniversalName; }UNIVERSAL_NAME_INFOA,*LPUNIVERSAL_NAME_INFOA; | |
| 209 | +typedef struct _UNIVERSAL_NAME_INFOW { LPWSTR lpUniversalName; }UNIVERSAL_NAME_INFOW,*LPUNIVERSAL_NAME_INFOW; | |
| 210 | +typedef struct _REMOTE_NAME_INFOA { | |
| 211 | + LPSTR lpUniversalName; | |
| 212 | + LPSTR lpConnectionName; | |
| 213 | + LPSTR lpRemainingPath; | |
| 214 | +}REMOTE_NAME_INFOA,*LPREMOTE_NAME_INFOA; | |
| 215 | +typedef struct _REMOTE_NAME_INFOW { | |
| 216 | + LPWSTR lpUniversalName; | |
| 217 | + LPWSTR lpConnectionName; | |
| 218 | + LPWSTR lpRemainingPath; | |
| 219 | +}REMOTE_NAME_INFOW,*LPREMOTE_NAME_INFOW; | |
| 220 | +typedef struct _NETINFOSTRUCT{ | |
| 221 | + DWORD cbStructure; | |
| 222 | + DWORD dwProviderVersion; | |
| 223 | + DWORD dwStatus; | |
| 224 | + DWORD dwCharacteristics; | |
| 225 | + DWORD dwHandle; | |
| 226 | + WORD wNetType; | |
| 227 | + DWORD dwPrinters; | |
| 228 | + DWORD dwDrives; | |
| 229 | +} NETINFOSTRUCT,*LPNETINFOSTRUCT; | |
| 230 | +typedef UINT(PASCAL *PFNGETPROFILEPATHA)(LPCSTR,LPSTR,UINT); | |
| 231 | +typedef UINT(PASCAL *PFNGETPROFILEPATHW)(LPCWSTR,LPWSTR,UINT); | |
| 232 | +typedef UINT(PASCAL *PFNRECONCILEPROFILEA)(LPCSTR,LPCSTR,DWORD); | |
| 233 | +typedef UINT(PASCAL *PFNRECONCILEPROFILEW)(LPCWSTR,LPCWSTR,DWORD); | |
| 234 | +typedef BOOL(PASCAL *PFNPROCESSPOLICIESA)(HWND,LPCSTR,LPCSTR,LPCSTR,DWORD); | |
| 235 | +typedef BOOL(PASCAL *PFNPROCESSPOLICIESW)(HWND,LPCWSTR,LPCWSTR,LPCWSTR,DWORD); | |
| 236 | +typedef struct _NETCONNECTINFOSTRUCT{ | |
| 237 | + DWORD cbStructure; | |
| 238 | + DWORD dwFlags; | |
| 239 | + DWORD dwSpeed; | |
| 240 | + DWORD dwDelay; | |
| 241 | + DWORD dwOptDataSize; | |
| 242 | +} NETCONNECTINFOSTRUCT,*LPNETCONNECTINFOSTRUCT; | |
| 243 | + | |
| 244 | +DWORD APIENTRY WNetAddConnectionA(LPCSTR,LPCSTR,LPCSTR); | |
| 245 | +DWORD APIENTRY WNetAddConnectionW(LPCWSTR,LPCWSTR,LPCWSTR); | |
| 246 | +DWORD APIENTRY WNetAddConnection2A(LPNETRESOURCEA,LPCSTR,LPCSTR,DWORD); | |
| 247 | +DWORD APIENTRY WNetAddConnection2W(LPNETRESOURCEW,LPCWSTR,LPCWSTR,DWORD); | |
| 248 | +DWORD APIENTRY WNetAddConnection3A(HWND,LPNETRESOURCEA,LPCSTR,LPCSTR,DWORD); | |
| 249 | +DWORD APIENTRY WNetAddConnection3W(HWND,LPNETRESOURCEW,LPCWSTR,LPCWSTR,DWORD); | |
| 250 | +DWORD APIENTRY WNetCancelConnectionA(LPCSTR,BOOL); | |
| 251 | +DWORD APIENTRY WNetCancelConnectionW(LPCWSTR,BOOL); | |
| 252 | +DWORD APIENTRY WNetCancelConnection2A(LPCSTR,DWORD,BOOL); | |
| 253 | +DWORD APIENTRY WNetCancelConnection2W(LPCWSTR,DWORD,BOOL); | |
| 254 | +DWORD APIENTRY WNetGetConnectionA(LPCSTR,LPSTR,PDWORD); | |
| 255 | +DWORD APIENTRY WNetGetConnectionW(LPCWSTR,LPWSTR,PDWORD); | |
| 256 | +DWORD APIENTRY WNetUseConnectionA(HWND,LPNETRESOURCEA,LPCSTR,LPCSTR,DWORD,LPSTR,PDWORD,PDWORD); | |
| 257 | +DWORD APIENTRY WNetUseConnectionW(HWND,LPNETRESOURCEW,LPCWSTR,LPCWSTR,DWORD,LPWSTR,PDWORD,PDWORD); | |
| 258 | +DWORD APIENTRY WNetSetConnectionA(LPCSTR,DWORD,PVOID); | |
| 259 | +DWORD APIENTRY WNetSetConnectionW(LPCWSTR,DWORD,PVOID); | |
| 260 | +DWORD APIENTRY WNetConnectionDialog(HWND,DWORD); | |
| 261 | +DWORD APIENTRY WNetDisconnectDialog(HWND,DWORD); | |
| 262 | +DWORD APIENTRY WNetConnectionDialog1A(LPCONNECTDLGSTRUCTA); | |
| 263 | +DWORD APIENTRY WNetConnectionDialog1W(LPCONNECTDLGSTRUCTW); | |
| 264 | +DWORD APIENTRY WNetDisconnectDialog1A(LPDISCDLGSTRUCTA); | |
| 265 | +DWORD APIENTRY WNetDisconnectDialog1W(LPDISCDLGSTRUCTW); | |
| 266 | +DWORD APIENTRY WNetOpenEnumA(DWORD,DWORD,DWORD,LPNETRESOURCEA,LPHANDLE); | |
| 267 | +DWORD APIENTRY WNetOpenEnumW(DWORD,DWORD,DWORD,LPNETRESOURCEW,LPHANDLE); | |
| 268 | +DWORD APIENTRY WNetEnumResourceA(HANDLE,PDWORD,PVOID,PDWORD); | |
| 269 | +DWORD APIENTRY WNetEnumResourceW(HANDLE,PDWORD,PVOID,PDWORD); | |
| 270 | +DWORD APIENTRY WNetCloseEnum(HANDLE); | |
| 271 | +DWORD APIENTRY WNetGetUniversalNameA(LPCSTR,DWORD,PVOID,PDWORD); | |
| 272 | +DWORD APIENTRY WNetGetUniversalNameW(LPCWSTR,DWORD,PVOID,PDWORD); | |
| 273 | +DWORD APIENTRY WNetGetUserA(LPCSTR,LPSTR,PDWORD); | |
| 274 | +DWORD APIENTRY WNetGetUserW(LPCWSTR,LPWSTR,PDWORD); | |
| 275 | +DWORD APIENTRY WNetGetProviderNameA(DWORD,LPSTR,PDWORD); | |
| 276 | +DWORD APIENTRY WNetGetProviderNameW(DWORD,LPWSTR,PDWORD); | |
| 277 | +DWORD APIENTRY WNetGetNetworkInformationA(LPCSTR,LPNETINFOSTRUCT); | |
| 278 | +DWORD APIENTRY WNetGetNetworkInformationW(LPCWSTR,LPNETINFOSTRUCT); | |
| 279 | +DWORD APIENTRY WNetGetResourceInformationA(LPNETRESOURCEA,LPVOID,LPDWORD,LPCSTR*); | |
| 280 | +DWORD APIENTRY WNetGetResourceInformationW(LPNETRESOURCEA,LPVOID,LPDWORD,LPCWSTR*); | |
| 281 | +DWORD APIENTRY WNetGetLastErrorA(PDWORD,LPSTR,DWORD,LPSTR,DWORD); | |
| 282 | +DWORD APIENTRY WNetGetLastErrorW(PDWORD,LPWSTR,DWORD,LPWSTR,DWORD); | |
| 283 | +DWORD APIENTRY MultinetGetConnectionPerformanceA(LPNETRESOURCEA,LPNETCONNECTINFOSTRUCT); | |
| 284 | +DWORD APIENTRY MultinetGetConnectionPerformanceW(LPNETRESOURCEW,LPNETCONNECTINFOSTRUCT); | |
| 285 | +#ifdef UNICODE | |
| 286 | +#define PFNPROCESSPOLICIES PFNPROCESSPOLICIESW | |
| 287 | +#define PFNRECONCILEPROFILE PFNRECONCILEPROFILEW | |
| 288 | +#define PFNGETPROFILEPATH PFNGETPROFILEPATHW | |
| 289 | +typedef NETRESOURCEW NETRESOURCE,*LPNETRESOURCE; | |
| 290 | +typedef CONNECTDLGSTRUCTW CONNECTDLGSTRUCT,*LPCONNECTDLGSTRUCT; | |
| 291 | +typedef DISCDLGSTRUCTW DISCDLGSTRUCT,*LPDISCDLGSTRUCT; | |
| 292 | +typedef REMOTE_NAME_INFOW REMOTE_NAME_INFO,*LPREMOTE_NAME_INFO; | |
| 293 | +typedef UNIVERSAL_NAME_INFOW UNIVERSAL_NAME_INFO,*LPUNIVERSAL_NAME_INFO; | |
| 294 | +#define WNetEnumResource WNetEnumResourceW | |
| 295 | +#define WNetOpenEnum WNetOpenEnumW | |
| 296 | +#define WNetGetResourceInformation WNetGetResourceInformationW | |
| 297 | +#define WNetGetUniversalName WNetGetUniversalNameW | |
| 298 | +#define WNetSetConnection WNetSetConnectionW | |
| 299 | +#define WNetUseConnection WNetUseConnectionW | |
| 300 | +#define WNetGetConnection WNetGetConnectionW | |
| 301 | +#define WNetCancelConnection2 WNetCancelConnection2W | |
| 302 | +#define WNetCancelConnection WNetCancelConnectionW | |
| 303 | +#define WNetAddConnection3 WNetAddConnection3W | |
| 304 | +#define WNetAddConnection2 WNetAddConnection2W | |
| 305 | +#define WNetAddConnection WNetAddConnectionW | |
| 306 | +#define WNetConnectionDialog1 WNetConnectionDialog1W | |
| 307 | +#define WNetDisconnectDialog1 WNetDisconnectDialog1W | |
| 308 | +#define WNetGetNetworkInformation WNetGetNetworkInformationW | |
| 309 | +#define WNetGetProviderName WNetGetProviderNameW | |
| 310 | +#define WNetGetUser WNetGetUserW | |
| 311 | +#define MultinetGetConnectionPerformance MultinetGetConnectionPerformanceW | |
| 312 | +#define WNetGetLastError WNetGetLastErrorW | |
| 313 | +#else | |
| 314 | +#define PFNGETPROFILEPATH PFNGETPROFILEPATHA | |
| 315 | +#define PFNRECONCILEPROFILE PFNRECONCILEPROFILEA | |
| 316 | +#define PFNPROCESSPOLICIES PFNPROCESSPOLICIESA | |
| 317 | +typedef NETRESOURCEA NETRESOURCE,*LPNETRESOURCE; | |
| 318 | +typedef CONNECTDLGSTRUCTA CONNECTDLGSTRUCT,*LPCONNECTDLGSTRUCT; | |
| 319 | +typedef DISCDLGSTRUCTA DISCDLGSTRUCT,*LPDISCDLGSTRUCT; | |
| 320 | +typedef UNIVERSAL_NAME_INFOA UNIVERSAL_NAME_INFO,*LPUNIVERSAL_NAME_INFO; | |
| 321 | +typedef REMOTE_NAME_INFOA REMOTE_NAME_INFO,*LPREMOTE_NAME_INFO; | |
| 322 | +#define WNetOpenEnum WNetOpenEnumA | |
| 323 | +#define WNetEnumResource WNetEnumResourceA | |
| 324 | +#define WNetGetResourceInformation WNetGetResourceInformationA | |
| 325 | +#define WNetGetUniversalName WNetGetUniversalNameA | |
| 326 | +#define WNetConnectionDialog1 WNetConnectionDialog1A | |
| 327 | +#define WNetDisconnectDialog1 WNetDisconnectDialog1A | |
| 328 | +#define WNetAddConnection2 WNetAddConnection2A | |
| 329 | +#define WNetAddConnection3 WNetAddConnection3A | |
| 330 | +#define WNetCancelConnection WNetCancelConnectionA | |
| 331 | +#define WNetCancelConnection2 WNetCancelConnection2A | |
| 332 | +#define WNetGetConnection WNetGetConnectionA | |
| 333 | +#define WNetUseConnection WNetUseConnectionA | |
| 334 | +#define WNetSetConnection WNetSetConnectionA | |
| 335 | +#define WNetAddConnection WNetAddConnectionA | |
| 336 | +#define WNetGetUser WNetGetUserA | |
| 337 | +#define WNetGetProviderName WNetGetProviderNameA | |
| 338 | +#define WNetGetNetworkInformation WNetGetNetworkInformationA | |
| 339 | +#define WNetGetLastError WNetGetLastErrorA | |
| 340 | +#define MultinetGetConnectionPerformance MultinetGetConnectionPerformanceA | |
| 341 | +#endif | |
| 342 | +#endif | |
| 343 | +#ifdef __cplusplus | |
| 344 | +} | |
| 345 | +#endif | |
| 346 | +#endif | |
| @@ -0,0 +1,651 @@ | ||
| 1 | +#ifndef _WINNLS_H | |
| 2 | +#define _WINNLS_H | |
| 3 | +#if __GNUC__ >=3 | |
| 4 | +#pragma GCC system_header | |
| 5 | +#endif | |
| 6 | + | |
| 7 | +#ifdef __cplusplus | |
| 8 | +extern "C" { | |
| 9 | +#endif | |
| 10 | + | |
| 11 | +#define MAX_LEADBYTES 12 | |
| 12 | +#define MAX_DEFAULTCHAR 2 | |
| 13 | +#define LOCALE_NOUSEROVERRIDE 0x80000000 | |
| 14 | +#define LOCALE_USE_CP_ACP 0x40000000 | |
| 15 | +#define LOCALE_ILANGUAGE 1 | |
| 16 | +#define LOCALE_SLANGUAGE 2 | |
| 17 | +#define LOCALE_SENGLANGUAGE 0x1001 | |
| 18 | +#define LOCALE_SABBREVLANGNAME 3 | |
| 19 | +#define LOCALE_SNATIVELANGNAME 4 | |
| 20 | +#define LOCALE_ICOUNTRY 5 | |
| 21 | +#define LOCALE_SCOUNTRY 6 | |
| 22 | +#define LOCALE_SENGCOUNTRY 0x1002 | |
| 23 | +#define LOCALE_SABBREVCTRYNAME 7 | |
| 24 | +#define LOCALE_SNATIVECTRYNAME 8 | |
| 25 | +#define LOCALE_IDEFAULTLANGUAGE 9 | |
| 26 | +#define LOCALE_IDEFAULTCOUNTRY 10 | |
| 27 | +#define LOCALE_IDEFAULTCODEPAGE 11 | |
| 28 | +#define LOCALE_IDEFAULTANSICODEPAGE 0x1004 | |
| 29 | +#define LOCALE_SLIST 12 | |
| 30 | +#define LOCALE_IMEASURE 13 | |
| 31 | +#define LOCALE_SDECIMAL 14 | |
| 32 | +#define LOCALE_STHOUSAND 15 | |
| 33 | +#define LOCALE_SGROUPING 16 | |
| 34 | +#define LOCALE_IDIGITS 17 | |
| 35 | +#define LOCALE_ILZERO 18 | |
| 36 | +#define LOCALE_INEGNUMBER 0x1010 | |
| 37 | +#define LOCALE_SNATIVEDIGITS 19 | |
| 38 | +#define LOCALE_SCURRENCY 20 | |
| 39 | +#define LOCALE_SINTLSYMBOL 21 | |
| 40 | +#define LOCALE_SMONDECIMALSEP 22 | |
| 41 | +#define LOCALE_SMONTHOUSANDSEP 23 | |
| 42 | +#define LOCALE_SMONGROUPING 24 | |
| 43 | +#define LOCALE_ICURRDIGITS 25 | |
| 44 | +#define LOCALE_IINTLCURRDIGITS 26 | |
| 45 | +#define LOCALE_ICURRENCY 27 | |
| 46 | +#define LOCALE_INEGCURR 28 | |
| 47 | +#define LOCALE_SDATE 29 | |
| 48 | +#define LOCALE_STIME 30 | |
| 49 | +#define LOCALE_SSHORTDATE 31 | |
| 50 | +#define LOCALE_SLONGDATE 32 | |
| 51 | +#define LOCALE_STIMEFORMAT 0x1003 | |
| 52 | +#define LOCALE_IDATE 33 | |
| 53 | +#define LOCALE_ILDATE 34 | |
| 54 | +#define LOCALE_ITIME 35 | |
| 55 | +#define LOCALE_ITIMEMARKPOSN 0x1005 | |
| 56 | +#define LOCALE_ICENTURY 36 | |
| 57 | +#define LOCALE_ITLZERO 37 | |
| 58 | +#define LOCALE_IDAYLZERO 38 | |
| 59 | +#define LOCALE_IMONLZERO 39 | |
| 60 | +#define LOCALE_S1159 40 | |
| 61 | +#define LOCALE_S2359 41 | |
| 62 | +#define LOCALE_ICALENDARTYPE 0x1009 | |
| 63 | +#define LOCALE_IOPTIONALCALENDAR 0x100B | |
| 64 | +#define LOCALE_IFIRSTDAYOFWEEK 0x100C | |
| 65 | +#define LOCALE_IFIRSTWEEKOFYEAR 0x100D | |
| 66 | +#define LOCALE_SDAYNAME1 42 | |
| 67 | +#define LOCALE_SDAYNAME2 43 | |
| 68 | +#define LOCALE_SDAYNAME3 44 | |
| 69 | +#define LOCALE_SDAYNAME4 45 | |
| 70 | +#define LOCALE_SDAYNAME5 46 | |
| 71 | +#define LOCALE_SDAYNAME6 47 | |
| 72 | +#define LOCALE_SDAYNAME7 48 | |
| 73 | +#define LOCALE_SABBREVDAYNAME1 49 | |
| 74 | +#define LOCALE_SABBREVDAYNAME2 50 | |
| 75 | +#define LOCALE_SABBREVDAYNAME3 51 | |
| 76 | +#define LOCALE_SABBREVDAYNAME4 52 | |
| 77 | +#define LOCALE_SABBREVDAYNAME5 53 | |
| 78 | +#define LOCALE_SABBREVDAYNAME6 54 | |
| 79 | +#define LOCALE_SABBREVDAYNAME7 55 | |
| 80 | +#define LOCALE_SMONTHNAME1 56 | |
| 81 | +#define LOCALE_SMONTHNAME2 57 | |
| 82 | +#define LOCALE_SMONTHNAME3 58 | |
| 83 | +#define LOCALE_SMONTHNAME4 59 | |
| 84 | +#define LOCALE_SMONTHNAME5 60 | |
| 85 | +#define LOCALE_SMONTHNAME6 61 | |
| 86 | +#define LOCALE_SMONTHNAME7 62 | |
| 87 | +#define LOCALE_SMONTHNAME8 63 | |
| 88 | +#define LOCALE_SMONTHNAME9 64 | |
| 89 | +#define LOCALE_SMONTHNAME10 65 | |
| 90 | +#define LOCALE_SMONTHNAME11 66 | |
| 91 | +#define LOCALE_SMONTHNAME12 67 | |
| 92 | +#define LOCALE_SMONTHNAME13 0x100E | |
| 93 | +#define LOCALE_SABBREVMONTHNAME1 68 | |
| 94 | +#define LOCALE_SABBREVMONTHNAME2 69 | |
| 95 | +#define LOCALE_SABBREVMONTHNAME3 70 | |
| 96 | +#define LOCALE_SABBREVMONTHNAME4 71 | |
| 97 | +#define LOCALE_SABBREVMONTHNAME5 72 | |
| 98 | +#define LOCALE_SABBREVMONTHNAME6 73 | |
| 99 | +#define LOCALE_SABBREVMONTHNAME7 74 | |
| 100 | +#define LOCALE_SABBREVMONTHNAME8 75 | |
| 101 | +#define LOCALE_SABBREVMONTHNAME9 76 | |
| 102 | +#define LOCALE_SABBREVMONTHNAME10 77 | |
| 103 | +#define LOCALE_SABBREVMONTHNAME11 78 | |
| 104 | +#define LOCALE_SABBREVMONTHNAME12 79 | |
| 105 | +#define LOCALE_SABBREVMONTHNAME13 0x100F | |
| 106 | +#define LOCALE_SPOSITIVESIGN 80 | |
| 107 | +#define LOCALE_SNEGATIVESIGN 81 | |
| 108 | +#define LOCALE_IPOSSIGNPOSN 82 | |
| 109 | +#define LOCALE_INEGSIGNPOSN 83 | |
| 110 | +#define LOCALE_IPOSSYMPRECEDES 84 | |
| 111 | +#define LOCALE_IPOSSEPBYSPACE 85 | |
| 112 | +#define LOCALE_INEGSYMPRECEDES 86 | |
| 113 | +#define LOCALE_INEGSEPBYSPACE 87 | |
| 114 | +#define LOCALE_FONTSIGNATURE 88 | |
| 115 | +#define LOCALE_SISO639LANGNAME 89 | |
| 116 | +#define LOCALE_SISO3166CTRYNAME 90 | |
| 117 | +#define LOCALE_SYSTEM_DEFAULT 0x800 | |
| 118 | +#define LOCALE_USER_DEFAULT 0x400 | |
| 119 | +#define NORM_IGNORECASE 1 | |
| 120 | +#define NORM_IGNOREKANATYPE 65536 | |
| 121 | +#define NORM_IGNORENONSPACE 2 | |
| 122 | +#define NORM_IGNORESYMBOLS 4 | |
| 123 | +#define NORM_IGNOREWIDTH 131072 | |
| 124 | +#define SORT_STRINGSORT 4096 | |
| 125 | +#define LCMAP_LOWERCASE 0x00000100 | |
| 126 | +#define LCMAP_UPPERCASE 0x00000200 | |
| 127 | +#define LCMAP_SORTKEY 0x00000400 | |
| 128 | +#define LCMAP_BYTEREV 0x00000800 | |
| 129 | +#define LCMAP_HIRAGANA 0x00100000 | |
| 130 | +#define LCMAP_KATAKANA 0x00200000 | |
| 131 | +#define LCMAP_HALFWIDTH 0x00400000 | |
| 132 | +#define LCMAP_FULLWIDTH 0x00800000 | |
| 133 | +#define LCMAP_LINGUISTIC_CASING 0x01000000 | |
| 134 | +#define LCMAP_SIMPLIFIED_CHINESE 0x02000000 | |
| 135 | +#define LCMAP_TRADITIONAL_CHINESE 0x04000000 | |
| 136 | +#define ENUM_ALL_CALENDARS (-1) | |
| 137 | +#define DATE_SHORTDATE 1 | |
| 138 | +#define DATE_LONGDATE 2 | |
| 139 | +#define DATE_USE_ALT_CALENDAR 4 | |
| 140 | +#define CP_INSTALLED 1 | |
| 141 | +#define CP_SUPPORTED 2 | |
| 142 | +#define LCID_INSTALLED 1 | |
| 143 | +#define LCID_SUPPORTED 2 | |
| 144 | +#define LCID_ALTERNATE_SORTS 4 | |
| 145 | +#define MAP_FOLDCZONE 16 | |
| 146 | +#define MAP_FOLDDIGITS 128 | |
| 147 | +#define MAP_PRECOMPOSED 32 | |
| 148 | +#define MAP_COMPOSITE 64 | |
| 149 | +#define CP_ACP 0 | |
| 150 | +#define CP_OEMCP 1 | |
| 151 | +#define CP_MACCP 2 | |
| 152 | +#define CP_THREAD_ACP 3 | |
| 153 | +#define CP_SYMBOL 42 | |
| 154 | +#define CP_UTF7 65000 | |
| 155 | +#define CP_UTF8 65001 | |
| 156 | +#define CT_CTYPE1 1 | |
| 157 | +#define CT_CTYPE2 2 | |
| 158 | +#define CT_CTYPE3 4 | |
| 159 | +#define C1_UPPER 1 | |
| 160 | +#define C1_LOWER 2 | |
| 161 | +#define C1_DIGIT 4 | |
| 162 | +#define C1_SPACE 8 | |
| 163 | +#define C1_PUNCT 16 | |
| 164 | +#define C1_CNTRL 32 | |
| 165 | +#define C1_BLANK 64 | |
| 166 | +#define C1_XDIGIT 128 | |
| 167 | +#define C1_ALPHA 256 | |
| 168 | +#define C2_LEFTTORIGHT 1 | |
| 169 | +#define C2_RIGHTTOLEFT 2 | |
| 170 | +#define C2_EUROPENUMBER 3 | |
| 171 | +#define C2_EUROPESEPARATOR 4 | |
| 172 | +#define C2_EUROPETERMINATOR 5 | |
| 173 | +#define C2_ARABICNUMBER 6 | |
| 174 | +#define C2_COMMONSEPARATOR 7 | |
| 175 | +#define C2_BLOCKSEPARATOR 8 | |
| 176 | +#define C2_SEGMENTSEPARATOR 9 | |
| 177 | +#define C2_WHITESPACE 10 | |
| 178 | +#define C2_OTHERNEUTRAL 11 | |
| 179 | +#define C2_NOTAPPLICABLE 0 | |
| 180 | +#define C3_NONSPACING 1 | |
| 181 | +#define C3_DIACRITIC 2 | |
| 182 | +#define C3_VOWELMARK 4 | |
| 183 | +#define C3_SYMBOL 8 | |
| 184 | +#define C3_KATAKANA 16 | |
| 185 | +#define C3_HIRAGANA 32 | |
| 186 | +#define C3_HALFWIDTH 64 | |
| 187 | +#define C3_FULLWIDTH 128 | |
| 188 | +#define C3_IDEOGRAPH 256 | |
| 189 | +#define C3_KASHIDA 512 | |
| 190 | +#define C3_LEXICAL 1024 | |
| 191 | +#define C3_ALPHA 32768 | |
| 192 | +#define C3_NOTAPPLICABLE 0 | |
| 193 | +#define TIME_NOMINUTESORSECONDS 1 | |
| 194 | +#define TIME_NOSECONDS 2 | |
| 195 | +#define TIME_NOTIMEMARKER 4 | |
| 196 | +#define TIME_FORCE24HOURFORMAT 8 | |
| 197 | +#define MB_PRECOMPOSED 1 | |
| 198 | +#define MB_COMPOSITE 2 | |
| 199 | +#define MB_ERR_INVALID_CHARS 8 | |
| 200 | +#define MB_USEGLYPHCHARS 4 | |
| 201 | +#define WC_COMPOSITECHECK 512 | |
| 202 | +#define WC_DISCARDNS 16 | |
| 203 | +#define WC_SEPCHARS 32 | |
| 204 | +#define WC_DEFAULTCHAR 64 | |
| 205 | +#define CTRY_DEFAULT 0 | |
| 206 | +#define CTRY_ALBANIA 355 | |
| 207 | +#define CTRY_ALGERIA 213 | |
| 208 | +#define CTRY_ARGENTINA 54 | |
| 209 | +#define CTRY_ARMENIA 374 | |
| 210 | +#define CTRY_AUSTRALIA 61 | |
| 211 | +#define CTRY_AUSTRIA 43 | |
| 212 | +#define CTRY_AZERBAIJAN 994 | |
| 213 | +#define CTRY_BAHRAIN 973 | |
| 214 | +#define CTRY_BELARUS 375 | |
| 215 | +#define CTRY_BELGIUM 32 | |
| 216 | +#define CTRY_BELIZE 501 | |
| 217 | +#define CTRY_BOLIVIA 591 | |
| 218 | +#define CTRY_BRAZIL 55 | |
| 219 | +#define CTRY_BRUNEI_DARUSSALAM 673 | |
| 220 | +#define CTRY_BULGARIA 359 | |
| 221 | +#define CTRY_CANADA 2 | |
| 222 | +#define CTRY_CARIBBEAN 1 | |
| 223 | +#define CTRY_CHILE 56 | |
| 224 | +#define CTRY_COLOMBIA 57 | |
| 225 | +#define CTRY_COSTA_RICA 506 | |
| 226 | +#define CTRY_CROATIA 385 | |
| 227 | +#define CTRY_CZECH 420 | |
| 228 | +#define CTRY_DENMARK 45 | |
| 229 | +#define CTRY_DOMINICAN_REPUBLIC 1 | |
| 230 | +#define CTRY_ECUADOR 593 | |
| 231 | +#define CTRY_EGYPT 20 | |
| 232 | +#define CTRY_EL_SALVADOR 503 | |
| 233 | +#define CTRY_ESTONIA 372 | |
| 234 | +#define CTRY_FAEROE_ISLANDS 298 | |
| 235 | +#define CTRY_FINLAND 358 | |
| 236 | +#define CTRY_FRANCE 33 | |
| 237 | +#define CTRY_GEORGIA 995 | |
| 238 | +#define CTRY_GERMANY 49 | |
| 239 | +#define CTRY_GREECE 30 | |
| 240 | +#define CTRY_GUATEMALA 502 | |
| 241 | +#define CTRY_HONDURAS 504 | |
| 242 | +#define CTRY_HONG_KONG 852 | |
| 243 | +#define CTRY_HUNGARY 36 | |
| 244 | +#define CTRY_ICELAND 354 | |
| 245 | +#define CTRY_INDIA 91 | |
| 246 | +#define CTRY_INDONESIA 62 | |
| 247 | +#define CTRY_IRAN 981 | |
| 248 | +#define CTRY_IRAQ 964 | |
| 249 | +#define CTRY_IRELAND 353 | |
| 250 | +#define CTRY_ISRAEL 972 | |
| 251 | +#define CTRY_ITALY 39 | |
| 252 | +#define CTRY_JAMAICA 1 | |
| 253 | +#define CTRY_JAPAN 81 | |
| 254 | +#define CTRY_JORDAN 962 | |
| 255 | +#define CTRY_KAZAKSTAN 7 | |
| 256 | +#define CTRY_KENYA 254 | |
| 257 | +#define CTRY_KUWAIT 965 | |
| 258 | +#define CTRY_LATVIA 371 | |
| 259 | +#define CTRY_LEBANON 961 | |
| 260 | +#define CTRY_LIBYA 218 | |
| 261 | +#define CTRY_LIECHTENSTEIN 41 | |
| 262 | +#define CTRY_LITHUANIA 370 | |
| 263 | +#define CTRY_LUXEMBOURG 352 | |
| 264 | +#define CTRY_MACAU 853 | |
| 265 | +#define CTRY_MACEDONIA 389 | |
| 266 | +#define CTRY_MALAYSIA 60 | |
| 267 | +#define CTRY_MEXICO 52 | |
| 268 | +#define CTRY_MONACO 33 | |
| 269 | +#define CTRY_MOROCCO 212 | |
| 270 | +#define CTRY_NETHERLANDS 31 | |
| 271 | +#define CTRY_NEW_ZEALAND 64 | |
| 272 | +#define CTRY_NICARAGUA 505 | |
| 273 | +#define CTRY_NORWAY 47 | |
| 274 | +#define CTRY_OMAN 968 | |
| 275 | +#define CTRY_PAKISTAN 92 | |
| 276 | +#define CTRY_PANAMA 507 | |
| 277 | +#define CTRY_PARAGUAY 595 | |
| 278 | +#define CTRY_PERU 51 | |
| 279 | +#define CTRY_PHILIPPINES 63 | |
| 280 | +#define CTRY_POLAND 48 | |
| 281 | +#define CTRY_PORTUGAL 351 | |
| 282 | +#define CTRY_PRCHINA 86 | |
| 283 | +#define CTRY_PUERTO_RICO 1 | |
| 284 | +#define CTRY_QATAR 974 | |
| 285 | +#define CTRY_ROMANIA 40 | |
| 286 | +#define CTRY_RUSSIA 7 | |
| 287 | +#define CTRY_SAUDI_ARABIA 966 | |
| 288 | +#define CTRY_SERBIA 381 | |
| 289 | +#define CTRY_SINGAPORE 65 | |
| 290 | +#define CTRY_SLOVAK 421 | |
| 291 | +#define CTRY_SLOVENIA 386 | |
| 292 | +#define CTRY_SOUTH_AFRICA 27 | |
| 293 | +#define CTRY_SOUTH_KOREA 82 | |
| 294 | +#define CTRY_SPAIN 34 | |
| 295 | +#define CTRY_SWEDEN 46 | |
| 296 | +#define CTRY_SWITZERLAND 41 | |
| 297 | +#define CTRY_SYRIA 963 | |
| 298 | +#define CTRY_TAIWAN 886 | |
| 299 | +#define CTRY_TATARSTAN 7 | |
| 300 | +#define CTRY_THAILAND 66 | |
| 301 | +#define CTRY_TRINIDAD_Y_TOBAGO 1 | |
| 302 | +#define CTRY_TUNISIA 216 | |
| 303 | +#define CTRY_TURKEY 90 | |
| 304 | +#define CTRY_UAE 971 | |
| 305 | +#define CTRY_UKRAINE 380 | |
| 306 | +#define CTRY_UNITED_KINGDOM 44 | |
| 307 | +#define CTRY_UNITED_STATES 1 | |
| 308 | +#define CTRY_URUGUAY 598 | |
| 309 | +#define CTRY_UZBEKISTAN 7 | |
| 310 | +#define CTRY_VENEZUELA 58 | |
| 311 | +#define CTRY_VIET_NAM 84 | |
| 312 | +#define CTRY_YEMEN 967 | |
| 313 | +#define CTRY_ZIMBABWE 263 | |
| 314 | +#define CAL_ICALINTVALUE 1 | |
| 315 | +#define CAL_SCALNAME 2 | |
| 316 | +#define CAL_IYEAROFFSETRANGE 3 | |
| 317 | +#define CAL_SERASTRING 4 | |
| 318 | +#define CAL_SSHORTDATE 5 | |
| 319 | +#define CAL_SLONGDATE 6 | |
| 320 | +#define CAL_SDAYNAME1 7 | |
| 321 | +#define CAL_SDAYNAME2 8 | |
| 322 | +#define CAL_SDAYNAME3 9 | |
| 323 | +#define CAL_SDAYNAME4 10 | |
| 324 | +#define CAL_SDAYNAME5 11 | |
| 325 | +#define CAL_SDAYNAME6 12 | |
| 326 | +#define CAL_SDAYNAME7 13 | |
| 327 | +#define CAL_SABBREVDAYNAME1 14 | |
| 328 | +#define CAL_SABBREVDAYNAME2 15 | |
| 329 | +#define CAL_SABBREVDAYNAME3 16 | |
| 330 | +#define CAL_SABBREVDAYNAME4 17 | |
| 331 | +#define CAL_SABBREVDAYNAME5 18 | |
| 332 | +#define CAL_SABBREVDAYNAME6 19 | |
| 333 | +#define CAL_SABBREVDAYNAME7 20 | |
| 334 | +#define CAL_SMONTHNAME1 21 | |
| 335 | +#define CAL_SMONTHNAME2 22 | |
| 336 | +#define CAL_SMONTHNAME3 23 | |
| 337 | +#define CAL_SMONTHNAME4 24 | |
| 338 | +#define CAL_SMONTHNAME5 25 | |
| 339 | +#define CAL_SMONTHNAME6 26 | |
| 340 | +#define CAL_SMONTHNAME7 27 | |
| 341 | +#define CAL_SMONTHNAME8 28 | |
| 342 | +#define CAL_SMONTHNAME9 29 | |
| 343 | +#define CAL_SMONTHNAME10 30 | |
| 344 | +#define CAL_SMONTHNAME11 31 | |
| 345 | +#define CAL_SMONTHNAME12 32 | |
| 346 | +#define CAL_SMONTHNAME13 33 | |
| 347 | +#define CAL_SABBREVMONTHNAME1 34 | |
| 348 | +#define CAL_SABBREVMONTHNAME2 35 | |
| 349 | +#define CAL_SABBREVMONTHNAME3 36 | |
| 350 | +#define CAL_SABBREVMONTHNAME4 37 | |
| 351 | +#define CAL_SABBREVMONTHNAME5 38 | |
| 352 | +#define CAL_SABBREVMONTHNAME6 39 | |
| 353 | +#define CAL_SABBREVMONTHNAME7 40 | |
| 354 | +#define CAL_SABBREVMONTHNAME8 41 | |
| 355 | +#define CAL_SABBREVMONTHNAME9 42 | |
| 356 | +#define CAL_SABBREVMONTHNAME10 43 | |
| 357 | +#define CAL_SABBREVMONTHNAME11 44 | |
| 358 | +#define CAL_SABBREVMONTHNAME12 45 | |
| 359 | +#define CAL_SABBREVMONTHNAME13 46 | |
| 360 | +#define CAL_GREGORIAN 1 | |
| 361 | +#define CAL_GREGORIAN_US 2 | |
| 362 | +#define CAL_JAPAN 3 | |
| 363 | +#define CAL_TAIWAN 4 | |
| 364 | +#define CAL_KOREA 5 | |
| 365 | +#define CAL_HIJRI 6 | |
| 366 | +#define CAL_THAI 7 | |
| 367 | +#define CAL_HEBREW 8 | |
| 368 | +#define CAL_GREGORIAN_ME_FRENCH 9 | |
| 369 | +#define CAL_GREGORIAN_ARABIC 10 | |
| 370 | +#define CAL_GREGORIAN_XLIT_ENGLISH 11 | |
| 371 | +#define CAL_GREGORIAN_XLIT_FRENCH 12 | |
| 372 | +#define CSTR_LESS_THAN 1 | |
| 373 | +#define CSTR_EQUAL 2 | |
| 374 | +#define CSTR_GREATER_THAN 3 | |
| 375 | +#define LGRPID_INSTALLED 1 | |
| 376 | +#define LGRPID_SUPPORTED 2 | |
| 377 | +#define LGRPID_WESTERN_EUROPE 1 | |
| 378 | +#define LGRPID_CENTRAL_EUROPE 2 | |
| 379 | +#define LGRPID_BALTIC 3 | |
| 380 | +#define LGRPID_GREEK 4 | |
| 381 | +#define LGRPID_CYRILLIC 5 | |
| 382 | +#define LGRPID_TURKISH 6 | |
| 383 | +#define LGRPID_JAPANESE 7 | |
| 384 | +#define LGRPID_KOREAN 8 | |
| 385 | +#define LGRPID_TRADITIONAL_CHINESE 9 | |
| 386 | +#define LGRPID_SIMPLIFIED_CHINESE 10 | |
| 387 | +#define LGRPID_THAI 11 | |
| 388 | +#define LGRPID_HEBREW 12 | |
| 389 | +#define LGRPID_ARABIC 13 | |
| 390 | +#define LGRPID_VIETNAMESE 14 | |
| 391 | +#define LGRPID_INDIC 15 | |
| 392 | +#define LGRPID_GEORGIAN 16 | |
| 393 | +#define LGRPID_ARMENIAN 17 | |
| 394 | + | |
| 395 | +#if(WINVER >= 0x0500) | |
| 396 | +#define LOCALE_SYEARMONTH 0x1006 | |
| 397 | +#define LOCALE_SENGCURRNAME 0x1007 | |
| 398 | +#define LOCALE_SNATIVECURRNAME 0x1008 | |
| 399 | +#define LOCALE_IDEFAULTEBCDICCODEPAGE 0x1012 | |
| 400 | +#define LOCALE_SSORTNAME 0x1013 | |
| 401 | +#define LOCALE_IDIGITSUBSTITUTION 0x1014 | |
| 402 | +#define LOCALE_IPAPERSIZE 0x100A | |
| 403 | +#define DATE_YEARMONTH 8 | |
| 404 | +#define DATE_LTRREADING 16 | |
| 405 | +#define DATE_RTLREADING 32 | |
| 406 | +#define MAP_EXPAND_LIGATURES 0x2000 | |
| 407 | +#define WC_NO_BEST_FIT_CHARS 1024 | |
| 408 | +#define CAL_SYEARMONTH 47 | |
| 409 | +#define CAL_ITWODIGITYEARMAX 48 | |
| 410 | +#define CAL_NOUSEROVERRIDE LOCALE_NOUSEROVERRIDE | |
| 411 | +#define CAL_RETURN_NUMBER LOCALE_RETURN_NUMBER | |
| 412 | +#define CAL_USE_CP_ACP LOCALE_USE_CP_ACP | |
| 413 | +#endif /* WINVER >= 0x0500 */ | |
| 414 | +#ifndef _BASETSD_H | |
| 415 | +typedef long LONG_PTR; | |
| 416 | +#endif | |
| 417 | + | |
| 418 | +#ifndef RC_INVOKED | |
| 419 | +typedef DWORD LCTYPE; | |
| 420 | +typedef DWORD CALTYPE; | |
| 421 | +typedef DWORD CALID; | |
| 422 | +typedef DWORD LGRPID; | |
| 423 | +typedef BOOL (CALLBACK *CALINFO_ENUMPROCA)(LPSTR); | |
| 424 | +typedef BOOL (CALLBACK *CALINFO_ENUMPROCW)(LPWSTR); | |
| 425 | +typedef BOOL (CALLBACK* CALINFO_ENUMPROCEXA)(LPSTR, CALID); | |
| 426 | +typedef BOOL (CALLBACK* CALINFO_ENUMPROCEXW)(LPWSTR, CALID); | |
| 427 | +typedef BOOL (CALLBACK* LANGUAGEGROUP_ENUMPROCA)(LGRPID, LPSTR, LPSTR, DWORD, LONG_PTR); | |
| 428 | +typedef BOOL (CALLBACK* LANGUAGEGROUP_ENUMPROCW)(LGRPID, LPWSTR, LPWSTR, DWORD, LONG_PTR); | |
| 429 | +typedef BOOL (CALLBACK* LANGGROUPLOCALE_ENUMPROCA)(LGRPID, LCID, LPSTR, LONG_PTR); | |
| 430 | +typedef BOOL (CALLBACK* LANGGROUPLOCALE_ENUMPROCW)(LGRPID, LCID, LPWSTR, LONG_PTR); | |
| 431 | +typedef BOOL (CALLBACK* UILANGUAGE_ENUMPROCW)(LPWSTR, LONG_PTR); | |
| 432 | +typedef BOOL (CALLBACK* UILANGUAGE_ENUMPROCA)(LPSTR, LONG_PTR); | |
| 433 | +typedef BOOL (CALLBACK *LOCALE_ENUMPROCA)(LPSTR); | |
| 434 | +typedef BOOL (CALLBACK *LOCALE_ENUMPROCW)(LPWSTR); | |
| 435 | +typedef BOOL (CALLBACK *CODEPAGE_ENUMPROCA)(LPSTR); | |
| 436 | +typedef BOOL (CALLBACK *CODEPAGE_ENUMPROCW)(LPWSTR); | |
| 437 | +typedef BOOL (CALLBACK *DATEFMT_ENUMPROCA)(LPSTR); | |
| 438 | +typedef BOOL (CALLBACK *DATEFMT_ENUMPROCW)(LPWSTR); | |
| 439 | +typedef BOOL (CALLBACK* DATEFMT_ENUMPROCEXA)(LPSTR, CALID); | |
| 440 | +typedef BOOL (CALLBACK* DATEFMT_ENUMPROCEXW)(LPWSTR, CALID); | |
| 441 | +typedef BOOL (CALLBACK *TIMEFMT_ENUMPROCA)(LPSTR); | |
| 442 | +typedef BOOL (CALLBACK *TIMEFMT_ENUMPROCW)(LPWSTR); | |
| 443 | + | |
| 444 | +typedef struct _cpinfo { | |
| 445 | + UINT MaxCharSize; | |
| 446 | + BYTE DefaultChar[MAX_DEFAULTCHAR]; | |
| 447 | + BYTE LeadByte[MAX_LEADBYTES]; | |
| 448 | +} CPINFO,*LPCPINFO; | |
| 449 | +typedef struct _cpinfoexA { | |
| 450 | + UINT MaxCharSize; | |
| 451 | + BYTE DefaultChar[MAX_DEFAULTCHAR]; | |
| 452 | + BYTE LeadByte[MAX_LEADBYTES]; | |
| 453 | + WCHAR UnicodeDefaultChar; | |
| 454 | + UINT CodePage; | |
| 455 | + CHAR CodePageName[MAX_PATH]; | |
| 456 | +} CPINFOEXA, *LPCPINFOEXA; | |
| 457 | +typedef struct _cpinfoexW { | |
| 458 | + UINT MaxCharSize; | |
| 459 | + BYTE DefaultChar[MAX_DEFAULTCHAR]; | |
| 460 | + BYTE LeadByte[MAX_LEADBYTES]; | |
| 461 | + WCHAR UnicodeDefaultChar; | |
| 462 | + UINT CodePage; | |
| 463 | + WCHAR CodePageName[MAX_PATH]; | |
| 464 | +} CPINFOEXW, *LPCPINFOEXW; | |
| 465 | +typedef struct _currencyfmtA { | |
| 466 | + UINT NumDigits; | |
| 467 | + UINT LeadingZero; | |
| 468 | + UINT Grouping; | |
| 469 | + LPSTR lpDecimalSep; | |
| 470 | + LPSTR lpThousandSep; | |
| 471 | + UINT NegativeOrder; | |
| 472 | + UINT PositiveOrder; | |
| 473 | + LPSTR lpCurrencySymbol; | |
| 474 | +} CURRENCYFMTA, *LPCURRENCYFMTA; | |
| 475 | +typedef struct _currencyfmtW { | |
| 476 | + UINT NumDigits; | |
| 477 | + UINT LeadingZero; | |
| 478 | + UINT Grouping; | |
| 479 | + LPWSTR lpDecimalSep; | |
| 480 | + LPWSTR lpThousandSep; | |
| 481 | + UINT NegativeOrder; | |
| 482 | + UINT PositiveOrder; | |
| 483 | + LPWSTR lpCurrencySymbol; | |
| 484 | +} CURRENCYFMTW, *LPCURRENCYFMTW; | |
| 485 | +typedef struct _numberfmtA { | |
| 486 | + UINT NumDigits; | |
| 487 | + UINT LeadingZero; | |
| 488 | + UINT Grouping; | |
| 489 | + LPSTR lpDecimalSep; | |
| 490 | + LPSTR lpThousandSep; | |
| 491 | + UINT NegativeOrder; | |
| 492 | +} NUMBERFMTA, *LPNUMBERFMTA; | |
| 493 | +typedef struct _numberfmtW { | |
| 494 | + UINT NumDigits; | |
| 495 | + UINT LeadingZero; | |
| 496 | + UINT Grouping; | |
| 497 | + LPWSTR lpDecimalSep; | |
| 498 | + LPWSTR lpThousandSep; | |
| 499 | + UINT NegativeOrder; | |
| 500 | +} NUMBERFMTW, *LPNUMBERFMTW; | |
| 501 | + | |
| 502 | +int WINAPI CompareStringA(LCID,DWORD,LPCSTR,int,LPCSTR,int); | |
| 503 | +int WINAPI CompareStringW(LCID,DWORD,LPCWSTR,int,LPCWSTR,int); | |
| 504 | +LCID WINAPI ConvertDefaultLocale(LCID); | |
| 505 | +BOOL WINAPI EnumCalendarInfoA(CALINFO_ENUMPROCA,LCID,CALID,CALTYPE); | |
| 506 | +BOOL WINAPI EnumCalendarInfoW(CALINFO_ENUMPROCW,LCID,CALID,CALTYPE); | |
| 507 | +BOOL WINAPI EnumDateFormatsA(DATEFMT_ENUMPROCA,LCID,DWORD); | |
| 508 | +BOOL WINAPI EnumDateFormatsW(DATEFMT_ENUMPROCW,LCID,DWORD); | |
| 509 | +BOOL WINAPI EnumSystemCodePagesA(CODEPAGE_ENUMPROCA,DWORD); | |
| 510 | +BOOL WINAPI EnumSystemCodePagesW(CODEPAGE_ENUMPROCW,DWORD); | |
| 511 | +BOOL WINAPI EnumSystemLocalesA(LOCALE_ENUMPROCA,DWORD); | |
| 512 | +BOOL WINAPI EnumSystemLocalesW(LOCALE_ENUMPROCW,DWORD); | |
| 513 | +BOOL WINAPI EnumTimeFormatsA(TIMEFMT_ENUMPROCA,LCID,DWORD); | |
| 514 | +BOOL WINAPI EnumTimeFormatsW(TIMEFMT_ENUMPROCW,LCID,DWORD); | |
| 515 | +int WINAPI FoldStringA(DWORD,LPCSTR,int,LPSTR,int); | |
| 516 | +int WINAPI FoldStringW(DWORD,LPCWSTR,int,LPWSTR,int); | |
| 517 | +UINT WINAPI GetACP(void); | |
| 518 | +BOOL WINAPI GetCPInfo(UINT,LPCPINFO); | |
| 519 | +BOOL WINAPI GetCPInfoExA(UINT,DWORD,LPCPINFOEXA); | |
| 520 | +BOOL WINAPI GetCPInfoExW(UINT,DWORD,LPCPINFOEXW); | |
| 521 | +int WINAPI GetCurrencyFormatA(LCID,DWORD,LPCSTR,const CURRENCYFMTA*,LPSTR,int); | |
| 522 | +int WINAPI GetCurrencyFormatW(LCID,DWORD,LPCWSTR,const CURRENCYFMTW*,LPWSTR,int); | |
| 523 | +int WINAPI GetDateFormatA(LCID,DWORD,const SYSTEMTIME*,LPCSTR,LPSTR,int); | |
| 524 | +int WINAPI GetDateFormatW(LCID,DWORD,const SYSTEMTIME*,LPCWSTR,LPWSTR,int); | |
| 525 | +int WINAPI GetLocaleInfoA(LCID,LCTYPE,LPSTR,int); | |
| 526 | +int WINAPI GetLocaleInfoW(LCID,LCTYPE,LPWSTR,int); | |
| 527 | +int WINAPI GetNumberFormatA(LCID,DWORD,LPCSTR,const NUMBERFMTA*,LPSTR,int); | |
| 528 | +int WINAPI GetNumberFormatW(LCID,DWORD,LPCWSTR,const NUMBERFMTW*,LPWSTR,int); | |
| 529 | +UINT WINAPI GetOEMCP(void); | |
| 530 | +BOOL WINAPI GetStringTypeA(LCID,DWORD,LPCSTR,int,LPWORD); | |
| 531 | +BOOL WINAPI GetStringTypeW(DWORD,LPCWSTR,int,LPWORD); | |
| 532 | +BOOL WINAPI GetStringTypeExA(LCID,DWORD,LPCSTR,int,LPWORD); | |
| 533 | +BOOL WINAPI GetStringTypeExW(LCID,DWORD,LPCWSTR,int,LPWORD); | |
| 534 | +LANGID WINAPI GetSystemDefaultLangID(void); | |
| 535 | +LCID WINAPI GetSystemDefaultLCID(void); | |
| 536 | +LCID WINAPI GetThreadLocale(void); | |
| 537 | +int WINAPI GetTimeFormatA(LCID,DWORD,const SYSTEMTIME*,LPCSTR,LPSTR,int); | |
| 538 | +int WINAPI GetTimeFormatW(LCID,DWORD,const SYSTEMTIME*,LPCWSTR,LPWSTR,int); | |
| 539 | +LANGID WINAPI GetUserDefaultLangID(void); | |
| 540 | +LCID WINAPI GetUserDefaultLCID(void); | |
| 541 | +BOOL WINAPI IsDBCSLeadByte(BYTE); | |
| 542 | +BOOL WINAPI IsDBCSLeadByteEx(UINT,BYTE); | |
| 543 | +BOOL WINAPI IsValidCodePage(UINT); | |
| 544 | +BOOL WINAPI IsValidLocale(LCID,DWORD); | |
| 545 | +int WINAPI LCMapStringA(LCID,DWORD,LPCSTR,int,LPSTR,int); | |
| 546 | +int WINAPI LCMapStringW(LCID,DWORD,LPCWSTR,int,LPWSTR,int); | |
| 547 | +int WINAPI MultiByteToWideChar(UINT,DWORD,LPCSTR,int,LPWSTR,int); | |
| 548 | +BOOL WINAPI SetLocaleInfoA(LCID,LCTYPE,LPCSTR); | |
| 549 | +BOOL WINAPI SetLocaleInfoW(LCID,LCTYPE,LPCWSTR); | |
| 550 | +BOOL WINAPI SetThreadLocale(LCID); | |
| 551 | +int WINAPI WideCharToMultiByte(UINT,DWORD,LPCWSTR,int,LPSTR,int,LPCSTR,LPBOOL); | |
| 552 | +#if (WINVER >= 0x0500) | |
| 553 | +BOOL WINAPI EnumCalendarInfoExA(CALINFO_ENUMPROCEXA,LCID,CALID,CALTYPE); | |
| 554 | +BOOL WINAPI EnumCalendarInfoExW(CALINFO_ENUMPROCEXW,LCID,CALID,CALTYPE); | |
| 555 | +BOOL WINAPI EnumDateFormatsExA(DATEFMT_ENUMPROCEXA,LCID,DWORD); | |
| 556 | +BOOL WINAPI EnumDateFormatsExW(DATEFMT_ENUMPROCEXW,LCID,DWORD); | |
| 557 | +BOOL WINAPI EnumSystemLanguageGroupsA(LANGUAGEGROUP_ENUMPROCA,DWORD,LONG_PTR); | |
| 558 | +BOOL WINAPI EnumSystemLanguageGroupsW(LANGUAGEGROUP_ENUMPROCW,DWORD,LONG_PTR); | |
| 559 | +BOOL WINAPI EnumLanguageGroupLocalesA(LANGGROUPLOCALE_ENUMPROCA,LGRPID,DWORD,LONG_PTR); | |
| 560 | +BOOL WINAPI EnumLanguageGroupLocalesW(LANGGROUPLOCALE_ENUMPROCW,LGRPID,DWORD,LONG_PTR); | |
| 561 | +BOOL WINAPI EnumUILanguagesA(UILANGUAGE_ENUMPROCA,DWORD,LONG_PTR); | |
| 562 | +BOOL WINAPI EnumUILanguagesW(UILANGUAGE_ENUMPROCW,DWORD,LONG_PTR); | |
| 563 | +LANGID WINAPI GetSystemDefaultUILanguage(void); | |
| 564 | +LANGID WINAPI GetUserDefaultUILanguage(void); | |
| 565 | +BOOL WINAPI IsValidLanguageGroup(LGRPID,DWORD); | |
| 566 | +#endif /* (WINVER >= 0x0500) */ | |
| 567 | + | |
| 568 | +#ifdef UNICODE | |
| 569 | +#define CALINFO_ENUMPROC CALINFO_ENUMPROCW | |
| 570 | +#define CALINFO_ENUMPROCEX CALINFO_ENUMPROCEXW | |
| 571 | +#define LOCALE_ENUMPROC LOCALE_ENUMPROCW | |
| 572 | +#define CODEPAGE_ENUMPROC CODEPAGE_ENUMPROCW | |
| 573 | +#define DATEFMT_ENUMPROC DATEFMT_ENUMPROCW | |
| 574 | +#define DATEFMT_ENUMPROCEX DATEFMT_ENUMPROCEXW | |
| 575 | +#define TIMEFMT_ENUMPROC TIMEFMT_ENUMPROCW | |
| 576 | +#define LANGUAGEGROUP_ENUMPROC LANGUAGEGROUP_ENUMPROCW | |
| 577 | +#define LANGGROUPLOCALE_ENUMPROC LANGGROUPLOCALE_ENUMPROCW | |
| 578 | +#define UILANGUAGE_ENUMPROC UILANGUAGE_ENUMPROCW | |
| 579 | +typedef CPINFOEXW CPINFOEX; | |
| 580 | +typedef LPCPINFOEXW LPCPINFOEX; | |
| 581 | +typedef CURRENCYFMTW CURRENCYFMT; | |
| 582 | +typedef LPCURRENCYFMTW LPCURRENCYFMT; | |
| 583 | +typedef NUMBERFMTW NUMBERFMT; | |
| 584 | +typedef LPNUMBERFMTW LPNUMBERFMT; | |
| 585 | +#define CompareString CompareStringW | |
| 586 | +#define EnumCalendarInfo EnumCalendarInfoW | |
| 587 | +#define EnumSystemCodePages EnumSystemCodePagesW | |
| 588 | +#define EnumSystemLocales EnumSystemLocalesW | |
| 589 | +#define EnumTimeFormats EnumTimeFormatsW | |
| 590 | +#define FoldString FoldStringW | |
| 591 | +#define GetCPInfoEx GetCPInfoExW | |
| 592 | +#define GetCurrencyFormat GetCurrencyFormatW | |
| 593 | +#define GetDateFormat GetDateFormatW | |
| 594 | +#define GetLocaleInfo GetLocaleInfoW | |
| 595 | +#define GetNumberFormat GetNumberFormatW | |
| 596 | +#define GetStringTypeEx GetStringTypeExW | |
| 597 | +#define GetTimeFormat GetTimeFormatW | |
| 598 | +#define LCMapString LCMapStringW | |
| 599 | +#define SetLocaleInfo SetLocaleInfoW | |
| 600 | +#if (WINVER >= 0x0500) | |
| 601 | +#define EnumCalendarInfoEx EnumCalendarInfoExW; | |
| 602 | +#define EnumDateFormatsEx EnumDateFormatsExW; | |
| 603 | +#define EnumSystemLanguageGroups EnumSystemLanguageGroupsW; | |
| 604 | +#define EnumLanguageGroupLocales EnumLanguageGroupLocalesW; | |
| 605 | +#define EnumUILanguages EnumUILanguagesW; | |
| 606 | +#endif /* (WINVER >= 0x0500) */ | |
| 607 | +#else | |
| 608 | +#define CALINFO_ENUMPROC CALINFO_ENUMPROCA | |
| 609 | +#define CALINFO_ENUMPROCEX CALINFO_ENUMPROCEXA | |
| 610 | +#define LOCALE_ENUMPROC LOCALE_ENUMPROCA | |
| 611 | +#define CODEPAGE_ENUMPROC CODEPAGE_ENUMPROCA | |
| 612 | +#define DATEFMT_ENUMPROC DATEFMT_ENUMPROCA | |
| 613 | +#define DATEFMT_ENUMPROCEX DATEFMT_ENUMPROCEXA | |
| 614 | +#define TIMEFMT_ENUMPROC TIMEFMT_ENUMPROCA | |
| 615 | +#define LANGUAGEGROUP_ENUMPROC LANGUAGEGROUP_ENUMPROCA | |
| 616 | +#define LANGGROUPLOCALE_ENUMPROC LANGGROUPLOCALE_ENUMPROCA | |
| 617 | +#define UILANGUAGE_ENUMPROC UILANGUAGE_ENUMPROCA | |
| 618 | +typedef CPINFOEXA CPINFOEX; | |
| 619 | +typedef LPCPINFOEXA LPCPINFOEX; | |
| 620 | +typedef CURRENCYFMTA CURRENCYFMT; | |
| 621 | +typedef LPCURRENCYFMTA LPCURRENCYFMT; | |
| 622 | +typedef NUMBERFMTA NUMBERFMT; | |
| 623 | +typedef LPNUMBERFMTA LPNUMBERFMT; | |
| 624 | +#define CompareString CompareStringA | |
| 625 | +#define EnumCalendarInfo EnumCalendarInfoA | |
| 626 | +#define EnumSystemCodePages EnumSystemCodePagesA | |
| 627 | +#define EnumSystemLocales EnumSystemLocalesA | |
| 628 | +#define EnumTimeFormats EnumTimeFormatsA | |
| 629 | +#define FoldString FoldStringA | |
| 630 | +#define GetCPInfoEx GetCPInfoExA | |
| 631 | +#define GetCurrencyFormat GetCurrencyFormatA | |
| 632 | +#define GetDateFormat GetDateFormatA | |
| 633 | +#define GetLocaleInfo GetLocaleInfoA | |
| 634 | +#define GetNumberFormat GetNumberFormatA | |
| 635 | +#define GetStringTypeEx GetStringTypeExA | |
| 636 | +#define GetTimeFormat GetTimeFormatA | |
| 637 | +#define LCMapString LCMapStringA | |
| 638 | +#define SetLocaleInfo SetLocaleInfoA | |
| 639 | +#if (WINVER >= 0x0500) | |
| 640 | +#define EnumCalendarInfoEx EnumCalendarInfoExA; | |
| 641 | +#define EnumDateFormatsEx EnumDateFormatsExA; | |
| 642 | +#define EnumSystemLanguageGroups EnumSystemLanguageGroupsA; | |
| 643 | +#define EnumLanguageGroupLocales EnumLanguageGroupLocalesA; | |
| 644 | +#define EnumUILanguages EnumUILanguagesA; | |
| 645 | +#endif /* (WINVER >= 0x0500) */ | |
| 646 | +#endif /* UNICODE */ | |
| 647 | +#endif /* RC_INVOKED */ | |
| 648 | +#ifdef __cplusplus | |
| 649 | +} | |
| 650 | +#endif | |
| 651 | +#endif | |
| @@ -0,0 +1,2667 @@ | ||
| 1 | +#ifndef _WINNT_H | |
| 2 | +#define _WINNT_H | |
| 3 | +#if __GNUC__ >=3 | |
| 4 | +#pragma GCC system_header | |
| 5 | +#endif | |
| 6 | + | |
| 7 | +/* translate GCC target defines to MS equivalents. Keep this synchronized | |
| 8 | + with windows.h. */ | |
| 9 | +#if defined(__i686__) && !defined(_M_IX86) | |
| 10 | +#define _M_IX86 600 | |
| 11 | +#elif defined(__i586__) && !defined(_M_IX86) | |
| 12 | +#define _M_IX86 500 | |
| 13 | +#elif defined(__i486__) && !defined(_M_IX86) | |
| 14 | +#define _M_IX86 400 | |
| 15 | +#elif defined(__i386__) && !defined(_M_IX86) | |
| 16 | +#define _M_IX86 300 | |
| 17 | +#endif | |
| 18 | +#if defined(_M_IX86) && !defined(_X86_) | |
| 19 | +#define _X86_ | |
| 20 | +#elif defined(_M_ALPHA) && !defined(_ALPHA_) | |
| 21 | +#define _ALPHA_ | |
| 22 | +#elif defined(_M_PPC) && !defined(_PPC_) | |
| 23 | +#define _PPC_ | |
| 24 | +#elif defined(_M_MRX000) && !defined(_MIPS_) | |
| 25 | +#define _MIPS_ | |
| 26 | +#elif defined(_M_M68K) && !defined(_68K_) | |
| 27 | +#define _68K_ | |
| 28 | +#endif | |
| 29 | + | |
| 30 | +#ifdef __cplusplus | |
| 31 | +extern "C" { | |
| 32 | +#endif | |
| 33 | + | |
| 34 | +#include <winerror.h> | |
| 35 | + | |
| 36 | +#ifndef RC_INVOKED | |
| 37 | +#include <string.h> | |
| 38 | + | |
| 39 | +/* FIXME: add more architectures. Is there a way to specify this in GCC? */ | |
| 40 | +#ifdef _X86_ | |
| 41 | +#define UNALIGNED | |
| 42 | +#else | |
| 43 | +#define UNALIGNED | |
| 44 | +#endif | |
| 45 | + | |
| 46 | +#ifndef VOID | |
| 47 | +#define VOID void | |
| 48 | +#endif | |
| 49 | +typedef char CHAR; | |
| 50 | +typedef short SHORT; | |
| 51 | +typedef long LONG; | |
| 52 | +typedef CHAR CCHAR; | |
| 53 | +typedef unsigned char UCHAR,*PUCHAR; | |
| 54 | +typedef unsigned short USHORT,*PUSHORT; | |
| 55 | +typedef unsigned long ULONG,*PULONG; | |
| 56 | +typedef char *PSZ; | |
| 57 | + | |
| 58 | +#ifndef _WCHAR_T_DEFINED | |
| 59 | +#define _WCHAR_T_DEFINED | |
| 60 | +#ifndef _WCHAR_T_ | |
| 61 | +#define _WCHAR_T_ | |
| 62 | +#undef __need_wchar_t | |
| 63 | +#ifndef __cplusplus | |
| 64 | +typedef unsigned short wchar_t; | |
| 65 | +#endif | |
| 66 | +#endif | |
| 67 | +#endif | |
| 68 | + | |
| 69 | +typedef wchar_t WCHAR; | |
| 70 | +typedef WCHAR *PWCHAR,*LPWCH,*PWCH,*NWPSTR,*LPWSTR,*PWSTR; | |
| 71 | +typedef CONST WCHAR *LPCWCH,*PCWCH,*LPCWSTR,*PCWSTR; | |
| 72 | +typedef CHAR *PCHAR,*LPCH,*PCH,*NPSTR,*LPSTR,*PSTR; | |
| 73 | +typedef CONST CHAR *LPCCH,*PCSTR,*LPCSTR; | |
| 74 | +#ifndef _TCHAR_DEFINED | |
| 75 | +#define _TCHAR_DEFINED | |
| 76 | +#ifdef UNICODE | |
| 77 | +/* | |
| 78 | + * NOTE: This tests UNICODE, which is different from the _UNICODE define | |
| 79 | + * used to differentiate standard C runtime calls. | |
| 80 | + */ | |
| 81 | +typedef WCHAR TCHAR; | |
| 82 | +typedef WCHAR _TCHAR; | |
| 83 | +#else | |
| 84 | +typedef CHAR TCHAR; | |
| 85 | +typedef CHAR _TCHAR; | |
| 86 | +#endif | |
| 87 | +#endif | |
| 88 | +typedef TCHAR TBYTE,*PTCH,*PTBYTE; | |
| 89 | +typedef TCHAR *LPTCH,*PTSTR,*LPTSTR,*LP,*PTCHAR; | |
| 90 | +typedef const TCHAR *LPCTSTR; | |
| 91 | +#ifdef UNICODE | |
| 92 | +/* | |
| 93 | + * __TEXT is a private macro whose specific use is to force the expansion of a | |
| 94 | + * macro passed as an argument to the macro TEXT. DO NOT use this | |
| 95 | + * macro within your programs. It's name and function could change without | |
| 96 | + * notice. | |
| 97 | + */ | |
| 98 | +#define __TEXT(q) L##q | |
| 99 | +#else | |
| 100 | +#define __TEXT(q) q | |
| 101 | +#endif | |
| 102 | +/* | |
| 103 | + * UNICODE a constant string when UNICODE is defined, else returns the string | |
| 104 | + * unmodified. | |
| 105 | + * The corresponding macros _TEXT() and _T() for mapping _UNICODE strings | |
| 106 | + * passed to C runtime functions are defined in mingw/tchar.h | |
| 107 | + */ | |
| 108 | +#define TEXT(q) __TEXT(q) | |
| 109 | +typedef SHORT *PSHORT; | |
| 110 | +typedef LONG *PLONG; | |
| 111 | +typedef void *HANDLE; | |
| 112 | +typedef HANDLE *PHANDLE,*LPHANDLE; | |
| 113 | +#ifdef STRICT | |
| 114 | +#define DECLARE_HANDLE(n) typedef struct n##__{int i;}*n | |
| 115 | +#else | |
| 116 | +#define DECLARE_HANDLE(n) typedef HANDLE n | |
| 117 | +#endif | |
| 118 | +typedef DWORD LCID; | |
| 119 | +typedef PDWORD PLCID; | |
| 120 | +typedef WORD LANGID; | |
| 121 | +#ifdef __GNUC__ | |
| 122 | +#define _HAVE_INT64 | |
| 123 | +#define _INTEGRAL_MAX_BITS 64 | |
| 124 | +#undef __int64 | |
| 125 | +#define __int64 long long | |
| 126 | +#elif defined(__WATCOMC__) && (defined(_INTEGRAL_MAX_BITS) && _INTEGRAL_MAX_BITS >= 64 ) | |
| 127 | +#define _HAVE_INT64 | |
| 128 | +#endif /* __GNUC__/__WATCOMC */ | |
| 129 | +#if defined(_HAVE_INT64) || (defined(_INTEGRAL_MAX_BITS) && _INTEGRAL_MAX_BITS >= 64) | |
| 130 | +typedef __int64 LONGLONG; | |
| 131 | +typedef unsigned __int64 DWORDLONG; | |
| 132 | +#else | |
| 133 | +typedef double LONGLONG,DWORDLONG; | |
| 134 | +#endif | |
| 135 | +typedef LONGLONG *PLONGLONG; | |
| 136 | +typedef DWORDLONG *PDWORDLONG; | |
| 137 | +typedef DWORDLONG ULONGLONG,*PULONGLONG; | |
| 138 | +typedef LONGLONG USN; | |
| 139 | +#ifdef _HAVE_INT64 | |
| 140 | +#define Int32x32To64(a,b) ((LONGLONG)(a)*(LONGLONG)(b)) | |
| 141 | +#define UInt32x32To64(a,b) ((DWORDLONG)(a)*(DWORDLONG)(b)) | |
| 142 | +#define Int64ShllMod32(a,b) ((DWORDLONG)(a)<<(b)) | |
| 143 | +#define Int64ShraMod32(a,b) ((LONGLONG)(a)>>(b)) | |
| 144 | +#define Int64ShrlMod32(a,b) ((DWORDLONG)(a)>>(b)) | |
| 145 | +#endif | |
| 146 | +#define ANSI_NULL '\0' | |
| 147 | +#define UNICODE_NULL L'\0' | |
| 148 | +typedef BYTE BOOLEAN,*PBOOLEAN; | |
| 149 | +#endif | |
| 150 | + | |
| 151 | +#define NTAPI __stdcall | |
| 152 | +#include <basetsd.h> | |
| 153 | +#define APPLICATION_ERROR_MASK 0x20000000 | |
| 154 | +#define ERROR_SEVERITY_SUCCESS 0x00000000 | |
| 155 | +#define ERROR_SEVERITY_INFORMATIONAL 0x40000000 | |
| 156 | +#define ERROR_SEVERITY_WARNING 0x80000000 | |
| 157 | +#define ERROR_SEVERITY_ERROR 0xC0000000 | |
| 158 | +#define COMPRESSION_FORMAT_NONE 0 | |
| 159 | +#define COMPRESSION_FORMAT_DEFAULT 1 | |
| 160 | +#define COMPRESSION_FORMAT_LZNT1 2 | |
| 161 | +#define COMPRESSION_ENGINE_STANDARD 0 | |
| 162 | +#define COMPRESSION_ENGINE_MAXIMUM 256 | |
| 163 | +#define ACCESS_ALLOWED_ACE_TYPE 0 | |
| 164 | +#define ACCESS_DENIED_ACE_TYPE 1 | |
| 165 | +#define ANYSIZE_ARRAY 1 | |
| 166 | +#define SYSTEM_AUDIT_ACE_TYPE 2 | |
| 167 | +#define SYSTEM_ALARM_ACE_TYPE 3 | |
| 168 | +#define OBJECT_INHERIT_ACE 1 | |
| 169 | +#define CONTAINER_INHERIT_ACE 2 | |
| 170 | +#define NO_PROPAGATE_INHERIT_ACE 4 | |
| 171 | +#define INHERIT_ONLY_ACE 8 | |
| 172 | +#define VALID_INHERIT_FLAGS 16 | |
| 173 | +#define SUCCESSFUL_ACCESS_ACE_FLAG 64 | |
| 174 | +#define FAILED_ACCESS_ACE_FLAG 128 | |
| 175 | +#define DELETE 0x00010000L | |
| 176 | +#define READ_CONTROL 0x20000L | |
| 177 | +#define WRITE_DAC 0x40000L | |
| 178 | +#define WRITE_OWNER 0x80000L | |
| 179 | +#define SYNCHRONIZE 0x100000L | |
| 180 | +#define STANDARD_RIGHTS_REQUIRED 0xF0000 | |
| 181 | +#define STANDARD_RIGHTS_READ 0x20000 | |
| 182 | +#define STANDARD_RIGHTS_WRITE 0x20000 | |
| 183 | +#define STANDARD_RIGHTS_EXECUTE 0x20000 | |
| 184 | +#define STANDARD_RIGHTS_ALL 0x1F0000 | |
| 185 | +#define SPECIFIC_RIGHTS_ALL 0xFFFF | |
| 186 | +#define ACCESS_SYSTEM_SECURITY 0x1000000 | |
| 187 | +#define MAXIMUM_ALLOWED 0x2000000 | |
| 188 | +#define GENERIC_READ 0x80000000 | |
| 189 | +#define GENERIC_WRITE 0x40000000 | |
| 190 | +#define GENERIC_EXECUTE 0x20000000 | |
| 191 | +#define GENERIC_ALL 0x10000000 | |
| 192 | +#define FILE_READ_DATA 1 | |
| 193 | +#define FILE_LIST_DIRECTORY 1 | |
| 194 | +#define FILE_WRITE_DATA 2 | |
| 195 | +#define FILE_ADD_FILE 2 | |
| 196 | +#define FILE_APPEND_DATA 4 | |
| 197 | +#define FILE_ADD_SUBDIRECTORY 4 | |
| 198 | +#define FILE_CREATE_PIPE_INSTANCE 4 | |
| 199 | +#define FILE_READ_EA 8 | |
| 200 | +#define FILE_READ_PROPERTIES 8 | |
| 201 | +#define FILE_WRITE_EA 16 | |
| 202 | +#define FILE_WRITE_PROPERTIES 16 | |
| 203 | +#define FILE_EXECUTE 32 | |
| 204 | +#define FILE_TRAVERSE 32 | |
| 205 | +#define FILE_DELETE_CHILD 64 | |
| 206 | +#define FILE_READ_ATTRIBUTES 128 | |
| 207 | +#define FILE_WRITE_ATTRIBUTES 256 | |
| 208 | +#define FILE_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|0x1FF) | |
| 209 | +#define FILE_GENERIC_READ (STANDARD_RIGHTS_READ|FILE_READ_DATA|FILE_READ_ATTRIBUTES|FILE_READ_EA|SYNCHRONIZE) | |
| 210 | +#define FILE_GENERIC_WRITE (STANDARD_RIGHTS_WRITE|FILE_WRITE_DATA|FILE_WRITE_ATTRIBUTES|FILE_WRITE_EA|FILE_APPEND_DATA|SYNCHRONIZE) | |
| 211 | +#define FILE_GENERIC_EXECUTE (STANDARD_RIGHTS_EXECUTE|FILE_READ_ATTRIBUTES|FILE_EXECUTE|SYNCHRONIZE) | |
| 212 | +#define FILE_SHARE_READ 1 | |
| 213 | +#define FILE_SHARE_WRITE 2 | |
| 214 | +#define FILE_SHARE_DELETE 4 | |
| 215 | +#define FILE_ATTRIBUTE_READONLY 1 | |
| 216 | +#define FILE_ATTRIBUTE_HIDDEN 2 | |
| 217 | +#define FILE_ATTRIBUTE_SYSTEM 4 | |
| 218 | +#define FILE_ATTRIBUTE_DIRECTORY 16 | |
| 219 | +#define FILE_ATTRIBUTE_ARCHIVE 32 | |
| 220 | +#define FILE_ATTRIBUTE_DEVICE 64 | |
| 221 | +#define FILE_ATTRIBUTE_NORMAL 128 | |
| 222 | +#define FILE_ATTRIBUTE_TEMPORARY 256 | |
| 223 | +#define FILE_ATTRIBUTE_SPARSE_FILE 512 | |
| 224 | +#define FILE_ATTRIBUTE_REPARSE_POINT 1024 | |
| 225 | +#define FILE_ATTRIBUTE_COMPRESSED 2048 | |
| 226 | +#define FILE_ATTRIBUTE_OFFLINE 0x1000 | |
| 227 | +#define FILE_ATTRIBUTE_NOT_CONTENT_INDEXED 0x2000 | |
| 228 | +#define FILE_ATTRIBUTE_ENCRYPTED 0x4000 | |
| 229 | +#define INVALID_FILE_ATTRIBUTES ((DWORD)-1) | |
| 230 | +#define FILE_NOTIFY_CHANGE_FILE_NAME 1 | |
| 231 | +#define FILE_NOTIFY_CHANGE_DIR_NAME 2 | |
| 232 | +#define FILE_NOTIFY_CHANGE_ATTRIBUTES 4 | |
| 233 | +#define FILE_NOTIFY_CHANGE_SIZE 8 | |
| 234 | +#define FILE_NOTIFY_CHANGE_LAST_WRITE 16 | |
| 235 | +#define FILE_NOTIFY_CHANGE_LAST_ACCESS 32 | |
| 236 | +#define FILE_NOTIFY_CHANGE_CREATION 64 | |
| 237 | +#define FILE_NOTIFY_CHANGE_SECURITY 256 | |
| 238 | +#define MAILSLOT_NO_MESSAGE ((DWORD)-1) | |
| 239 | +#define MAILSLOT_WAIT_FOREVER ((DWORD)-1) | |
| 240 | +#define FILE_CASE_SENSITIVE_SEARCH 1 | |
| 241 | +#define FILE_CASE_PRESERVED_NAMES 2 | |
| 242 | +#define FILE_UNICODE_ON_DISK 4 | |
| 243 | +#define FILE_PERSISTENT_ACLS 8 | |
| 244 | +#define FILE_FILE_COMPRESSION 16 | |
| 245 | +#define FILE_VOLUME_QUOTAS 32 | |
| 246 | +#define FILE_SUPPORTS_SPARSE_FILES 64 | |
| 247 | +#define FILE_SUPPORTS_REPARSE_POINTS 128 | |
| 248 | +#define FILE_SUPPORTS_REMOTE_STORAGE 256 | |
| 249 | +#define FILE_VOLUME_IS_COMPRESSED 0x8000 | |
| 250 | +#define FILE_SUPPORTS_OBJECT_IDS 0x10000 | |
| 251 | +#define FILE_SUPPORTS_ENCRYPTION 0x20000 | |
| 252 | +#define FILE_NAMED_STREAMS 0x40000 | |
| 253 | +#define IO_COMPLETION_MODIFY_STATE 2 | |
| 254 | +#define IO_COMPLETION_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|3) | |
| 255 | +#define DUPLICATE_CLOSE_SOURCE 1 | |
| 256 | +#define DUPLICATE_SAME_ACCESS 2 | |
| 257 | +#define PROCESS_TERMINATE 1 | |
| 258 | +#define PROCESS_CREATE_THREAD 2 | |
| 259 | +#define PROCESS_VM_OPERATION 8 | |
| 260 | +#define PROCESS_VM_READ 16 | |
| 261 | +#define PROCESS_VM_WRITE 32 | |
| 262 | +#define PROCESS_DUP_HANDLE 64 | |
| 263 | +#define PROCESS_CREATE_PROCESS 128 | |
| 264 | +#define PROCESS_SET_QUOTA 256 | |
| 265 | +#define PROCESS_SET_INFORMATION 512 | |
| 266 | +#define PROCESS_QUERY_INFORMATION 1024 | |
| 267 | +#define PROCESS_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|0xFFF) | |
| 268 | +#define THREAD_TERMINATE 1 | |
| 269 | +#define THREAD_SUSPEND_RESUME 2 | |
| 270 | +#define THREAD_GET_CONTEXT 8 | |
| 271 | +#define THREAD_SET_CONTEXT 16 | |
| 272 | +#define THREAD_SET_INFORMATION 32 | |
| 273 | +#define THREAD_QUERY_INFORMATION 64 | |
| 274 | +#define THREAD_SET_THREAD_TOKEN 128 | |
| 275 | +#define THREAD_IMPERSONATE 256 | |
| 276 | +#define THREAD_DIRECT_IMPERSONATION 0x200 | |
| 277 | +#define THREAD_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|0x3FF) | |
| 278 | +#define EXCEPTION_NONCONTINUABLE 1 | |
| 279 | +#define EXCEPTION_MAXIMUM_PARAMETERS 15 | |
| 280 | +/* | |
| 281 | + * To prevent gcc compiler warnings, bracket these defines when initialising | |
| 282 | + * a SID_IDENTIFIER_AUTHORITY, eg. | |
| 283 | + * SID_IDENTIFIER_AUTHORITY aNullSidAuthority = {SECURITY_NULL_SID_AUTHORITY}; | |
| 284 | + */ | |
| 285 | +#define SECURITY_NULL_SID_AUTHORITY {0,0,0,0,0,0} | |
| 286 | +#define SECURITY_WORLD_SID_AUTHORITY {0,0,0,0,0,1} | |
| 287 | +#define SECURITY_LOCAL_SID_AUTHORITY {0,0,0,0,0,2} | |
| 288 | +#define SECURITY_CREATOR_SID_AUTHORITY {0,0,0,0,0,3} | |
| 289 | +#define SECURITY_NON_UNIQUE_AUTHORITY {0,0,0,0,0,4} | |
| 290 | +#define SECURITY_NT_AUTHORITY {0,0,0,0,0,5} | |
| 291 | +#define SECURITY_NULL_RID 0 | |
| 292 | +#define SECURITY_WORLD_RID 0 | |
| 293 | +#define SECURITY_LOCAL_RID 0 | |
| 294 | +#define SECURITY_CREATOR_OWNER_RID 0 | |
| 295 | +#define SECURITY_CREATOR_GROUP_RID 1 | |
| 296 | +#define SECURITY_DIALUP_RID 1 | |
| 297 | +#define SECURITY_NETWORK_RID 2 | |
| 298 | +#define SECURITY_BATCH_RID 3 | |
| 299 | +#define SECURITY_INTERACTIVE_RID 4 | |
| 300 | +#define SECURITY_LOGON_IDS_RID 5 | |
| 301 | +#define SECURITY_SERVICE_RID 6 | |
| 302 | +#define SECURITY_LOCAL_SYSTEM_RID 18 | |
| 303 | +#define SECURITY_BUILTIN_DOMAIN_RID 32 | |
| 304 | +#define SECURITY_PRINCIPAL_SELF_RID 10 | |
| 305 | +#define SID_REVISION 1 | |
| 306 | +#define DOMAIN_USER_RID_ADMIN 0x1F4L | |
| 307 | +#define DOMAIN_USER_RID_GUEST 0x1F5L | |
| 308 | +#define DOMAIN_GROUP_RID_ADMINS 0x200L | |
| 309 | +#define DOMAIN_GROUP_RID_USERS 0x201L | |
| 310 | +#define DOMAIN_ALIAS_RID_ADMINS 0x220L | |
| 311 | +#define DOMAIN_ALIAS_RID_USERS 0x221L | |
| 312 | +#define DOMAIN_ALIAS_RID_GUESTS 0x222L | |
| 313 | +#define DOMAIN_ALIAS_RID_POWER_USERS 0x223L | |
| 314 | +#define DOMAIN_ALIAS_RID_ACCOUNT_OPS 0x224L | |
| 315 | +#define DOMAIN_ALIAS_RID_SYSTEM_OPS 0x225L | |
| 316 | +#define DOMAIN_ALIAS_RID_PRINT_OPS 0x226L | |
| 317 | +#define DOMAIN_ALIAS_RID_BACKUP_OPS 0x227L | |
| 318 | +#define DOMAIN_ALIAS_RID_REPLICATOR 0x228L | |
| 319 | +#define SE_CREATE_TOKEN_NAME TEXT("SeCreateTokenPrivilege") | |
| 320 | +#define SE_ASSIGNPRIMARYTOKEN_NAME TEXT("SeAssignPrimaryTokenPrivilege") | |
| 321 | +#define SE_LOCK_MEMORY_NAME TEXT("SeLockMemoryPrivilege") | |
| 322 | +#define SE_INCREASE_QUOTA_NAME TEXT("SeIncreaseQuotaPrivilege") | |
| 323 | +#define SE_UNSOLICITED_INPUT_NAME TEXT("SeUnsolicitedInputPrivilege") | |
| 324 | +#define SE_MACHINE_ACCOUNT_NAME TEXT("SeMachineAccountPrivilege") | |
| 325 | +#define SE_TCB_NAME TEXT("SeTcbPrivilege") | |
| 326 | +#define SE_SECURITY_NAME TEXT("SeSecurityPrivilege") | |
| 327 | +#define SE_TAKE_OWNERSHIP_NAME TEXT("SeTakeOwnershipPrivilege") | |
| 328 | +#define SE_LOAD_DRIVER_NAME TEXT("SeLoadDriverPrivilege") | |
| 329 | +#define SE_SYSTEM_PROFILE_NAME TEXT("SeSystemProfilePrivilege") | |
| 330 | +#define SE_SYSTEMTIME_NAME TEXT("SeSystemtimePrivilege") | |
| 331 | +#define SE_PROF_SINGLE_PROCESS_NAME TEXT("SeProfileSingleProcessPrivilege") | |
| 332 | +#define SE_INC_BASE_PRIORITY_NAME TEXT("SeIncreaseBasePriorityPrivilege") | |
| 333 | +#define SE_CREATE_PAGEFILE_NAME TEXT("SeCreatePagefilePrivilege") | |
| 334 | +#define SE_CREATE_PERMANENT_NAME TEXT("SeCreatePermanentPrivilege") | |
| 335 | +#define SE_BACKUP_NAME TEXT("SeBackupPrivilege") | |
| 336 | +#define SE_RESTORE_NAME TEXT("SeRestorePrivilege") | |
| 337 | +#define SE_SHUTDOWN_NAME TEXT("SeShutdownPrivilege") | |
| 338 | +#define SE_DEBUG_NAME TEXT("SeDebugPrivilege") | |
| 339 | +#define SE_AUDIT_NAME TEXT("SeAuditPrivilege") | |
| 340 | +#define SE_SYSTEM_ENVIRONMENT_NAME TEXT("SeSystemEnvironmentPrivilege") | |
| 341 | +#define SE_CHANGE_NOTIFY_NAME TEXT("SeChangeNotifyPrivilege") | |
| 342 | +#define SE_REMOTE_SHUTDOWN_NAME TEXT("SeRemoteShutdownPrivilege") | |
| 343 | +#define SE_GROUP_MANDATORY 1 | |
| 344 | +#define SE_GROUP_ENABLED_BY_DEFAULT 2 | |
| 345 | +#define SE_GROUP_ENABLED 4 | |
| 346 | +#define SE_GROUP_OWNER 8 | |
| 347 | +#define SE_GROUP_USE_FOR_DENY_ONLY 16 | |
| 348 | +#define SE_GROUP_LOGON_ID 3221225472U | |
| 349 | +#define SE_GROUP_RESOURCE 536870912 | |
| 350 | +#define LANG_NEUTRAL 0x00 | |
| 351 | +#define LANG_ARABIC 0x01 | |
| 352 | +#define LANG_BULGARIAN 0x02 | |
| 353 | +#define LANG_CATALAN 0x03 | |
| 354 | +#define LANG_CHINESE 0x04 | |
| 355 | +#define LANG_CZECH 0x05 | |
| 356 | +#define LANG_DANISH 0x06 | |
| 357 | +#define LANG_GERMAN 0x07 | |
| 358 | +#define LANG_GREEK 0x08 | |
| 359 | +#define LANG_ENGLISH 0x09 | |
| 360 | +#define LANG_SPANISH 0x0a | |
| 361 | +#define LANG_FINNISH 0x0b | |
| 362 | +#define LANG_FRENCH 0x0c | |
| 363 | +#define LANG_HEBREW 0x0d | |
| 364 | +#define LANG_HUNGARIAN 0x0e | |
| 365 | +#define LANG_ICELANDIC 0x0f | |
| 366 | +#define LANG_ITALIAN 0x10 | |
| 367 | +#define LANG_JAPANESE 0x11 | |
| 368 | +#define LANG_KOREAN 0x12 | |
| 369 | +#define LANG_DUTCH 0x13 | |
| 370 | +#define LANG_NORWEGIAN 0x14 | |
| 371 | +#define LANG_POLISH 0x15 | |
| 372 | +#define LANG_PORTUGUESE 0x16 | |
| 373 | +#define LANG_ROMANIAN 0x18 | |
| 374 | +#define LANG_RUSSIAN 0x19 | |
| 375 | +#define LANG_CROATIAN 0x1a | |
| 376 | +#define LANG_SERBIAN 0x1a | |
| 377 | +#define LANG_SLOVAK 0x1b | |
| 378 | +#define LANG_ALBANIAN 0x1c | |
| 379 | +#define LANG_SWEDISH 0x1d | |
| 380 | +#define LANG_THAI 0x1e | |
| 381 | +#define LANG_TURKISH 0x1f | |
| 382 | +#define LANG_URDU 0x20 | |
| 383 | +#define LANG_INDONESIAN 0x21 | |
| 384 | +#define LANG_UKRAINIAN 0x22 | |
| 385 | +#define LANG_BELARUSIAN 0x23 | |
| 386 | +#define LANG_SLOVENIAN 0x24 | |
| 387 | +#define LANG_ESTONIAN 0x25 | |
| 388 | +#define LANG_LATVIAN 0x26 | |
| 389 | +#define LANG_LITHUANIAN 0x27 | |
| 390 | +#define LANG_FARSI 0x29 | |
| 391 | +#define LANG_VIETNAMESE 0x2a | |
| 392 | +#define LANG_ARMENIAN 0x2b | |
| 393 | +#define LANG_AZERI 0x2c | |
| 394 | +#define LANG_BASQUE 0x2d | |
| 395 | +#define LANG_MACEDONIAN 0x2f | |
| 396 | +#define LANG_AFRIKAANS 0x36 | |
| 397 | +#define LANG_GEORGIAN 0x37 | |
| 398 | +#define LANG_FAEROESE 0x38 | |
| 399 | +#define LANG_HINDI 0x39 | |
| 400 | +#define LANG_MALAY 0x3e | |
| 401 | +#define LANG_KAZAK 0x3f | |
| 402 | +#define LANG_SWAHILI 0x41 | |
| 403 | +#define LANG_UZBEK 0x43 | |
| 404 | +#define LANG_TATAR 0x44 | |
| 405 | +#define LANG_BENGALI 0x45 | |
| 406 | +#define LANG_PUNJABI 0x46 | |
| 407 | +#define LANG_GUJARATI 0x47 | |
| 408 | +#define LANG_ORIYA 0x48 | |
| 409 | +#define LANG_TAMIL 0x49 | |
| 410 | +#define LANG_TELUGU 0x4a | |
| 411 | +#define LANG_KANNADA 0x4b | |
| 412 | +#define LANG_MALAYALAM 0x4c | |
| 413 | +#define LANG_ASSAMESE 0x4d | |
| 414 | +#define LANG_MARATHI 0x4e | |
| 415 | +#define LANG_SANSKRIT 0x4f | |
| 416 | +#define LANG_KONKANI 0x57 | |
| 417 | +#define LANG_MANIPURI 0x58 | |
| 418 | +#define LANG_SINDHI 0x59 | |
| 419 | +#define LANG_KASHMIRI 0x60 | |
| 420 | +#define LANG_NEPALI 0x61 | |
| 421 | +#define SUBLANG_NEUTRAL 0x00 | |
| 422 | +#define SUBLANG_DEFAULT 0x01 | |
| 423 | +#define SUBLANG_SYS_DEFAULT 0x02 | |
| 424 | +#define SUBLANG_ARABIC_SAUDI_ARABIA 0x01 | |
| 425 | +#define SUBLANG_ARABIC_IRAQ 0x02 | |
| 426 | +#define SUBLANG_ARABIC_EGYPT 0x03 | |
| 427 | +#define SUBLANG_ARABIC_LIBYA 0x04 | |
| 428 | +#define SUBLANG_ARABIC_ALGERIA 0x05 | |
| 429 | +#define SUBLANG_ARABIC_MOROCCO 0x06 | |
| 430 | +#define SUBLANG_ARABIC_TUNISIA 0x07 | |
| 431 | +#define SUBLANG_ARABIC_OMAN 0x08 | |
| 432 | +#define SUBLANG_ARABIC_YEMEN 0x09 | |
| 433 | +#define SUBLANG_ARABIC_SYRIA 0x0a | |
| 434 | +#define SUBLANG_ARABIC_JORDAN 0x0b | |
| 435 | +#define SUBLANG_ARABIC_LEBANON 0x0c | |
| 436 | +#define SUBLANG_ARABIC_KUWAIT 0x0d | |
| 437 | +#define SUBLANG_ARABIC_UAE 0x0e | |
| 438 | +#define SUBLANG_ARABIC_BAHRAIN 0x0f | |
| 439 | +#define SUBLANG_ARABIC_QATAR 0x10 | |
| 440 | +#define SUBLANG_AZERI_CYRILLIC 0x01 | |
| 441 | +#define SUBLANG_AZERI_LATIN 0x02 | |
| 442 | +#define SUBLANG_CHINESE_TRADITIONAL 0x01 | |
| 443 | +#define SUBLANG_CHINESE_SIMPLIFIED 0x02 | |
| 444 | +#define SUBLANG_CHINESE_HONGKONG 0x03 | |
| 445 | +#define SUBLANG_CHINESE_SINGAPORE 0x04 | |
| 446 | +#define SUBLANG_CHINESE_MACAU 0x05 | |
| 447 | +#define SUBLANG_DUTCH 0x01 | |
| 448 | +#define SUBLANG_DUTCH_BELGIAN 0x02 | |
| 449 | +#define SUBLANG_ENGLISH_US 0x01 | |
| 450 | +#define SUBLANG_ENGLISH_UK 0x02 | |
| 451 | +#define SUBLANG_ENGLISH_AUS 0x03 | |
| 452 | +#define SUBLANG_ENGLISH_CAN 0x04 | |
| 453 | +#define SUBLANG_ENGLISH_NZ 0x05 | |
| 454 | +#define SUBLANG_ENGLISH_EIRE 0x06 | |
| 455 | +#define SUBLANG_ENGLISH_SOUTH_AFRICA 0x07 | |
| 456 | +#define SUBLANG_ENGLISH_JAMAICA 0x08 | |
| 457 | +#define SUBLANG_ENGLISH_CARIBBEAN 0x09 | |
| 458 | +#define SUBLANG_ENGLISH_BELIZE 0x0a | |
| 459 | +#define SUBLANG_ENGLISH_TRINIDAD 0x0b | |
| 460 | +#define SUBLANG_ENGLISH_PHILIPPINES 0x0c | |
| 461 | +#define SUBLANG_ENGLISH_ZIMBABWE 0x0d | |
| 462 | +#define SUBLANG_FRENCH 0x01 | |
| 463 | +#define SUBLANG_FRENCH_BELGIAN 0x02 | |
| 464 | +#define SUBLANG_FRENCH_CANADIAN 0x03 | |
| 465 | +#define SUBLANG_FRENCH_SWISS 0x04 | |
| 466 | +#define SUBLANG_FRENCH_LUXEMBOURG 0x05 | |
| 467 | +#define SUBLANG_FRENCH_MONACO 0x06 | |
| 468 | +#define SUBLANG_GERMAN 0x01 | |
| 469 | +#define SUBLANG_GERMAN_SWISS 0x02 | |
| 470 | +#define SUBLANG_GERMAN_AUSTRIAN 0x03 | |
| 471 | +#define SUBLANG_GERMAN_LUXEMBOURG 0x04 | |
| 472 | +#define SUBLANG_GERMAN_LIECHTENSTEIN 0x05 | |
| 473 | +#define SUBLANG_ITALIAN 0x01 | |
| 474 | +#define SUBLANG_ITALIAN_SWISS 0x02 | |
| 475 | +#define SUBLANG_KASHMIRI_INDIA 0x02 | |
| 476 | +#define SUBLANG_KOREAN 0x01 | |
| 477 | +#define SUBLANG_LITHUANIAN 0x01 | |
| 478 | +#define SUBLANG_MALAY_MALAYSIA 0x01 | |
| 479 | +#define SUBLANG_MALAY_BRUNEI_DARUSSALAM 0x02 | |
| 480 | +#define SUBLANG_NEPALI_INDIA 0x02 | |
| 481 | +#define SUBLANG_NORWEGIAN_BOKMAL 0x01 | |
| 482 | +#define SUBLANG_NORWEGIAN_NYNORSK 0x02 | |
| 483 | +#define SUBLANG_PORTUGUESE 0x01 | |
| 484 | +#define SUBLANG_PORTUGUESE_BRAZILIAN 0x02 | |
| 485 | +#define SUBLANG_SERBIAN_LATIN 0x02 | |
| 486 | +#define SUBLANG_SERBIAN_CYRILLIC 0x03 | |
| 487 | +#define SUBLANG_SPANISH 0x01 | |
| 488 | +#define SUBLANG_SPANISH_MEXICAN 0x02 | |
| 489 | +#define SUBLANG_SPANISH_MODERN 0x03 | |
| 490 | +#define SUBLANG_SPANISH_GUATEMALA 0x04 | |
| 491 | +#define SUBLANG_SPANISH_COSTA_RICA 0x05 | |
| 492 | +#define SUBLANG_SPANISH_PANAMA 0x06 | |
| 493 | +#define SUBLANG_SPANISH_DOMINICAN_REPUBLIC 0x07 | |
| 494 | +#define SUBLANG_SPANISH_VENEZUELA 0x08 | |
| 495 | +#define SUBLANG_SPANISH_COLOMBIA 0x09 | |
| 496 | +#define SUBLANG_SPANISH_PERU 0x0a | |
| 497 | +#define SUBLANG_SPANISH_ARGENTINA 0x0b | |
| 498 | +#define SUBLANG_SPANISH_ECUADOR 0x0c | |
| 499 | +#define SUBLANG_SPANISH_CHILE 0x0d | |
| 500 | +#define SUBLANG_SPANISH_URUGUAY 0x0e | |
| 501 | +#define SUBLANG_SPANISH_PARAGUAY 0x0f | |
| 502 | +#define SUBLANG_SPANISH_BOLIVIA 0x10 | |
| 503 | +#define SUBLANG_SPANISH_EL_SALVADOR 0x11 | |
| 504 | +#define SUBLANG_SPANISH_HONDURAS 0x12 | |
| 505 | +#define SUBLANG_SPANISH_NICARAGUA 0x13 | |
| 506 | +#define SUBLANG_SPANISH_PUERTO_RICO 0x14 | |
| 507 | +#define SUBLANG_SWEDISH 0x01 | |
| 508 | +#define SUBLANG_SWEDISH_FINLAND 0x02 | |
| 509 | +#define SUBLANG_URDU_PAKISTAN 0x01 | |
| 510 | +#define SUBLANG_URDU_INDIA 0x02 | |
| 511 | +#define SUBLANG_UZBEK_LATIN 0x01 | |
| 512 | +#define SUBLANG_UZBEK_CYRILLIC 0x02 | |
| 513 | +#define NLS_VALID_LOCALE_MASK 1048575 | |
| 514 | +#define SORT_DEFAULT 0 | |
| 515 | +#define SORT_JAPANESE_XJIS 0 | |
| 516 | +#define SORT_JAPANESE_UNICODE 1 | |
| 517 | +#define SORT_CHINESE_BIG5 0 | |
| 518 | +#define SORT_CHINESE_PRCP 0 | |
| 519 | +#define SORT_CHINESE_UNICODE 1 | |
| 520 | +#define SORT_CHINESE_PRC 2 | |
| 521 | +#define SORT_CHINESE_BOPOMOFO 3 | |
| 522 | +#define SORT_KOREAN_KSC 0 | |
| 523 | +#define SORT_KOREAN_UNICODE 1 | |
| 524 | +#define SORT_GERMAN_PHONE_BOOK 1 | |
| 525 | +#define SORT_HUNGARIAN_DEFAULT 0 | |
| 526 | +#define SORT_HUNGARIAN_TECHNICAL 1 | |
| 527 | +#define SORT_GEORGIAN_TRADITIONAL 0 | |
| 528 | +#define SORT_GEORGIAN_MODERN 1 | |
| 529 | +#define MAKELANGID(p,s) ((((WORD)(s))<<10)|(WORD)(p)) | |
| 530 | +#define MAKELCID(l,s) ((DWORD)((((DWORD)((WORD)(s)))<<16)|((DWORD)((WORD)(l))))) | |
| 531 | +#define PRIMARYLANGID(l) ((WORD)(l)&0x3ff) | |
| 532 | +#define SORTIDFROMLCID(l) ((WORD)((((DWORD)(l))&NLS_VALID_LOCALE_MASK)>>16)) | |
| 533 | +#define SORTVERSIONFROMLCID(l) ((WORD)((((DWORD)(l))>>20)&0xf)) | |
| 534 | +#define SUBLANGID(l) ((WORD)(l)>>10) | |
| 535 | +#define LANGIDFROMLCID(l) ((WORD)(l)) | |
| 536 | +#define LANG_SYSTEM_DEFAULT MAKELANGID(LANG_NEUTRAL,SUBLANG_SYS_DEFAULT) | |
| 537 | +#define LANG_USER_DEFAULT MAKELANGID(LANG_NEUTRAL,SUBLANG_DEFAULT) | |
| 538 | +#define LOCALE_NEUTRAL MAKELCID(MAKELANGID(LANG_NEUTRAL,SUBLANG_NEUTRAL),SORT_DEFAULT) | |
| 539 | +#define ACL_REVISION 2 | |
| 540 | +#define ACL_REVISION_DS 4 | |
| 541 | +#define ACL_REVISION1 1 | |
| 542 | +#define ACL_REVISION2 2 | |
| 543 | +#define ACL_REVISION3 3 | |
| 544 | +#define ACL_REVISION4 4 | |
| 545 | +#define MIN_ACL_REVISION 2 | |
| 546 | +#define MAX_ACL_REVISION 4 | |
| 547 | +#define MINCHAR 0x80 | |
| 548 | +#define MAXCHAR 0x7f | |
| 549 | +#define MINSHORT 0x8000 | |
| 550 | +#define MAXSHORT 0x7fff | |
| 551 | +#define MINLONG 0x80000000 | |
| 552 | +#define MAXLONG 0x7fffffff | |
| 553 | +#define MAXBYTE 0xff | |
| 554 | +#define MAXWORD 0xffff | |
| 555 | +#define MAXDWORD 0xffffffff | |
| 556 | +#define PROCESSOR_INTEL_386 386 | |
| 557 | +#define PROCESSOR_INTEL_486 486 | |
| 558 | +#define PROCESSOR_INTEL_PENTIUM 586 | |
| 559 | +#define PROCESSOR_MIPS_R4000 4000 | |
| 560 | +#define PROCESSOR_ALPHA_21064 21064 | |
| 561 | +#define PROCESSOR_ARCHITECTURE_INTEL 0 | |
| 562 | +#define PROCESSOR_ARCHITECTURE_MIPS 1 | |
| 563 | +#define PROCESSOR_ARCHITECTURE_ALPHA 2 | |
| 564 | +#define PROCESSOR_ARCHITECTURE_PPC 3 | |
| 565 | +#define PROCESSOR_ARCHITECTURE_UNKNOWN 0xFFFF | |
| 566 | +#define PF_FLOATING_POINT_PRECISION_ERRATA 0 | |
| 567 | +#define PF_FLOATING_POINT_EMULATED 1 | |
| 568 | +#define PF_COMPARE_EXCHANGE_DOUBLE 2 | |
| 569 | +#define PF_MMX_INSTRUCTIONS_AVAILABLE 3 | |
| 570 | +#define PF_PPC_MOVEMEM_64BIT_OK 4 | |
| 571 | +#define PF_ALPHA_BYTE_INSTRUCTIONS 5 | |
| 572 | +#define PF_XMMI_INSTRUCTIONS_AVAILABLE 6 | |
| 573 | +#define PF_3DNOW_INSTRUCTIONS_AVAILABLE 7 | |
| 574 | +#define PF_RDTSC_INSTRUCTION_AVAILABLE 8 | |
| 575 | +#define PF_PAE_ENABLED 9 | |
| 576 | +#define PAGE_READONLY 2 | |
| 577 | +#define PAGE_READWRITE 4 | |
| 578 | +#define PAGE_WRITECOPY 8 | |
| 579 | +#define FILE_ACTION_ADDED 1 | |
| 580 | +#define FILE_ACTION_REMOVED 2 | |
| 581 | +#define FILE_ACTION_MODIFIED 3 | |
| 582 | +#define FILE_ACTION_RENAMED_OLD_NAME 4 | |
| 583 | +#define FILE_ACTION_RENAMED_NEW_NAME 5 | |
| 584 | +#define HEAP_NO_SERIALIZE 1 | |
| 585 | +#define HEAP_GROWABLE 2 | |
| 586 | +#define HEAP_GENERATE_EXCEPTIONS 4 | |
| 587 | +#define HEAP_ZERO_MEMORY 8 | |
| 588 | +#define HEAP_REALLOC_IN_PLACE_ONLY 16 | |
| 589 | +#define HEAP_TAIL_CHECKING_ENABLED 32 | |
| 590 | +#define HEAP_FREE_CHECKING_ENABLED 64 | |
| 591 | +#define HEAP_DISABLE_COALESCE_ON_FREE 128 | |
| 592 | +#define HEAP_CREATE_ALIGN_16 0x0000 | |
| 593 | +#define HEAP_CREATE_ENABLE_TRACING 0x20000 | |
| 594 | +#define HEAP_MAXIMUM_TAG 0xFFF | |
| 595 | +#define HEAP_PSEUDO_TAG_FLAG 0x8000 | |
| 596 | +#define HEAP_TAG_SHIFT 16 | |
| 597 | +#define HEAP_MAKE_TAG_FLAGS(b,o) ((DWORD)((b)+(o)<<16))) | |
| 598 | +#define KEY_QUERY_VALUE 1 | |
| 599 | +#define KEY_SET_VALUE 2 | |
| 600 | +#define KEY_CREATE_SUB_KEY 4 | |
| 601 | +#define KEY_ENUMERATE_SUB_KEYS 8 | |
| 602 | +#define KEY_NOTIFY 16 | |
| 603 | +#define KEY_CREATE_LINK 32 | |
| 604 | +#define KEY_WRITE 0x20006 | |
| 605 | +#define KEY_EXECUTE 0x20019 | |
| 606 | +#define KEY_READ 0x20019 | |
| 607 | +#define KEY_ALL_ACCESS 0xf003f | |
| 608 | +#define REG_WHOLE_HIVE_VOLATILE 1 | |
| 609 | +#define REG_REFRESH_HIVE 2 | |
| 610 | +#define REG_NO_LAZY_FLUSH 4 | |
| 611 | +#define REG_OPTION_RESERVED 0 | |
| 612 | +#define REG_OPTION_NON_VOLATILE 0 | |
| 613 | +#define REG_OPTION_VOLATILE 1 | |
| 614 | +#define REG_OPTION_CREATE_LINK 2 | |
| 615 | +#define REG_OPTION_BACKUP_RESTORE 4 | |
| 616 | +#define REG_OPTION_OPEN_LINK 8 | |
| 617 | +#define REG_LEGAL_OPTION 15 | |
| 618 | +#define OWNER_SECURITY_INFORMATION 1 | |
| 619 | +#define GROUP_SECURITY_INFORMATION 2 | |
| 620 | +#define DACL_SECURITY_INFORMATION 4 | |
| 621 | +#define SACL_SECURITY_INFORMATION 8 | |
| 622 | +#define MAXIMUM_PROCESSORS 32 | |
| 623 | +#define PAGE_EXECUTE 16 | |
| 624 | +#define PAGE_EXECUTE_READ 32 | |
| 625 | +#define PAGE_EXECUTE_READWRITE 64 | |
| 626 | +#define PAGE_GUARD 256 | |
| 627 | +#define PAGE_NOACCESS 1 | |
| 628 | +#define PAGE_NOCACHE 512 | |
| 629 | +#define MEM_COMMIT 0x1000 | |
| 630 | +#define MEM_RESERVE 0x2000 | |
| 631 | +#define MEM_DECOMMIT 0x4000 | |
| 632 | +#define MEM_RELEASE 0x8000 | |
| 633 | +#define MEM_FREE 0x10000 | |
| 634 | +#define MEM_PRIVATE 0x20000 | |
| 635 | +#define MEM_MAPPED 0x40000 | |
| 636 | +#define MEM_RESET 0x80000 | |
| 637 | +#define MEM_TOP_DOWN 0x100000 | |
| 638 | +#define MEM_WRITE_WATCH 0x200000 /* 98/Me */ | |
| 639 | +#define MEM_PHYSICAL 0x400000 | |
| 640 | +#define MEM_4MB_PAGES 0x80000000 | |
| 641 | +#define MEM_IMAGE 16777216 | |
| 642 | +#define SEC_FILE 0x800000 | |
| 643 | +#define SEC_IMAGE 0x1000000 | |
| 644 | +#define SEC_VLM 0x2000000 | |
| 645 | +#define SEC_RESERVE 0x4000000 | |
| 646 | +#define SEC_COMMIT 0x8000000 | |
| 647 | +#define SEC_NOCACHE 0x10000000 | |
| 648 | +#define PAGE_EXECUTE_WRITECOPY 128 | |
| 649 | +#define SECTION_EXTEND_SIZE 16 | |
| 650 | +#define SECTION_MAP_READ 4 | |
| 651 | +#define SECTION_MAP_WRITE 2 | |
| 652 | +#define SECTION_QUERY 1 | |
| 653 | +#define SECTION_ALL_ACCESS 0xf001f | |
| 654 | +#define MESSAGE_RESOURCE_UNICODE 1 | |
| 655 | +#define RTL_CRITSECT_TYPE 0 | |
| 656 | +#define RTL_RESOURCE_TYPE 1 | |
| 657 | +#define FIELD_OFFSET(t,f) ((LONG)&(((t*)0)->f)) | |
| 658 | +#define IMAGE_SIZEOF_FILE_HEADER 20 | |
| 659 | +#define IMAGE_FILE_RELOCS_STRIPPED 1 | |
| 660 | +#define IMAGE_FILE_EXECUTABLE_IMAGE 2 | |
| 661 | +#define IMAGE_FILE_LINE_NUMS_STRIPPED 4 | |
| 662 | +#define IMAGE_FILE_LOCAL_SYMS_STRIPPED 8 | |
| 663 | +#define IMAGE_FILE_BYTES_REVERSED_LO 128 | |
| 664 | +#define IMAGE_FILE_32BIT_MACHINE 256 | |
| 665 | +#define IMAGE_FILE_DEBUG_STRIPPED 512 | |
| 666 | +#define IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP 1024 | |
| 667 | +#define IMAGE_FILE_NET_RUN_FROM_SWAP 2048 | |
| 668 | +#define IMAGE_FILE_SYSTEM 4096 | |
| 669 | +#define IMAGE_FILE_DLL 8192 | |
| 670 | +#define IMAGE_FILE_UP_SYSTEM_ONLY 16384 | |
| 671 | +#define IMAGE_FILE_BYTES_REVERSED_HI 32768 | |
| 672 | +#define IMAGE_FILE_MACHINE_UNKNOWN 0 | |
| 673 | +#define IMAGE_FILE_MACHINE_I386 332 | |
| 674 | +#define IMAGE_FILE_MACHINE_R3000 354 | |
| 675 | +#define IMAGE_FILE_MACHINE_R4000 358 | |
| 676 | +#define IMAGE_FILE_MACHINE_R10000 360 | |
| 677 | +#define IMAGE_FILE_MACHINE_ALPHA 388 | |
| 678 | +#define IMAGE_FILE_MACHINE_POWERPC 496 | |
| 679 | +#define IMAGE_DOS_SIGNATURE 0x5A4D | |
| 680 | +#define IMAGE_OS2_SIGNATURE 0x454E | |
| 681 | +#define IMAGE_OS2_SIGNATURE_LE 0x454C | |
| 682 | +#define IMAGE_VXD_SIGNATURE 0x454C | |
| 683 | +#define IMAGE_NT_SIGNATURE 0x00004550 | |
| 684 | +#define IMAGE_NT_OPTIONAL_HDR_MAGIC 0x10b | |
| 685 | +#define IMAGE_ROM_OPTIONAL_HDR_MAGIC 0x107 | |
| 686 | +#define IMAGE_SEPARATE_DEBUG_SIGNATURE 0x4944 | |
| 687 | +#define IMAGE_NUMBEROF_DIRECTORY_ENTRIES 16 | |
| 688 | +#define IMAGE_SIZEOF_ROM_OPTIONAL_HEADER 56 | |
| 689 | +#define IMAGE_SIZEOF_STD_OPTIONAL_HEADER 28 | |
| 690 | +#define IMAGE_SIZEOF_NT_OPTIONAL_HEADER 224 | |
| 691 | +#define IMAGE_SIZEOF_SHORT_NAME 8 | |
| 692 | +#define IMAGE_SIZEOF_SECTION_HEADER 40 | |
| 693 | +#define IMAGE_SIZEOF_SYMBOL 18 | |
| 694 | +#define IMAGE_SIZEOF_AUX_SYMBOL 18 | |
| 695 | +#define IMAGE_SIZEOF_RELOCATION 10 | |
| 696 | +#define IMAGE_SIZEOF_BASE_RELOCATION 8 | |
| 697 | +#define IMAGE_SIZEOF_LINENUMBER 6 | |
| 698 | +#define IMAGE_SIZEOF_ARCHIVE_MEMBER_HDR 60 | |
| 699 | +#define SIZEOF_RFPO_DATA 16 | |
| 700 | +#define IMAGE_SUBSYSTEM_UNKNOWN 0 | |
| 701 | +#define IMAGE_SUBSYSTEM_NATIVE 1 | |
| 702 | +#define IMAGE_SUBSYSTEM_WINDOWS_GUI 2 | |
| 703 | +#define IMAGE_SUBSYSTEM_WINDOWS_CUI 3 | |
| 704 | +#define IMAGE_SUBSYSTEM_OS2_CUI 5 | |
| 705 | +#define IMAGE_SUBSYSTEM_POSIX_CUI 7 | |
| 706 | +#define IMAGE_FIRST_SECTION(h) ((PIMAGE_SECTION_HEADER) ((DWORD)h+FIELD_OFFSET(IMAGE_NT_HEADERS,OptionalHeader)+((PIMAGE_NT_HEADERS)(h))->FileHeader.SizeOfOptionalHeader)) | |
| 707 | +#define IMAGE_DIRECTORY_ENTRY_EXPORT 0 | |
| 708 | +#define IMAGE_DIRECTORY_ENTRY_IMPORT 1 | |
| 709 | +#define IMAGE_DIRECTORY_ENTRY_RESOURCE 2 | |
| 710 | +#define IMAGE_DIRECTORY_ENTRY_EXCEPTION 3 | |
| 711 | +#define IMAGE_DIRECTORY_ENTRY_SECURITY 4 | |
| 712 | +#define IMAGE_DIRECTORY_ENTRY_BASERELOC 5 | |
| 713 | +#define IMAGE_DIRECTORY_ENTRY_DEBUG 6 | |
| 714 | +#define IMAGE_DIRECTORY_ENTRY_COPYRIGHT 7 | |
| 715 | +#define IMAGE_DIRECTORY_ENTRY_GLOBALPTR 8 | |
| 716 | +#define IMAGE_DIRECTORY_ENTRY_TLS 9 | |
| 717 | +#define IMAGE_DIRECTORY_ENTRY_LOAD_CONFIG 10 | |
| 718 | +#define IMAGE_DIRECTORY_ENTRY_BOUND_IMPORT 11 | |
| 719 | +#define IMAGE_DIRECTORY_ENTRY_IAT 12 | |
| 720 | +#define IMAGE_SCN_TYPE_NO_PAD 8 | |
| 721 | +#define IMAGE_SCN_CNT_CODE 32 | |
| 722 | +#define IMAGE_SCN_CNT_INITIALIZED_DATA 64 | |
| 723 | +#define IMAGE_SCN_CNT_UNINITIALIZED_DATA 128 | |
| 724 | +#define IMAGE_SCN_LNK_OTHER 256 | |
| 725 | +#define IMAGE_SCN_LNK_INFO 512 | |
| 726 | +#define IMAGE_SCN_LNK_REMOVE 2048 | |
| 727 | +#define IMAGE_SCN_LNK_COMDAT 4096 | |
| 728 | +#define IMAGE_SCN_MEM_FARDATA 0x8000 | |
| 729 | +#define IMAGE_SCN_MEM_PURGEABLE 0x20000 | |
| 730 | +#define IMAGE_SCN_MEM_16BIT 0x20000 | |
| 731 | +#define IMAGE_SCN_MEM_LOCKED 0x40000 | |
| 732 | +#define IMAGE_SCN_MEM_PRELOAD 0x80000 | |
| 733 | +#define IMAGE_SCN_ALIGN_1BYTES 0x100000 | |
| 734 | +#define IMAGE_SCN_ALIGN_2BYTES 0x200000 | |
| 735 | +#define IMAGE_SCN_ALIGN_4BYTES 0x300000 | |
| 736 | +#define IMAGE_SCN_ALIGN_8BYTES 0x400000 | |
| 737 | +#define IMAGE_SCN_ALIGN_16BYTES 0x500000 | |
| 738 | +#define IMAGE_SCN_ALIGN_32BYTES 0x600000 | |
| 739 | +#define IMAGE_SCN_ALIGN_64BYTES 0x700000 | |
| 740 | +#define IMAGE_SCN_LNK_NRELOC_OVFL 0x1000000 | |
| 741 | +#define IMAGE_SCN_MEM_DISCARDABLE 0x2000000 | |
| 742 | +#define IMAGE_SCN_MEM_NOT_CACHED 0x4000000 | |
| 743 | +#define IMAGE_SCN_MEM_NOT_PAGED 0x8000000 | |
| 744 | +#define IMAGE_SCN_MEM_SHARED 0x10000000 | |
| 745 | +#define IMAGE_SCN_MEM_EXECUTE 0x20000000 | |
| 746 | +#define IMAGE_SCN_MEM_READ 0x40000000 | |
| 747 | +#define IMAGE_SCN_MEM_WRITE 0x80000000 | |
| 748 | +#define IMAGE_SYM_UNDEFINED 0 | |
| 749 | +#define IMAGE_SYM_ABSOLUTE (-1) | |
| 750 | +#define IMAGE_SYM_DEBUG (-2) | |
| 751 | +#define IMAGE_SYM_TYPE_NULL 0 | |
| 752 | +#define IMAGE_SYM_TYPE_VOID 1 | |
| 753 | +#define IMAGE_SYM_TYPE_CHAR 2 | |
| 754 | +#define IMAGE_SYM_TYPE_SHORT 3 | |
| 755 | +#define IMAGE_SYM_TYPE_INT 4 | |
| 756 | +#define IMAGE_SYM_TYPE_LONG 5 | |
| 757 | +#define IMAGE_SYM_TYPE_FLOAT 6 | |
| 758 | +#define IMAGE_SYM_TYPE_DOUBLE 7 | |
| 759 | +#define IMAGE_SYM_TYPE_STRUCT 8 | |
| 760 | +#define IMAGE_SYM_TYPE_UNION 9 | |
| 761 | +#define IMAGE_SYM_TYPE_ENUM 10 | |
| 762 | +#define IMAGE_SYM_TYPE_MOE 11 | |
| 763 | +#define IMAGE_SYM_TYPE_BYTE 12 | |
| 764 | +#define IMAGE_SYM_TYPE_WORD 13 | |
| 765 | +#define IMAGE_SYM_TYPE_UINT 14 | |
| 766 | +#define IMAGE_SYM_TYPE_DWORD 15 | |
| 767 | +#define IMAGE_SYM_TYPE_PCODE 32768 | |
| 768 | +#define IMAGE_SYM_DTYPE_NULL 0 | |
| 769 | +#define IMAGE_SYM_DTYPE_POINTER 1 | |
| 770 | +#define IMAGE_SYM_DTYPE_FUNCTION 2 | |
| 771 | +#define IMAGE_SYM_DTYPE_ARRAY 3 | |
| 772 | +#define IMAGE_SYM_CLASS_END_OF_FUNCTION (-1) | |
| 773 | +#define IMAGE_SYM_CLASS_NULL 0 | |
| 774 | +#define IMAGE_SYM_CLASS_AUTOMATIC 1 | |
| 775 | +#define IMAGE_SYM_CLASS_EXTERNAL 2 | |
| 776 | +#define IMAGE_SYM_CLASS_STATIC 3 | |
| 777 | +#define IMAGE_SYM_CLASS_REGISTER 4 | |
| 778 | +#define IMAGE_SYM_CLASS_EXTERNAL_DEF 5 | |
| 779 | +#define IMAGE_SYM_CLASS_LABEL 6 | |
| 780 | +#define IMAGE_SYM_CLASS_UNDEFINED_LABEL 7 | |
| 781 | +#define IMAGE_SYM_CLASS_MEMBER_OF_STRUCT 8 | |
| 782 | +#define IMAGE_SYM_CLASS_ARGUMENT 9 | |
| 783 | +#define IMAGE_SYM_CLASS_STRUCT_TAG 10 | |
| 784 | +#define IMAGE_SYM_CLASS_MEMBER_OF_UNION 11 | |
| 785 | +#define IMAGE_SYM_CLASS_UNION_TAG 12 | |
| 786 | +#define IMAGE_SYM_CLASS_TYPE_DEFINITION 13 | |
| 787 | +#define IMAGE_SYM_CLASS_UNDEFINED_STATIC 14 | |
| 788 | +#define IMAGE_SYM_CLASS_ENUM_TAG 15 | |
| 789 | +#define IMAGE_SYM_CLASS_MEMBER_OF_ENUM 16 | |
| 790 | +#define IMAGE_SYM_CLASS_REGISTER_PARAM 17 | |
| 791 | +#define IMAGE_SYM_CLASS_BIT_FIELD 18 | |
| 792 | +#define IMAGE_SYM_CLASS_FAR_EXTERNAL 68 | |
| 793 | +#define IMAGE_SYM_CLASS_BLOCK 100 | |
| 794 | +#define IMAGE_SYM_CLASS_FUNCTION 101 | |
| 795 | +#define IMAGE_SYM_CLASS_END_OF_STRUCT 102 | |
| 796 | +#define IMAGE_SYM_CLASS_FILE 103 | |
| 797 | +#define IMAGE_SYM_CLASS_SECTION 104 | |
| 798 | +#define IMAGE_SYM_CLASS_WEAK_EXTERNAL 105 | |
| 799 | +#define IMAGE_COMDAT_SELECT_NODUPLICATES 1 | |
| 800 | +#define IMAGE_COMDAT_SELECT_ANY 2 | |
| 801 | +#define IMAGE_COMDAT_SELECT_SAME_SIZE 3 | |
| 802 | +#define IMAGE_COMDAT_SELECT_EXACT_MATCH 4 | |
| 803 | +#define IMAGE_COMDAT_SELECT_ASSOCIATIVE 5 | |
| 804 | +#define IMAGE_COMDAT_SELECT_LARGEST 6 | |
| 805 | +#define IMAGE_COMDAT_SELECT_NEWEST 7 | |
| 806 | +#define IMAGE_WEAK_EXTERN_SEARCH_NOLIBRARY 1 | |
| 807 | +#define IMAGE_WEAK_EXTERN_SEARCH_LIBRARY 2 | |
| 808 | +#define IMAGE_WEAK_EXTERN_SEARCH_ALIAS 3 | |
| 809 | +#define IMAGE_REL_I386_ABSOLUTE 0 | |
| 810 | +#define IMAGE_REL_I386_DIR16 1 | |
| 811 | +#define IMAGE_REL_I386_REL16 2 | |
| 812 | +#define IMAGE_REL_I386_DIR32 6 | |
| 813 | +#define IMAGE_REL_I386_DIR32NB 7 | |
| 814 | +#define IMAGE_REL_I386_SEG12 9 | |
| 815 | +#define IMAGE_REL_I386_SECTION 10 | |
| 816 | +#define IMAGE_REL_I386_SECREL 11 | |
| 817 | +#define IMAGE_REL_I386_REL32 20 | |
| 818 | +#define IMAGE_REL_MIPS_ABSOLUTE 0 | |
| 819 | +#define IMAGE_REL_MIPS_REFHALF 1 | |
| 820 | +#define IMAGE_REL_MIPS_REFWORD 2 | |
| 821 | +#define IMAGE_REL_MIPS_JMPADDR 3 | |
| 822 | +#define IMAGE_REL_MIPS_REFHI 4 | |
| 823 | +#define IMAGE_REL_MIPS_REFLO 5 | |
| 824 | +#define IMAGE_REL_MIPS_GPREL 6 | |
| 825 | +#define IMAGE_REL_MIPS_LITERAL 7 | |
| 826 | +#define IMAGE_REL_MIPS_SECTION 10 | |
| 827 | +#define IMAGE_REL_MIPS_SECREL 11 | |
| 828 | +#define IMAGE_REL_MIPS_SECRELLO 12 | |
| 829 | +#define IMAGE_REL_MIPS_SECRELHI 13 | |
| 830 | +#define IMAGE_REL_MIPS_REFWORDNB 34 | |
| 831 | +#define IMAGE_REL_MIPS_PAIR 35 | |
| 832 | +#define IMAGE_REL_ALPHA_ABSOLUTE 0 | |
| 833 | +#define IMAGE_REL_ALPHA_REFLONG 1 | |
| 834 | +#define IMAGE_REL_ALPHA_REFQUAD 2 | |
| 835 | +#define IMAGE_REL_ALPHA_GPREL32 3 | |
| 836 | +#define IMAGE_REL_ALPHA_LITERAL 4 | |
| 837 | +#define IMAGE_REL_ALPHA_LITUSE 5 | |
| 838 | +#define IMAGE_REL_ALPHA_GPDISP 6 | |
| 839 | +#define IMAGE_REL_ALPHA_BRADDR 7 | |
| 840 | +#define IMAGE_REL_ALPHA_HINT 8 | |
| 841 | +#define IMAGE_REL_ALPHA_INLINE_REFLONG 9 | |
| 842 | +#define IMAGE_REL_ALPHA_REFHI 10 | |
| 843 | +#define IMAGE_REL_ALPHA_REFLO 11 | |
| 844 | +#define IMAGE_REL_ALPHA_PAIR 12 | |
| 845 | +#define IMAGE_REL_ALPHA_MATCH 13 | |
| 846 | +#define IMAGE_REL_ALPHA_SECTION 14 | |
| 847 | +#define IMAGE_REL_ALPHA_SECREL 15 | |
| 848 | +#define IMAGE_REL_ALPHA_REFLONGNB 16 | |
| 849 | +#define IMAGE_REL_ALPHA_SECRELLO 17 | |
| 850 | +#define IMAGE_REL_ALPHA_SECRELHI 18 | |
| 851 | +#define IMAGE_REL_PPC_ABSOLUTE 0 | |
| 852 | +#define IMAGE_REL_PPC_ADDR64 1 | |
| 853 | +#define IMAGE_REL_PPC_ADDR32 2 | |
| 854 | +#define IMAGE_REL_PPC_ADDR24 3 | |
| 855 | +#define IMAGE_REL_PPC_ADDR16 4 | |
| 856 | +#define IMAGE_REL_PPC_ADDR14 5 | |
| 857 | +#define IMAGE_REL_PPC_REL24 6 | |
| 858 | +#define IMAGE_REL_PPC_REL14 7 | |
| 859 | +#define IMAGE_REL_PPC_TOCREL16 8 | |
| 860 | +#define IMAGE_REL_PPC_TOCREL14 9 | |
| 861 | +#define IMAGE_REL_PPC_ADDR32NB 10 | |
| 862 | +#define IMAGE_REL_PPC_SECREL 11 | |
| 863 | +#define IMAGE_REL_PPC_SECTION 12 | |
| 864 | +#define IMAGE_REL_PPC_IFGLUE 13 | |
| 865 | +#define IMAGE_REL_PPC_IMGLUE 14 | |
| 866 | +#define IMAGE_REL_PPC_SECREL16 15 | |
| 867 | +#define IMAGE_REL_PPC_REFHI 16 | |
| 868 | +#define IMAGE_REL_PPC_REFLO 17 | |
| 869 | +#define IMAGE_REL_PPC_PAIR 18 | |
| 870 | +#define IMAGE_REL_PPC_TYPEMASK 255 | |
| 871 | +#define IMAGE_REL_PPC_NEG 256 | |
| 872 | +#define IMAGE_REL_PPC_BRTAKEN 512 | |
| 873 | +#define IMAGE_REL_PPC_BRNTAKEN 1024 | |
| 874 | +#define IMAGE_REL_PPC_TOCDEFN 2048 | |
| 875 | +#define IMAGE_REL_BASED_ABSOLUTE 0 | |
| 876 | +#define IMAGE_REL_BASED_HIGH 1 | |
| 877 | +#define IMAGE_REL_BASED_LOW 2 | |
| 878 | +#define IMAGE_REL_BASED_HIGHLOW 3 | |
| 879 | +#define IMAGE_REL_BASED_HIGHADJ 4 | |
| 880 | +#define IMAGE_REL_BASED_MIPS_JMPADDR 5 | |
| 881 | +#define IMAGE_ARCHIVE_START_SIZE 8 | |
| 882 | +#define IMAGE_ARCHIVE_START "!<arch>\n" | |
| 883 | +#define IMAGE_ARCHIVE_END "`\n" | |
| 884 | +#define IMAGE_ARCHIVE_PAD "\n" | |
| 885 | +#define IMAGE_ARCHIVE_LINKER_MEMBER "/ " | |
| 886 | +#define IMAGE_ARCHIVE_LONGNAMES_MEMBER "// " | |
| 887 | +#define IMAGE_ORDINAL_FLAG 0x80000000 | |
| 888 | +#define IMAGE_SNAP_BY_ORDINAL(o) ((o&IMAGE_ORDINAL_FLAG)!=0) | |
| 889 | +#define IMAGE_ORDINAL(o) (o&0xffff) | |
| 890 | +#define IMAGE_RESOURCE_NAME_IS_STRING 0x80000000 | |
| 891 | +#define IMAGE_RESOURCE_DATA_IS_DIRECTORY 0x80000000 | |
| 892 | +#define IMAGE_DEBUG_TYPE_UNKNOWN 0 | |
| 893 | +#define IMAGE_DEBUG_TYPE_COFF 1 | |
| 894 | +#define IMAGE_DEBUG_TYPE_CODEVIEW 2 | |
| 895 | +#define IMAGE_DEBUG_TYPE_FPO 3 | |
| 896 | +#define IMAGE_DEBUG_TYPE_MISC 4 | |
| 897 | +#define IMAGE_DEBUG_TYPE_EXCEPTION 5 | |
| 898 | +#define IMAGE_DEBUG_TYPE_FIXUP 6 | |
| 899 | +#define IMAGE_DEBUG_TYPE_OMAP_TO_SRC 7 | |
| 900 | +#define IMAGE_DEBUG_TYPE_OMAP_FROM_SRC 8 | |
| 901 | +#define FRAME_FPO 0 | |
| 902 | +#define FRAME_TRAP 1 | |
| 903 | +#define FRAME_TSS 2 | |
| 904 | +#define FRAME_NONFPO 3 | |
| 905 | +#define IMAGE_DEBUG_MISC_EXENAME 1 | |
| 906 | +#define N_BTMASK 0x000F | |
| 907 | +#define N_TMASK 0x0030 | |
| 908 | +#define N_TMASK1 0x00C0 | |
| 909 | +#define N_TMASK2 0x00F0 | |
| 910 | +#define N_BTSHFT 4 | |
| 911 | +#define N_TSHIFT 2 | |
| 912 | +#define IS_TEXT_UNICODE_ASCII16 1 | |
| 913 | +#define IS_TEXT_UNICODE_REVERSE_ASCII16 16 | |
| 914 | +#define IS_TEXT_UNICODE_STATISTICS 2 | |
| 915 | +#define IS_TEXT_UNICODE_REVERSE_STATISTICS 32 | |
| 916 | +#define IS_TEXT_UNICODE_CONTROLS 4 | |
| 917 | +#define IS_TEXT_UNICODE_REVERSE_CONTROLS 64 | |
| 918 | +#define IS_TEXT_UNICODE_SIGNATURE 8 | |
| 919 | +#define IS_TEXT_UNICODE_REVERSE_SIGNATURE 128 | |
| 920 | +#define IS_TEXT_UNICODE_ILLEGAL_CHARS 256 | |
| 921 | +#define IS_TEXT_UNICODE_ODD_LENGTH 512 | |
| 922 | +#define IS_TEXT_UNICODE_NULL_BYTES 4096 | |
| 923 | +#define IS_TEXT_UNICODE_UNICODE_MASK 15 | |
| 924 | +#define IS_TEXT_UNICODE_REVERSE_MASK 240 | |
| 925 | +#define IS_TEXT_UNICODE_NOT_UNICODE_MASK 3840 | |
| 926 | +#define IS_TEXT_UNICODE_NOT_ASCII_MASK 61440 | |
| 927 | +#define SERVICE_KERNEL_DRIVER 1 | |
| 928 | +#define SERVICE_FILE_SYSTEM_DRIVER 2 | |
| 929 | +#define SERVICE_ADAPTER 4 | |
| 930 | +#define SERVICE_RECOGNIZER_DRIVER 8 | |
| 931 | +#define SERVICE_DRIVER (SERVICE_KERNEL_DRIVER|SERVICE_FILE_SYSTEM_DRIVER|SERVICE_RECOGNIZER_DRIVER) | |
| 932 | +#define SERVICE_WIN32_OWN_PROCESS 16 | |
| 933 | +#define SERVICE_WIN32_SHARE_PROCESS 32 | |
| 934 | +#define SERVICE_WIN32 (SERVICE_WIN32_OWN_PROCESS|SERVICE_WIN32_SHARE_PROCESS) | |
| 935 | +#define SERVICE_INTERACTIVE_PROCESS 256 | |
| 936 | +#define SERVICE_TYPE_ALL (SERVICE_WIN32|SERVICE_ADAPTER|SERVICE_DRIVER|SERVICE_INTERACTIVE_PROCESS) | |
| 937 | +#define SERVICE_BOOT_START 0 | |
| 938 | +#define SERVICE_SYSTEM_START 1 | |
| 939 | +#define SERVICE_AUTO_START 2 | |
| 940 | +#define SERVICE_DEMAND_START 3 | |
| 941 | +#define SERVICE_DISABLED 4 | |
| 942 | +#define SERVICE_ERROR_IGNORE 0 | |
| 943 | +#define SERVICE_ERROR_NORMAL 1 | |
| 944 | +#define SERVICE_ERROR_SEVERE 2 | |
| 945 | +#define SERVICE_ERROR_CRITICAL 3 | |
| 946 | +#define SE_OWNER_DEFAULTED 1 | |
| 947 | +#define SE_GROUP_DEFAULTED 2 | |
| 948 | +#define SE_DACL_PRESENT 4 | |
| 949 | +#define SE_DACL_DEFAULTED 8 | |
| 950 | +#define SE_SACL_PRESENT 16 | |
| 951 | +#define SE_SACL_DEFAULTED 32 | |
| 952 | +#define SE_DACL_AUTO_INHERIT_REQ 256 | |
| 953 | +#define SE_SACL_AUTO_INHERIT_REQ 512 | |
| 954 | +#define SE_DACL_AUTO_INHERITED 1024 | |
| 955 | +#define SE_SACL_AUTO_INHERITED 2048 | |
| 956 | +#define SE_DACL_PROTECTED 4096 | |
| 957 | +#define SE_SACL_PROTECTED 8192 | |
| 958 | +#define SE_SELF_RELATIVE 0x8000 | |
| 959 | +#define SECURITY_DESCRIPTOR_MIN_LENGTH 20 | |
| 960 | +#define SECURITY_DESCRIPTOR_REVISION 1 | |
| 961 | +#define SECURITY_DESCRIPTOR_REVISION1 1 | |
| 962 | +#define SE_PRIVILEGE_ENABLED_BY_DEFAULT 1 | |
| 963 | +#define SE_PRIVILEGE_ENABLED 2 | |
| 964 | +#define SE_PRIVILEGE_USED_FOR_ACCESS 0x80000000 | |
| 965 | +#define PRIVILEGE_SET_ALL_NECESSARY 1 | |
| 966 | +#define SECURITY_MAX_IMPERSONATION_LEVEL SecurityDelegation | |
| 967 | +#define DEFAULT_IMPERSONATION_LEVEL SecurityImpersonation | |
| 968 | +#define SECURITY_DYNAMIC_TRACKING TRUE | |
| 969 | +#define SECURITY_STATIC_TRACKING FALSE | |
| 970 | +#define TOKEN_SOURCE_LENGTH 8 | |
| 971 | +#define TOKEN_ADJUST_DEFAULT 128 | |
| 972 | +#define TOKEN_ADJUST_GROUPS 64 | |
| 973 | +#define TOKEN_ADJUST_PRIVILEGES 32 | |
| 974 | +#define TOKEN_ALL_ACCESS 0xf00ff | |
| 975 | +#define TOKEN_ASSIGN_PRIMARY 1 | |
| 976 | +#define TOKEN_DUPLICATE 2 | |
| 977 | +#define TOKEN_EXECUTE 0x20000 | |
| 978 | +#define TOKEN_IMPERSONATE 4 | |
| 979 | +#define TOKEN_QUERY 8 | |
| 980 | +#define TOKEN_QUERY_SOURCE 16 | |
| 981 | +#define TOKEN_READ 0x20008 | |
| 982 | +#define TOKEN_WRITE 0x200e0 | |
| 983 | +#define DLL_PROCESS_DETACH 0 | |
| 984 | +#define DLL_PROCESS_ATTACH 1 | |
| 985 | +#define DLL_THREAD_ATTACH 2 | |
| 986 | +#define DLL_THREAD_DETACH 3 | |
| 987 | +#define DBG_CONTINUE 0x10002 | |
| 988 | +#define DBG_TERMINATE_THREAD 0x40010003 | |
| 989 | +#define DBG_TERMINATE_PROCESS 0x40010004 | |
| 990 | +#define DBG_CONTROL_C 0x40010005 | |
| 991 | +#define DBG_CONTROL_BREAK 0x40010008 | |
| 992 | +#define DBG_EXCEPTION_NOT_HANDLED 0x80010001 | |
| 993 | +#define TAPE_ABSOLUTE_POSITION 0 | |
| 994 | +#define TAPE_LOGICAL_POSITION 1 | |
| 995 | +#define TAPE_PSEUDO_LOGICAL_POSITION 2 | |
| 996 | +#define TAPE_REWIND 0 | |
| 997 | +#define TAPE_ABSOLUTE_BLOCK 1 | |
| 998 | +#define TAPE_LOGICAL_BLOCK 2 | |
| 999 | +#define TAPE_PSEUDO_LOGICAL_BLOCK 3 | |
| 1000 | +#define TAPE_SPACE_END_OF_DATA 4 | |
| 1001 | +#define TAPE_SPACE_RELATIVE_BLOCKS 5 | |
| 1002 | +#define TAPE_SPACE_FILEMARKS 6 | |
| 1003 | +#define TAPE_SPACE_SEQUENTIAL_FMKS 7 | |
| 1004 | +#define TAPE_SPACE_SETMARKS 8 | |
| 1005 | +#define TAPE_SPACE_SEQUENTIAL_SMKS 9 | |
| 1006 | +#define TAPE_DRIVE_FIXED 1 | |
| 1007 | +#define TAPE_DRIVE_SELECT 2 | |
| 1008 | +#define TAPE_DRIVE_INITIATOR 4 | |
| 1009 | +#define TAPE_DRIVE_ERASE_SHORT 16 | |
| 1010 | +#define TAPE_DRIVE_ERASE_LONG 32 | |
| 1011 | +#define TAPE_DRIVE_ERASE_BOP_ONLY 64 | |
| 1012 | +#define TAPE_DRIVE_ERASE_IMMEDIATE 128 | |
| 1013 | +#define TAPE_DRIVE_TAPE_CAPACITY 256 | |
| 1014 | +#define TAPE_DRIVE_TAPE_REMAINING 512 | |
| 1015 | +#define TAPE_DRIVE_FIXED_BLOCK 1024 | |
| 1016 | +#define TAPE_DRIVE_VARIABLE_BLOCK 2048 | |
| 1017 | +#define TAPE_DRIVE_WRITE_PROTECT 4096 | |
| 1018 | +#define TAPE_DRIVE_EOT_WZ_SIZE 8192 | |
| 1019 | +#define TAPE_DRIVE_ECC 0x10000 | |
| 1020 | +#define TAPE_DRIVE_COMPRESSION 0x20000 | |
| 1021 | +#define TAPE_DRIVE_PADDING 0x40000 | |
| 1022 | +#define TAPE_DRIVE_REPORT_SMKS 0x80000 | |
| 1023 | +#define TAPE_DRIVE_GET_ABSOLUTE_BLK 0x100000 | |
| 1024 | +#define TAPE_DRIVE_GET_LOGICAL_BLK 0x200000 | |
| 1025 | +#define TAPE_DRIVE_SET_EOT_WZ_SIZE 0x400000 | |
| 1026 | +#define TAPE_DRIVE_EJECT_MEDIA 0x1000000 | |
| 1027 | +#define TAPE_DRIVE_CLEAN_REQUESTS 0x2000000 | |
| 1028 | +#define TAPE_DRIVE_SET_CMP_BOP_ONLY 0x4000000 | |
| 1029 | +#define TAPE_DRIVE_RESERVED_BIT 0x80000000 | |
| 1030 | +#define TAPE_DRIVE_LOAD_UNLOAD 0x80000001 | |
| 1031 | +#define TAPE_DRIVE_TENSION 0x80000002 | |
| 1032 | +#define TAPE_DRIVE_LOCK_UNLOCK 0x80000004 | |
| 1033 | +#define TAPE_DRIVE_REWIND_IMMEDIATE 0x80000008 | |
| 1034 | +#define TAPE_DRIVE_SET_BLOCK_SIZE 0x80000010 | |
| 1035 | +#define TAPE_DRIVE_LOAD_UNLD_IMMED 0x80000020 | |
| 1036 | +#define TAPE_DRIVE_TENSION_IMMED 0x80000040 | |
| 1037 | +#define TAPE_DRIVE_LOCK_UNLK_IMMED 0x80000080 | |
| 1038 | +#define TAPE_DRIVE_SET_ECC 0x80000100 | |
| 1039 | +#define TAPE_DRIVE_SET_COMPRESSION 0x80000200 | |
| 1040 | +#define TAPE_DRIVE_SET_PADDING 0x80000400 | |
| 1041 | +#define TAPE_DRIVE_SET_REPORT_SMKS 0x80000800 | |
| 1042 | +#define TAPE_DRIVE_ABSOLUTE_BLK 0x80001000 | |
| 1043 | +#define TAPE_DRIVE_ABS_BLK_IMMED 0x80002000 | |
| 1044 | +#define TAPE_DRIVE_LOGICAL_BLK 0x80004000 | |
| 1045 | +#define TAPE_DRIVE_LOG_BLK_IMMED 0x80008000 | |
| 1046 | +#define TAPE_DRIVE_END_OF_DATA 0x80010000 | |
| 1047 | +#define TAPE_DRIVE_RELATIVE_BLKS 0x80020000 | |
| 1048 | +#define TAPE_DRIVE_FILEMARKS 0x80040000 | |
| 1049 | +#define TAPE_DRIVE_SEQUENTIAL_FMKS 0x80080000 | |
| 1050 | +#define TAPE_DRIVE_SETMARKS 0x80100000 | |
| 1051 | +#define TAPE_DRIVE_SEQUENTIAL_SMKS 0x80200000 | |
| 1052 | +#define TAPE_DRIVE_REVERSE_POSITION 0x80400000 | |
| 1053 | +#define TAPE_DRIVE_SPACE_IMMEDIATE 0x80800000 | |
| 1054 | +#define TAPE_DRIVE_WRITE_SETMARKS 0x81000000 | |
| 1055 | +#define TAPE_DRIVE_WRITE_FILEMARKS 0x82000000 | |
| 1056 | +#define TAPE_DRIVE_WRITE_SHORT_FMKS 0x84000000 | |
| 1057 | +#define TAPE_DRIVE_WRITE_LONG_FMKS 0x88000000 | |
| 1058 | +#define TAPE_DRIVE_WRITE_MARK_IMMED 0x90000000 | |
| 1059 | +#define TAPE_DRIVE_FORMAT 0xA0000000 | |
| 1060 | +#define TAPE_DRIVE_FORMAT_IMMEDIATE 0xC0000000 | |
| 1061 | +#define TAPE_DRIVE_HIGH_FEATURES 0x80000000 | |
| 1062 | +#define TAPE_FIXED_PARTITIONS 0 | |
| 1063 | +#define TAPE_INITIATOR_PARTITIONS 2 | |
| 1064 | +#define TAPE_SELECT_PARTITIONS 1 | |
| 1065 | +#define TAPE_FILEMARKS 1 | |
| 1066 | +#define TAPE_LONG_FILEMARKS 3 | |
| 1067 | +#define TAPE_SETMARKS 0 | |
| 1068 | +#define TAPE_SHORT_FILEMARKS 2 | |
| 1069 | +#define TAPE_ERASE_LONG 1 | |
| 1070 | +#define TAPE_ERASE_SHORT 0 | |
| 1071 | +#define TAPE_LOAD 0 | |
| 1072 | +#define TAPE_UNLOAD 1 | |
| 1073 | +#define TAPE_TENSION 2 | |
| 1074 | +#define TAPE_LOCK 3 | |
| 1075 | +#define TAPE_UNLOCK 4 | |
| 1076 | +#define TAPE_FORMAT 5 | |
| 1077 | +#define VER_PLATFORM_WIN32s 0 | |
| 1078 | +#define VER_PLATFORM_WIN32_WINDOWS 1 | |
| 1079 | +#define VER_PLATFORM_WIN32_NT 2 | |
| 1080 | +#define VER_NT_WORKSTATION 1 | |
| 1081 | +#define VER_NT_DOMAIN_CONTROLLER 2 | |
| 1082 | +#define VER_NT_SERVER 3 | |
| 1083 | +#define VER_SUITE_SMALLBUSINESS 1 | |
| 1084 | +#define VER_SUITE_ENTERPRISE 2 | |
| 1085 | +#define VER_SUITE_BACKOFFICE 4 | |
| 1086 | +#define VER_SUITE_TERMINAL 16 | |
| 1087 | +#define VER_SUITE_SMALLBUSINESS_RESTRICTED 32 | |
| 1088 | +#define VER_SUITE_DATACENTER 128 | |
| 1089 | +#define VER_SUITE_PERSONAL 512 | |
| 1090 | +#define BTYPE(x) ((x)&N_BTMASK) | |
| 1091 | +#define ISPTR(x) (((x)&N_TMASK)==(IMAGE_SYM_DTYPE_POINTER<<N_BTSHFT)) | |
| 1092 | +#define ISFCN(x) (((x)&N_TMASK)==(IMAGE_SYM_DTYPE_FUNCTION<<N_BTSHFT)) | |
| 1093 | +#define ISARY(x) (((x)&N_TMASK)==(IMAGE_SYM_DTYPE_ARRAY<<N_BTSHFT)) | |
| 1094 | +#define ISTAG(x) ((x)==IMAGE_SYM_CLASS_STRUCT_TAG||(x)==IMAGE_SYM_CLASS_UNION_TAG||(x)==IMAGE_SYM_CLASS_ENUM_TAG) | |
| 1095 | +#define INCREF(x) ((((x)&~N_BTMASK)<<N_TSHIFT)|(IMAGE_SYM_DTYPE_POINTER<<N_BTSHFT)|((x)&N_BTMASK)) | |
| 1096 | +#define DECREF(x) ((((x)>>N_TSHIFT)&~N_BTMASK)|((x)&N_BTMASK)) | |
| 1097 | +#define TLS_MINIMUM_AVAILABLE 64 | |
| 1098 | +#define REPARSE_DATA_BUFFER_HEADER_SIZE FIELD_OFFSET(REPARSE_DATA_BUFFER, GenericReparseBuffer) | |
| 1099 | +#define REPARSE_GUID_DATA_BUFFER_HEADER_SIZE FIELD_OFFSET(REPARSE_GUID_DATA_BUFFER, GenericReparseBuffer) | |
| 1100 | +#define MAXIMUM_REPARSE_DATA_BUFFER_SIZE 16384 | |
| 1101 | +#define IO_REPARSE_TAG_RESERVED_ZERO 0 | |
| 1102 | +#define IO_REPARSE_TAG_RESERVED_ONE 1 | |
| 1103 | +#define IO_REPARSE_TAG_RESERVED_RANGE IO_REPARSE_TAG_RESERVED_ONE | |
| 1104 | +#define IsReparseTagMicrosoft(x) ((x)&0x80000000) | |
| 1105 | +#define IsReparseTagHighLatency(x) ((x)&0x40000000) | |
| 1106 | +#define IsReparseTagNameSurrogate(x) ((x)&0x20000000) | |
| 1107 | +#define IO_REPARSE_TAG_VALID_VALUES 0xE000FFFF | |
| 1108 | +#define IsReparseTagValid(x) (!((x)&~IO_REPARSE_TAG_VALID_VALUES)&&((x)>IO_REPARSE_TAG_RESERVED_RANGE)) | |
| 1109 | +#define IO_REPARSE_TAG_SYMBOLIC_LINK IO_REPARSE_TAG_RESERVED_ZERO | |
| 1110 | +#define IO_REPARSE_TAG_MOUNT_POINT 0xA0000003 | |
| 1111 | +#ifndef RC_INVOKED | |
| 1112 | +typedef DWORD ACCESS_MASK, *PACCESS_MASK; | |
| 1113 | +#ifndef _GUID_DEFINED /* also defined in basetyps.h */ | |
| 1114 | +#define _GUID_DEFINED | |
| 1115 | +typedef struct _GUID { | |
| 1116 | + unsigned long Data1; | |
| 1117 | + unsigned short Data2; | |
| 1118 | + unsigned short Data3; | |
| 1119 | + unsigned char Data4[8]; | |
| 1120 | +} GUID, *REFGUID, *LPGUID; | |
| 1121 | +#define SYSTEM_LUID { QuadPart:999 } | |
| 1122 | +#endif /* _GUID_DEFINED */ | |
| 1123 | +typedef struct _GENERIC_MAPPING { | |
| 1124 | + ACCESS_MASK GenericRead; | |
| 1125 | + ACCESS_MASK GenericWrite; | |
| 1126 | + ACCESS_MASK GenericExecute; | |
| 1127 | + ACCESS_MASK GenericAll; | |
| 1128 | +} GENERIC_MAPPING, *PGENERIC_MAPPING; | |
| 1129 | +typedef struct _ACE_HEADER { | |
| 1130 | + BYTE AceType; | |
| 1131 | + BYTE AceFlags; | |
| 1132 | + WORD AceSize; | |
| 1133 | +} ACE_HEADER; | |
| 1134 | +typedef struct _ACCESS_ALLOWED_ACE { | |
| 1135 | + ACE_HEADER Header; | |
| 1136 | + ACCESS_MASK Mask; | |
| 1137 | + DWORD SidStart; | |
| 1138 | +} ACCESS_ALLOWED_ACE; | |
| 1139 | +typedef struct _ACCESS_DENIED_ACE { | |
| 1140 | + ACE_HEADER Header; | |
| 1141 | + ACCESS_MASK Mask; | |
| 1142 | + DWORD SidStart; | |
| 1143 | +} ACCESS_DENIED_ACE; | |
| 1144 | +typedef struct _SYSTEM_AUDIT_ACE { | |
| 1145 | + ACE_HEADER Header; | |
| 1146 | + ACCESS_MASK Mask; | |
| 1147 | + DWORD SidStart; | |
| 1148 | +} SYSTEM_AUDIT_ACE; | |
| 1149 | +typedef SYSTEM_AUDIT_ACE *PSYSTEM_AUDIT_ACE; | |
| 1150 | +typedef struct _SYSTEM_ALARM_ACE { | |
| 1151 | + ACE_HEADER Header; | |
| 1152 | + ACCESS_MASK Mask; | |
| 1153 | + DWORD SidStart; | |
| 1154 | +} SYSTEM_ALARM_ACE,*PSYSTEM_ALARM_ACE; | |
| 1155 | +typedef struct _ACCESS_ALLOWED_OBJECT_ACE { | |
| 1156 | + ACE_HEADER Header; | |
| 1157 | + ACCESS_MASK Mask; | |
| 1158 | + DWORD Flags; | |
| 1159 | + GUID ObjectType; | |
| 1160 | + GUID InheritedObjectType; | |
| 1161 | + DWORD SidStart; | |
| 1162 | +} ACCESS_ALLOWED_OBJECT_ACE,*PACCESS_ALLOWED_OBJECT_ACE; | |
| 1163 | +typedef struct _ACCESS_DENIED_OBJECT_ACE { | |
| 1164 | + ACE_HEADER Header; | |
| 1165 | + ACCESS_MASK Mask; | |
| 1166 | + DWORD Flags; | |
| 1167 | + GUID ObjectType; | |
| 1168 | + GUID InheritedObjectType; | |
| 1169 | + DWORD SidStart; | |
| 1170 | +} ACCESS_DENIED_OBJECT_ACE,*PACCESS_DENIED_OBJECT_ACE; | |
| 1171 | +typedef struct _SYSTEM_AUDIT_OBJECT_ACE { | |
| 1172 | + ACE_HEADER Header; | |
| 1173 | + ACCESS_MASK Mask; | |
| 1174 | + DWORD Flags; | |
| 1175 | + GUID ObjectType; | |
| 1176 | + GUID InheritedObjectType; | |
| 1177 | + DWORD SidStart; | |
| 1178 | +} SYSTEM_AUDIT_OBJECT_ACE,*PSYSTEM_AUDIT_OBJECT_ACE; | |
| 1179 | +typedef struct _SYSTEM_ALARM_OBJECT_ACE { | |
| 1180 | + ACE_HEADER Header; | |
| 1181 | + ACCESS_MASK Mask; | |
| 1182 | + DWORD Flags; | |
| 1183 | + GUID ObjectType; | |
| 1184 | + GUID InheritedObjectType; | |
| 1185 | + DWORD SidStart; | |
| 1186 | +} SYSTEM_ALARM_OBJECT_ACE,*PSYSTEM_ALARM_OBJECT_ACE; | |
| 1187 | +typedef struct _ACL { | |
| 1188 | + BYTE AclRevision; | |
| 1189 | + BYTE Sbz1; | |
| 1190 | + WORD AclSize; | |
| 1191 | + WORD AceCount; | |
| 1192 | + WORD Sbz2; | |
| 1193 | +} ACL,*PACL; | |
| 1194 | +typedef struct _ACL_REVISION_INFORMATION { | |
| 1195 | + DWORD AclRevision; | |
| 1196 | +} ACL_REVISION_INFORMATION; | |
| 1197 | +typedef struct _ACL_SIZE_INFORMATION { | |
| 1198 | + DWORD AceCount; | |
| 1199 | + DWORD AclBytesInUse; | |
| 1200 | + DWORD AclBytesFree; | |
| 1201 | +} ACL_SIZE_INFORMATION; | |
| 1202 | + | |
| 1203 | +/* FIXME: add more machines */ | |
| 1204 | +#ifdef _X86_ | |
| 1205 | +#define SIZE_OF_80387_REGISTERS 80 | |
| 1206 | +#define CONTEXT_i386 0x10000 | |
| 1207 | +#define CONTEXT_i486 0x10000 | |
| 1208 | +#define CONTEXT_CONTROL (CONTEXT_i386|0x00000001L) | |
| 1209 | +#define CONTEXT_INTEGER (CONTEXT_i386|0x00000002L) | |
| 1210 | +#define CONTEXT_SEGMENTS (CONTEXT_i386|0x00000004L) | |
| 1211 | +#define CONTEXT_FLOATING_POINT (CONTEXT_i386|0x00000008L) | |
| 1212 | +#define CONTEXT_DEBUG_REGISTERS (CONTEXT_i386|0x00000010L) | |
| 1213 | +#define CONTEXT_EXTENDED_REGISTERS (CONTEXT_i386|0x00000020L) | |
| 1214 | +#define CONTEXT_FULL (CONTEXT_CONTROL|CONTEXT_INTEGER|CONTEXT_SEGMENTS) | |
| 1215 | +#define MAXIMUM_SUPPORTED_EXTENSION 512 | |
| 1216 | +typedef struct _FLOATING_SAVE_AREA { | |
| 1217 | + DWORD ControlWord; | |
| 1218 | + DWORD StatusWord; | |
| 1219 | + DWORD TagWord; | |
| 1220 | + DWORD ErrorOffset; | |
| 1221 | + DWORD ErrorSelector; | |
| 1222 | + DWORD DataOffset; | |
| 1223 | + DWORD DataSelector; | |
| 1224 | + BYTE RegisterArea[80]; | |
| 1225 | + DWORD Cr0NpxState; | |
| 1226 | +} FLOATING_SAVE_AREA; | |
| 1227 | +typedef struct _CONTEXT { | |
| 1228 | + DWORD ContextFlags; | |
| 1229 | + DWORD Dr0; | |
| 1230 | + DWORD Dr1; | |
| 1231 | + DWORD Dr2; | |
| 1232 | + DWORD Dr3; | |
| 1233 | + DWORD Dr6; | |
| 1234 | + DWORD Dr7; | |
| 1235 | + FLOATING_SAVE_AREA FloatSave; | |
| 1236 | + DWORD SegGs; | |
| 1237 | + DWORD SegFs; | |
| 1238 | + DWORD SegEs; | |
| 1239 | + DWORD SegDs; | |
| 1240 | + DWORD Edi; | |
| 1241 | + DWORD Esi; | |
| 1242 | + DWORD Ebx; | |
| 1243 | + DWORD Edx; | |
| 1244 | + DWORD Ecx; | |
| 1245 | + DWORD Eax; | |
| 1246 | + DWORD Ebp; | |
| 1247 | + DWORD Eip; | |
| 1248 | + DWORD SegCs; | |
| 1249 | + DWORD EFlags; | |
| 1250 | + DWORD Esp; | |
| 1251 | + DWORD SegSs; | |
| 1252 | + BYTE ExtendedRegisters[MAXIMUM_SUPPORTED_EXTENSION]; | |
| 1253 | +} CONTEXT; | |
| 1254 | +#elif defined(_PPC_) | |
| 1255 | +#define CONTEXT_CONTROL 1L | |
| 1256 | +#define CONTEXT_FLOATING_POINT 2L | |
| 1257 | +#define CONTEXT_INTEGER 4L | |
| 1258 | +#define CONTEXT_DEBUG_REGISTERS 8L | |
| 1259 | +#define CONTEXT_FULL (CONTEXT_CONTROL|CONTEXT_FLOATING_POINT|CONTEXT_INTEGER) | |
| 1260 | +typedef struct { | |
| 1261 | + double Fpr0; | |
| 1262 | + double Fpr1; | |
| 1263 | + double Fpr2; | |
| 1264 | + double Fpr3; | |
| 1265 | + double Fpr4; | |
| 1266 | + double Fpr5; | |
| 1267 | + double Fpr6; | |
| 1268 | + double Fpr7; | |
| 1269 | + double Fpr8; | |
| 1270 | + double Fpr9; | |
| 1271 | + double Fpr10; | |
| 1272 | + double Fpr11; | |
| 1273 | + double Fpr12; | |
| 1274 | + double Fpr13; | |
| 1275 | + double Fpr14; | |
| 1276 | + double Fpr15; | |
| 1277 | + double Fpr16; | |
| 1278 | + double Fpr17; | |
| 1279 | + double Fpr18; | |
| 1280 | + double Fpr19; | |
| 1281 | + double Fpr20; | |
| 1282 | + double Fpr21; | |
| 1283 | + double Fpr22; | |
| 1284 | + double Fpr23; | |
| 1285 | + double Fpr24; | |
| 1286 | + double Fpr25; | |
| 1287 | + double Fpr26; | |
| 1288 | + double Fpr27; | |
| 1289 | + double Fpr28; | |
| 1290 | + double Fpr29; | |
| 1291 | + double Fpr30; | |
| 1292 | + double Fpr31; | |
| 1293 | + double Fpscr; | |
| 1294 | + DWORD Gpr0; | |
| 1295 | + DWORD Gpr1; | |
| 1296 | + DWORD Gpr2; | |
| 1297 | + DWORD Gpr3; | |
| 1298 | + DWORD Gpr4; | |
| 1299 | + DWORD Gpr5; | |
| 1300 | + DWORD Gpr6; | |
| 1301 | + DWORD Gpr7; | |
| 1302 | + DWORD Gpr8; | |
| 1303 | + DWORD Gpr9; | |
| 1304 | + DWORD Gpr10; | |
| 1305 | + DWORD Gpr11; | |
| 1306 | + DWORD Gpr12; | |
| 1307 | + DWORD Gpr13; | |
| 1308 | + DWORD Gpr14; | |
| 1309 | + DWORD Gpr15; | |
| 1310 | + DWORD Gpr16; | |
| 1311 | + DWORD Gpr17; | |
| 1312 | + DWORD Gpr18; | |
| 1313 | + DWORD Gpr19; | |
| 1314 | + DWORD Gpr20; | |
| 1315 | + DWORD Gpr21; | |
| 1316 | + DWORD Gpr22; | |
| 1317 | + DWORD Gpr23; | |
| 1318 | + DWORD Gpr24; | |
| 1319 | + DWORD Gpr25; | |
| 1320 | + DWORD Gpr26; | |
| 1321 | + DWORD Gpr27; | |
| 1322 | + DWORD Gpr28; | |
| 1323 | + DWORD Gpr29; | |
| 1324 | + DWORD Gpr30; | |
| 1325 | + DWORD Gpr31; | |
| 1326 | + DWORD Cr; | |
| 1327 | + DWORD Xer; | |
| 1328 | + DWORD Msr; | |
| 1329 | + DWORD Iar; | |
| 1330 | + DWORD Lr; | |
| 1331 | + DWORD Ctr; | |
| 1332 | + DWORD ContextFlags; | |
| 1333 | + DWORD Fill[3]; | |
| 1334 | + DWORD Dr0; | |
| 1335 | + DWORD Dr1; | |
| 1336 | + DWORD Dr2; | |
| 1337 | + DWORD Dr3; | |
| 1338 | + DWORD Dr4; | |
| 1339 | + DWORD Dr5; | |
| 1340 | + DWORD Dr6; | |
| 1341 | + DWORD Dr7; | |
| 1342 | +} CONTEXT; | |
| 1343 | +#elif defined(_ALPHA_) | |
| 1344 | +#define CONTEXT_ALPHA 0x20000 | |
| 1345 | +#define CONTEXT_CONTROL (CONTEXT_ALPHA|1L) | |
| 1346 | +#define CONTEXT_FLOATING_POINT (CONTEXT_ALPHA|2L) | |
| 1347 | +#define CONTEXT_INTEGER (CONTEXT_ALPHA|4L) | |
| 1348 | +#define CONTEXT_FULL (CONTEXT_CONTROL|CONTEXT_FLOATING_POINT|CONTEXT_INTEGER) | |
| 1349 | +typedef struct _CONTEXT { | |
| 1350 | + ULONGLONG FltF0; | |
| 1351 | + ULONGLONG FltF1; | |
| 1352 | + ULONGLONG FltF2; | |
| 1353 | + ULONGLONG FltF3; | |
| 1354 | + ULONGLONG FltF4; | |
| 1355 | + ULONGLONG FltF5; | |
| 1356 | + ULONGLONG FltF6; | |
| 1357 | + ULONGLONG FltF7; | |
| 1358 | + ULONGLONG FltF8; | |
| 1359 | + ULONGLONG FltF9; | |
| 1360 | + ULONGLONG FltF10; | |
| 1361 | + ULONGLONG FltF11; | |
| 1362 | + ULONGLONG FltF12; | |
| 1363 | + ULONGLONG FltF13; | |
| 1364 | + ULONGLONG FltF14; | |
| 1365 | + ULONGLONG FltF15; | |
| 1366 | + ULONGLONG FltF16; | |
| 1367 | + ULONGLONG FltF17; | |
| 1368 | + ULONGLONG FltF18; | |
| 1369 | + ULONGLONG FltF19; | |
| 1370 | + ULONGLONG FltF20; | |
| 1371 | + ULONGLONG FltF21; | |
| 1372 | + ULONGLONG FltF22; | |
| 1373 | + ULONGLONG FltF23; | |
| 1374 | + ULONGLONG FltF24; | |
| 1375 | + ULONGLONG FltF25; | |
| 1376 | + ULONGLONG FltF26; | |
| 1377 | + ULONGLONG FltF27; | |
| 1378 | + ULONGLONG FltF28; | |
| 1379 | + ULONGLONG FltF29; | |
| 1380 | + ULONGLONG FltF30; | |
| 1381 | + ULONGLONG FltF31; | |
| 1382 | + ULONGLONG IntV0; | |
| 1383 | + ULONGLONG IntT0; | |
| 1384 | + ULONGLONG IntT1; | |
| 1385 | + ULONGLONG IntT2; | |
| 1386 | + ULONGLONG IntT3; | |
| 1387 | + ULONGLONG IntT4; | |
| 1388 | + ULONGLONG IntT5; | |
| 1389 | + ULONGLONG IntT6; | |
| 1390 | + ULONGLONG IntT7; | |
| 1391 | + ULONGLONG IntS0; | |
| 1392 | + ULONGLONG IntS1; | |
| 1393 | + ULONGLONG IntS2; | |
| 1394 | + ULONGLONG IntS3; | |
| 1395 | + ULONGLONG IntS4; | |
| 1396 | + ULONGLONG IntS5; | |
| 1397 | + ULONGLONG IntFp; | |
| 1398 | + ULONGLONG IntA0; | |
| 1399 | + ULONGLONG IntA1; | |
| 1400 | + ULONGLONG IntA2; | |
| 1401 | + ULONGLONG IntA3; | |
| 1402 | + ULONGLONG IntA4; | |
| 1403 | + ULONGLONG IntA5; | |
| 1404 | + ULONGLONG IntT8; | |
| 1405 | + ULONGLONG IntT9; | |
| 1406 | + ULONGLONG IntT10; | |
| 1407 | + ULONGLONG IntT11; | |
| 1408 | + ULONGLONG IntRa; | |
| 1409 | + ULONGLONG IntT12; | |
| 1410 | + ULONGLONG IntAt; | |
| 1411 | + ULONGLONG IntGp; | |
| 1412 | + ULONGLONG IntSp; | |
| 1413 | + ULONGLONG IntZero; | |
| 1414 | + ULONGLONG Fpcr; | |
| 1415 | + ULONGLONG SoftFpcr; | |
| 1416 | + ULONGLONG Fir; | |
| 1417 | + DWORD Psr; | |
| 1418 | + DWORD ContextFlags; | |
| 1419 | + DWORD Fill[4]; | |
| 1420 | +} CONTEXT; | |
| 1421 | +#elif defined(SHx) | |
| 1422 | + | |
| 1423 | +/* These are the debug or break registers on the SH3 */ | |
| 1424 | +typedef struct _DEBUG_REGISTERS { | |
| 1425 | + ULONG BarA; | |
| 1426 | + UCHAR BasrA; | |
| 1427 | + UCHAR BamrA; | |
| 1428 | + USHORT BbrA; | |
| 1429 | + ULONG BarB; | |
| 1430 | + UCHAR BasrB; | |
| 1431 | + UCHAR BamrB; | |
| 1432 | + USHORT BbrB; | |
| 1433 | + ULONG BdrB; | |
| 1434 | + ULONG BdmrB; | |
| 1435 | + USHORT Brcr; | |
| 1436 | + USHORT Align; | |
| 1437 | +} DEBUG_REGISTERS, *PDEBUG_REGISTERS; | |
| 1438 | + | |
| 1439 | +/* The following flags control the contents of the CONTEXT structure. */ | |
| 1440 | + | |
| 1441 | +#define CONTEXT_SH3 0x00000040 | |
| 1442 | +#define CONTEXT_SH4 0x000000c0 /* CONTEXT_SH3 | 0x80 - must contain the SH3 bits */ | |
| 1443 | + | |
| 1444 | +#ifdef SH3 | |
| 1445 | +#define CONTEXT_CONTROL (CONTEXT_SH3 | 0x00000001L) | |
| 1446 | +#define CONTEXT_INTEGER (CONTEXT_SH3 | 0x00000002L) | |
| 1447 | +#define CONTEXT_DEBUG_REGISTERS (CONTEXT_SH3 | 0x00000008L) | |
| 1448 | +#define CONTEXT_FULL (CONTEXT_CONTROL | CONTEXT_INTEGER | CONTEXT_DEBUG_REGISTERS) | |
| 1449 | +#else /* SH4 */ | |
| 1450 | +#define CONTEXT_CONTROL (CONTEXT_SH4 | 0x00000001L) | |
| 1451 | +#define CONTEXT_INTEGER (CONTEXT_SH4 | 0x00000002L) | |
| 1452 | +#define CONTEXT_DEBUG_REGISTERS (CONTEXT_SH4 | 0x00000008L) | |
| 1453 | +#define CONTEXT_FLOATING_POINT (CONTEXT_SH4 | 0x00000004L) | |
| 1454 | +#define CONTEXT_FULL (CONTEXT_CONTROL | CONTEXT_INTEGER | CONTEXT_DEBUG_REGISTERS | CONTEXT_FLOATING_POINT) | |
| 1455 | +#endif | |
| 1456 | + | |
| 1457 | +/* Context Frame */ | |
| 1458 | + | |
| 1459 | +/* This frame is used to store a limited processor context into the */ | |
| 1460 | +/* Thread structure for CPUs which have no floating point support. */ | |
| 1461 | + | |
| 1462 | +typedef struct _CONTEXT { | |
| 1463 | + /* The flags values within this flag control the contents of */ | |
| 1464 | + /* a CONTEXT record. */ | |
| 1465 | + | |
| 1466 | + /* If the context record is used as an input parameter, then */ | |
| 1467 | + /* for each portion of the context record controlled by a flag */ | |
| 1468 | + /* whose value is set, it is assumed that that portion of the */ | |
| 1469 | + /* context record contains valid context. If the context record */ | |
| 1470 | + /* is being used to modify a thread's context, then only that */ | |
| 1471 | + /* portion of the threads context will be modified. */ | |
| 1472 | + | |
| 1473 | + /* If the context record is used as an IN OUT parameter to capture */ | |
| 1474 | + /* the context of a thread, then only those portions of the thread's */ | |
| 1475 | + /* context corresponding to set flags will be returned. */ | |
| 1476 | + | |
| 1477 | + /* The context record is never used as an OUT only parameter. */ | |
| 1478 | + | |
| 1479 | + | |
| 1480 | + ULONG ContextFlags; | |
| 1481 | + | |
| 1482 | + /* This section is specified/returned if the ContextFlags word contains */ | |
| 1483 | + /* the flag CONTEXT_INTEGER. */ | |
| 1484 | + | |
| 1485 | + /* N.B. The registers RA and R15 are defined in this section, but are */ | |
| 1486 | + /* considered part of the control context rather than part of the integer */ | |
| 1487 | + /* context. */ | |
| 1488 | + | |
| 1489 | + ULONG PR; | |
| 1490 | + ULONG MACH; | |
| 1491 | + ULONG MACL; | |
| 1492 | + ULONG GBR; | |
| 1493 | + ULONG R0; | |
| 1494 | + ULONG R1; | |
| 1495 | + ULONG R2; | |
| 1496 | + ULONG R3; | |
| 1497 | + ULONG R4; | |
| 1498 | + ULONG R5; | |
| 1499 | + ULONG R6; | |
| 1500 | + ULONG R7; | |
| 1501 | + ULONG R8; | |
| 1502 | + ULONG R9; | |
| 1503 | + ULONG R10; | |
| 1504 | + ULONG R11; | |
| 1505 | + ULONG R12; | |
| 1506 | + ULONG R13; | |
| 1507 | + ULONG R14; | |
| 1508 | + ULONG R15; | |
| 1509 | + | |
| 1510 | + /* This section is specified/returned if the ContextFlags word contains */ | |
| 1511 | + /* the flag CONTEXT_CONTROL. */ | |
| 1512 | + | |
| 1513 | + /* N.B. The registers r15 and ra are defined in the integer section, */ | |
| 1514 | + /* but are considered part of the control context rather than part of */ | |
| 1515 | + /* the integer context. */ | |
| 1516 | + | |
| 1517 | + ULONG Fir; | |
| 1518 | + ULONG Psr; | |
| 1519 | + | |
| 1520 | +#if !defined(SH3e) && !defined(SH4) | |
| 1521 | + ULONG OldStuff[2]; | |
| 1522 | + DEBUG_REGISTERS DebugRegisters; | |
| 1523 | +#else | |
| 1524 | + ULONG Fpscr; | |
| 1525 | + ULONG Fpul; | |
| 1526 | + ULONG FRegs[16]; | |
| 1527 | +#if defined(SH4) | |
| 1528 | + ULONG xFRegs[16]; | |
| 1529 | +#endif | |
| 1530 | +#endif | |
| 1531 | +} CONTEXT; | |
| 1532 | + | |
| 1533 | +#elif defined(MIPS) | |
| 1534 | + | |
| 1535 | +/* The following flags control the contents of the CONTEXT structure. */ | |
| 1536 | + | |
| 1537 | +#define CONTEXT_R4000 0x00010000 /* r4000 context */ | |
| 1538 | + | |
| 1539 | +#define CONTEXT_CONTROL (CONTEXT_R4000 | 0x00000001L) | |
| 1540 | +#define CONTEXT_FLOATING_POINT (CONTEXT_R4000 | 0x00000002L) | |
| 1541 | +#define CONTEXT_INTEGER (CONTEXT_R4000 | 0x00000004L) | |
| 1542 | + | |
| 1543 | +#define CONTEXT_FULL (CONTEXT_CONTROL | CONTEXT_FLOATING_POINT | CONTEXT_INTEGER) | |
| 1544 | + | |
| 1545 | +/* Context Frame */ | |
| 1546 | + | |
| 1547 | +/* N.B. This frame must be exactly a multiple of 16 bytes in length. */ | |
| 1548 | + | |
| 1549 | +/* This frame has a several purposes: 1) it is used as an argument to */ | |
| 1550 | +/* NtContinue, 2) it is used to constuct a call frame for APC delivery, */ | |
| 1551 | +/* 3) it is used to construct a call frame for exception dispatching */ | |
| 1552 | +/* in user mode, and 4) it is used in the user level thread creation */ | |
| 1553 | +/* routines. */ | |
| 1554 | + | |
| 1555 | +/* The layout of the record conforms to a standard call frame. */ | |
| 1556 | + | |
| 1557 | + | |
| 1558 | +typedef struct _CONTEXT { | |
| 1559 | + | |
| 1560 | + /* This section is always present and is used as an argument build */ | |
| 1561 | + /* area. */ | |
| 1562 | + | |
| 1563 | + DWORD Argument[4]; | |
| 1564 | + | |
| 1565 | + /* This section is specified/returned if the ContextFlags word contains */ | |
| 1566 | + /* the flag CONTEXT_FLOATING_POINT. */ | |
| 1567 | + | |
| 1568 | + DWORD FltF0; | |
| 1569 | + DWORD FltF1; | |
| 1570 | + DWORD FltF2; | |
| 1571 | + DWORD FltF3; | |
| 1572 | + DWORD FltF4; | |
| 1573 | + DWORD FltF5; | |
| 1574 | + DWORD FltF6; | |
| 1575 | + DWORD FltF7; | |
| 1576 | + DWORD FltF8; | |
| 1577 | + DWORD FltF9; | |
| 1578 | + DWORD FltF10; | |
| 1579 | + DWORD FltF11; | |
| 1580 | + DWORD FltF12; | |
| 1581 | + DWORD FltF13; | |
| 1582 | + DWORD FltF14; | |
| 1583 | + DWORD FltF15; | |
| 1584 | + DWORD FltF16; | |
| 1585 | + DWORD FltF17; | |
| 1586 | + DWORD FltF18; | |
| 1587 | + DWORD FltF19; | |
| 1588 | + DWORD FltF20; | |
| 1589 | + DWORD FltF21; | |
| 1590 | + DWORD FltF22; | |
| 1591 | + DWORD FltF23; | |
| 1592 | + DWORD FltF24; | |
| 1593 | + DWORD FltF25; | |
| 1594 | + DWORD FltF26; | |
| 1595 | + DWORD FltF27; | |
| 1596 | + DWORD FltF28; | |
| 1597 | + DWORD FltF29; | |
| 1598 | + DWORD FltF30; | |
| 1599 | + DWORD FltF31; | |
| 1600 | + | |
| 1601 | + /* This section is specified/returned if the ContextFlags word contains */ | |
| 1602 | + /* the flag CONTEXT_INTEGER. */ | |
| 1603 | + | |
| 1604 | + /* N.B. The registers gp, sp, and ra are defined in this section, but are */ | |
| 1605 | + /* considered part of the control context rather than part of the integer */ | |
| 1606 | + /* context. */ | |
| 1607 | + | |
| 1608 | + /* N.B. Register zero is not stored in the frame. */ | |
| 1609 | + | |
| 1610 | + DWORD IntZero; | |
| 1611 | + DWORD IntAt; | |
| 1612 | + DWORD IntV0; | |
| 1613 | + DWORD IntV1; | |
| 1614 | + DWORD IntA0; | |
| 1615 | + DWORD IntA1; | |
| 1616 | + DWORD IntA2; | |
| 1617 | + DWORD IntA3; | |
| 1618 | + DWORD IntT0; | |
| 1619 | + DWORD IntT1; | |
| 1620 | + DWORD IntT2; | |
| 1621 | + DWORD IntT3; | |
| 1622 | + DWORD IntT4; | |
| 1623 | + DWORD IntT5; | |
| 1624 | + DWORD IntT6; | |
| 1625 | + DWORD IntT7; | |
| 1626 | + DWORD IntS0; | |
| 1627 | + DWORD IntS1; | |
| 1628 | + DWORD IntS2; | |
| 1629 | + DWORD IntS3; | |
| 1630 | + DWORD IntS4; | |
| 1631 | + DWORD IntS5; | |
| 1632 | + DWORD IntS6; | |
| 1633 | + DWORD IntS7; | |
| 1634 | + DWORD IntT8; | |
| 1635 | + DWORD IntT9; | |
| 1636 | + DWORD IntK0; | |
| 1637 | + DWORD IntK1; | |
| 1638 | + DWORD IntGp; | |
| 1639 | + DWORD IntSp; | |
| 1640 | + DWORD IntS8; | |
| 1641 | + DWORD IntRa; | |
| 1642 | + DWORD IntLo; | |
| 1643 | + DWORD IntHi; | |
| 1644 | + | |
| 1645 | + /* This section is specified/returned if the ContextFlags word contains */ | |
| 1646 | + /* the flag CONTEXT_FLOATING_POINT. */ | |
| 1647 | + | |
| 1648 | + DWORD Fsr; | |
| 1649 | + | |
| 1650 | + /* This section is specified/returned if the ContextFlags word contains */ | |
| 1651 | + /* the flag CONTEXT_CONTROL. */ | |
| 1652 | + | |
| 1653 | + /* N.B. The registers gp, sp, and ra are defined in the integer section, */ | |
| 1654 | + /* but are considered part of the control context rather than part of */ | |
| 1655 | + /* the integer context. */ | |
| 1656 | + | |
| 1657 | + DWORD Fir; | |
| 1658 | + DWORD Psr; | |
| 1659 | + | |
| 1660 | + /* The flags values within this flag control the contents of */ | |
| 1661 | + /* a CONTEXT record. */ | |
| 1662 | + | |
| 1663 | + /* If the context record is used as an input parameter, then */ | |
| 1664 | + /* for each portion of the context record controlled by a flag */ | |
| 1665 | + /* whose value is set, it is assumed that that portion of the */ | |
| 1666 | + /* context record contains valid context. If the context record */ | |
| 1667 | + /* is being used to modify a thread's context, then only that */ | |
| 1668 | + /* portion of the threads context will be modified. */ | |
| 1669 | + | |
| 1670 | + /* If the context record is used as an IN OUT parameter to capture */ | |
| 1671 | + /* the context of a thread, then only those portions of the thread's */ | |
| 1672 | + /* context corresponding to set flags will be returned. */ | |
| 1673 | + | |
| 1674 | + /* The context record is never used as an OUT only parameter. */ | |
| 1675 | + | |
| 1676 | + DWORD ContextFlags; | |
| 1677 | + | |
| 1678 | + DWORD Fill[2]; | |
| 1679 | + | |
| 1680 | +} CONTEXT; | |
| 1681 | +#elif defined(ARM) | |
| 1682 | + | |
| 1683 | +/* The following flags control the contents of the CONTEXT structure. */ | |
| 1684 | + | |
| 1685 | +#define CONTEXT_ARM 0x0000040 | |
| 1686 | +#define CONTEXT_CONTROL (CONTEXT_ARM | 0x00000001L) | |
| 1687 | +#define CONTEXT_INTEGER (CONTEXT_ARM | 0x00000002L) | |
| 1688 | + | |
| 1689 | +#define CONTEXT_FULL (CONTEXT_CONTROL | CONTEXT_INTEGER) | |
| 1690 | + | |
| 1691 | +typedef struct _CONTEXT { | |
| 1692 | + /* The flags values within this flag control the contents of | |
| 1693 | + a CONTEXT record. | |
| 1694 | + | |
| 1695 | + If the context record is used as an input parameter, then | |
| 1696 | + for each portion of the context record controlled by a flag | |
| 1697 | + whose value is set, it is assumed that that portion of the | |
| 1698 | + context record contains valid context. If the context record | |
| 1699 | + is being used to modify a thread's context, then only that | |
| 1700 | + portion of the threads context will be modified. | |
| 1701 | + | |
| 1702 | + If the context record is used as an IN OUT parameter to capture | |
| 1703 | + the context of a thread, then only those portions of the thread's | |
| 1704 | + context corresponding to set flags will be returned. | |
| 1705 | + | |
| 1706 | + The context record is never used as an OUT only parameter. */ | |
| 1707 | + | |
| 1708 | + ULONG ContextFlags; | |
| 1709 | + | |
| 1710 | + /* This section is specified/returned if the ContextFlags word contains | |
| 1711 | + the flag CONTEXT_INTEGER. */ | |
| 1712 | + ULONG R0; | |
| 1713 | + ULONG R1; | |
| 1714 | + ULONG R2; | |
| 1715 | + ULONG R3; | |
| 1716 | + ULONG R4; | |
| 1717 | + ULONG R5; | |
| 1718 | + ULONG R6; | |
| 1719 | + ULONG R7; | |
| 1720 | + ULONG R8; | |
| 1721 | + ULONG R9; | |
| 1722 | + ULONG R10; | |
| 1723 | + ULONG R11; | |
| 1724 | + ULONG R12; | |
| 1725 | + | |
| 1726 | + ULONG Sp; | |
| 1727 | + ULONG Lr; | |
| 1728 | + ULONG Pc; | |
| 1729 | + ULONG Psr; | |
| 1730 | +} CONTEXT; | |
| 1731 | + | |
| 1732 | +#else | |
| 1733 | +#error "undefined processor type" | |
| 1734 | +#endif | |
| 1735 | +typedef CONTEXT *PCONTEXT,*LPCONTEXT; | |
| 1736 | +typedef struct _EXCEPTION_RECORD { | |
| 1737 | + DWORD ExceptionCode; | |
| 1738 | + DWORD ExceptionFlags; | |
| 1739 | + struct _EXCEPTION_RECORD *ExceptionRecord; | |
| 1740 | + PVOID ExceptionAddress; | |
| 1741 | + DWORD NumberParameters; | |
| 1742 | + DWORD ExceptionInformation[EXCEPTION_MAXIMUM_PARAMETERS]; | |
| 1743 | +} EXCEPTION_RECORD,*PEXCEPTION_RECORD; | |
| 1744 | +typedef struct _EXCEPTION_POINTERS { | |
| 1745 | + PEXCEPTION_RECORD ExceptionRecord; | |
| 1746 | + PCONTEXT ContextRecord; | |
| 1747 | +} EXCEPTION_POINTERS,*PEXCEPTION_POINTERS,*LPEXCEPTION_POINTERS; | |
| 1748 | +typedef union _LARGE_INTEGER { | |
| 1749 | + struct { | |
| 1750 | + DWORD LowPart; | |
| 1751 | + LONG HighPart; | |
| 1752 | + } u; | |
| 1753 | +#if ! defined(NONAMELESSUNION) || defined(__cplusplus) | |
| 1754 | + _ANONYMOUS_STRUCT struct { | |
| 1755 | + DWORD LowPart; | |
| 1756 | + LONG HighPart; | |
| 1757 | + }; | |
| 1758 | +#endif /* NONAMELESSUNION */ | |
| 1759 | + LONGLONG QuadPart; | |
| 1760 | +} LARGE_INTEGER, *PLARGE_INTEGER; | |
| 1761 | +typedef union _ULARGE_INTEGER { | |
| 1762 | + struct { | |
| 1763 | + DWORD LowPart; | |
| 1764 | + DWORD HighPart; | |
| 1765 | + } u; | |
| 1766 | +#if ! defined(NONAMELESSUNION) || defined(__cplusplus) | |
| 1767 | + _ANONYMOUS_STRUCT struct { | |
| 1768 | + DWORD LowPart; | |
| 1769 | + DWORD HighPart; | |
| 1770 | + }; | |
| 1771 | +#endif /* NONAMELESSUNION */ | |
| 1772 | + ULONGLONG QuadPart; | |
| 1773 | +} ULARGE_INTEGER, *PULARGE_INTEGER; | |
| 1774 | +typedef LARGE_INTEGER LUID,*PLUID; | |
| 1775 | +#pragma pack(push,4) | |
| 1776 | +typedef struct _LUID_AND_ATTRIBUTES { | |
| 1777 | + LUID Luid; | |
| 1778 | + DWORD Attributes; | |
| 1779 | +} LUID_AND_ATTRIBUTES; | |
| 1780 | +#pragma pack(pop) | |
| 1781 | +typedef LUID_AND_ATTRIBUTES LUID_AND_ATTRIBUTES_ARRAY[ANYSIZE_ARRAY]; | |
| 1782 | +typedef LUID_AND_ATTRIBUTES_ARRAY *PLUID_AND_ATTRIBUTES_ARRAY; | |
| 1783 | +typedef struct _PRIVILEGE_SET { | |
| 1784 | + DWORD PrivilegeCount; | |
| 1785 | + DWORD Control; | |
| 1786 | + LUID_AND_ATTRIBUTES Privilege[ANYSIZE_ARRAY]; | |
| 1787 | +} PRIVILEGE_SET,*PPRIVILEGE_SET; | |
| 1788 | +typedef struct _SECURITY_ATTRIBUTES { | |
| 1789 | + DWORD nLength; | |
| 1790 | + LPVOID lpSecurityDescriptor; | |
| 1791 | + BOOL bInheritHandle; | |
| 1792 | +} SECURITY_ATTRIBUTES,*PSECURITY_ATTRIBUTES,*LPSECURITY_ATTRIBUTES; | |
| 1793 | +typedef enum _SECURITY_IMPERSONATION_LEVEL { | |
| 1794 | + SecurityAnonymous, | |
| 1795 | + SecurityIdentification, | |
| 1796 | + SecurityImpersonation, | |
| 1797 | + SecurityDelegation | |
| 1798 | +} SECURITY_IMPERSONATION_LEVEL; | |
| 1799 | +typedef BOOLEAN SECURITY_CONTEXT_TRACKING_MODE,*PSECURITY_CONTEXT_TRACKING_MODE; | |
| 1800 | +typedef struct _SECURITY_QUALITY_OF_SERVICE { | |
| 1801 | + DWORD Length; | |
| 1802 | + SECURITY_IMPERSONATION_LEVEL ImpersonationLevel; | |
| 1803 | + SECURITY_CONTEXT_TRACKING_MODE ContextTrackingMode; | |
| 1804 | + BOOLEAN EffectiveOnly; | |
| 1805 | +} SECURITY_QUALITY_OF_SERVICE,*PSECURITY_QUALITY_OF_SERVICE; | |
| 1806 | +typedef PVOID PACCESS_TOKEN; | |
| 1807 | +typedef struct _SE_IMPERSONATION_STATE { | |
| 1808 | + PACCESS_TOKEN Token; | |
| 1809 | + BOOLEAN CopyOnOpen; | |
| 1810 | + BOOLEAN EffectiveOnly; | |
| 1811 | + SECURITY_IMPERSONATION_LEVEL Level; | |
| 1812 | +} SE_IMPERSONATION_STATE,*PSE_IMPERSONATION_STATE; | |
| 1813 | +typedef struct _SID_IDENTIFIER_AUTHORITY { | |
| 1814 | + BYTE Value[6]; | |
| 1815 | +} SID_IDENTIFIER_AUTHORITY,*PSID_IDENTIFIER_AUTHORITY,*LPSID_IDENTIFIER_AUTHORITY; | |
| 1816 | +typedef PVOID PSID; | |
| 1817 | +typedef struct _SID { | |
| 1818 | + BYTE Revision; | |
| 1819 | + BYTE SubAuthorityCount; | |
| 1820 | + SID_IDENTIFIER_AUTHORITY IdentifierAuthority; | |
| 1821 | + DWORD SubAuthority[ANYSIZE_ARRAY]; | |
| 1822 | +} SID, *PISID; | |
| 1823 | +typedef struct _SID_AND_ATTRIBUTES { | |
| 1824 | + PSID Sid; | |
| 1825 | + DWORD Attributes; | |
| 1826 | +} SID_AND_ATTRIBUTES; | |
| 1827 | +typedef SID_AND_ATTRIBUTES SID_AND_ATTRIBUTES_ARRAY[ANYSIZE_ARRAY]; | |
| 1828 | +typedef SID_AND_ATTRIBUTES_ARRAY *PSID_AND_ATTRIBUTES_ARRAY; | |
| 1829 | +typedef struct _TOKEN_SOURCE { | |
| 1830 | + CHAR SourceName[TOKEN_SOURCE_LENGTH]; | |
| 1831 | + LUID SourceIdentifier; | |
| 1832 | +} TOKEN_SOURCE,*PTOKEN_SOURCE; | |
| 1833 | +typedef struct _TOKEN_CONTROL { | |
| 1834 | + LUID TokenId; | |
| 1835 | + LUID AuthenticationId; | |
| 1836 | + LUID ModifiedId; | |
| 1837 | + TOKEN_SOURCE TokenSource; | |
| 1838 | +} TOKEN_CONTROL,*PTOKEN_CONTROL; | |
| 1839 | +typedef struct _TOKEN_DEFAULT_DACL { | |
| 1840 | + PACL DefaultDacl; | |
| 1841 | +} TOKEN_DEFAULT_DACL,*PTOKEN_DEFAULT_DACL; | |
| 1842 | +typedef struct _TOKEN_GROUPS { | |
| 1843 | + DWORD GroupCount; | |
| 1844 | + SID_AND_ATTRIBUTES Groups[ANYSIZE_ARRAY]; | |
| 1845 | +} TOKEN_GROUPS,*PTOKEN_GROUPS,*LPTOKEN_GROUPS; | |
| 1846 | +typedef struct _TOKEN_OWNER { | |
| 1847 | + PSID Owner; | |
| 1848 | +} TOKEN_OWNER,*PTOKEN_OWNER; | |
| 1849 | +typedef struct _TOKEN_PRIMARY_GROUP { | |
| 1850 | + PSID PrimaryGroup; | |
| 1851 | +} TOKEN_PRIMARY_GROUP,*PTOKEN_PRIMARY_GROUP; | |
| 1852 | +typedef struct _TOKEN_PRIVILEGES { | |
| 1853 | + DWORD PrivilegeCount; | |
| 1854 | + LUID_AND_ATTRIBUTES Privileges[ANYSIZE_ARRAY]; | |
| 1855 | +} TOKEN_PRIVILEGES,*PTOKEN_PRIVILEGES,*LPTOKEN_PRIVILEGES; | |
| 1856 | +typedef enum tagTOKEN_TYPE { TokenPrimary=1,TokenImpersonation }TOKEN_TYPE; | |
| 1857 | +typedef struct _TOKEN_STATISTICS { | |
| 1858 | + LUID TokenId; | |
| 1859 | + LUID AuthenticationId; | |
| 1860 | + LARGE_INTEGER ExpirationTime; | |
| 1861 | + TOKEN_TYPE TokenType; | |
| 1862 | + SECURITY_IMPERSONATION_LEVEL ImpersonationLevel; | |
| 1863 | + DWORD DynamicCharged; | |
| 1864 | + DWORD DynamicAvailable; | |
| 1865 | + DWORD GroupCount; | |
| 1866 | + DWORD PrivilegeCount; | |
| 1867 | + LUID ModifiedId; | |
| 1868 | +} TOKEN_STATISTICS; | |
| 1869 | +typedef struct _TOKEN_USER { | |
| 1870 | + SID_AND_ATTRIBUTES User; | |
| 1871 | +} TOKEN_USER, *PTOKEN_USER; | |
| 1872 | +typedef DWORD SECURITY_INFORMATION,*PSECURITY_INFORMATION; | |
| 1873 | +typedef WORD SECURITY_DESCRIPTOR_CONTROL,*PSECURITY_DESCRIPTOR_CONTROL; | |
| 1874 | +typedef struct _SECURITY_DESCRIPTOR { | |
| 1875 | + BYTE Revision; | |
| 1876 | + BYTE Sbz1; | |
| 1877 | + SECURITY_DESCRIPTOR_CONTROL Control; | |
| 1878 | + PSID Owner; | |
| 1879 | + PSID Group; | |
| 1880 | + PACL Sacl; | |
| 1881 | + PACL Dacl; | |
| 1882 | +} SECURITY_DESCRIPTOR, *PSECURITY_DESCRIPTOR, *PISECURITY_DESCRIPTOR; | |
| 1883 | +typedef enum _TOKEN_INFORMATION_CLASS { | |
| 1884 | + TokenUser=1,TokenGroups,TokenPrivileges,TokenOwner, | |
| 1885 | + TokenPrimaryGroup,TokenDefaultDacl,TokenSource,TokenType, | |
| 1886 | + TokenImpersonationLevel,TokenStatistics,TokenRestrictedSids, | |
| 1887 | + TokenSessionId | |
| 1888 | +} TOKEN_INFORMATION_CLASS; | |
| 1889 | +typedef enum _SID_NAME_USE { | |
| 1890 | + SidTypeUser=1,SidTypeGroup,SidTypeDomain,SidTypeAlias,SidTypeWellKnownGroup, | |
| 1891 | + SidTypeDeletedAccount,SidTypeInvalid,SidTypeUnknown | |
| 1892 | +} SID_NAME_USE,*PSID_NAME_USE; | |
| 1893 | +typedef struct _QUOTA_LIMITS { | |
| 1894 | + SIZE_T PagedPoolLimit; | |
| 1895 | + SIZE_T NonPagedPoolLimit; | |
| 1896 | + SIZE_T MinimumWorkingSetSize; | |
| 1897 | + SIZE_T MaximumWorkingSetSize; | |
| 1898 | + SIZE_T PagefileLimit; | |
| 1899 | + LARGE_INTEGER TimeLimit; | |
| 1900 | +} QUOTA_LIMITS,*PQUOTA_LIMITS; | |
| 1901 | +typedef struct _IO_COUNTERS { | |
| 1902 | + ULONGLONG ReadOperationCount; | |
| 1903 | + ULONGLONG WriteOperationCount; | |
| 1904 | + ULONGLONG OtherOperationCount; | |
| 1905 | + ULONGLONG ReadTransferCount; | |
| 1906 | + ULONGLONG WriteTransferCount; | |
| 1907 | + ULONGLONG OtherTransferCount; | |
| 1908 | +} IO_COUNTERS, *PIO_COUNTERS; | |
| 1909 | +typedef struct _FILE_NOTIFY_INFORMATION { | |
| 1910 | + DWORD NextEntryOffset; | |
| 1911 | + DWORD Action; | |
| 1912 | + DWORD FileNameLength; | |
| 1913 | + WCHAR FileName[1]; | |
| 1914 | +} FILE_NOTIFY_INFORMATION,*PFILE_NOTIFY_INFORMATION; | |
| 1915 | +typedef struct _TAPE_ERASE { | |
| 1916 | + DWORD Type; | |
| 1917 | + BOOLEAN Immediate; | |
| 1918 | +} TAPE_ERASE,*PTAPE_ERASE; | |
| 1919 | +typedef struct _TAPE_GET_DRIVE_PARAMETERS { | |
| 1920 | + BOOLEAN ECC; | |
| 1921 | + BOOLEAN Compression; | |
| 1922 | + BOOLEAN DataPadding; | |
| 1923 | + BOOLEAN ReportSetmarks; | |
| 1924 | + DWORD DefaultBlockSize; | |
| 1925 | + DWORD MaximumBlockSize; | |
| 1926 | + DWORD MinimumBlockSize; | |
| 1927 | + DWORD MaximumPartitionCount; | |
| 1928 | + DWORD FeaturesLow; | |
| 1929 | + DWORD FeaturesHigh; | |
| 1930 | + DWORD EOTWarningZoneSize; | |
| 1931 | +} TAPE_GET_DRIVE_PARAMETERS,*PTAPE_GET_DRIVE_PARAMETERS; | |
| 1932 | +typedef struct _TAPE_GET_MEDIA_PARAMETERS { | |
| 1933 | + LARGE_INTEGER Capacity; | |
| 1934 | + LARGE_INTEGER Remaining; | |
| 1935 | + DWORD BlockSize; | |
| 1936 | + DWORD PartitionCount; | |
| 1937 | + BOOLEAN WriteProtected; | |
| 1938 | +} TAPE_GET_MEDIA_PARAMETERS,*PTAPE_GET_MEDIA_PARAMETERS; | |
| 1939 | +typedef struct _TAPE_GET_POSITION { | |
| 1940 | + ULONG Type; | |
| 1941 | + ULONG Partition; | |
| 1942 | + ULONG OffsetLow; | |
| 1943 | + ULONG OffsetHigh; | |
| 1944 | +} TAPE_GET_POSITION,*PTAPE_GET_POSITION; | |
| 1945 | +typedef struct _TAPE_PREPARE { | |
| 1946 | + DWORD Operation; | |
| 1947 | + BOOLEAN Immediate; | |
| 1948 | +} TAPE_PREPARE,*PTAPE_PREPARE; | |
| 1949 | +typedef struct _TAPE_SET_DRIVE_PARAMETERS { | |
| 1950 | + BOOLEAN ECC; | |
| 1951 | + BOOLEAN Compression; | |
| 1952 | + BOOLEAN DataPadding; | |
| 1953 | + BOOLEAN ReportSetmarks; | |
| 1954 | + ULONG EOTWarningZoneSize; | |
| 1955 | +} TAPE_SET_DRIVE_PARAMETERS,*PTAPE_SET_DRIVE_PARAMETERS; | |
| 1956 | +typedef struct _TAPE_SET_MEDIA_PARAMETERS { | |
| 1957 | + ULONG BlockSize; | |
| 1958 | +} TAPE_SET_MEDIA_PARAMETERS,*PTAPE_SET_MEDIA_PARAMETERS; | |
| 1959 | +typedef struct _TAPE_SET_POSITION { | |
| 1960 | + DWORD Method; | |
| 1961 | + DWORD Partition; | |
| 1962 | + LARGE_INTEGER Offset; | |
| 1963 | + BOOLEAN Immediate; | |
| 1964 | +} TAPE_SET_POSITION,*PTAPE_SET_POSITION; | |
| 1965 | +typedef struct _TAPE_WRITE_MARKS { | |
| 1966 | + DWORD Type; | |
| 1967 | + DWORD Count; | |
| 1968 | + BOOLEAN Immediate; | |
| 1969 | +} TAPE_WRITE_MARKS,*PTAPE_WRITE_MARKS; | |
| 1970 | +typedef struct _TAPE_CREATE_PARTITION { | |
| 1971 | + DWORD Method; | |
| 1972 | + DWORD Count; | |
| 1973 | + DWORD Size; | |
| 1974 | +} TAPE_CREATE_PARTITION,*PTAPE_CREATE_PARTITION; | |
| 1975 | +typedef struct _MEMORY_BASIC_INFORMATION { | |
| 1976 | + PVOID BaseAddress; | |
| 1977 | + PVOID AllocationBase; | |
| 1978 | + DWORD AllocationProtect; | |
| 1979 | + DWORD RegionSize; | |
| 1980 | + DWORD State; | |
| 1981 | + DWORD Protect; | |
| 1982 | + DWORD Type; | |
| 1983 | +} MEMORY_BASIC_INFORMATION,*PMEMORY_BASIC_INFORMATION; | |
| 1984 | +typedef struct _MESSAGE_RESOURCE_ENTRY { | |
| 1985 | + WORD Length; | |
| 1986 | + WORD Flags; | |
| 1987 | + BYTE Text[1]; | |
| 1988 | +} MESSAGE_RESOURCE_ENTRY,*PMESSAGE_RESOURCE_ENTRY; | |
| 1989 | +typedef struct _MESSAGE_RESOURCE_BLOCK { | |
| 1990 | + DWORD LowId; | |
| 1991 | + DWORD HighId; | |
| 1992 | + DWORD OffsetToEntries; | |
| 1993 | +} MESSAGE_RESOURCE_BLOCK,*PMESSAGE_RESOURCE_BLOCK; | |
| 1994 | +typedef struct _MESSAGE_RESOURCE_DATA { | |
| 1995 | + DWORD NumberOfBlocks; | |
| 1996 | + MESSAGE_RESOURCE_BLOCK Blocks[1]; | |
| 1997 | +} MESSAGE_RESOURCE_DATA,*PMESSAGE_RESOURCE_DATA; | |
| 1998 | +typedef struct _LIST_ENTRY { | |
| 1999 | + struct _LIST_ENTRY *Flink; | |
| 2000 | + struct _LIST_ENTRY *Blink; | |
| 2001 | +} LIST_ENTRY,*PLIST_ENTRY; | |
| 2002 | +typedef struct _RTL_CRITICAL_SECTION_DEBUG { | |
| 2003 | + WORD Type; | |
| 2004 | + WORD CreatorBackTraceIndex; | |
| 2005 | + struct _RTL_CRITICAL_SECTION *CriticalSection; | |
| 2006 | + LIST_ENTRY ProcessLocksList; | |
| 2007 | + DWORD EntryCount; | |
| 2008 | + DWORD ContentionCount; | |
| 2009 | + DWORD Spare[2]; | |
| 2010 | +} RTL_CRITICAL_SECTION_DEBUG,*PRTL_CRITICAL_SECTION_DEBUG; | |
| 2011 | +typedef struct _RTL_CRITICAL_SECTION { | |
| 2012 | + PRTL_CRITICAL_SECTION_DEBUG DebugInfo; | |
| 2013 | + LONG LockCount; | |
| 2014 | + LONG RecursionCount; | |
| 2015 | + HANDLE OwningThread; | |
| 2016 | + HANDLE LockSemaphore; | |
| 2017 | + DWORD Reserved; | |
| 2018 | +} RTL_CRITICAL_SECTION,*PRTL_CRITICAL_SECTION; | |
| 2019 | +typedef struct _EVENTLOGRECORD { | |
| 2020 | + DWORD Length; | |
| 2021 | + DWORD Reserved; | |
| 2022 | + DWORD RecordNumber; | |
| 2023 | + DWORD TimeGenerated; | |
| 2024 | + DWORD TimeWritten; | |
| 2025 | + DWORD EventID; | |
| 2026 | + WORD EventType; | |
| 2027 | + WORD NumStrings; | |
| 2028 | + WORD EventCategory; | |
| 2029 | + WORD ReservedFlags; | |
| 2030 | + DWORD ClosingRecordNumber; | |
| 2031 | + DWORD StringOffset; | |
| 2032 | + DWORD UserSidLength; | |
| 2033 | + DWORD UserSidOffset; | |
| 2034 | + DWORD DataLength; | |
| 2035 | + DWORD DataOffset; | |
| 2036 | +} EVENTLOGRECORD,*PEVENTLOGRECORD; | |
| 2037 | +typedef struct _OSVERSIONINFOA { | |
| 2038 | + DWORD dwOSVersionInfoSize; | |
| 2039 | + DWORD dwMajorVersion; | |
| 2040 | + DWORD dwMinorVersion; | |
| 2041 | + DWORD dwBuildNumber; | |
| 2042 | + DWORD dwPlatformId; | |
| 2043 | + CHAR szCSDVersion[128]; | |
| 2044 | +} OSVERSIONINFOA,*POSVERSIONINFOA,*LPOSVERSIONINFOA; | |
| 2045 | +typedef struct _OSVERSIONINFOW { | |
| 2046 | + DWORD dwOSVersionInfoSize; | |
| 2047 | + DWORD dwMajorVersion; | |
| 2048 | + DWORD dwMinorVersion; | |
| 2049 | + DWORD dwBuildNumber; | |
| 2050 | + DWORD dwPlatformId; | |
| 2051 | + WCHAR szCSDVersion[128]; | |
| 2052 | +} OSVERSIONINFOW,*POSVERSIONINFOW,*LPOSVERSIONINFOW; | |
| 2053 | +typedef struct _OSVERSIONINFOEXA { | |
| 2054 | + DWORD dwOSVersionInfoSize; | |
| 2055 | + DWORD dwMajorVersion; | |
| 2056 | + DWORD dwMinorVersion; | |
| 2057 | + DWORD dwBuildNumber; | |
| 2058 | + DWORD dwPlatformId; | |
| 2059 | + CHAR szCSDVersion[128]; | |
| 2060 | + WORD wServicePackMajor; | |
| 2061 | + WORD wServicePackMinor; | |
| 2062 | + WORD wSuiteMask; | |
| 2063 | + BYTE wProductType; | |
| 2064 | + BYTE wReserved; | |
| 2065 | +} OSVERSIONINFOEXA, *POSVERSIONINFOEXA, *LPOSVERSIONINFOEXA; | |
| 2066 | +typedef struct _OSVERSIONINFOEXW { | |
| 2067 | + DWORD dwOSVersionInfoSize; | |
| 2068 | + DWORD dwMajorVersion; | |
| 2069 | + DWORD dwMinorVersion; | |
| 2070 | + DWORD dwBuildNumber; | |
| 2071 | + DWORD dwPlatformId; | |
| 2072 | + WCHAR szCSDVersion[128]; | |
| 2073 | + WORD wServicePackMajor; | |
| 2074 | + WORD wServicePackMinor; | |
| 2075 | + WORD wSuiteMask; | |
| 2076 | + BYTE wProductType; | |
| 2077 | + BYTE wReserved; | |
| 2078 | +} OSVERSIONINFOEXW, *POSVERSIONINFOEXW, *LPOSVERSIONINFOEXW; | |
| 2079 | +#pragma pack(push,2) | |
| 2080 | +typedef struct _IMAGE_VXD_HEADER { | |
| 2081 | + WORD e32_magic; | |
| 2082 | + BYTE e32_border; | |
| 2083 | + BYTE e32_worder; | |
| 2084 | + DWORD e32_level; | |
| 2085 | + WORD e32_cpu; | |
| 2086 | + WORD e32_os; | |
| 2087 | + DWORD e32_ver; | |
| 2088 | + DWORD e32_mflags; | |
| 2089 | + DWORD e32_mpages; | |
| 2090 | + DWORD e32_startobj; | |
| 2091 | + DWORD e32_eip; | |
| 2092 | + DWORD e32_stackobj; | |
| 2093 | + DWORD e32_esp; | |
| 2094 | + DWORD e32_pagesize; | |
| 2095 | + DWORD e32_lastpagesize; | |
| 2096 | + DWORD e32_fixupsize; | |
| 2097 | + DWORD e32_fixupsum; | |
| 2098 | + DWORD e32_ldrsize; | |
| 2099 | + DWORD e32_ldrsum; | |
| 2100 | + DWORD e32_objtab; | |
| 2101 | + DWORD e32_objcnt; | |
| 2102 | + DWORD e32_objmap; | |
| 2103 | + DWORD e32_itermap; | |
| 2104 | + DWORD e32_rsrctab; | |
| 2105 | + DWORD e32_rsrccnt; | |
| 2106 | + DWORD e32_restab; | |
| 2107 | + DWORD e32_enttab; | |
| 2108 | + DWORD e32_dirtab; | |
| 2109 | + DWORD e32_dircnt; | |
| 2110 | + DWORD e32_fpagetab; | |
| 2111 | + DWORD e32_frectab; | |
| 2112 | + DWORD e32_impmod; | |
| 2113 | + DWORD e32_impmodcnt; | |
| 2114 | + DWORD e32_impproc; | |
| 2115 | + DWORD e32_pagesum; | |
| 2116 | + DWORD e32_datapage; | |
| 2117 | + DWORD e32_preload; | |
| 2118 | + DWORD e32_nrestab; | |
| 2119 | + DWORD e32_cbnrestab; | |
| 2120 | + DWORD e32_nressum; | |
| 2121 | + DWORD e32_autodata; | |
| 2122 | + DWORD e32_debuginfo; | |
| 2123 | + DWORD e32_debuglen; | |
| 2124 | + DWORD e32_instpreload; | |
| 2125 | + DWORD e32_instdemand; | |
| 2126 | + DWORD e32_heapsize; | |
| 2127 | + BYTE e32_res3[12]; | |
| 2128 | + DWORD e32_winresoff; | |
| 2129 | + DWORD e32_winreslen; | |
| 2130 | + WORD e32_devid; | |
| 2131 | + WORD e32_ddkver; | |
| 2132 | +} IMAGE_VXD_HEADER,*PIMAGE_VXD_HEADER; | |
| 2133 | +#pragma pack(pop) | |
| 2134 | +#pragma pack(push,4) | |
| 2135 | +typedef struct _IMAGE_FILE_HEADER { | |
| 2136 | + WORD Machine; | |
| 2137 | + WORD NumberOfSections; | |
| 2138 | + DWORD TimeDateStamp; | |
| 2139 | + DWORD PointerToSymbolTable; | |
| 2140 | + DWORD NumberOfSymbols; | |
| 2141 | + WORD SizeOfOptionalHeader; | |
| 2142 | + WORD Characteristics; | |
| 2143 | +} IMAGE_FILE_HEADER, *PIMAGE_FILE_HEADER; | |
| 2144 | +typedef struct _IMAGE_DATA_DIRECTORY { | |
| 2145 | + DWORD VirtualAddress; | |
| 2146 | + DWORD Size; | |
| 2147 | +} IMAGE_DATA_DIRECTORY,*PIMAGE_DATA_DIRECTORY; | |
| 2148 | +typedef struct _IMAGE_OPTIONAL_HEADER { | |
| 2149 | + WORD Magic; | |
| 2150 | + BYTE MajorLinkerVersion; | |
| 2151 | + BYTE MinorLinkerVersion; | |
| 2152 | + DWORD SizeOfCode; | |
| 2153 | + DWORD SizeOfInitializedData; | |
| 2154 | + DWORD SizeOfUninitializedData; | |
| 2155 | + DWORD AddressOfEntryPoint; | |
| 2156 | + DWORD BaseOfCode; | |
| 2157 | + DWORD BaseOfData; | |
| 2158 | + DWORD ImageBase; | |
| 2159 | + DWORD SectionAlignment; | |
| 2160 | + DWORD FileAlignment; | |
| 2161 | + WORD MajorOperatingSystemVersion; | |
| 2162 | + WORD MinorOperatingSystemVersion; | |
| 2163 | + WORD MajorImageVersion; | |
| 2164 | + WORD MinorImageVersion; | |
| 2165 | + WORD MajorSubsystemVersion; | |
| 2166 | + WORD MinorSubsystemVersion; | |
| 2167 | + DWORD Reserved1; | |
| 2168 | + DWORD SizeOfImage; | |
| 2169 | + DWORD SizeOfHeaders; | |
| 2170 | + DWORD CheckSum; | |
| 2171 | + WORD Subsystem; | |
| 2172 | + WORD DllCharacteristics; | |
| 2173 | + DWORD SizeOfStackReserve; | |
| 2174 | + DWORD SizeOfStackCommit; | |
| 2175 | + DWORD SizeOfHeapReserve; | |
| 2176 | + DWORD SizeOfHeapCommit; | |
| 2177 | + DWORD LoaderFlags; | |
| 2178 | + DWORD NumberOfRvaAndSizes; | |
| 2179 | + IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES]; | |
| 2180 | +} IMAGE_OPTIONAL_HEADER,*PIMAGE_OPTIONAL_HEADER; | |
| 2181 | +typedef struct _IMAGE_ROM_OPTIONAL_HEADER { | |
| 2182 | + WORD Magic; | |
| 2183 | + BYTE MajorLinkerVersion; | |
| 2184 | + BYTE MinorLinkerVersion; | |
| 2185 | + DWORD SizeOfCode; | |
| 2186 | + DWORD SizeOfInitializedData; | |
| 2187 | + DWORD SizeOfUninitializedData; | |
| 2188 | + DWORD AddressOfEntryPoint; | |
| 2189 | + DWORD BaseOfCode; | |
| 2190 | + DWORD BaseOfData; | |
| 2191 | + DWORD BaseOfBss; | |
| 2192 | + DWORD GprMask; | |
| 2193 | + DWORD CprMask[4]; | |
| 2194 | + DWORD GpValue; | |
| 2195 | +} IMAGE_ROM_OPTIONAL_HEADER,*PIMAGE_ROM_OPTIONAL_HEADER; | |
| 2196 | +#pragma pack(pop) | |
| 2197 | +#pragma pack(push,2) | |
| 2198 | +typedef struct _IMAGE_DOS_HEADER { | |
| 2199 | + WORD e_magic; | |
| 2200 | + WORD e_cblp; | |
| 2201 | + WORD e_cp; | |
| 2202 | + WORD e_crlc; | |
| 2203 | + WORD e_cparhdr; | |
| 2204 | + WORD e_minalloc; | |
| 2205 | + WORD e_maxalloc; | |
| 2206 | + WORD e_ss; | |
| 2207 | + WORD e_sp; | |
| 2208 | + WORD e_csum; | |
| 2209 | + WORD e_ip; | |
| 2210 | + WORD e_cs; | |
| 2211 | + WORD e_lfarlc; | |
| 2212 | + WORD e_ovno; | |
| 2213 | + WORD e_res[4]; | |
| 2214 | + WORD e_oemid; | |
| 2215 | + WORD e_oeminfo; | |
| 2216 | + WORD e_res2[10]; | |
| 2217 | + LONG e_lfanew; | |
| 2218 | +} IMAGE_DOS_HEADER,*PIMAGE_DOS_HEADER; | |
| 2219 | +typedef struct _IMAGE_OS2_HEADER { | |
| 2220 | + WORD ne_magic; | |
| 2221 | + CHAR ne_ver; | |
| 2222 | + CHAR ne_rev; | |
| 2223 | + WORD ne_enttab; | |
| 2224 | + WORD ne_cbenttab; | |
| 2225 | + LONG ne_crc; | |
| 2226 | + WORD ne_flags; | |
| 2227 | + WORD ne_autodata; | |
| 2228 | + WORD ne_heap; | |
| 2229 | + WORD ne_stack; | |
| 2230 | + LONG ne_csip; | |
| 2231 | + LONG ne_sssp; | |
| 2232 | + WORD ne_cseg; | |
| 2233 | + WORD ne_cmod; | |
| 2234 | + WORD ne_cbnrestab; | |
| 2235 | + WORD ne_segtab; | |
| 2236 | + WORD ne_rsrctab; | |
| 2237 | + WORD ne_restab; | |
| 2238 | + WORD ne_modtab; | |
| 2239 | + WORD ne_imptab; | |
| 2240 | + LONG ne_nrestab; | |
| 2241 | + WORD ne_cmovent; | |
| 2242 | + WORD ne_align; | |
| 2243 | + WORD ne_cres; | |
| 2244 | + BYTE ne_exetyp; | |
| 2245 | + BYTE ne_flagsothers; | |
| 2246 | + WORD ne_pretthunks; | |
| 2247 | + WORD ne_psegrefbytes; | |
| 2248 | + WORD ne_swaparea; | |
| 2249 | + WORD ne_expver; | |
| 2250 | +} IMAGE_OS2_HEADER,*PIMAGE_OS2_HEADER; | |
| 2251 | +#pragma pack(pop) | |
| 2252 | +#pragma pack(push,4) | |
| 2253 | +typedef struct _IMAGE_NT_HEADERS { | |
| 2254 | + DWORD Signature; | |
| 2255 | + IMAGE_FILE_HEADER FileHeader; | |
| 2256 | + IMAGE_OPTIONAL_HEADER OptionalHeader; | |
| 2257 | +} IMAGE_NT_HEADERS,*PIMAGE_NT_HEADERS; | |
| 2258 | +typedef struct _IMAGE_ROM_HEADERS { | |
| 2259 | + IMAGE_FILE_HEADER FileHeader; | |
| 2260 | + IMAGE_ROM_OPTIONAL_HEADER OptionalHeader; | |
| 2261 | +} IMAGE_ROM_HEADERS,*PIMAGE_ROM_HEADERS; | |
| 2262 | +typedef struct _IMAGE_SECTION_HEADER { | |
| 2263 | + BYTE Name[IMAGE_SIZEOF_SHORT_NAME]; | |
| 2264 | + union { | |
| 2265 | + DWORD PhysicalAddress; | |
| 2266 | + DWORD VirtualSize; | |
| 2267 | + } Misc; | |
| 2268 | + DWORD VirtualAddress; | |
| 2269 | + DWORD SizeOfRawData; | |
| 2270 | + DWORD PointerToRawData; | |
| 2271 | + DWORD PointerToRelocations; | |
| 2272 | + DWORD PointerToLinenumbers; | |
| 2273 | + WORD NumberOfRelocations; | |
| 2274 | + WORD NumberOfLinenumbers; | |
| 2275 | + DWORD Characteristics; | |
| 2276 | +} IMAGE_SECTION_HEADER,*PIMAGE_SECTION_HEADER; | |
| 2277 | +#pragma pack(pop) | |
| 2278 | +#pragma pack(push,2) | |
| 2279 | +typedef struct _IMAGE_SYMBOL { | |
| 2280 | + union { | |
| 2281 | + BYTE ShortName[8]; | |
| 2282 | + struct { | |
| 2283 | + DWORD Short; | |
| 2284 | + DWORD Long; | |
| 2285 | + } Name; | |
| 2286 | + PBYTE LongName[2]; | |
| 2287 | + } N; | |
| 2288 | + DWORD Value; | |
| 2289 | + SHORT SectionNumber; | |
| 2290 | + WORD Type; | |
| 2291 | + BYTE StorageClass; | |
| 2292 | + BYTE NumberOfAuxSymbols; | |
| 2293 | +} IMAGE_SYMBOL,*PIMAGE_SYMBOL; | |
| 2294 | +typedef union _IMAGE_AUX_SYMBOL { | |
| 2295 | + struct { | |
| 2296 | + DWORD TagIndex; | |
| 2297 | + union { | |
| 2298 | + struct { | |
| 2299 | + WORD Linenumber; | |
| 2300 | + WORD Size; | |
| 2301 | + } LnSz; | |
| 2302 | + DWORD TotalSize; | |
| 2303 | + } Misc; | |
| 2304 | + union { | |
| 2305 | + struct { | |
| 2306 | + DWORD PointerToLinenumber; | |
| 2307 | + DWORD PointerToNextFunction; | |
| 2308 | + } Function; | |
| 2309 | + struct { | |
| 2310 | + WORD Dimension[4]; | |
| 2311 | + } Array; | |
| 2312 | + } FcnAry; | |
| 2313 | + WORD TvIndex; | |
| 2314 | + } Sym; | |
| 2315 | + struct { | |
| 2316 | + BYTE Name[IMAGE_SIZEOF_SYMBOL]; | |
| 2317 | + } File; | |
| 2318 | + struct { | |
| 2319 | + DWORD Length; | |
| 2320 | + WORD NumberOfRelocations; | |
| 2321 | + WORD NumberOfLinenumbers; | |
| 2322 | + DWORD CheckSum; | |
| 2323 | + SHORT Number; | |
| 2324 | + BYTE Selection; | |
| 2325 | + } Section; | |
| 2326 | +} IMAGE_AUX_SYMBOL,*PIMAGE_AUX_SYMBOL; | |
| 2327 | +typedef struct _IMAGE_COFF_SYMBOLS_HEADER { | |
| 2328 | + DWORD NumberOfSymbols; | |
| 2329 | + DWORD LvaToFirstSymbol; | |
| 2330 | + DWORD NumberOfLinenumbers; | |
| 2331 | + DWORD LvaToFirstLinenumber; | |
| 2332 | + DWORD RvaToFirstByteOfCode; | |
| 2333 | + DWORD RvaToLastByteOfCode; | |
| 2334 | + DWORD RvaToFirstByteOfData; | |
| 2335 | + DWORD RvaToLastByteOfData; | |
| 2336 | +} IMAGE_COFF_SYMBOLS_HEADER,*PIMAGE_COFF_SYMBOLS_HEADER; | |
| 2337 | +typedef struct _IMAGE_RELOCATION { | |
| 2338 | + _ANONYMOUS_UNION union { | |
| 2339 | + DWORD VirtualAddress; | |
| 2340 | + DWORD RelocCount; | |
| 2341 | + } DUMMYUNIONNAME; | |
| 2342 | + DWORD SymbolTableIndex; | |
| 2343 | + WORD Type; | |
| 2344 | +} IMAGE_RELOCATION,*PIMAGE_RELOCATION; | |
| 2345 | +#pragma pack(pop) | |
| 2346 | +#pragma pack(push,4) | |
| 2347 | +typedef struct _IMAGE_BASE_RELOCATION { | |
| 2348 | + DWORD VirtualAddress; | |
| 2349 | + DWORD SizeOfBlock; | |
| 2350 | +} IMAGE_BASE_RELOCATION,*PIMAGE_BASE_RELOCATION; | |
| 2351 | +#pragma pack(pop) | |
| 2352 | +#pragma pack(push,2) | |
| 2353 | +typedef struct _IMAGE_LINENUMBER { | |
| 2354 | + union { | |
| 2355 | + DWORD SymbolTableIndex; | |
| 2356 | + DWORD VirtualAddress; | |
| 2357 | + } Type; | |
| 2358 | + WORD Linenumber; | |
| 2359 | +} IMAGE_LINENUMBER,*PIMAGE_LINENUMBER; | |
| 2360 | +#pragma pack(pop) | |
| 2361 | +#pragma pack(push,4) | |
| 2362 | +typedef struct _IMAGE_ARCHIVE_MEMBER_HEADER { | |
| 2363 | + BYTE Name[16]; | |
| 2364 | + BYTE Date[12]; | |
| 2365 | + BYTE UserID[6]; | |
| 2366 | + BYTE GroupID[6]; | |
| 2367 | + BYTE Mode[8]; | |
| 2368 | + BYTE Size[10]; | |
| 2369 | + BYTE EndHeader[2]; | |
| 2370 | +} IMAGE_ARCHIVE_MEMBER_HEADER,*PIMAGE_ARCHIVE_MEMBER_HEADER; | |
| 2371 | +typedef struct _IMAGE_EXPORT_DIRECTORY { | |
| 2372 | + DWORD Characteristics; | |
| 2373 | + DWORD TimeDateStamp; | |
| 2374 | + WORD MajorVersion; | |
| 2375 | + WORD MinorVersion; | |
| 2376 | + DWORD Name; | |
| 2377 | + DWORD Base; | |
| 2378 | + DWORD NumberOfFunctions; | |
| 2379 | + DWORD NumberOfNames; | |
| 2380 | + PDWORD *AddressOfFunctions; | |
| 2381 | + PDWORD *AddressOfNames; | |
| 2382 | + PWORD *AddressOfNameOrdinals; | |
| 2383 | +} IMAGE_EXPORT_DIRECTORY,*PIMAGE_EXPORT_DIRECTORY; | |
| 2384 | +typedef struct _IMAGE_IMPORT_BY_NAME { | |
| 2385 | + WORD Hint; | |
| 2386 | + BYTE Name[1]; | |
| 2387 | +} IMAGE_IMPORT_BY_NAME,*PIMAGE_IMPORT_BY_NAME; | |
| 2388 | +typedef struct _IMAGE_THUNK_DATA { | |
| 2389 | + union { | |
| 2390 | + PBYTE ForwarderString; | |
| 2391 | + PDWORD Function; | |
| 2392 | + DWORD Ordinal; | |
| 2393 | + PIMAGE_IMPORT_BY_NAME AddressOfData; | |
| 2394 | + } u1; | |
| 2395 | +} IMAGE_THUNK_DATA,*PIMAGE_THUNK_DATA; | |
| 2396 | +typedef struct _IMAGE_IMPORT_DESCRIPTOR { | |
| 2397 | + _ANONYMOUS_UNION union { | |
| 2398 | + DWORD Characteristics; | |
| 2399 | + PIMAGE_THUNK_DATA OriginalFirstThunk; | |
| 2400 | + } DUMMYUNIONNAME; | |
| 2401 | + DWORD TimeDateStamp; | |
| 2402 | + DWORD ForwarderChain; | |
| 2403 | + DWORD Name; | |
| 2404 | + PIMAGE_THUNK_DATA FirstThunk; | |
| 2405 | +} IMAGE_IMPORT_DESCRIPTOR,*PIMAGE_IMPORT_DESCRIPTOR; | |
| 2406 | +typedef struct _IMAGE_BOUND_IMPORT_DESCRIPTOR { | |
| 2407 | + DWORD TimeDateStamp; | |
| 2408 | + WORD OffsetModuleName; | |
| 2409 | + WORD NumberOfModuleForwarderRefs; | |
| 2410 | +} IMAGE_BOUND_IMPORT_DESCRIPTOR,*PIMAGE_BOUND_IMPORT_DESCRIPTOR; | |
| 2411 | +typedef struct _IMAGE_BOUND_FORWARDER_REF { | |
| 2412 | + DWORD TimeDateStamp; | |
| 2413 | + WORD OffsetModuleName; | |
| 2414 | + WORD Reserved; | |
| 2415 | +} IMAGE_BOUND_FORWARDER_REF,*PIMAGE_BOUND_FORWARDER_REF; | |
| 2416 | +typedef void(NTAPI *PIMAGE_TLS_CALLBACK)(PVOID,DWORD,PVOID); | |
| 2417 | +typedef struct _IMAGE_TLS_DIRECTORY { | |
| 2418 | + DWORD StartAddressOfRawData; | |
| 2419 | + DWORD EndAddressOfRawData; | |
| 2420 | + PDWORD AddressOfIndex; | |
| 2421 | + PIMAGE_TLS_CALLBACK *AddressOfCallBacks; | |
| 2422 | + DWORD SizeOfZeroFill; | |
| 2423 | + DWORD Characteristics; | |
| 2424 | +} IMAGE_TLS_DIRECTORY,*PIMAGE_TLS_DIRECTORY; | |
| 2425 | +typedef struct _IMAGE_RESOURCE_DIRECTORY { | |
| 2426 | + DWORD Characteristics; | |
| 2427 | + DWORD TimeDateStamp; | |
| 2428 | + WORD MajorVersion; | |
| 2429 | + WORD MinorVersion; | |
| 2430 | + WORD NumberOfNamedEntries; | |
| 2431 | + WORD NumberOfIdEntries; | |
| 2432 | +} IMAGE_RESOURCE_DIRECTORY,*PIMAGE_RESOURCE_DIRECTORY; | |
| 2433 | +_ANONYMOUS_STRUCT typedef struct _IMAGE_RESOURCE_DIRECTORY_ENTRY { | |
| 2434 | + _ANONYMOUS_UNION union { | |
| 2435 | + _ANONYMOUS_STRUCT struct { | |
| 2436 | + DWORD NameOffset:31; | |
| 2437 | + DWORD NameIsString:1; | |
| 2438 | + }DUMMYSTRUCTNAME; | |
| 2439 | + DWORD Name; | |
| 2440 | + WORD Id; | |
| 2441 | + } DUMMYUNIONNAME; | |
| 2442 | + _ANONYMOUS_UNION union { | |
| 2443 | + DWORD OffsetToData; | |
| 2444 | + _ANONYMOUS_STRUCT struct { | |
| 2445 | + DWORD OffsetToDirectory:31; | |
| 2446 | + DWORD DataIsDirectory:1; | |
| 2447 | + } DUMMYSTRUCTNAME2; | |
| 2448 | + } DUMMYUNIONNAME2; | |
| 2449 | +} IMAGE_RESOURCE_DIRECTORY_ENTRY,*PIMAGE_RESOURCE_DIRECTORY_ENTRY; | |
| 2450 | +typedef struct _IMAGE_RESOURCE_DIRECTORY_STRING { | |
| 2451 | + WORD Length; | |
| 2452 | + CHAR NameString[1]; | |
| 2453 | +} IMAGE_RESOURCE_DIRECTORY_STRING,*PIMAGE_RESOURCE_DIRECTORY_STRING; | |
| 2454 | +typedef struct _IMAGE_RESOURCE_DIR_STRING_U { | |
| 2455 | + WORD Length; | |
| 2456 | + WCHAR NameString[1]; | |
| 2457 | +} IMAGE_RESOURCE_DIR_STRING_U,*PIMAGE_RESOURCE_DIR_STRING_U; | |
| 2458 | +typedef struct _IMAGE_RESOURCE_DATA_ENTRY { | |
| 2459 | + DWORD OffsetToData; | |
| 2460 | + DWORD Size; | |
| 2461 | + DWORD CodePage; | |
| 2462 | + DWORD Reserved; | |
| 2463 | +} IMAGE_RESOURCE_DATA_ENTRY,*PIMAGE_RESOURCE_DATA_ENTRY; | |
| 2464 | +typedef struct _IMAGE_LOAD_CONFIG_DIRECTORY { | |
| 2465 | + DWORD Characteristics; | |
| 2466 | + DWORD TimeDateStamp; | |
| 2467 | + WORD MajorVersion; | |
| 2468 | + WORD MinorVersion; | |
| 2469 | + DWORD GlobalFlagsClear; | |
| 2470 | + DWORD GlobalFlagsSet; | |
| 2471 | + DWORD CriticalSectionDefaultTimeout; | |
| 2472 | + DWORD DeCommitFreeBlockThreshold; | |
| 2473 | + DWORD DeCommitTotalFreeThreshold; | |
| 2474 | + PVOID LockPrefixTable; | |
| 2475 | + DWORD MaximumAllocationSize; | |
| 2476 | + DWORD VirtualMemoryThreshold; | |
| 2477 | + DWORD ProcessHeapFlags; | |
| 2478 | + DWORD Reserved[4]; | |
| 2479 | +} IMAGE_LOAD_CONFIG_DIRECTORY,*PIMAGE_LOAD_CONFIG_DIRECTORY; | |
| 2480 | +typedef struct _IMAGE_RUNTIME_FUNCTION_ENTRY { | |
| 2481 | + DWORD BeginAddress; | |
| 2482 | + DWORD EndAddress; | |
| 2483 | + PVOID ExceptionHandler; | |
| 2484 | + PVOID HandlerData; | |
| 2485 | + DWORD PrologEndAddress; | |
| 2486 | +} IMAGE_RUNTIME_FUNCTION_ENTRY,*PIMAGE_RUNTIME_FUNCTION_ENTRY; | |
| 2487 | +typedef struct _IMAGE_DEBUG_DIRECTORY { | |
| 2488 | + DWORD Characteristics; | |
| 2489 | + DWORD TimeDateStamp; | |
| 2490 | + WORD MajorVersion; | |
| 2491 | + WORD MinorVersion; | |
| 2492 | + DWORD Type; | |
| 2493 | + DWORD SizeOfData; | |
| 2494 | + DWORD AddressOfRawData; | |
| 2495 | + DWORD PointerToRawData; | |
| 2496 | +} IMAGE_DEBUG_DIRECTORY,*PIMAGE_DEBUG_DIRECTORY; | |
| 2497 | +typedef struct _FPO_DATA { | |
| 2498 | + DWORD ulOffStart; | |
| 2499 | + DWORD cbProcSize; | |
| 2500 | + DWORD cdwLocals; | |
| 2501 | + WORD cdwParams; | |
| 2502 | + WORD cbProlog:8; | |
| 2503 | + WORD cbRegs:3; | |
| 2504 | + WORD fHasSEH:1; | |
| 2505 | + WORD fUseBP:1; | |
| 2506 | + WORD reserved:1; | |
| 2507 | + WORD cbFrame:2; | |
| 2508 | +} FPO_DATA,*PFPO_DATA; | |
| 2509 | +typedef struct _IMAGE_DEBUG_MISC { | |
| 2510 | + DWORD DataType; | |
| 2511 | + DWORD Length; | |
| 2512 | + BOOLEAN Unicode; | |
| 2513 | + BYTE Reserved[3]; | |
| 2514 | + BYTE Data[1]; | |
| 2515 | +} IMAGE_DEBUG_MISC,*PIMAGE_DEBUG_MISC; | |
| 2516 | +typedef struct _IMAGE_FUNCTION_ENTRY { | |
| 2517 | + DWORD StartingAddress; | |
| 2518 | + DWORD EndingAddress; | |
| 2519 | + DWORD EndOfPrologue; | |
| 2520 | +} IMAGE_FUNCTION_ENTRY,*PIMAGE_FUNCTION_ENTRY; | |
| 2521 | +typedef struct _IMAGE_SEPARATE_DEBUG_HEADER { | |
| 2522 | + WORD Signature; | |
| 2523 | + WORD Flags; | |
| 2524 | + WORD Machine; | |
| 2525 | + WORD Characteristics; | |
| 2526 | + DWORD TimeDateStamp; | |
| 2527 | + DWORD CheckSum; | |
| 2528 | + DWORD ImageBase; | |
| 2529 | + DWORD SizeOfImage; | |
| 2530 | + DWORD NumberOfSections; | |
| 2531 | + DWORD ExportedNamesSize; | |
| 2532 | + DWORD DebugDirectorySize; | |
| 2533 | + DWORD Reserved[3]; | |
| 2534 | +} IMAGE_SEPARATE_DEBUG_HEADER,*PIMAGE_SEPARATE_DEBUG_HEADER; | |
| 2535 | +#pragma pack(pop) | |
| 2536 | +typedef enum _CM_SERVICE_NODE_TYPE { | |
| 2537 | + DriverType=SERVICE_KERNEL_DRIVER, | |
| 2538 | + FileSystemType=SERVICE_FILE_SYSTEM_DRIVER, | |
| 2539 | + Win32ServiceOwnProcess=SERVICE_WIN32_OWN_PROCESS, | |
| 2540 | + Win32ServiceShareProcess=SERVICE_WIN32_SHARE_PROCESS, | |
| 2541 | + AdapterType=SERVICE_ADAPTER, | |
| 2542 | + RecognizerType=SERVICE_RECOGNIZER_DRIVER | |
| 2543 | +} SERVICE_NODE_TYPE; | |
| 2544 | +typedef enum _CM_SERVICE_LOAD_TYPE { | |
| 2545 | + BootLoad=SERVICE_BOOT_START, | |
| 2546 | + SystemLoad=SERVICE_SYSTEM_START, | |
| 2547 | + AutoLoad=SERVICE_AUTO_START, | |
| 2548 | + DemandLoad=SERVICE_DEMAND_START, | |
| 2549 | + DisableLoad=SERVICE_DISABLED | |
| 2550 | +} SERVICE_LOAD_TYPE; | |
| 2551 | +typedef enum _CM_ERROR_CONTROL_TYPE { | |
| 2552 | + IgnoreError=SERVICE_ERROR_IGNORE, | |
| 2553 | + NormalError=SERVICE_ERROR_NORMAL, | |
| 2554 | + SevereError=SERVICE_ERROR_SEVERE, | |
| 2555 | + CriticalError=SERVICE_ERROR_CRITICAL | |
| 2556 | +} SERVICE_ERROR_TYPE; | |
| 2557 | +typedef struct _NT_TIB { | |
| 2558 | + struct _EXCEPTION_REGISTRATION_RECORD *ExceptionList; | |
| 2559 | + PVOID StackBase; | |
| 2560 | + PVOID StackLimit; | |
| 2561 | + PVOID SubSystemTib; | |
| 2562 | + _ANONYMOUS_UNION union { | |
| 2563 | + PVOID FiberData; | |
| 2564 | + DWORD Version; | |
| 2565 | + } DUMMYUNIONNAME; | |
| 2566 | + PVOID ArbitraryUserPointer; | |
| 2567 | + struct _NT_TIB *Self; | |
| 2568 | +} NT_TIB,*PNT_TIB; | |
| 2569 | +typedef struct _REPARSE_DATA_BUFFER { | |
| 2570 | + DWORD ReparseTag; | |
| 2571 | + WORD ReparseDataLength; | |
| 2572 | + WORD Reserved; | |
| 2573 | + _ANONYMOUS_UNION union { | |
| 2574 | + struct { | |
| 2575 | + WORD SubstituteNameOffset; | |
| 2576 | + WORD SubstituteNameLength; | |
| 2577 | + WORD PrintNameOffset; | |
| 2578 | + WORD PrintNameLength; | |
| 2579 | + WCHAR PathBuffer[1]; | |
| 2580 | + } SymbolicLinkReparseBuffer; | |
| 2581 | + struct { | |
| 2582 | + WORD SubstituteNameOffset; | |
| 2583 | + WORD SubstituteNameLength; | |
| 2584 | + WORD PrintNameOffset; | |
| 2585 | + WORD PrintNameLength; | |
| 2586 | + WCHAR PathBuffer[1]; | |
| 2587 | + } MountPointReparseBuffer; | |
| 2588 | + struct { | |
| 2589 | + BYTE DataBuffer[1]; | |
| 2590 | + } GenericReparseBuffer; | |
| 2591 | + } DUMMYUNIONNAME; | |
| 2592 | +} REPARSE_DATA_BUFFER, *PREPARSE_DATA_BUFFER; | |
| 2593 | +typedef struct _REPARSE_GUID_DATA_BUFFER { | |
| 2594 | + DWORD ReparseTag; | |
| 2595 | + WORD ReparseDataLength; | |
| 2596 | + WORD Reserved; | |
| 2597 | + GUID ReparseGuid; | |
| 2598 | + struct { | |
| 2599 | + BYTE DataBuffer[1]; | |
| 2600 | + } GenericReparseBuffer; | |
| 2601 | +} REPARSE_GUID_DATA_BUFFER, *PREPARSE_GUID_DATA_BUFFER; | |
| 2602 | +typedef struct _REPARSE_POINT_INFORMATION { | |
| 2603 | + WORD ReparseDataLength; | |
| 2604 | + WORD UnparsedNameLength; | |
| 2605 | +} REPARSE_POINT_INFORMATION, *PREPARSE_POINT_INFORMATION; | |
| 2606 | + | |
| 2607 | +#ifdef UNICODE | |
| 2608 | +typedef OSVERSIONINFOW OSVERSIONINFO,*POSVERSIONINFO,*LPOSVERSIONINFO; | |
| 2609 | +typedef OSVERSIONINFOEXW OSVERSIONINFOEX,*POSVERSIONINFOEX,*LPOSVERSIONINFOEX; | |
| 2610 | +#else | |
| 2611 | +typedef OSVERSIONINFOA OSVERSIONINFO,*POSVERSIONINFO,*LPOSVERSIONINFO; | |
| 2612 | +typedef OSVERSIONINFOEXA OSVERSIONINFOEX,*POSVERSIONINFOEX,*LPOSVERSIONINFOEX; | |
| 2613 | +#endif | |
| 2614 | + | |
| 2615 | +#if defined(__GNUC__) | |
| 2616 | + | |
| 2617 | +PVOID GetCurrentFiber(void); | |
| 2618 | +PVOID GetFiberData(void); | |
| 2619 | + | |
| 2620 | +PVOID GetCurrentFiber(void); | |
| 2621 | +extern __inline__ PVOID GetCurrentFiber(void) | |
| 2622 | +{ | |
| 2623 | + void* ret; | |
| 2624 | + __asm__ volatile ( | |
| 2625 | + "movl %%fs:0x10,%0" | |
| 2626 | + : "=r" (ret) /* allow use of reg eax,ebx,ecx,edx,esi,edi */ | |
| 2627 | + : | |
| 2628 | + ); | |
| 2629 | + return ret; | |
| 2630 | +} | |
| 2631 | + | |
| 2632 | +PVOID GetFiberData(void); | |
| 2633 | +extern __inline__ PVOID GetFiberData(void) | |
| 2634 | +{ | |
| 2635 | + void* ret; | |
| 2636 | + __asm__ volatile ( | |
| 2637 | + "movl %%fs:0x10,%0\n" | |
| 2638 | + "movl (%0),%0" | |
| 2639 | + : "=r" (ret) /* allow use of reg eax,ebx,ecx,edx,esi,edi */ | |
| 2640 | + : | |
| 2641 | + ); | |
| 2642 | + return ret; | |
| 2643 | +} | |
| 2644 | + | |
| 2645 | +#else | |
| 2646 | + | |
| 2647 | +extern PVOID GetCurrentFiber(void); | |
| 2648 | +#pragma aux GetCurrentFiber = \ | |
| 2649 | + "mov eax, dword ptr fs:0x10" \ | |
| 2650 | + value [eax] \ | |
| 2651 | + modify [eax]; | |
| 2652 | + | |
| 2653 | +extern PVOID GetFiberData(void); | |
| 2654 | +#pragma aux GetFiberData = \ | |
| 2655 | + "mov eax, dword ptr fs:0x10" \ | |
| 2656 | + "mov eax, [eax]" \ | |
| 2657 | + value [eax] \ | |
| 2658 | + modify [eax]; | |
| 2659 | + | |
| 2660 | +#endif /* __GNUC__ */ | |
| 2661 | + | |
| 2662 | +#endif | |
| 2663 | +#ifdef __cplusplus | |
| 2664 | +} | |
| 2665 | +#endif | |
| 2666 | +#endif | |
| 2667 | + | |
| @@ -0,0 +1,159 @@ | ||
| 1 | +#ifndef _WINREG_H | |
| 2 | +#define _WINREG_H | |
| 3 | +#if __GNUC__ >=3 | |
| 4 | +#pragma GCC system_header | |
| 5 | +#endif | |
| 6 | + | |
| 7 | +#ifdef __cplusplus | |
| 8 | +extern "C" { | |
| 9 | +#endif | |
| 10 | +#define HKEY_CLASSES_ROOT ((HKEY)0x80000000) | |
| 11 | +#define HKEY_CURRENT_USER ((HKEY)0x80000001) | |
| 12 | +#define HKEY_LOCAL_MACHINE ((HKEY)0x80000002) | |
| 13 | +#define HKEY_USERS ((HKEY)0x80000003) | |
| 14 | +#define HKEY_PERFORMANCE_DATA ((HKEY)0x80000004) | |
| 15 | +#define HKEY_CURRENT_CONFIG ((HKEY)0x80000005) | |
| 16 | +#define HKEY_DYN_DATA ((HKEY)0x80000006) | |
| 17 | +#define REG_OPTION_VOLATILE 1 | |
| 18 | +#define REG_OPTION_NON_VOLATILE 0 | |
| 19 | +#define REG_CREATED_NEW_KEY 1 | |
| 20 | +#define REG_OPENED_EXISTING_KEY 2 | |
| 21 | +#define REG_NONE 0 | |
| 22 | +#define REG_SZ 1 | |
| 23 | +#define REG_EXPAND_SZ 2 | |
| 24 | +#define REG_BINARY 3 | |
| 25 | +#define REG_DWORD 4 | |
| 26 | +#define REG_DWORD_BIG_ENDIAN 5 | |
| 27 | +#define REG_DWORD_LITTLE_ENDIAN 4 | |
| 28 | +#define REG_LINK 6 | |
| 29 | +#define REG_MULTI_SZ 7 | |
| 30 | +#define REG_RESOURCE_LIST 8 | |
| 31 | +#define REG_FULL_RESOURCE_DESCRIPTOR 9 | |
| 32 | +#define REG_RESOURCE_REQUIREMENTS_LIST 10 | |
| 33 | +#define REG_NOTIFY_CHANGE_NAME 1 | |
| 34 | +#define REG_NOTIFY_CHANGE_ATTRIBUTES 2 | |
| 35 | +#define REG_NOTIFY_CHANGE_LAST_SET 4 | |
| 36 | +#define REG_NOTIFY_CHANGE_SECURITY 8 | |
| 37 | + | |
| 38 | +#ifndef RC_INVOKED | |
| 39 | +typedef ACCESS_MASK REGSAM; | |
| 40 | +typedef struct value_entA { | |
| 41 | + LPSTR ve_valuename; | |
| 42 | + DWORD ve_valuelen; | |
| 43 | + DWORD ve_valueptr; | |
| 44 | + DWORD ve_type; | |
| 45 | +} VALENTA,*PVALENTA; | |
| 46 | +typedef struct value_entW { | |
| 47 | + LPWSTR ve_valuename; | |
| 48 | + DWORD ve_valuelen; | |
| 49 | + DWORD ve_valueptr; | |
| 50 | + DWORD ve_type; | |
| 51 | +} VALENTW,*PVALENTW; | |
| 52 | +BOOL WINAPI AbortSystemShutdownA(LPCSTR); | |
| 53 | +BOOL WINAPI AbortSystemShutdownW(LPCWSTR); | |
| 54 | +BOOL WINAPI InitiateSystemShutdownA(LPSTR,LPSTR,DWORD,BOOL,BOOL); | |
| 55 | +BOOL WINAPI InitiateSystemShutdownW(LPWSTR,LPWSTR,DWORD,BOOL,BOOL); | |
| 56 | +LONG WINAPI RegCloseKey(HKEY); | |
| 57 | +LONG WINAPI RegConnectRegistryA(LPSTR,HKEY,PHKEY); | |
| 58 | +LONG WINAPI RegConnectRegistryW(LPWSTR,HKEY,PHKEY); | |
| 59 | +LONG WINAPI RegCreateKeyA(HKEY,LPCSTR,PHKEY); | |
| 60 | +LONG WINAPI RegCreateKeyExA(HKEY,LPCSTR,DWORD,LPSTR,DWORD,REGSAM,LPSECURITY_ATTRIBUTES,PHKEY,PDWORD); | |
| 61 | +LONG WINAPI RegCreateKeyExW(HKEY,LPCWSTR,DWORD,LPWSTR,DWORD,REGSAM,LPSECURITY_ATTRIBUTES,PHKEY,PDWORD); | |
| 62 | +LONG WINAPI RegCreateKeyW(HKEY,LPCWSTR,PHKEY); | |
| 63 | +LONG WINAPI RegDeleteKeyA(HKEY,LPCSTR); | |
| 64 | +LONG WINAPI RegDeleteKeyW(HKEY,LPCWSTR); | |
| 65 | +LONG WINAPI RegDeleteValueA (HKEY,LPCSTR); | |
| 66 | +LONG WINAPI RegDeleteValueW(HKEY,LPCWSTR); | |
| 67 | +LONG WINAPI RegEnumKeyA (HKEY,DWORD,LPSTR,DWORD); | |
| 68 | +LONG WINAPI RegEnumKeyW(HKEY,DWORD,LPWSTR,DWORD); | |
| 69 | +LONG WINAPI RegEnumKeyExA(HKEY,DWORD,LPSTR,PDWORD,PDWORD,LPSTR,PDWORD,PFILETIME); | |
| 70 | +LONG WINAPI RegEnumKeyExW(HKEY,DWORD,LPWSTR,PDWORD,PDWORD,LPWSTR,PDWORD,PFILETIME); | |
| 71 | +LONG WINAPI RegEnumValueA(HKEY,DWORD,LPSTR,PDWORD,PDWORD,PDWORD,LPBYTE,PDWORD); | |
| 72 | +LONG WINAPI RegEnumValueW(HKEY,DWORD,LPWSTR,PDWORD,PDWORD,PDWORD,LPBYTE,PDWORD); | |
| 73 | +LONG WINAPI RegFlushKey(HKEY); | |
| 74 | +LONG WINAPI RegGetKeySecurity(HKEY,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,PDWORD); | |
| 75 | +LONG WINAPI RegLoadKeyA(HKEY,LPCSTR,LPCSTR); | |
| 76 | +LONG WINAPI RegLoadKeyW(HKEY,LPCWSTR,LPCWSTR); | |
| 77 | +LONG WINAPI RegNotifyChangeKeyValue(HKEY,BOOL,DWORD,HANDLE,BOOL); | |
| 78 | +LONG WINAPI RegOpenKeyA(HKEY,LPCSTR,PHKEY); | |
| 79 | +LONG WINAPI RegOpenKeyExA(HKEY,LPCSTR,DWORD,REGSAM,PHKEY); | |
| 80 | +LONG WINAPI RegOpenKeyExW(HKEY,LPCWSTR,DWORD,REGSAM,PHKEY); | |
| 81 | +LONG WINAPI RegOpenKeyW(HKEY,LPCWSTR,PHKEY); | |
| 82 | +LONG WINAPI RegQueryInfoKeyA(HKEY,LPSTR,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PFILETIME); | |
| 83 | +LONG WINAPI RegQueryInfoKeyW(HKEY,LPWSTR,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PFILETIME); | |
| 84 | +LONG WINAPI RegQueryMultipleValuesA(HKEY,PVALENTA,DWORD,LPSTR,PDWORD); | |
| 85 | +LONG WINAPI RegQueryMultipleValuesW(HKEY,PVALENTW,DWORD,LPWSTR,PDWORD); | |
| 86 | +LONG WINAPI RegQueryValueA(HKEY,LPCSTR,LPSTR,PLONG); | |
| 87 | +LONG WINAPI RegQueryValueExA (HKEY,LPCSTR,PDWORD,PDWORD,LPBYTE,PDWORD); | |
| 88 | +LONG WINAPI RegQueryValueExW(HKEY,LPCWSTR,PDWORD,PDWORD,LPBYTE,PDWORD); | |
| 89 | +LONG WINAPI RegQueryValueW(HKEY,LPCWSTR,LPWSTR,PLONG); | |
| 90 | +LONG WINAPI RegReplaceKeyA(HKEY,LPCSTR,LPCSTR,LPCSTR); | |
| 91 | +LONG WINAPI RegReplaceKeyW(HKEY,LPCWSTR,LPCWSTR,LPCWSTR); | |
| 92 | +LONG WINAPI RegRestoreKeyA (HKEY,LPCSTR,DWORD); | |
| 93 | +LONG WINAPI RegRestoreKeyW(HKEY,LPCWSTR,DWORD); | |
| 94 | +LONG WINAPI RegSaveKeyA(HKEY,LPCSTR,LPSECURITY_ATTRIBUTES); | |
| 95 | +LONG WINAPI RegSaveKeyW(HKEY,LPCWSTR,LPSECURITY_ATTRIBUTES); | |
| 96 | +LONG WINAPI RegSetKeySecurity(HKEY,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR); | |
| 97 | +LONG WINAPI RegSetValueA(HKEY,LPCSTR,DWORD,LPCSTR,DWORD); | |
| 98 | +LONG WINAPI RegSetValueExA(HKEY,LPCSTR,DWORD,DWORD,const BYTE*,DWORD); | |
| 99 | +LONG WINAPI RegSetValueExW(HKEY,LPCWSTR,DWORD,DWORD,const BYTE*,DWORD); | |
| 100 | +LONG WINAPI RegSetValueW(HKEY,LPCWSTR,DWORD,LPCWSTR,DWORD); | |
| 101 | +LONG WINAPI RegUnLoadKeyA(HKEY,LPCSTR); | |
| 102 | +LONG WINAPI RegUnLoadKeyW(HKEY,LPCWSTR); | |
| 103 | + | |
| 104 | +#ifdef UNICODE | |
| 105 | +typedef VALENTW VALENT,*PVALENT; | |
| 106 | +#define AbortSystemShutdown AbortSystemShutdownW | |
| 107 | +#define InitiateSystemShutdown InitiateSystemShutdownW | |
| 108 | +#define RegConnectRegistry RegConnectRegistryW | |
| 109 | +#define RegCreateKey RegCreateKeyW | |
| 110 | +#define RegCreateKeyEx RegCreateKeyExW | |
| 111 | +#define RegDeleteKey RegDeleteKeyW | |
| 112 | +#define RegDeleteValue RegDeleteValueW | |
| 113 | +#define RegEnumKey RegEnumKeyW | |
| 114 | +#define RegEnumKeyEx RegEnumKeyExW | |
| 115 | +#define RegEnumValue RegEnumValueW | |
| 116 | +#define RegLoadKey RegLoadKeyW | |
| 117 | +#define RegOpenKey RegOpenKeyW | |
| 118 | +#define RegOpenKeyEx RegOpenKeyExW | |
| 119 | +#define RegQueryInfoKey RegQueryInfoKeyW | |
| 120 | +#define RegQueryMultipleValues RegQueryMultipleValuesW | |
| 121 | +#define RegQueryValue RegQueryValueW | |
| 122 | +#define RegQueryValueEx RegQueryValueExW | |
| 123 | +#define RegReplaceKey RegReplaceKeyW | |
| 124 | +#define RegRestoreKey RegRestoreKeyW | |
| 125 | +#define RegSaveKey RegSaveKeyW | |
| 126 | +#define RegSetValue RegSetValueW | |
| 127 | +#define RegSetValueEx RegSetValueExW | |
| 128 | +#define RegUnLoadKey RegUnLoadKeyW | |
| 129 | +#else | |
| 130 | +typedef VALENTA VALENT,*PVALENT; | |
| 131 | +#define AbortSystemShutdown AbortSystemShutdownA | |
| 132 | +#define InitiateSystemShutdown InitiateSystemShutdownA | |
| 133 | +#define RegConnectRegistry RegConnectRegistryA | |
| 134 | +#define RegCreateKey RegCreateKeyA | |
| 135 | +#define RegCreateKeyEx RegCreateKeyExA | |
| 136 | +#define RegDeleteKey RegDeleteKeyA | |
| 137 | +#define RegDeleteValue RegDeleteValueA | |
| 138 | +#define RegEnumKey RegEnumKeyA | |
| 139 | +#define RegEnumKeyEx RegEnumKeyExA | |
| 140 | +#define RegEnumValue RegEnumValueA | |
| 141 | +#define RegLoadKey RegLoadKeyA | |
| 142 | +#define RegOpenKey RegOpenKeyA | |
| 143 | +#define RegOpenKeyEx RegOpenKeyExA | |
| 144 | +#define RegQueryInfoKey RegQueryInfoKeyA | |
| 145 | +#define RegQueryMultipleValues RegQueryMultipleValuesA | |
| 146 | +#define RegQueryValue RegQueryValueA | |
| 147 | +#define RegQueryValueEx RegQueryValueExA | |
| 148 | +#define RegReplaceKey RegReplaceKeyA | |
| 149 | +#define RegRestoreKey RegRestoreKeyA | |
| 150 | +#define RegSaveKey RegSaveKeyA | |
| 151 | +#define RegSetValue RegSetValueA | |
| 152 | +#define RegSetValueEx RegSetValueExA | |
| 153 | +#define RegUnLoadKey RegUnLoadKeyA | |
| 154 | +#endif | |
| 155 | +#endif | |
| 156 | +#ifdef __cplusplus | |
| 157 | +} | |
| 158 | +#endif | |
| 159 | +#endif | |
| @@ -0,0 +1,309 @@ | ||
| 1 | +#ifndef _WINSVC_H | |
| 2 | +#define _WINSVC_H | |
| 3 | +#if __GNUC__ >=3 | |
| 4 | +#pragma GCC system_header | |
| 5 | +#endif | |
| 6 | + | |
| 7 | +#ifdef __cplusplus | |
| 8 | +extern "C" { | |
| 9 | +#endif | |
| 10 | +#define SERVICES_ACTIVE_DATABASEA "ServicesActive" | |
| 11 | +#define SERVICES_ACTIVE_DATABASEW L"ServicesActive" | |
| 12 | +#define SERVICES_FAILED_DATABASEA "ServicesFailed" | |
| 13 | +#define SERVICES_FAILED_DATABASEW L"ServicesFailed" | |
| 14 | +#define SC_GROUP_IDENTIFIERA '+' | |
| 15 | +#define SC_GROUP_IDENTIFIERW L'+' | |
| 16 | +#define SC_MANAGER_ALL_ACCESS 0xf003f | |
| 17 | +#define SC_MANAGER_CONNECT 1 | |
| 18 | +#define SC_MANAGER_CREATE_SERVICE 2 | |
| 19 | +#define SC_MANAGER_ENUMERATE_SERVICE 4 | |
| 20 | +#define SC_MANAGER_LOCK 8 | |
| 21 | +#define SC_MANAGER_QUERY_LOCK_STATUS 16 | |
| 22 | +#define SC_MANAGER_MODIFY_BOOT_CONFIG 32 | |
| 23 | +#define SERVICE_NO_CHANGE (-1) | |
| 24 | +#define SERVICE_STOPPED 1 | |
| 25 | +#define SERVICE_START_PENDING 2 | |
| 26 | +#define SERVICE_STOP_PENDING 3 | |
| 27 | +#define SERVICE_RUNNING 4 | |
| 28 | +#define SERVICE_CONTINUE_PENDING 5 | |
| 29 | +#define SERVICE_PAUSE_PENDING 6 | |
| 30 | +#define SERVICE_PAUSED 7 | |
| 31 | +#define SERVICE_ACCEPT_STOP 1 | |
| 32 | +#define SERVICE_ACCEPT_PAUSE_CONTINUE 2 | |
| 33 | +#define SERVICE_ACCEPT_SHUTDOWN 4 | |
| 34 | +#define SERVICE_ACCEPT_PARAMCHANGE 8 | |
| 35 | +#define SERVICE_ACCEPT_NETBINDCHANGE 16 | |
| 36 | +#define SERVICE_ACCEPT_HARDWAREPROFILECHANGE 32 | |
| 37 | +#define SERVICE_ACCEPT_POWEREVENT 64 | |
| 38 | +#define SERVICE_ACCEPT_SESSIONCHANGE 128 | |
| 39 | +#define SERVICE_CONTROL_STOP 1 | |
| 40 | +#define SERVICE_CONTROL_PAUSE 2 | |
| 41 | +#define SERVICE_CONTROL_CONTINUE 3 | |
| 42 | +#define SERVICE_CONTROL_INTERROGATE 4 | |
| 43 | +#define SERVICE_CONTROL_SHUTDOWN 5 | |
| 44 | +#define SERVICE_CONTROL_PARAMCHANGE 6 | |
| 45 | +#define SERVICE_CONTROL_NETBINDADD 7 | |
| 46 | +#define SERVICE_CONTROL_NETBINDREMOVE 8 | |
| 47 | +#define SERVICE_CONTROL_NETBINDENABLE 9 | |
| 48 | +#define SERVICE_CONTROL_NETBINDDISABLE 10 | |
| 49 | +#define SERVICE_CONTROL_DEVICEEVENT 11 | |
| 50 | +#define SERVICE_CONTROL_HARDWAREPROFILECHANGE 12 | |
| 51 | +#define SERVICE_CONTROL_POWEREVENT 13 | |
| 52 | +#define SERVICE_CONTROL_SESSIONCHANGE 14 | |
| 53 | +#define SERVICE_ACTIVE 1 | |
| 54 | +#define SERVICE_INACTIVE 2 | |
| 55 | +#define SERVICE_STATE_ALL 3 | |
| 56 | +#define SERVICE_QUERY_CONFIG 1 | |
| 57 | +#define SERVICE_CHANGE_CONFIG 2 | |
| 58 | +#define SERVICE_QUERY_STATUS 4 | |
| 59 | +#define SERVICE_ENUMERATE_DEPENDENTS 8 | |
| 60 | +#define SERVICE_START 16 | |
| 61 | +#define SERVICE_STOP 32 | |
| 62 | +#define SERVICE_PAUSE_CONTINUE 64 | |
| 63 | +#define SERVICE_INTERROGATE 128 | |
| 64 | +#define SERVICE_USER_DEFINED_CONTROL 256 | |
| 65 | +#define SERVICE_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|SERVICE_QUERY_CONFIG|SERVICE_CHANGE_CONFIG|SERVICE_QUERY_STATUS|SERVICE_ENUMERATE_DEPENDENTS|SERVICE_START|SERVICE_STOP|SERVICE_PAUSE_CONTINUE|SERVICE_INTERROGATE|SERVICE_USER_DEFINED_CONTROL) | |
| 66 | +#define SERVICE_RUNS_IN_SYSTEM_PROCESS 1 | |
| 67 | +#define SERVICE_CONFIG_DESCRIPTION 1 | |
| 68 | +#define SERVICE_CONFIG_FAILURE_ACTIONS 2 | |
| 69 | + | |
| 70 | +typedef struct _SERVICE_STATUS { | |
| 71 | + DWORD dwServiceType; | |
| 72 | + DWORD dwCurrentState; | |
| 73 | + DWORD dwControlsAccepted; | |
| 74 | + DWORD dwWin32ExitCode; | |
| 75 | + DWORD dwServiceSpecificExitCode; | |
| 76 | + DWORD dwCheckPoint; | |
| 77 | + DWORD dwWaitHint; | |
| 78 | +} SERVICE_STATUS,*LPSERVICE_STATUS; | |
| 79 | +typedef struct _SERVICE_STATUS_PROCESS { | |
| 80 | + DWORD dwServiceType; | |
| 81 | + DWORD dwCurrentState; | |
| 82 | + DWORD dwControlsAccepted; | |
| 83 | + DWORD dwWin32ExitCode; | |
| 84 | + DWORD dwServiceSpecificExitCode; | |
| 85 | + DWORD dwCheckPoint; | |
| 86 | + DWORD dwWaitHint; | |
| 87 | + DWORD dwProcessId; | |
| 88 | + DWORD dwServiceFlags; | |
| 89 | +} SERVICE_STATUS_PROCESS, *LPSERVICE_STATUS_PROCESS; | |
| 90 | +typedef enum _SC_STATUS_TYPE { | |
| 91 | + SC_STATUS_PROCESS_INFO = 0 | |
| 92 | +} SC_STATUS_TYPE; | |
| 93 | +typedef enum _SC_ENUM_TYPE { | |
| 94 | + SC_ENUM_PROCESS_INFO = 0 | |
| 95 | +} SC_ENUM_TYPE; | |
| 96 | +typedef struct _ENUM_SERVICE_STATUSA { | |
| 97 | + LPSTR lpServiceName; | |
| 98 | + LPSTR lpDisplayName; | |
| 99 | + SERVICE_STATUS ServiceStatus; | |
| 100 | +} ENUM_SERVICE_STATUSA,*LPENUM_SERVICE_STATUSA; | |
| 101 | +typedef struct _ENUM_SERVICE_STATUSW { | |
| 102 | + LPWSTR lpServiceName; | |
| 103 | + LPWSTR lpDisplayName; | |
| 104 | + SERVICE_STATUS ServiceStatus; | |
| 105 | +} ENUM_SERVICE_STATUSW,*LPENUM_SERVICE_STATUSW; | |
| 106 | +typedef struct _ENUM_SERVICE_STATUS_PROCESSA { | |
| 107 | + LPSTR lpServiceName; | |
| 108 | + LPSTR lpDisplayName; | |
| 109 | + SERVICE_STATUS_PROCESS ServiceStatusProcess; | |
| 110 | +} ENUM_SERVICE_STATUS_PROCESSA,*LPENUM_SERVICE_STATUS_PROCESSA; | |
| 111 | +typedef struct _ENUM_SERVICE_STATUS_PROCESSW { | |
| 112 | + LPWSTR lpServiceName; | |
| 113 | + LPWSTR lpDisplayName; | |
| 114 | + SERVICE_STATUS_PROCESS ServiceStatusProcess; | |
| 115 | +} ENUM_SERVICE_STATUS_PROCESSW,*LPENUM_SERVICE_STATUS_PROCESSW; | |
| 116 | +typedef struct _QUERY_SERVICE_CONFIGA { | |
| 117 | + DWORD dwServiceType; | |
| 118 | + DWORD dwStartType; | |
| 119 | + DWORD dwErrorControl; | |
| 120 | + LPSTR lpBinaryPathName; | |
| 121 | + LPSTR lpLoadOrderGroup; | |
| 122 | + DWORD dwTagId; | |
| 123 | + LPSTR lpDependencies; | |
| 124 | + LPSTR lpServiceStartName; | |
| 125 | + LPSTR lpDisplayName; | |
| 126 | +} QUERY_SERVICE_CONFIGA,*LPQUERY_SERVICE_CONFIGA; | |
| 127 | +typedef struct _QUERY_SERVICE_CONFIGW { | |
| 128 | + DWORD dwServiceType; | |
| 129 | + DWORD dwStartType; | |
| 130 | + DWORD dwErrorControl; | |
| 131 | + LPWSTR lpBinaryPathName; | |
| 132 | + LPWSTR lpLoadOrderGroup; | |
| 133 | + DWORD dwTagId; | |
| 134 | + LPWSTR lpDependencies; | |
| 135 | + LPWSTR lpServiceStartName; | |
| 136 | + LPWSTR lpDisplayName; | |
| 137 | +} QUERY_SERVICE_CONFIGW,*LPQUERY_SERVICE_CONFIGW; | |
| 138 | +typedef struct _QUERY_SERVICE_LOCK_STATUSA { | |
| 139 | + DWORD fIsLocked; | |
| 140 | + LPSTR lpLockOwner; | |
| 141 | + DWORD dwLockDuration; | |
| 142 | +} QUERY_SERVICE_LOCK_STATUSA,*LPQUERY_SERVICE_LOCK_STATUSA; | |
| 143 | +typedef struct _QUERY_SERVICE_LOCK_STATUSW { | |
| 144 | + DWORD fIsLocked; | |
| 145 | + LPWSTR lpLockOwner; | |
| 146 | + DWORD dwLockDuration; | |
| 147 | +} QUERY_SERVICE_LOCK_STATUSW,*LPQUERY_SERVICE_LOCK_STATUSW; | |
| 148 | +typedef void (WINAPI *LPSERVICE_MAIN_FUNCTIONA)(DWORD,LPSTR*); | |
| 149 | +typedef void (WINAPI *LPSERVICE_MAIN_FUNCTIONW)(DWORD,LPWSTR*); | |
| 150 | +typedef struct _SERVICE_TABLE_ENTRYA { | |
| 151 | + LPSTR lpServiceName; | |
| 152 | + LPSERVICE_MAIN_FUNCTIONA lpServiceProc; | |
| 153 | +} SERVICE_TABLE_ENTRYA,*LPSERVICE_TABLE_ENTRYA; | |
| 154 | +typedef struct _SERVICE_TABLE_ENTRYW { | |
| 155 | + LPWSTR lpServiceName; | |
| 156 | + LPSERVICE_MAIN_FUNCTIONW lpServiceProc; | |
| 157 | +} SERVICE_TABLE_ENTRYW,*LPSERVICE_TABLE_ENTRYW; | |
| 158 | +DECLARE_HANDLE(SC_HANDLE); | |
| 159 | +typedef SC_HANDLE *LPSC_HANDLE; | |
| 160 | +typedef PVOID SC_LOCK; | |
| 161 | +typedef DWORD SERVICE_STATUS_HANDLE; | |
| 162 | +typedef VOID(WINAPI *LPHANDLER_FUNCTION)(DWORD); | |
| 163 | +typedef DWORD (WINAPI *LPHANDLER_FUNCTION_EX)(DWORD,DWORD,LPVOID,LPVOID); | |
| 164 | +typedef struct _SERVICE_DESCRIPTIONA { | |
| 165 | + LPSTR lpDescription; | |
| 166 | +} SERVICE_DESCRIPTIONA,*LPSERVICE_DESCRIPTIONA; | |
| 167 | +typedef struct _SERVICE_DESCRIPTIONW { | |
| 168 | + LPWSTR lpDescription; | |
| 169 | +} SERVICE_DESCRIPTIONW,*LPSERVICE_DESCRIPTIONW; | |
| 170 | +typedef enum _SC_ACTION_TYPE { | |
| 171 | + SC_ACTION_NONE = 0, | |
| 172 | + SC_ACTION_RESTART = 1, | |
| 173 | + SC_ACTION_REBOOT = 2, | |
| 174 | + SC_ACTION_RUN_COMMAND = 3 | |
| 175 | +} SC_ACTION_TYPE; | |
| 176 | +typedef struct _SC_ACTION { | |
| 177 | + SC_ACTION_TYPE Type; | |
| 178 | + DWORD Delay; | |
| 179 | +} SC_ACTION,*LPSC_ACTION; | |
| 180 | +typedef struct _SERVICE_FAILURE_ACTIONSA { | |
| 181 | + DWORD dwResetPeriod; | |
| 182 | + LPSTR lpRebootMsg; | |
| 183 | + LPSTR lpCommand; | |
| 184 | + DWORD cActions; | |
| 185 | + SC_ACTION * lpsaActions; | |
| 186 | +} SERVICE_FAILURE_ACTIONSA,*LPSERVICE_FAILURE_ACTIONSA; | |
| 187 | +typedef struct _SERVICE_FAILURE_ACTIONSW { | |
| 188 | + DWORD dwResetPeriod; | |
| 189 | + LPWSTR lpRebootMsg; | |
| 190 | + LPWSTR lpCommand; | |
| 191 | + DWORD cActions; | |
| 192 | + SC_ACTION * lpsaActions; | |
| 193 | +} SERVICE_FAILURE_ACTIONSW,*LPSERVICE_FAILURE_ACTIONSW; | |
| 194 | + | |
| 195 | +BOOL WINAPI ChangeServiceConfigA(SC_HANDLE,DWORD,DWORD,DWORD,LPCSTR,LPCSTR,LPDWORD,LPCSTR,LPCSTR,LPCSTR,LPCSTR); | |
| 196 | +BOOL WINAPI ChangeServiceConfigW(SC_HANDLE,DWORD,DWORD,DWORD,LPCWSTR,LPCWSTR,LPDWORD,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR); | |
| 197 | +BOOL WINAPI ChangeServiceConfig2A(SC_HANDLE,DWORD,LPVOID); | |
| 198 | +BOOL WINAPI ChangeServiceConfig2W(SC_HANDLE,DWORD,LPVOID); | |
| 199 | +BOOL WINAPI CloseServiceHandle(SC_HANDLE); | |
| 200 | +BOOL WINAPI ControlService(SC_HANDLE,DWORD,LPSERVICE_STATUS); | |
| 201 | +SC_HANDLE WINAPI CreateServiceA(SC_HANDLE,LPCSTR,LPCSTR,DWORD,DWORD,DWORD,DWORD,LPCSTR,LPCSTR,PDWORD,LPCSTR,LPCSTR,LPCSTR); | |
| 202 | +SC_HANDLE WINAPI CreateServiceW(SC_HANDLE,LPCWSTR,LPCWSTR,DWORD,DWORD,DWORD,DWORD,LPCWSTR,LPCWSTR,PDWORD,LPCWSTR,LPCWSTR,LPCWSTR); | |
| 203 | +BOOL WINAPI DeleteService(SC_HANDLE); | |
| 204 | +BOOL WINAPI EnumDependentServicesA(SC_HANDLE,DWORD,LPENUM_SERVICE_STATUSA,DWORD,PDWORD,PDWORD); | |
| 205 | +BOOL WINAPI EnumDependentServicesW(SC_HANDLE,DWORD,LPENUM_SERVICE_STATUSW,DWORD,PDWORD,PDWORD); | |
| 206 | +BOOL WINAPI EnumServicesStatusA(SC_HANDLE,DWORD,DWORD,LPENUM_SERVICE_STATUSA,DWORD,PDWORD,PDWORD,PDWORD); | |
| 207 | +BOOL WINAPI EnumServicesStatusW(SC_HANDLE,DWORD,DWORD,LPENUM_SERVICE_STATUSW,DWORD,PDWORD,PDWORD,PDWORD); | |
| 208 | +BOOL WINAPI EnumServicesStatusExA(SC_HANDLE,SC_ENUM_TYPE,DWORD,DWORD,LPBYTE,DWORD,LPDWORD,LPDWORD,LPDWORD,LPCSTR); | |
| 209 | +BOOL WINAPI EnumServicesStatusExW(SC_HANDLE,SC_ENUM_TYPE,DWORD,DWORD,LPBYTE,DWORD,LPDWORD,LPDWORD,LPDWORD,LPCWSTR); | |
| 210 | +BOOL WINAPI GetServiceDisplayNameA(SC_HANDLE,LPCSTR,LPSTR,PDWORD); | |
| 211 | +BOOL WINAPI GetServiceDisplayNameW(SC_HANDLE,LPCWSTR,LPWSTR,PDWORD); | |
| 212 | +BOOL WINAPI GetServiceKeyNameA(SC_HANDLE,LPCSTR,LPSTR,PDWORD); | |
| 213 | +BOOL WINAPI GetServiceKeyNameW(SC_HANDLE,LPCWSTR,LPWSTR,PDWORD); | |
| 214 | +SC_LOCK WINAPI LockServiceDatabase(SC_HANDLE); | |
| 215 | +BOOL WINAPI NotifyBootConfigStatus(BOOL); | |
| 216 | +SC_HANDLE WINAPI OpenSCManagerA(LPCSTR,LPCSTR,DWORD); | |
| 217 | +SC_HANDLE WINAPI OpenSCManagerW(LPCWSTR,LPCWSTR,DWORD); | |
| 218 | +SC_HANDLE WINAPI OpenServiceA(SC_HANDLE,LPCSTR,DWORD); | |
| 219 | +SC_HANDLE WINAPI OpenServiceW(SC_HANDLE,LPCWSTR,DWORD); | |
| 220 | +BOOL WINAPI QueryServiceConfigA(SC_HANDLE,LPQUERY_SERVICE_CONFIGA,DWORD,PDWORD); | |
| 221 | +BOOL WINAPI QueryServiceConfigW(SC_HANDLE,LPQUERY_SERVICE_CONFIGW,DWORD,PDWORD); | |
| 222 | +BOOL WINAPI QueryServiceConfig2A(SC_HANDLE,DWORD,LPBYTE,DWORD,LPDWORD); | |
| 223 | +BOOL WINAPI QueryServiceConfig2W(SC_HANDLE,DWORD,LPBYTE,DWORD,LPDWORD); | |
| 224 | +BOOL WINAPI QueryServiceLockStatusA(SC_HANDLE,LPQUERY_SERVICE_LOCK_STATUSA,DWORD,PDWORD); | |
| 225 | +BOOL WINAPI QueryServiceLockStatusW(SC_HANDLE,LPQUERY_SERVICE_LOCK_STATUSW,DWORD,PDWORD); | |
| 226 | +BOOL WINAPI QueryServiceObjectSecurity(SC_HANDLE,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR,DWORD,LPDWORD); | |
| 227 | +BOOL WINAPI QueryServiceStatus(SC_HANDLE,LPSERVICE_STATUS); | |
| 228 | +BOOL WINAPI QueryServiceStatusEx(SC_HANDLE,SC_STATUS_TYPE,LPBYTE,DWORD,LPDWORD); | |
| 229 | +SERVICE_STATUS_HANDLE WINAPI RegisterServiceCtrlHandlerA(LPCSTR,LPHANDLER_FUNCTION); | |
| 230 | +SERVICE_STATUS_HANDLE WINAPI RegisterServiceCtrlHandlerW(LPCWSTR,LPHANDLER_FUNCTION); | |
| 231 | +SERVICE_STATUS_HANDLE WINAPI RegisterServiceCtrlHandlerExA(LPCSTR,LPHANDLER_FUNCTION_EX,LPVOID); | |
| 232 | +SERVICE_STATUS_HANDLE WINAPI RegisterServiceCtrlHandlerExW(LPCWSTR,LPHANDLER_FUNCTION_EX,LPVOID); | |
| 233 | +BOOL WINAPI SetServiceObjectSecurity(SC_HANDLE,SECURITY_INFORMATION,PSECURITY_DESCRIPTOR); | |
| 234 | +BOOL WINAPI SetServiceStatus(SERVICE_STATUS_HANDLE,LPSERVICE_STATUS); | |
| 235 | +BOOL WINAPI StartServiceA(SC_HANDLE,DWORD,LPCSTR*); | |
| 236 | +BOOL WINAPI StartServiceCtrlDispatcherA(LPSERVICE_TABLE_ENTRYA); | |
| 237 | +BOOL WINAPI StartServiceCtrlDispatcherW(LPSERVICE_TABLE_ENTRYW); | |
| 238 | +BOOL WINAPI StartServiceW(SC_HANDLE,DWORD,LPCWSTR); | |
| 239 | +BOOL WINAPI UnlockServiceDatabase(SC_LOCK); | |
| 240 | + | |
| 241 | +#ifdef UNICODE | |
| 242 | +typedef ENUM_SERVICE_STATUSW ENUM_SERVICE_STATUS,*LPENUM_SERVICE_STATUS; | |
| 243 | +typedef ENUM_SERVICE_STATUS_PROCESSW ENUM_SERVICE_STATUS_PROCESS; | |
| 244 | +typedef LPENUM_SERVICE_STATUS_PROCESSW LPENUM_SERVICE_STATUS_PROCESS; | |
| 245 | +typedef QUERY_SERVICE_CONFIGW QUERY_SERVICE_CONFIG,*LPQUERY_SERVICE_CONFIG; | |
| 246 | +typedef QUERY_SERVICE_LOCK_STATUSW QUERY_SERVICE_LOCK_STATUS,*LPQUERY_SERVICE_LOCK_STATUS; | |
| 247 | +typedef SERVICE_TABLE_ENTRYW SERVICE_TABLE_ENTRY,*LPSERVICE_TABLE_ENTRY; | |
| 248 | +typedef LPSERVICE_MAIN_FUNCTIONW LPSERVICE_MAIN_FUNCTION; | |
| 249 | +typedef SERVICE_DESCRIPTIONW SERVICE_DESCRIPTION; | |
| 250 | +typedef LPSERVICE_DESCRIPTIONW LPSERVICE_DESCRIPTION; | |
| 251 | +typedef SERVICE_FAILURE_ACTIONSW SERVICE_FAILURE_ACTIONS; | |
| 252 | +typedef LPSERVICE_FAILURE_ACTIONSW LPSERVICE_FAILURE_ACTIONS; | |
| 253 | +#define SERVICES_ACTIVE_DATABASE SERVICES_ACTIVE_DATABASEW | |
| 254 | +#define SERVICES_FAILED_DATABASE SERVICES_FAILED_DATABASEW | |
| 255 | +#define SC_GROUP_IDENTIFIER SC_GROUP_IDENTIFIERW | |
| 256 | +#define ChangeServiceConfig ChangeServiceConfigW | |
| 257 | +#define ChangeServiceConfig2 ChangeServiceConfig2W | |
| 258 | +#define CreateService CreateServiceW | |
| 259 | +#define EnumDependentServices EnumDependentServicesW | |
| 260 | +#define EnumServicesStatus EnumServicesStatusW | |
| 261 | +#define EnumServicesStatusEx EnumServicesStatusExW | |
| 262 | +#define GetServiceDisplayName GetServiceDisplayNameW | |
| 263 | +#define GetServiceKeyName GetServiceKeyNameW | |
| 264 | +#define OpenSCManager OpenSCManagerW | |
| 265 | +#define OpenService OpenServiceW | |
| 266 | +#define QueryServiceConfig QueryServiceConfigW | |
| 267 | +#define QueryServiceConfig2 QueryServiceConfig2W | |
| 268 | +#define QueryServiceLockStatus QueryServiceLockStatusW | |
| 269 | +#define RegisterServiceCtrlHandler RegisterServiceCtrlHandlerW | |
| 270 | +#define RegisterServiceCtrlHandlerEx RegisterServiceCtrlHandlerExW | |
| 271 | +#define StartService StartServiceW | |
| 272 | +#define StartServiceCtrlDispatcher StartServiceCtrlDispatcherW | |
| 273 | +#else | |
| 274 | +typedef ENUM_SERVICE_STATUSA ENUM_SERVICE_STATUS,*LPENUM_SERVICE_STATUS; | |
| 275 | +typedef ENUM_SERVICE_STATUS_PROCESSA ENUM_SERVICE_STATUS_PROCESS; | |
| 276 | +typedef LPENUM_SERVICE_STATUS_PROCESSA LPENUM_SERVICE_STATUS_PROCESS; | |
| 277 | +typedef QUERY_SERVICE_CONFIGA QUERY_SERVICE_CONFIG,*LPQUERY_SERVICE_CONFIG; | |
| 278 | +typedef QUERY_SERVICE_LOCK_STATUSA QUERY_SERVICE_LOCK_STATUS,*LPQUERY_SERVICE_LOCK_STATUS; | |
| 279 | +typedef SERVICE_TABLE_ENTRYA SERVICE_TABLE_ENTRY,*LPSERVICE_TABLE_ENTRY; | |
| 280 | +typedef LPSERVICE_MAIN_FUNCTIONA LPSERVICE_MAIN_FUNCTION; | |
| 281 | +typedef SERVICE_DESCRIPTIONA SERVICE_DESCRIPTION; | |
| 282 | +typedef LPSERVICE_DESCRIPTIONA LPSERVICE_DESCRIPTION; | |
| 283 | +typedef SERVICE_FAILURE_ACTIONSA SERVICE_FAILURE_ACTIONS; | |
| 284 | +typedef LPSERVICE_FAILURE_ACTIONSA LPSERVICE_FAILURE_ACTIONS; | |
| 285 | +#define SERVICES_ACTIVE_DATABASE SERVICES_ACTIVE_DATABASEA | |
| 286 | +#define SERVICES_FAILED_DATABASE SERVICES_FAILED_DATABASEA | |
| 287 | +#define SC_GROUP_IDENTIFIER SC_GROUP_IDENTIFIERA | |
| 288 | +#define ChangeServiceConfig ChangeServiceConfigA | |
| 289 | +#define ChangeServiceConfig2 ChangeServiceConfig2A | |
| 290 | +#define CreateService CreateServiceA | |
| 291 | +#define EnumDependentServices EnumDependentServicesA | |
| 292 | +#define EnumServicesStatus EnumServicesStatusA | |
| 293 | +#define EnumServicesStatusEx EnumServicesStatusExA | |
| 294 | +#define GetServiceDisplayName GetServiceDisplayNameA | |
| 295 | +#define GetServiceKeyName GetServiceKeyNameA | |
| 296 | +#define OpenSCManager OpenSCManagerA | |
| 297 | +#define OpenService OpenServiceA | |
| 298 | +#define QueryServiceConfig QueryServiceConfigA | |
| 299 | +#define QueryServiceConfig2 QueryServiceConfig2A | |
| 300 | +#define QueryServiceLockStatus QueryServiceLockStatusA | |
| 301 | +#define RegisterServiceCtrlHandler RegisterServiceCtrlHandlerA | |
| 302 | +#define RegisterServiceCtrlHandlerEx RegisterServiceCtrlHandlerExA | |
| 303 | +#define StartService StartServiceA | |
| 304 | +#define StartServiceCtrlDispatcher StartServiceCtrlDispatcherA | |
| 305 | +#endif | |
| 306 | +#ifdef __cplusplus | |
| 307 | +} | |
| 308 | +#endif | |
| 309 | +#endif /* _WINSVC_H */ | |
| @@ -0,0 +1,3472 @@ | ||
| 1 | +#ifndef _WINUSER_H | |
| 2 | +#define _WINUSER_H | |
| 3 | +#if __GNUC__ >=3 | |
| 4 | +#pragma GCC system_header | |
| 5 | +#endif | |
| 6 | + | |
| 7 | +#ifdef __cplusplus | |
| 8 | +extern "C" { | |
| 9 | +#endif | |
| 10 | +#define WC_DIALOG MAKEINTATOM(0x8002) | |
| 11 | +#define FALT 16 | |
| 12 | +#define FCONTROL 8 | |
| 13 | +#define FNOINVERT 2 | |
| 14 | +#define FSHIFT 4 | |
| 15 | +#define FVIRTKEY 1 | |
| 16 | +#define ATF_TIMEOUTON 1 | |
| 17 | +#define ATF_ONOFFFEEDBACK 2 | |
| 18 | +#define ATF_AVAILABLE 4 /* May be obsolete. Not in recent MS docs. */ | |
| 19 | +#define WH_MIN (-1) | |
| 20 | +#define WH_MSGFILTER (-1) | |
| 21 | +#define WH_JOURNALRECORD 0 | |
| 22 | +#define WH_JOURNALPLAYBACK 1 | |
| 23 | +#define WH_KEYBOARD 2 | |
| 24 | +#define WH_GETMESSAGE 3 | |
| 25 | +#define WH_CALLWNDPROC 4 | |
| 26 | +#define WH_CBT 5 | |
| 27 | +#define WH_SYSMSGFILTER 6 | |
| 28 | +#define WH_MOUSE 7 | |
| 29 | +#define WH_HARDWARE 8 | |
| 30 | +#define WH_DEBUG 9 | |
| 31 | +#define WH_SHELL 10 | |
| 32 | +#define WH_FOREGROUNDIDLE 11 | |
| 33 | +#define WH_CALLWNDPROCRET 12 | |
| 34 | +#define WH_KEYBOARD_LL 13 | |
| 35 | +#define WH_MOUSE_LL 14 | |
| 36 | +#define WH_MAX 14 | |
| 37 | +#define WH_MINHOOK WH_MIN | |
| 38 | +#define WH_MAXHOOK WH_MAX | |
| 39 | +#define HC_ACTION 0 | |
| 40 | +#define HC_GETNEXT 1 | |
| 41 | +#define HC_SKIP 2 | |
| 42 | +#define HC_NOREMOVE 3 | |
| 43 | +#define HC_NOREM 3 | |
| 44 | +#define HC_SYSMODALON 4 | |
| 45 | +#define HC_SYSMODALOFF 5 | |
| 46 | +#define HCBT_MOVESIZE 0 | |
| 47 | +#define HCBT_MINMAX 1 | |
| 48 | +#define HCBT_QS 2 | |
| 49 | +#define HCBT_CREATEWND 3 | |
| 50 | +#define HCBT_DESTROYWND 4 | |
| 51 | +#define HCBT_ACTIVATE 5 | |
| 52 | +#define HCBT_CLICKSKIPPED 6 | |
| 53 | +#define HCBT_KEYSKIPPED 7 | |
| 54 | +#define HCBT_SYSCOMMAND 8 | |
| 55 | +#define HCBT_SETFOCUS 9 | |
| 56 | +#define CF_TEXT 1 | |
| 57 | +#define CF_BITMAP 2 | |
| 58 | +#define CF_METAFILEPICT 3 | |
| 59 | +#define CF_SYLK 4 | |
| 60 | +#define CF_DIF 5 | |
| 61 | +#define CF_TIFF 6 | |
| 62 | +#define CF_OEMTEXT 7 | |
| 63 | +#define CF_DIB 8 | |
| 64 | +#define CF_PALETTE 9 | |
| 65 | +#define CF_PENDATA 10 | |
| 66 | +#define CF_RIFF 11 | |
| 67 | +#define CF_WAVE 12 | |
| 68 | +#define CF_UNICODETEXT 13 | |
| 69 | +#define CF_ENHMETAFILE 14 | |
| 70 | +#define CF_HDROP 15 | |
| 71 | +#define CF_LOCALE 16 | |
| 72 | +#define CF_MAX 17 | |
| 73 | +#define CF_OWNERDISPLAY 128 | |
| 74 | +#define CF_DSPTEXT 129 | |
| 75 | +#define CF_DSPBITMAP 130 | |
| 76 | +#define CF_DSPMETAFILEPICT 131 | |
| 77 | +#define CF_DSPENHMETAFILE 142 | |
| 78 | +#define CF_PRIVATEFIRST 512 | |
| 79 | +#define CF_PRIVATELAST 767 | |
| 80 | +#define CF_GDIOBJFIRST 768 | |
| 81 | +#define CF_GDIOBJLAST 1023 | |
| 82 | +#define HKL_NEXT 1 | |
| 83 | +#define HKL_PREV 0 | |
| 84 | +#define KLF_ACTIVATE 1 | |
| 85 | +#define KLF_SUBSTITUTE_OK 2 | |
| 86 | +#define KLF_UNLOADPREVIOUS 4 | |
| 87 | +#define KLF_REORDER 8 | |
| 88 | +#define KLF_REPLACELANG 16 | |
| 89 | +#define KLF_NOTELLSHELL 128 | |
| 90 | +#define KLF_SETFORPROCESS 256 | |
| 91 | +#define KL_NAMELENGTH 9 | |
| 92 | +#define MF_ENABLED 0 | |
| 93 | +#define MF_GRAYED 1 | |
| 94 | +#define MF_DISABLED 2 | |
| 95 | +#define MF_BITMAP 4 | |
| 96 | +#define MF_CHECKED 8 | |
| 97 | +#define MF_MENUBARBREAK 32 | |
| 98 | +#define MF_MENUBREAK 64 | |
| 99 | +#define MF_OWNERDRAW 256 | |
| 100 | +#define MF_POPUP 16 | |
| 101 | +#define MF_SEPARATOR 0x800 | |
| 102 | +#define MF_STRING 0 | |
| 103 | +#define MF_UNCHECKED 0 | |
| 104 | +#define MF_DEFAULT 4096 | |
| 105 | +#define MF_SYSMENU 0x2000 | |
| 106 | +#define MF_HELP 0x4000 | |
| 107 | +#define MF_END 128 | |
| 108 | +#define MF_RIGHTJUSTIFY 0x4000 | |
| 109 | +#define MF_MOUSESELECT 0x8000 | |
| 110 | +#define MF_INSERT 0 | |
| 111 | +#define MF_CHANGE 128 | |
| 112 | +#define MF_APPEND 256 | |
| 113 | +#define MF_DELETE 512 | |
| 114 | +#define MF_REMOVE 4096 | |
| 115 | +#define MF_USECHECKBITMAPS 512 | |
| 116 | +#define MF_UNHILITE 0 | |
| 117 | +#define MF_HILITE 128 | |
| 118 | +#define BSF_IGNORECURRENTTASK 2 | |
| 119 | +#define BSF_QUERY 1 | |
| 120 | +#define BSF_FLUSHDISK 4 | |
| 121 | +#define BSF_NOHANG 8 | |
| 122 | +#define BSF_POSTMESSAGE 16 | |
| 123 | +#define BSF_FORCEIFHUNG 32 | |
| 124 | +#define BSF_NOTIMEOUTIFNOTHUNG 64 | |
| 125 | +#define BSM_ALLCOMPONENTS 0 | |
| 126 | +#define BSM_APPLICATIONS 8 | |
| 127 | +#define BSM_ALLDESKTOPS 16 | |
| 128 | +#define BSM_INSTALLABLEDRIVERS 4 | |
| 129 | +#define BSM_NETDRIVER 2 | |
| 130 | +#define BSM_VXDS 1 | |
| 131 | +#define BROADCAST_QUERY_DENY 1112363332 | |
| 132 | +#define ENUM_CURRENT_SETTINGS ((DWORD)-1) | |
| 133 | +#define ENUM_REGISTRY_SETTINGS ((DWORD)-2) | |
| 134 | +#define DM_BITSPERPEL 0x40000 | |
| 135 | +#define DM_PELSWIDTH 0x80000 | |
| 136 | +#define DM_PELSHEIGHT 0x100000 | |
| 137 | +#define DM_DISPLAYFLAGS 0x200000 | |
| 138 | +#define DM_DISPLAYFREQUENCY 0x400000 | |
| 139 | +#define CDS_UPDATEREGISTRY 1 | |
| 140 | +#define CDS_TEST 2 | |
| 141 | +#define CDS_FULLSCREEN 4 | |
| 142 | +#define CDS_GLOBAL 8 | |
| 143 | +#define CDS_SET_PRIMARY 16 | |
| 144 | +#define CDS_RESET 0x40000000 | |
| 145 | +#define CDS_SETRECT 0x20000000 | |
| 146 | +#define CDS_NORESET 0x10000000 | |
| 147 | +#define DISP_CHANGE_SUCCESSFUL 0 | |
| 148 | +#define DISP_CHANGE_RESTART 1 | |
| 149 | +#define DISP_CHANGE_BADFLAGS (-4) | |
| 150 | +#define DISP_CHANGE_BADPARAM (-5) | |
| 151 | +#define DISP_CHANGE_FAILED (-1) | |
| 152 | +#define DISP_CHANGE_BADMODE (-2) | |
| 153 | +#define DISP_CHANGE_NOTUPDATED (-3) | |
| 154 | +#define BST_CHECKED 1 | |
| 155 | +#define BST_INDETERMINATE 2 | |
| 156 | +#define BST_UNCHECKED 0 | |
| 157 | +#define BST_FOCUS 8 | |
| 158 | +#define BST_PUSHED 4 | |
| 159 | +#define MF_BYCOMMAND 0 | |
| 160 | +#define MF_BYPOSITION 1024 | |
| 161 | +#define MF_UNCHECKED 0 | |
| 162 | +#define MF_HILITE 128 | |
| 163 | +#define MF_UNHILITE 0 | |
| 164 | +#define CWP_ALL 0 | |
| 165 | +#define CWP_SKIPINVISIBLE 1 | |
| 166 | +#define CWP_SKIPDISABLED 2 | |
| 167 | +#define CWP_SKIPTRANSPARENT 4 | |
| 168 | +#define IMAGE_BITMAP 0 | |
| 169 | +#define IMAGE_ICON 1 | |
| 170 | +#define IMAGE_CURSOR 2 | |
| 171 | +#define IMAGE_ENHMETAFILE 3 | |
| 172 | +#define DF_ALLOWOTHERACCOUNTHOOK 1 | |
| 173 | +#define DESKTOP_CREATEMENU 4 | |
| 174 | +#define DESKTOP_CREATEWINDOW 2 | |
| 175 | +#define DESKTOP_ENUMERATE 64 | |
| 176 | +#define DESKTOP_HOOKCONTROL 8 | |
| 177 | +#define DESKTOP_JOURNALPLAYBACK 32 | |
| 178 | +#define DESKTOP_JOURNALRECORD 16 | |
| 179 | +#define DESKTOP_READOBJECTS 1 | |
| 180 | +#define DESKTOP_SWITCHDESKTOP 256 | |
| 181 | +#define DESKTOP_WRITEOBJECTS 128 | |
| 182 | +#define CW_USEDEFAULT 0x80000000 | |
| 183 | +#define WS_BORDER 0x800000 | |
| 184 | +#define WS_CAPTION 0xc00000 | |
| 185 | +#define WS_CHILD 0x40000000 | |
| 186 | +#define WS_CHILDWINDOW 0x40000000 | |
| 187 | +#define WS_CLIPCHILDREN 0x2000000 | |
| 188 | +#define WS_CLIPSIBLINGS 0x4000000 | |
| 189 | +#define WS_DISABLED 0x8000000 | |
| 190 | +#define WS_DLGFRAME 0x400000 | |
| 191 | +#define WS_GROUP 0x20000 | |
| 192 | +#define WS_HSCROLL 0x100000 | |
| 193 | +#define WS_ICONIC 0x20000000 | |
| 194 | +#define WS_MAXIMIZE 0x1000000 | |
| 195 | +#define WS_MAXIMIZEBOX 0x10000 | |
| 196 | +#define WS_MINIMIZE 0x20000000 | |
| 197 | +#define WS_MINIMIZEBOX 0x20000 | |
| 198 | +#define WS_OVERLAPPED 0 | |
| 199 | +#define WS_OVERLAPPEDWINDOW 0xcf0000 | |
| 200 | +#define WS_POPUP 0x80000000 | |
| 201 | +#define WS_POPUPWINDOW 0x80880000 | |
| 202 | +#define WS_SIZEBOX 0x40000 | |
| 203 | +#define WS_SYSMENU 0x80000 | |
| 204 | +#define WS_TABSTOP 0x10000 | |
| 205 | +#define WS_THICKFRAME 0x40000 | |
| 206 | +#define WS_TILED 0 | |
| 207 | +#define WS_TILEDWINDOW 0xcf0000 | |
| 208 | +#define WS_VISIBLE 0x10000000 | |
| 209 | +#define WS_VSCROLL 0x200000 | |
| 210 | +#define MDIS_ALLCHILDSTYLES 1 | |
| 211 | +#define BS_3STATE 5 | |
| 212 | +#define BS_AUTO3STATE 6 | |
| 213 | +#define BS_AUTOCHECKBOX 3 | |
| 214 | +#define BS_AUTORADIOBUTTON 9 | |
| 215 | +#define BS_BITMAP 128 | |
| 216 | +#define BS_BOTTOM 0x800 | |
| 217 | +#define BS_CENTER 0x300 | |
| 218 | +#define BS_CHECKBOX 2 | |
| 219 | +#define BS_DEFPUSHBUTTON 1 | |
| 220 | +#define BS_GROUPBOX 7 | |
| 221 | +#define BS_ICON 64 | |
| 222 | +#define BS_LEFT 256 | |
| 223 | +#define BS_LEFTTEXT 32 | |
| 224 | +#define BS_MULTILINE 0x2000 | |
| 225 | +#define BS_NOTIFY 0x4000 | |
| 226 | +#define BS_OWNERDRAW 0xb | |
| 227 | +#define BS_PUSHBUTTON 0 | |
| 228 | +#define BS_PUSHLIKE 4096 | |
| 229 | +#define BS_RADIOBUTTON 4 | |
| 230 | +#define BS_RIGHT 512 | |
| 231 | +#define BS_RIGHTBUTTON 32 | |
| 232 | +#define BS_TEXT 0 | |
| 233 | +#define BS_TOP 0x400 | |
| 234 | +#define BS_USERBUTTON 8 | |
| 235 | +#define BS_VCENTER 0xc00 | |
| 236 | +#define BS_FLAT 0x8000 | |
| 237 | +#define CBS_AUTOHSCROLL 64 | |
| 238 | +#define CBS_DISABLENOSCROLL 0x800 | |
| 239 | +#define CBS_DROPDOWN 2 | |
| 240 | +#define CBS_DROPDOWNLIST 3 | |
| 241 | +#define CBS_HASSTRINGS 512 | |
| 242 | +#define CBS_LOWERCASE 0x4000 | |
| 243 | +#define CBS_NOINTEGRALHEIGHT 0x400 | |
| 244 | +#define CBS_OEMCONVERT 128 | |
| 245 | +#define CBS_OWNERDRAWFIXED 16 | |
| 246 | +#define CBS_OWNERDRAWVARIABLE 32 | |
| 247 | +#define CBS_SIMPLE 1 | |
| 248 | +#define CBS_SORT 256 | |
| 249 | +#define CBS_UPPERCASE 0x2000 | |
| 250 | +#define ES_AUTOHSCROLL 128 | |
| 251 | +#define ES_AUTOVSCROLL 64 | |
| 252 | +#define ES_CENTER 1 | |
| 253 | +#define ES_LEFT 0 | |
| 254 | +#define ES_LOWERCASE 16 | |
| 255 | +#define ES_MULTILINE 4 | |
| 256 | +#define ES_NOHIDESEL 256 | |
| 257 | +#define ES_NUMBER 0x2000 | |
| 258 | +#define ES_OEMCONVERT 0x400 | |
| 259 | +#define ES_PASSWORD 32 | |
| 260 | +#define ES_READONLY 0x800 | |
| 261 | +#define ES_RIGHT 2 | |
| 262 | +#define ES_UPPERCASE 8 | |
| 263 | +#define ES_WANTRETURN 4096 | |
| 264 | +#define LBS_DISABLENOSCROLL 4096 | |
| 265 | +#define LBS_EXTENDEDSEL 0x800 | |
| 266 | +#define LBS_HASSTRINGS 64 | |
| 267 | +#define LBS_MULTICOLUMN 512 | |
| 268 | +#define LBS_MULTIPLESEL 8 | |
| 269 | +#define LBS_NODATA 0x2000 | |
| 270 | +#define LBS_NOINTEGRALHEIGHT 256 | |
| 271 | +#define LBS_NOREDRAW 4 | |
| 272 | +#define LBS_NOSEL 0x4000 | |
| 273 | +#define LBS_NOTIFY 1 | |
| 274 | +#define LBS_OWNERDRAWFIXED 16 | |
| 275 | +#define LBS_OWNERDRAWVARIABLE 32 | |
| 276 | +#define LBS_SORT 2 | |
| 277 | +#define LBS_STANDARD 0xa00003 | |
| 278 | +#define LBS_USETABSTOPS 128 | |
| 279 | +#define LBS_WANTKEYBOARDINPUT 0x400 | |
| 280 | +#define SBS_BOTTOMALIGN 4 | |
| 281 | +#define SBS_HORZ 0 | |
| 282 | +#define SBS_LEFTALIGN 2 | |
| 283 | +#define SBS_RIGHTALIGN 4 | |
| 284 | +#define SBS_SIZEBOX 8 | |
| 285 | +#define SBS_SIZEBOXBOTTOMRIGHTALIGN 4 | |
| 286 | +#define SBS_SIZEBOXTOPLEFTALIGN 2 | |
| 287 | +#define SBS_SIZEGRIP 16 | |
| 288 | +#define SBS_TOPALIGN 2 | |
| 289 | +#define SBS_VERT 1 | |
| 290 | +#define SS_BITMAP 14 | |
| 291 | +#define SS_BLACKFRAME 7 | |
| 292 | +#define SS_BLACKRECT 4 | |
| 293 | +#define SS_CENTER 1 | |
| 294 | +#define SS_CENTERIMAGE 512 | |
| 295 | +#define SS_ENHMETAFILE 15 | |
| 296 | +#define SS_ETCHEDFRAME 18 | |
| 297 | +#define SS_ETCHEDHORZ 16 | |
| 298 | +#define SS_ETCHEDVERT 17 | |
| 299 | +#define SS_GRAYFRAME 8 | |
| 300 | +#define SS_GRAYRECT 5 | |
| 301 | +#define SS_ICON 3 | |
| 302 | +#define SS_LEFT 0 | |
| 303 | +#define SS_LEFTNOWORDWRAP 0xc | |
| 304 | +#define SS_NOPREFIX 128 | |
| 305 | +#define SS_NOTIFY 256 | |
| 306 | +#define SS_OWNERDRAW 0xd | |
| 307 | +#define SS_REALSIZEIMAGE 0x800 | |
| 308 | +#define SS_RIGHT 2 | |
| 309 | +#define SS_RIGHTJUST 0x400 | |
| 310 | +#define SS_SIMPLE 11 | |
| 311 | +#define SS_SUNKEN 4096 | |
| 312 | +#define SS_WHITEFRAME 9 | |
| 313 | +#define SS_WHITERECT 6 | |
| 314 | +#define SS_USERITEM 10 | |
| 315 | +#define SS_TYPEMASK 0x0000001FL | |
| 316 | +#define SS_ENDELLIPSIS 0x00004000L | |
| 317 | +#define SS_PATHELLIPSIS 0x00008000L | |
| 318 | +#define SS_WORDELLIPSIS 0x0000C000L | |
| 319 | +#define SS_ELLIPSISMASK 0x0000C000L | |
| 320 | +#define DS_3DLOOK 4 | |
| 321 | +#define DS_ABSALIGN 1 | |
| 322 | +#define DS_CENTER 0x800 | |
| 323 | +#define DS_CENTERMOUSE 4096 | |
| 324 | +#define DS_CONTEXTHELP 0x2000 | |
| 325 | +#define DS_CONTROL 0x400 | |
| 326 | +#define DS_FIXEDSYS 8 | |
| 327 | +#define DS_LOCALEDIT 32 | |
| 328 | +#define DS_MODALFRAME 128 | |
| 329 | +#define DS_NOFAILCREATE 16 | |
| 330 | +#define DS_NOIDLEMSG 256 | |
| 331 | +#define DS_SETFONT 64 | |
| 332 | +#define DS_SETFOREGROUND 512 | |
| 333 | +#define DS_SYSMODAL 2 | |
| 334 | +#define WS_EX_ACCEPTFILES 16 | |
| 335 | +#define WS_EX_APPWINDOW 0x40000 | |
| 336 | +#define WS_EX_CLIENTEDGE 512 | |
| 337 | +#define WS_EX_COMPOSITED 0x2000000 /* XP */ | |
| 338 | +#define WS_EX_CONTEXTHELP 0x400 | |
| 339 | +#define WS_EX_CONTROLPARENT 0x10000 | |
| 340 | +#define WS_EX_DLGMODALFRAME 1 | |
| 341 | +#define WS_EX_LAYERED 0x80000 /* w2k */ | |
| 342 | +#define WS_EX_LAYOUTRTL 0x400000 /* w98, w2k */ | |
| 343 | +#define WS_EX_LEFT 0 | |
| 344 | +#define WS_EX_LEFTSCROLLBAR 0x4000 | |
| 345 | +#define WS_EX_LTRREADING 0 | |
| 346 | +#define WS_EX_MDICHILD 64 | |
| 347 | +#define WS_EX_NOACTIVATE 0x8000000 /* w2k */ | |
| 348 | +#define WS_EX_NOINHERITLAYOUT 0x100000 /* w2k */ | |
| 349 | +#define WS_EX_NOPARENTNOTIFY 4 | |
| 350 | +#define WS_EX_OVERLAPPEDWINDOW 0x300 | |
| 351 | +#define WS_EX_PALETTEWINDOW 0x188 | |
| 352 | +#define WS_EX_RIGHT 0x1000 | |
| 353 | +#define WS_EX_RIGHTSCROLLBAR 0 | |
| 354 | +#define WS_EX_RTLREADING 0x2000 | |
| 355 | +#define WS_EX_STATICEDGE 0x20000 | |
| 356 | +#define WS_EX_TOOLWINDOW 128 | |
| 357 | +#define WS_EX_TOPMOST 8 | |
| 358 | +#define WS_EX_TRANSPARENT 32 | |
| 359 | +#define WS_EX_WINDOWEDGE 256 | |
| 360 | +#define WINSTA_ACCESSCLIPBOARD 4 | |
| 361 | +#define WINSTA_ACCESSGLOBALATOMS 32 | |
| 362 | +#define WINSTA_CREATEDESKTOP 8 | |
| 363 | +#define WINSTA_ENUMDESKTOPS 1 | |
| 364 | +#define WINSTA_ENUMERATE 256 | |
| 365 | +#define WINSTA_EXITWINDOWS 64 | |
| 366 | +#define WINSTA_READATTRIBUTES 2 | |
| 367 | +#define WINSTA_READSCREEN 512 | |
| 368 | +#define WINSTA_WRITEATTRIBUTES 16 | |
| 369 | +#define DDL_READWRITE 0 | |
| 370 | +#define DDL_READONLY 1 | |
| 371 | +#define DDL_HIDDEN 2 | |
| 372 | +#define DDL_SYSTEM 4 | |
| 373 | +#define DDL_DIRECTORY 16 | |
| 374 | +#define DDL_ARCHIVE 32 | |
| 375 | +#define DDL_POSTMSGS 8192 | |
| 376 | +#define DDL_DRIVES 16384 | |
| 377 | +#define DDL_EXCLUSIVE 32768 | |
| 378 | +#define DC_ACTIVE 1 | |
| 379 | +#define DC_SMALLCAP 2 | |
| 380 | +#define DC_ICON 4 | |
| 381 | +#define DC_TEXT 8 | |
| 382 | +#define DC_INBUTTON 16 | |
| 383 | +#define DC_CAPTION (DC_ICON|DC_TEXT|DC_BUTTONS) | |
| 384 | +#define DC_NC (DC_CAPTION|DC_FRAME) | |
| 385 | +#define BDR_RAISEDOUTER 1 | |
| 386 | +#define BDR_SUNKENOUTER 2 | |
| 387 | +#define BDR_RAISEDINNER 4 | |
| 388 | +#define BDR_SUNKENINNER 8 | |
| 389 | +#define BDR_OUTER 3 | |
| 390 | +#define BDR_INNER 0xc | |
| 391 | +#define BDR_RAISED 5 | |
| 392 | +#define BDR_SUNKEN 10 | |
| 393 | +#define EDGE_RAISED (BDR_RAISEDOUTER|BDR_RAISEDINNER) | |
| 394 | +#define EDGE_SUNKEN (BDR_SUNKENOUTER|BDR_SUNKENINNER) | |
| 395 | +#define EDGE_ETCHED (BDR_SUNKENOUTER|BDR_RAISEDINNER) | |
| 396 | +#define EDGE_BUMP (BDR_RAISEDOUTER|BDR_SUNKENINNER) | |
| 397 | +#define BF_LEFT 1 | |
| 398 | +#define BF_TOP 2 | |
| 399 | +#define BF_RIGHT 4 | |
| 400 | +#define BF_BOTTOM 8 | |
| 401 | +#define BF_TOPLEFT (BF_TOP|BF_LEFT) | |
| 402 | +#define BF_TOPRIGHT (BF_TOP|BF_RIGHT) | |
| 403 | +#define BF_BOTTOMLEFT (BF_BOTTOM|BF_LEFT) | |
| 404 | +#define BF_BOTTOMRIGHT (BF_BOTTOM|BF_RIGHT) | |
| 405 | +#define BF_RECT (BF_LEFT|BF_TOP|BF_RIGHT|BF_BOTTOM) | |
| 406 | +#define BF_DIAGONAL 16 | |
| 407 | +#define BF_DIAGONAL_ENDTOPRIGHT (BF_DIAGONAL|BF_TOP|BF_RIGHT) | |
| 408 | +#define BF_DIAGONAL_ENDTOPLEFT (BF_DIAGONAL|BF_TOP|BF_LEFT) | |
| 409 | +#define BF_DIAGONAL_ENDBOTTOMLEFT (BF_DIAGONAL|BF_BOTTOM|BF_LEFT) | |
| 410 | +#define BF_DIAGONAL_ENDBOTTOMRIGHT (BF_DIAGONAL|BF_BOTTOM|BF_RIGHT) | |
| 411 | +#define BF_MIDDLE 0x800 | |
| 412 | +#define BF_SOFT 0x1000 | |
| 413 | +#define BF_ADJUST 0x2000 | |
| 414 | +#define BF_FLAT 0x4000 | |
| 415 | +#define BF_MONO 0x8000 | |
| 416 | +#define DFC_CAPTION 1 | |
| 417 | +#define DFC_MENU 2 | |
| 418 | +#define DFC_SCROLL 3 | |
| 419 | +#define DFC_BUTTON 4 | |
| 420 | +#define DFCS_CAPTIONCLOSE 0 | |
| 421 | +#define DFCS_CAPTIONMIN 1 | |
| 422 | +#define DFCS_CAPTIONMAX 2 | |
| 423 | +#define DFCS_CAPTIONRESTORE 3 | |
| 424 | +#define DFCS_CAPTIONHELP 4 | |
| 425 | +#define DFCS_MENUARROW 0 | |
| 426 | +#define DFCS_MENUCHECK 1 | |
| 427 | +#define DFCS_MENUBULLET 2 | |
| 428 | +#define DFCS_MENUARROWRIGHT 4 | |
| 429 | +#define DFCS_SCROLLUP 0 | |
| 430 | +#define DFCS_SCROLLDOWN 1 | |
| 431 | +#define DFCS_SCROLLLEFT 2 | |
| 432 | +#define DFCS_SCROLLRIGHT 3 | |
| 433 | +#define DFCS_SCROLLCOMBOBOX 5 | |
| 434 | +#define DFCS_SCROLLSIZEGRIP 8 | |
| 435 | +#define DFCS_SCROLLSIZEGRIPRIGHT 16 | |
| 436 | +#define DFCS_BUTTONCHECK 0 | |
| 437 | +#define DFCS_BUTTONRADIOIMAGE 1 | |
| 438 | +#define DFCS_BUTTONRADIOMASK 2 | |
| 439 | +#define DFCS_BUTTONRADIO 4 | |
| 440 | +#define DFCS_BUTTON3STATE 8 | |
| 441 | +#define DFCS_BUTTONPUSH 16 | |
| 442 | +#define DFCS_INACTIVE 256 | |
| 443 | +#define DFCS_PUSHED 512 | |
| 444 | +#define DFCS_CHECKED 1024 | |
| 445 | +#define DFCS_ADJUSTRECT 0x2000 | |
| 446 | +#define DFCS_FLAT 0x4000 | |
| 447 | +#define DFCS_MONO 0x8000 | |
| 448 | +#define DST_COMPLEX 0 | |
| 449 | +#define DST_TEXT 1 | |
| 450 | +#define DST_PREFIXTEXT 2 | |
| 451 | +#define DST_ICON 3 | |
| 452 | +#define DST_BITMAP 4 | |
| 453 | +#define DSS_NORMAL 0 | |
| 454 | +#define DSS_UNION 16 | |
| 455 | +#define DSS_DISABLED 32 | |
| 456 | +#define DSS_MONO 128 | |
| 457 | +#define DSS_RIGHT 0x8000 | |
| 458 | +#define DT_BOTTOM 8 | |
| 459 | +#define DT_CALCRECT 1024 | |
| 460 | +#define DT_CENTER 1 | |
| 461 | +#define DT_EDITCONTROL 8192 | |
| 462 | +#define DT_END_ELLIPSIS 32768 | |
| 463 | +#define DT_PATH_ELLIPSIS 16384 | |
| 464 | +#define DT_WORD_ELLIPSIS 0x40000 | |
| 465 | +#define DT_EXPANDTABS 64 | |
| 466 | +#define DT_EXTERNALLEADING 512 | |
| 467 | +#define DT_LEFT 0 | |
| 468 | +#define DT_MODIFYSTRING 65536 | |
| 469 | +#define DT_NOCLIP 256 | |
| 470 | +#define DT_NOPREFIX 2048 | |
| 471 | +#define DT_RIGHT 2 | |
| 472 | +#define DT_RTLREADING 131072 | |
| 473 | +#define DT_SINGLELINE 32 | |
| 474 | +#define DT_TABSTOP 128 | |
| 475 | +#define DT_TOP 0 | |
| 476 | +#define DT_VCENTER 4 | |
| 477 | +#define DT_WORDBREAK 16 | |
| 478 | +#define DT_INTERNAL 4096 | |
| 479 | +#define WB_ISDELIMITER 2 | |
| 480 | +#define WB_LEFT 0 | |
| 481 | +#define WB_RIGHT 1 | |
| 482 | +#define SB_HORZ 0 | |
| 483 | +#define SB_VERT 1 | |
| 484 | +#define SB_CTL 2 | |
| 485 | +#define SB_BOTH 3 | |
| 486 | +#define ESB_DISABLE_BOTH 3 | |
| 487 | +#define ESB_DISABLE_DOWN 2 | |
| 488 | +#define ESB_DISABLE_LEFT 1 | |
| 489 | +#define ESB_DISABLE_LTUP 1 | |
| 490 | +#define ESB_DISABLE_RIGHT 2 | |
| 491 | +#define ESB_DISABLE_RTDN 2 | |
| 492 | +#define ESB_DISABLE_UP 1 | |
| 493 | +#define ESB_ENABLE_BOTH 0 | |
| 494 | +#define SB_LINEUP 0 | |
| 495 | +#define SB_LINEDOWN 1 | |
| 496 | +#define SB_LINELEFT 0 | |
| 497 | +#define SB_LINERIGHT 1 | |
| 498 | +#define SB_PAGEUP 2 | |
| 499 | +#define SB_PAGEDOWN 3 | |
| 500 | +#define SB_PAGELEFT 2 | |
| 501 | +#define SB_PAGERIGHT 3 | |
| 502 | +#define SB_THUMBPOSITION 4 | |
| 503 | +#define SB_THUMBTRACK 5 | |
| 504 | +#define SB_ENDSCROLL 8 | |
| 505 | +#define SB_LEFT 6 | |
| 506 | +#define SB_RIGHT 7 | |
| 507 | +#define SB_BOTTOM 7 | |
| 508 | +#define SB_TOP 6 | |
| 509 | +#define MAKEINTRESOURCEA(i) (LPSTR)((DWORD)((WORD)(i))) | |
| 510 | +#define MAKEINTRESOURCEW(i) (LPWSTR)((DWORD)((WORD)(i))) | |
| 511 | +#ifndef XFree86Server | |
| 512 | +# define RT_CURSOR MAKEINTRESOURCE(1) | |
| 513 | +# define RT_FONT MAKEINTRESOURCE(8) | |
| 514 | +#endif /* ndef XFree86Server */ | |
| 515 | +#define RT_BITMAP MAKEINTRESOURCE(2) | |
| 516 | +#define RT_ICON MAKEINTRESOURCE(3) | |
| 517 | +#define RT_MENU MAKEINTRESOURCE(4) | |
| 518 | +#define RT_DIALOG MAKEINTRESOURCE(5) | |
| 519 | +#define RT_STRING MAKEINTRESOURCE(6) | |
| 520 | +#define RT_FONTDIR MAKEINTRESOURCE(7) | |
| 521 | +#define RT_ACCELERATOR MAKEINTRESOURCE(9) | |
| 522 | +#define RT_RCDATA MAKEINTRESOURCE(10) | |
| 523 | +#define RT_MESSAGETABLE MAKEINTRESOURCE(11) | |
| 524 | +#define DIFFERENCE 11 | |
| 525 | +#define RT_GROUP_CURSOR MAKEINTRESOURCE((DWORD)RT_CURSOR+DIFFERENCE) | |
| 526 | +#define RT_GROUP_ICON MAKEINTRESOURCE((DWORD)RT_ICON+DIFFERENCE) | |
| 527 | +#define RT_VERSION MAKEINTRESOURCE(16) | |
| 528 | +#define RT_DLGINCLUDE MAKEINTRESOURCE(17) | |
| 529 | +#define RT_PLUGPLAY MAKEINTRESOURCE(19) | |
| 530 | +#define RT_VXD MAKEINTRESOURCE(20) | |
| 531 | +#define RT_ANICURSOR MAKEINTRESOURCE(21) | |
| 532 | +#define RT_ANIICON MAKEINTRESOURCE(22) | |
| 533 | +#define RT_HTML MAKEINTRESOURCE(23) | |
| 534 | +#define EWX_FORCE 4 | |
| 535 | +#define EWX_LOGOFF 0 | |
| 536 | +#define EWX_POWEROFF 8 | |
| 537 | +#define EWX_REBOOT 2 | |
| 538 | +#define EWX_SHUTDOWN 1 | |
| 539 | +#define CS_BYTEALIGNCLIENT 4096 | |
| 540 | +#define CS_BYTEALIGNWINDOW 8192 | |
| 541 | +#define CS_KEYCVTWINDOW 4 | |
| 542 | +#define CS_NOKEYCVT 256 | |
| 543 | +#define CS_CLASSDC 64 | |
| 544 | +#define CS_DBLCLKS 8 | |
| 545 | +#define CS_GLOBALCLASS 16384 | |
| 546 | +#define CS_HREDRAW 2 | |
| 547 | +#define CS_NOCLOSE 512 | |
| 548 | +#define CS_OWNDC 32 | |
| 549 | +#define CS_PARENTDC 128 | |
| 550 | +#define CS_SAVEBITS 2048 | |
| 551 | +#define CS_VREDRAW 1 | |
| 552 | +#define CS_IME 0x10000 | |
| 553 | +#define GCW_ATOM (-32) | |
| 554 | +#define GCL_CBCLSEXTRA (-20) | |
| 555 | +#define GCL_CBWNDEXTRA (-18) | |
| 556 | +#define GCL_HBRBACKGROUND (-10) | |
| 557 | +#define GCL_HCURSOR (-12) | |
| 558 | +#define GCL_HICON (-14) | |
| 559 | +#define GCL_HICONSM (-34) | |
| 560 | +#define GCL_HMODULE (-16) | |
| 561 | +#define GCL_MENUNAME (-8) | |
| 562 | +#define GCL_STYLE (-26) | |
| 563 | +#define GCL_WNDPROC (-24) | |
| 564 | +#if 0 | |
| 565 | + /* This is supposed to be defined by the program using it not defined | |
| 566 | + in the win32api headers. I've left it here for documentation purposes. | |
| 567 | + */ | |
| 568 | +#ifndef IDC_STATIC /* May be predefined by resource compiler. */ | |
| 569 | +#define IDC_STATIC (-1) | |
| 570 | +#endif | |
| 571 | +#endif | |
| 572 | +#define IDC_ARROW MAKEINTRESOURCE(32512) | |
| 573 | +#define IDC_IBEAM MAKEINTRESOURCE(32513) | |
| 574 | +#define IDC_WAIT MAKEINTRESOURCE(32514) | |
| 575 | +#define IDC_CROSS MAKEINTRESOURCE(32515) | |
| 576 | +#define IDC_UPARROW MAKEINTRESOURCE(32516) | |
| 577 | +#define IDC_SIZENWSE MAKEINTRESOURCE(32642) | |
| 578 | +#define IDC_SIZENESW MAKEINTRESOURCE(32643) | |
| 579 | +#define IDC_SIZEWE MAKEINTRESOURCE(32644) | |
| 580 | +#define IDC_SIZENS MAKEINTRESOURCE(32645) | |
| 581 | +#define IDC_SIZEALL MAKEINTRESOURCE(32646) | |
| 582 | +#define IDC_NO MAKEINTRESOURCE(32648) | |
| 583 | +#define IDC_HAND MAKEINTRESOURCE(32649) | |
| 584 | +#define IDC_APPSTARTING MAKEINTRESOURCE(32650) | |
| 585 | +#define IDC_HELP MAKEINTRESOURCE(32651) | |
| 586 | +#define IDC_ICON MAKEINTRESOURCE(32641) | |
| 587 | +#define IDC_SIZE MAKEINTRESOURCE(32640) | |
| 588 | +#ifndef RC_INVOKED | |
| 589 | +#define IDI_APPLICATION MAKEINTRESOURCE(32512) | |
| 590 | +#define IDI_HAND MAKEINTRESOURCE(32513) | |
| 591 | +#define IDI_QUESTION MAKEINTRESOURCE(32514) | |
| 592 | +#define IDI_EXCLAMATION MAKEINTRESOURCE(32515) | |
| 593 | +#define IDI_ASTERISK MAKEINTRESOURCE(32516) | |
| 594 | +#define IDI_WINLOGO MAKEINTRESOURCE(32517) | |
| 595 | +#else | |
| 596 | +#define IDI_APPLICATION 32512 | |
| 597 | +#define IDI_HAND 32513 | |
| 598 | +#define IDI_QUESTION 32514 | |
| 599 | +#define IDI_EXCLAMATION 32515 | |
| 600 | +#define IDI_ASTERISK 32516 | |
| 601 | +#define IDI_WINLOGO 32517 | |
| 602 | +#endif | |
| 603 | +#define IDI_WARNING IDI_EXCLAMATION | |
| 604 | +#define IDI_ERROR IDI_HAND | |
| 605 | +#define IDI_INFORMATION IDI_ASTERISK | |
| 606 | +#define MIIM_STATE 1 | |
| 607 | +#define MIIM_ID 2 | |
| 608 | +#define MIIM_SUBMENU 4 | |
| 609 | +#define MIIM_CHECKMARKS 8 | |
| 610 | +#define MIIM_TYPE 16 | |
| 611 | +#define MIIM_DATA 32 | |
| 612 | +#define MIIM_STRING 64 | |
| 613 | +#define MIIM_BITMAP 128 | |
| 614 | +#define MIIM_FTYPE 256 | |
| 615 | +#define MFT_BITMAP 4 | |
| 616 | +#define MFT_MENUBARBREAK 32 | |
| 617 | +#define MFT_MENUBREAK 64 | |
| 618 | +#define MFT_OWNERDRAW 256 | |
| 619 | +#define MFT_RADIOCHECK 512 | |
| 620 | +#define MFT_RIGHTJUSTIFY 0x4000 | |
| 621 | +#define MFT_SEPARATOR 0x800 | |
| 622 | +#define MFT_RIGHTORDER 0x2000L | |
| 623 | +#define MFT_STRING 0 | |
| 624 | +#define MFS_CHECKED 8 | |
| 625 | +#define MFS_DEFAULT 4096 | |
| 626 | +#define MFS_DISABLED 3 | |
| 627 | +#define MFS_ENABLED 0 | |
| 628 | +#define MFS_GRAYED 3 | |
| 629 | +#define MFS_HILITE 128 | |
| 630 | +#define MFS_UNCHECKED 0 | |
| 631 | +#define MFS_UNHILITE 0 | |
| 632 | +#define GW_HWNDNEXT 2 | |
| 633 | +#define GW_HWNDPREV 3 | |
| 634 | +#define GW_CHILD 5 | |
| 635 | +#define GW_HWNDFIRST 0 | |
| 636 | +#define GW_HWNDLAST 1 | |
| 637 | +#define GW_OWNER 4 | |
| 638 | +#define SW_HIDE 0 | |
| 639 | +#define SW_NORMAL 1 | |
| 640 | +#define SW_SHOWNORMAL 1 | |
| 641 | +#define SW_SHOWMINIMIZED 2 | |
| 642 | +#define SW_MAXIMIZE 3 | |
| 643 | +#define SW_SHOWMAXIMIZED 3 | |
| 644 | +#define SW_SHOWNOACTIVATE 4 | |
| 645 | +#define SW_SHOW 5 | |
| 646 | +#define SW_MINIMIZE 6 | |
| 647 | +#define SW_SHOWMINNOACTIVE 7 | |
| 648 | +#define SW_SHOWNA 8 | |
| 649 | +#define SW_RESTORE 9 | |
| 650 | +#define SW_SHOWDEFAULT 10 | |
| 651 | +#define SW_FORCEMINIMIZE 11 | |
| 652 | +#define SW_MAX 11 | |
| 653 | +#define MB_USERICON 128 | |
| 654 | +#define MB_ICONASTERISK 64 | |
| 655 | +#define MB_ICONEXCLAMATION 0x30 | |
| 656 | +#define MB_ICONWARNING 0x30 | |
| 657 | +#define MB_ICONERROR 16 | |
| 658 | +#define MB_ICONHAND 16 | |
| 659 | +#define MB_ICONQUESTION 32 | |
| 660 | +#define MB_OK 0 | |
| 661 | +#define MB_ABORTRETRYIGNORE 2 | |
| 662 | +#define MB_APPLMODAL 0 | |
| 663 | +#define MB_DEFAULT_DESKTOP_ONLY 0x20000 | |
| 664 | +#define MB_HELP 0x4000 | |
| 665 | +#define MB_RIGHT 0x80000 | |
| 666 | +#define MB_RTLREADING 0x100000 | |
| 667 | +#define MB_TOPMOST 0x40000 | |
| 668 | +#define MB_DEFBUTTON1 0 | |
| 669 | +#define MB_DEFBUTTON2 256 | |
| 670 | +#define MB_DEFBUTTON3 512 | |
| 671 | +#define MB_DEFBUTTON4 0x300 | |
| 672 | +#define MB_ICONINFORMATION 64 | |
| 673 | +#define MB_ICONSTOP 16 | |
| 674 | +#define MB_OKCANCEL 1 | |
| 675 | +#define MB_RETRYCANCEL 5 | |
| 676 | +#ifdef _WIN32_WINNT | |
| 677 | +#if (_WIN32_WINNT >= 0x0400) | |
| 678 | +#define MB_SERVICE_NOTIFICATION 0x00200000 | |
| 679 | +#else | |
| 680 | +#define MB_SERVICE_NOTIFICATION 0x00040000 | |
| 681 | +#endif | |
| 682 | +#define MB_SERVICE_NOTIFICATION_NT3X 0x00040000 | |
| 683 | +#endif | |
| 684 | +#define MB_SETFOREGROUND 0x10000 | |
| 685 | +#define MB_SYSTEMMODAL 4096 | |
| 686 | +#define MB_TASKMODAL 0x2000 | |
| 687 | +#define MB_YESNO 4 | |
| 688 | +#define MB_YESNOCANCEL 3 | |
| 689 | +#define MB_ICONMASK 240 | |
| 690 | +#define MB_DEFMASK 3840 | |
| 691 | +#define MB_MODEMASK 0x00003000 | |
| 692 | +#define MB_MISCMASK 0x0000C000 | |
| 693 | +#define MB_NOFOCUS 0x00008000 | |
| 694 | +#define MB_TYPEMASK 15 | |
| 695 | +#define MB_TOPMOST 0x40000 | |
| 696 | +#define IDABORT 3 | |
| 697 | +#define IDCANCEL 2 | |
| 698 | +#define IDCLOSE 8 | |
| 699 | +#define IDHELP 9 | |
| 700 | +#define IDIGNORE 5 | |
| 701 | +#define IDNO 7 | |
| 702 | +#define IDOK 1 | |
| 703 | +#define IDRETRY 4 | |
| 704 | +#define IDYES 6 | |
| 705 | +#define GWL_EXSTYLE (-20) | |
| 706 | +#define GWL_STYLE (-16) | |
| 707 | +#define GWL_WNDPROC (-4) | |
| 708 | +#define GWLP_WNDPROC (-4) | |
| 709 | +#define GWL_HINSTANCE (-6) | |
| 710 | +#define GWLP_HINSTANCE (-6) | |
| 711 | +#define GWL_HWNDPARENT (-8) | |
| 712 | +#define GWLP_HWNDPARENT (-8) | |
| 713 | +#define GWL_ID (-12) | |
| 714 | +#define GWLP_ID (-12) | |
| 715 | +#define GWL_USERDATA (-21) | |
| 716 | +#define GWLP_USERDATA (-21) | |
| 717 | +#define DWL_DLGPROC 4 | |
| 718 | +#define DWLP_DLGPROC 4 | |
| 719 | +#define DWL_MSGRESULT 0 | |
| 720 | +#define DWLP_MSGRESULT 0 | |
| 721 | +#define DWL_USER 8 | |
| 722 | +#define DWLP_USER 8 | |
| 723 | +#define QS_ALLEVENTS 191 | |
| 724 | +#define QS_ALLINPUT 255 | |
| 725 | +#define QS_HOTKEY 128 | |
| 726 | +#define QS_INPUT 7 | |
| 727 | +#define QS_KEY 1 | |
| 728 | +#define QS_MOUSE 6 | |
| 729 | +#define QS_MOUSEBUTTON 4 | |
| 730 | +#define QS_MOUSEMOVE 2 | |
| 731 | +#define QS_PAINT 32 | |
| 732 | +#define QS_POSTMESSAGE 8 | |
| 733 | +#define QS_SENDMESSAGE 64 | |
| 734 | +#define QS_TIMER 16 | |
| 735 | +#define COLOR_3DDKSHADOW 21 | |
| 736 | +#define COLOR_3DFACE 15 | |
| 737 | +#define COLOR_3DHILIGHT 20 | |
| 738 | +#define COLOR_3DHIGHLIGHT 20 | |
| 739 | +#define COLOR_3DLIGHT 22 | |
| 740 | +#define COLOR_BTNHILIGHT 20 | |
| 741 | +#define COLOR_3DSHADOW 16 | |
| 742 | +#define COLOR_ACTIVEBORDER 10 | |
| 743 | +#define COLOR_ACTIVECAPTION 2 | |
| 744 | +#define COLOR_APPWORKSPACE 12 | |
| 745 | +#define COLOR_BACKGROUND 1 | |
| 746 | +#define COLOR_DESKTOP 1 | |
| 747 | +#define COLOR_BTNFACE 15 | |
| 748 | +#define COLOR_BTNHIGHLIGHT 20 | |
| 749 | +#define COLOR_BTNSHADOW 16 | |
| 750 | +#define COLOR_BTNTEXT 18 | |
| 751 | +#define COLOR_CAPTIONTEXT 9 | |
| 752 | +#define COLOR_GRAYTEXT 17 | |
| 753 | +#define COLOR_HIGHLIGHT 13 | |
| 754 | +#define COLOR_HIGHLIGHTTEXT 14 | |
| 755 | +#define COLOR_INACTIVEBORDER 11 | |
| 756 | +#define COLOR_INACTIVECAPTION 3 | |
| 757 | +#define COLOR_INACTIVECAPTIONTEXT 19 | |
| 758 | +#define COLOR_INFOBK 24 | |
| 759 | +#define COLOR_INFOTEXT 23 | |
| 760 | +#define COLOR_MENU 4 | |
| 761 | +#define COLOR_MENUTEXT 7 | |
| 762 | +#define COLOR_SCROLLBAR 0 | |
| 763 | +#define COLOR_WINDOW 5 | |
| 764 | +#define COLOR_WINDOWFRAME 6 | |
| 765 | +#define COLOR_WINDOWTEXT 8 | |
| 766 | +#define CTLCOLOR_MSGBOX 0 | |
| 767 | +#define CTLCOLOR_EDIT 1 | |
| 768 | +#define CTLCOLOR_LISTBOX 2 | |
| 769 | +#define CTLCOLOR_BTN 3 | |
| 770 | +#define CTLCOLOR_DLG 4 | |
| 771 | +#define CTLCOLOR_SCROLLBAR 5 | |
| 772 | +#define CTLCOLOR_STATIC 6 | |
| 773 | +#define CTLCOLOR_MAX 7 | |
| 774 | +#define SM_CXSCREEN 0 | |
| 775 | +#define SM_CYSCREEN 1 | |
| 776 | +#define SM_CXVSCROLL 2 | |
| 777 | +#define SM_CYHSCROLL 3 | |
| 778 | +#define SM_CYCAPTION 4 | |
| 779 | +#define SM_CXBORDER 5 | |
| 780 | +#define SM_CYBORDER 6 | |
| 781 | +#define SM_CXDLGFRAME 7 | |
| 782 | +#define SM_CXFIXEDFRAME 7 | |
| 783 | +#define SM_CYDLGFRAME 8 | |
| 784 | +#define SM_CYFIXEDFRAME 8 | |
| 785 | +#define SM_CYVTHUMB 9 | |
| 786 | +#define SM_CXHTHUMB 10 | |
| 787 | +#define SM_CXICON 11 | |
| 788 | +#define SM_CYICON 12 | |
| 789 | +#define SM_CXCURSOR 13 | |
| 790 | +#define SM_CYCURSOR 14 | |
| 791 | +#define SM_CYMENU 15 | |
| 792 | +#define SM_CXFULLSCREEN 16 | |
| 793 | +#define SM_CYFULLSCREEN 17 | |
| 794 | +#define SM_CYKANJIWINDOW 18 | |
| 795 | +#define SM_MOUSEPRESENT 19 | |
| 796 | +#define SM_CYVSCROLL 20 | |
| 797 | +#define SM_CXHSCROLL 21 | |
| 798 | +#define SM_DEBUG 22 | |
| 799 | +#define SM_SWAPBUTTON 23 | |
| 800 | +#define SM_RESERVED1 24 | |
| 801 | +#define SM_RESERVED2 25 | |
| 802 | +#define SM_RESERVED3 26 | |
| 803 | +#define SM_RESERVED4 27 | |
| 804 | +#define SM_CXMIN 28 | |
| 805 | +#define SM_CYMIN 29 | |
| 806 | +#define SM_CXSIZE 30 | |
| 807 | +#define SM_CYSIZE 31 | |
| 808 | +#define SM_CXSIZEFRAME 32 | |
| 809 | +#define SM_CXFRAME 32 | |
| 810 | +#define SM_CYSIZEFRAME 33 | |
| 811 | +#define SM_CYFRAME 33 | |
| 812 | +#define SM_CXMINTRACK 34 | |
| 813 | +#define SM_CYMINTRACK 35 | |
| 814 | +#define SM_CXDOUBLECLK 36 | |
| 815 | +#define SM_CYDOUBLECLK 37 | |
| 816 | +#define SM_CXICONSPACING 38 | |
| 817 | +#define SM_CYICONSPACING 39 | |
| 818 | +#define SM_MENUDROPALIGNMENT 40 | |
| 819 | +#define SM_PENWINDOWS 41 | |
| 820 | +#define SM_DBCSENABLED 42 | |
| 821 | +#define SM_CMOUSEBUTTONS 43 | |
| 822 | +#define SM_SECURE 44 | |
| 823 | +#define SM_CXEDGE 45 | |
| 824 | +#define SM_CYEDGE 46 | |
| 825 | +#define SM_CXMINSPACING 47 | |
| 826 | +#define SM_CYMINSPACING 48 | |
| 827 | +#define SM_CXSMICON 49 | |
| 828 | +#define SM_CYSMICON 50 | |
| 829 | +#define SM_CYSMCAPTION 51 | |
| 830 | +#define SM_CXSMSIZE 52 | |
| 831 | +#define SM_CYSMSIZE 53 | |
| 832 | +#define SM_CXMENUSIZE 54 | |
| 833 | +#define SM_CYMENUSIZE 55 | |
| 834 | +#define SM_ARRANGE 56 | |
| 835 | +#define SM_CXMINIMIZED 57 | |
| 836 | +#define SM_CYMINIMIZED 58 | |
| 837 | +#define SM_CXMAXTRACK 59 | |
| 838 | +#define SM_CYMAXTRACK 60 | |
| 839 | +#define SM_CXMAXIMIZED 61 | |
| 840 | +#define SM_CYMAXIMIZED 62 | |
| 841 | +#define SM_NETWORK 63 | |
| 842 | +#define LR_DEFAULTSIZE 64 | |
| 843 | +#define SM_CLEANBOOT 67 | |
| 844 | +#define SM_CXDRAG 68 | |
| 845 | +#define SM_CYDRAG 69 | |
| 846 | +#define SM_SHOWSOUNDS 70 | |
| 847 | +#define SM_CXMENUCHECK 71 | |
| 848 | +#define SM_CYMENUCHECK 72 | |
| 849 | +#define SM_SLOWMACHINE 73 | |
| 850 | +#define SM_MIDEASTENABLED 74 | |
| 851 | +#define SM_MOUSEWHEELPRESENT 75 | |
| 852 | +#define SM_XVIRTUALSCREEN 76 | |
| 853 | +#define SM_YVIRTUALSCREEN 77 | |
| 854 | +#define SM_CXVIRTUALSCREEN 78 | |
| 855 | +#define SM_CYVIRTUALSCREEN 79 | |
| 856 | +#define SM_CMONITORS 80 | |
| 857 | +#define SM_SAMEDISPLAYFORMAT 81 | |
| 858 | +#if (_WIN32_WINNT < 0x0400) | |
| 859 | +#define SM_CMETRICS 76 | |
| 860 | +#else | |
| 861 | +#define SM_CMETRICS 83 | |
| 862 | +#endif | |
| 863 | +#define ARW_BOTTOMLEFT 0 | |
| 864 | +#define ARW_BOTTOMRIGHT 1 | |
| 865 | +#define ARW_HIDE 8 | |
| 866 | +#define ARW_TOPLEFT 2 | |
| 867 | +#define ARW_TOPRIGHT 3 | |
| 868 | +#define ARW_DOWN 4 | |
| 869 | +#define ARW_LEFT 0 | |
| 870 | +#define ARW_RIGHT 0 | |
| 871 | +#define ARW_UP 4 | |
| 872 | +#define UOI_FLAGS 1 | |
| 873 | +#define UOI_NAME 2 | |
| 874 | +#define UOI_TYPE 3 | |
| 875 | +#define UOI_USER_SID 4 | |
| 876 | +#define LR_DEFAULTCOLOR 0 | |
| 877 | +#define LR_MONOCHROME 1 | |
| 878 | +#define LR_COLOR 2 | |
| 879 | +#define LR_COPYRETURNORG 4 | |
| 880 | +#define LR_COPYDELETEORG 8 | |
| 881 | +#define LR_LOADFROMFILE 16 | |
| 882 | +#define LR_LOADTRANSPARENT 32 | |
| 883 | +#define LR_LOADREALSIZE 128 | |
| 884 | +#define LR_LOADMAP3DCOLORS 4096 | |
| 885 | +#define LR_CREATEDIBSECTION 8192 | |
| 886 | +#define LR_COPYFROMRESOURCE 0x4000 | |
| 887 | +#define LR_SHARED 32768 | |
| 888 | +#define KEYEVENTF_EXTENDEDKEY 1 | |
| 889 | +#define KEYEVENTF_KEYUP 2 | |
| 890 | +#define OBM_BTNCORNERS 32758 | |
| 891 | +#define OBM_BTSIZE 32761 | |
| 892 | +#define OBM_CHECK 32760 | |
| 893 | +#define OBM_CHECKBOXES 32759 | |
| 894 | +#define OBM_CLOSE 32754 | |
| 895 | +#define OBM_COMBO 32738 | |
| 896 | +#define OBM_DNARROW 32752 | |
| 897 | +#define OBM_DNARROWD 32742 | |
| 898 | +#define OBM_DNARROWI 32736 | |
| 899 | +#define OBM_LFARROW 32750 | |
| 900 | +#define OBM_LFARROWI 32734 | |
| 901 | +#define OBM_LFARROWD 32740 | |
| 902 | +#define OBM_MNARROW 32739 | |
| 903 | +#define OBM_OLD_CLOSE 32767 | |
| 904 | +#define OBM_OLD_DNARROW 32764 | |
| 905 | +#define OBM_OLD_LFARROW 32762 | |
| 906 | +#define OBM_OLD_REDUCE 32757 | |
| 907 | +#define OBM_OLD_RESTORE 32755 | |
| 908 | +#define OBM_OLD_RGARROW 32763 | |
| 909 | +#define OBM_OLD_UPARROW 32765 | |
| 910 | +#define OBM_OLD_ZOOM 32756 | |
| 911 | +#define OBM_REDUCE 32749 | |
| 912 | +#define OBM_REDUCED 32746 | |
| 913 | +#define OBM_RESTORE 32747 | |
| 914 | +#define OBM_RESTORED 32744 | |
| 915 | +#define OBM_RGARROW 32751 | |
| 916 | +#define OBM_RGARROWD 32741 | |
| 917 | +#define OBM_RGARROWI 32735 | |
| 918 | +#define OBM_SIZE 32766 | |
| 919 | +#define OBM_UPARROW 32753 | |
| 920 | +#define OBM_UPARROWD 32743 | |
| 921 | +#define OBM_UPARROWI 32737 | |
| 922 | +#define OBM_ZOOM 32748 | |
| 923 | +#define OBM_ZOOMD 32745 | |
| 924 | +#define OCR_NORMAL 32512 | |
| 925 | +#define OCR_IBEAM 32513 | |
| 926 | +#define OCR_WAIT 32514 | |
| 927 | +#define OCR_CROSS 32515 | |
| 928 | +#define OCR_UP 32516 | |
| 929 | +#define OCR_SIZE 32640 | |
| 930 | +#define OCR_ICON 32641 | |
| 931 | +#define OCR_SIZENWSE 32642 | |
| 932 | +#define OCR_SIZENESW 32643 | |
| 933 | +#define OCR_SIZEWE 32644 | |
| 934 | +#define OCR_SIZENS 32645 | |
| 935 | +#define OCR_SIZEALL 32646 | |
| 936 | +#define OCR_NO 32648 | |
| 937 | +#define OCR_APPSTARTING 32650 | |
| 938 | +#define OIC_SAMPLE 32512 | |
| 939 | +#define OIC_HAND 32513 | |
| 940 | +#define OIC_QUES 32514 | |
| 941 | +#define OIC_BANG 32515 | |
| 942 | +#define OIC_NOTE 32516 | |
| 943 | +#define OIC_WINLOGO 32517 | |
| 944 | +#define OIC_WARNING OIC_BANG | |
| 945 | +#define OIC_ERROR OIC_HAND | |
| 946 | +#define OIC_INFORMATION OIC_NOTE | |
| 947 | +#define HELPINFO_MENUITEM 2 | |
| 948 | +#define HELPINFO_WINDOW 1 | |
| 949 | +#define MSGF_DIALOGBOX 0 | |
| 950 | +#define MSGF_MESSAGEBOX 1 | |
| 951 | +#define MSGF_MENU 2 | |
| 952 | +#define MSGF_MOVE 3 | |
| 953 | +#define MSGF_SIZE 4 | |
| 954 | +#define MSGF_SCROLLBAR 5 | |
| 955 | +#define MSGF_NEXTWINDOW 6 | |
| 956 | +#define MSGF_MAINLOOP 8 | |
| 957 | +#define MSGF_USER 4096 | |
| 958 | +#define MOUSEEVENTF_MOVE 1 | |
| 959 | +#define MOUSEEVENTF_LEFTDOWN 2 | |
| 960 | +#define MOUSEEVENTF_LEFTUP 4 | |
| 961 | +#define MOUSEEVENTF_RIGHTDOWN 8 | |
| 962 | +#define MOUSEEVENTF_RIGHTUP 16 | |
| 963 | +#define MOUSEEVENTF_MIDDLEDOWN 32 | |
| 964 | +#define MOUSEEVENTF_MIDDLEUP 64 | |
| 965 | +#define MOUSEEVENTF_WHEEL 0x0800 | |
| 966 | +#define MOUSEEVENTF_ABSOLUTE 32768 | |
| 967 | +#define PM_NOREMOVE 0 | |
| 968 | +#define PM_REMOVE 1 | |
| 969 | +#define PM_NOYIELD 2 | |
| 970 | +#define HWND_BROADCAST ((HWND)0xffff) | |
| 971 | +#define HWND_BOTTOM ((HWND)1) | |
| 972 | +#define HWND_NOTOPMOST ((HWND)(-2)) | |
| 973 | +#define HWND_TOP ((HWND)0) | |
| 974 | +#define HWND_TOPMOST ((HWND)(-1)) | |
| 975 | +#define HWND_DESKTOP (HWND)0 | |
| 976 | +#define HWND_MESSAGE ((HWND)(-3)) /* w2k */ | |
| 977 | +#define RDW_ERASE 4 | |
| 978 | +#define RDW_FRAME 1024 | |
| 979 | +#define RDW_INTERNALPAINT 2 | |
| 980 | +#define RDW_INVALIDATE 1 | |
| 981 | +#define RDW_NOERASE 32 | |
| 982 | +#define RDW_NOFRAME 2048 | |
| 983 | +#define RDW_NOINTERNALPAINT 16 | |
| 984 | +#define RDW_VALIDATE 8 | |
| 985 | +#define RDW_ERASENOW 512 | |
| 986 | +#define RDW_UPDATENOW 256 | |
| 987 | +#define RDW_ALLCHILDREN 128 | |
| 988 | +#define RDW_NOCHILDREN 64 | |
| 989 | +#define SMTO_ABORTIFHUNG 2 | |
| 990 | +#define SMTO_BLOCK 1 | |
| 991 | +#define SMTO_NORMAL 0 | |
| 992 | +#define SIF_ALL 23 | |
| 993 | +#define SIF_PAGE 2 | |
| 994 | +#define SIF_POS 4 | |
| 995 | +#define SIF_RANGE 1 | |
| 996 | +#define SIF_DISABLENOSCROLL 8 | |
| 997 | +#define SIF_TRACKPOS 16 | |
| 998 | +#define SWP_DRAWFRAME 32 | |
| 999 | +#define SWP_FRAMECHANGED 32 | |
| 1000 | +#define SWP_HIDEWINDOW 128 | |
| 1001 | +#define SWP_NOACTIVATE 16 | |
| 1002 | +#define SWP_NOCOPYBITS 256 | |
| 1003 | +#define SWP_NOMOVE 2 | |
| 1004 | +#define SWP_NOSIZE 1 | |
| 1005 | +#define SWP_NOREDRAW 8 | |
| 1006 | +#define SWP_NOZORDER 4 | |
| 1007 | +#define SWP_SHOWWINDOW 64 | |
| 1008 | +#define SWP_NOOWNERZORDER 512 | |
| 1009 | +#define SWP_NOREPOSITION 512 | |
| 1010 | +#define SWP_NOSENDCHANGING 1024 | |
| 1011 | +#define SWP_DEFERERASE 8192 | |
| 1012 | +#define SWP_ASYNCWINDOWPOS 16384 | |
| 1013 | +#define HSHELL_ACTIVATESHELLWINDOW 3 | |
| 1014 | +#define HSHELL_GETMINRECT 5 | |
| 1015 | +#define HSHELL_LANGUAGE 8 | |
| 1016 | +#define HSHELL_REDRAW 6 | |
| 1017 | +#define HSHELL_TASKMAN 7 | |
| 1018 | +#define HSHELL_WINDOWACTIVATED 4 | |
| 1019 | +#define HSHELL_WINDOWCREATED 1 | |
| 1020 | +#define HSHELL_WINDOWDESTROYED 2 | |
| 1021 | +#define SPI_GETACCESSTIMEOUT 60 | |
| 1022 | +#define SPI_GETANIMATION 72 | |
| 1023 | +#define SPI_GETBEEP 1 | |
| 1024 | +#define SPI_GETBORDER 5 | |
| 1025 | +#define SPI_GETDEFAULTINPUTLANG 89 | |
| 1026 | +#define SPI_GETDRAGFULLWINDOWS 38 | |
| 1027 | +#define SPI_GETFASTTASKSWITCH 35 | |
| 1028 | +#define SPI_GETFILTERKEYS 50 | |
| 1029 | +#define SPI_GETFONTSMOOTHING 74 | |
| 1030 | +#define SPI_GETGRIDGRANULARITY 18 | |
| 1031 | +#define SPI_GETHIGHCONTRAST 66 | |
| 1032 | +#define SPI_GETICONMETRICS 45 | |
| 1033 | +#define SPI_GETICONTITLELOGFONT 31 | |
| 1034 | +#define SPI_GETICONTITLEWRAP 25 | |
| 1035 | +#define SPI_GETKEYBOARDDELAY 22 | |
| 1036 | +#define SPI_GETKEYBOARDPREF 68 | |
| 1037 | +#define SPI_GETKEYBOARDSPEED 10 | |
| 1038 | +#define SPI_GETLOWPOWERACTIVE 83 | |
| 1039 | +#define SPI_GETLOWPOWERTIMEOUT 79 | |
| 1040 | +#define SPI_GETMENUDROPALIGNMENT 27 | |
| 1041 | +#define SPI_GETMINIMIZEDMETRICS 43 | |
| 1042 | +#define SPI_GETMOUSE 3 | |
| 1043 | +#define SPI_GETMOUSEKEYS 54 | |
| 1044 | +#define SPI_GETMOUSETRAILS 94 | |
| 1045 | +#define SPI_GETNONCLIENTMETRICS 41 | |
| 1046 | +#define SPI_GETPOWEROFFACTIVE 84 | |
| 1047 | +#define SPI_GETPOWEROFFTIMEOUT 80 | |
| 1048 | +#define SPI_GETSCREENREADER 70 | |
| 1049 | +#define SPI_GETSCREENSAVEACTIVE 16 | |
| 1050 | +#define SPI_GETSCREENSAVETIMEOUT 14 | |
| 1051 | +#define SPI_GETSERIALKEYS 62 | |
| 1052 | +#define SPI_GETSHOWSOUNDS 56 | |
| 1053 | +#define SPI_GETSOUNDSENTRY 64 | |
| 1054 | +#define SPI_GETSTICKYKEYS 58 | |
| 1055 | +#define SPI_GETTOGGLEKEYS 52 | |
| 1056 | +#define SPI_GETWINDOWSEXTENSION 92 | |
| 1057 | +#define SPI_GETWORKAREA 48 | |
| 1058 | +#define SPI_ICONHORIZONTALSPACING 13 | |
| 1059 | +#define SPI_ICONVERTICALSPACING 24 | |
| 1060 | +#define SPI_LANGDRIVER 12 | |
| 1061 | +#define SPI_SCREENSAVERRUNNING 97 | |
| 1062 | +#define SPI_SETACCESSTIMEOUT 61 | |
| 1063 | +#define SPI_SETANIMATION 73 | |
| 1064 | +#define SPI_SETBEEP 2 | |
| 1065 | +#define SPI_SETBORDER 6 | |
| 1066 | +#define SPI_SETDEFAULTINPUTLANG 90 | |
| 1067 | +#define SPI_SETDESKPATTERN 21 | |
| 1068 | +#define SPI_SETDESKWALLPAPER 20 | |
| 1069 | +#define SPI_SETDOUBLECLICKTIME 32 | |
| 1070 | +#define SPI_SETDOUBLECLKHEIGHT 30 | |
| 1071 | +#define SPI_SETDOUBLECLKWIDTH 29 | |
| 1072 | +#define SPI_SETDRAGFULLWINDOWS 37 | |
| 1073 | +#define SPI_SETDRAGHEIGHT 77 | |
| 1074 | +#define SPI_SETDRAGWIDTH 76 | |
| 1075 | +#define SPI_SETFASTTASKSWITCH 36 | |
| 1076 | +#define SPI_SETFILTERKEYS 51 | |
| 1077 | +#define SPI_SETFONTSMOOTHING 75 | |
| 1078 | +#define SPI_SETGRIDGRANULARITY 19 | |
| 1079 | +#define SPI_SETHANDHELD 78 | |
| 1080 | +#define SPI_SETHIGHCONTRAST 67 | |
| 1081 | +#define SPI_SETICONMETRICS 46 | |
| 1082 | +#define SPI_SETICONTITLELOGFONT 34 | |
| 1083 | +#define SPI_SETICONTITLEWRAP 26 | |
| 1084 | +#define SPI_SETKEYBOARDDELAY 23 | |
| 1085 | +#define SPI_SETKEYBOARDPREF 69 | |
| 1086 | +#define SPI_SETKEYBOARDSPEED 11 | |
| 1087 | +#define SPI_SETLANGTOGGLE 91 | |
| 1088 | +#define SPI_SETLOWPOWERACTIVE 85 | |
| 1089 | +#define SPI_SETLOWPOWERTIMEOUT 81 | |
| 1090 | +#define SPI_SETMENUDROPALIGNMENT 28 | |
| 1091 | +#define SPI_SETMINIMIZEDMETRICS 44 | |
| 1092 | +#define SPI_SETMOUSE 4 | |
| 1093 | +#define SPI_SETMOUSEBUTTONSWAP 33 | |
| 1094 | +#define SPI_SETMOUSEKEYS 55 | |
| 1095 | +#define SPI_SETMOUSETRAILS 93 | |
| 1096 | +#define SPI_SETNONCLIENTMETRICS 42 | |
| 1097 | +#define SPI_SETPENWINDOWS 49 | |
| 1098 | +#define SPI_SETPOWEROFFACTIVE 86 | |
| 1099 | +#define SPI_SETPOWEROFFTIMEOUT 82 | |
| 1100 | +#define SPI_SETSCREENREADER 71 | |
| 1101 | +#define SPI_SETSCREENSAVEACTIVE 17 | |
| 1102 | +#define SPI_SETSCREENSAVERRUNNING 97 | |
| 1103 | +#define SPI_SETSCREENSAVETIMEOUT 15 | |
| 1104 | +#define SPI_SETSERIALKEYS 63 | |
| 1105 | +#define SPI_SETSHOWSOUNDS 57 | |
| 1106 | +#define SPI_SETSOUNDSENTRY 65 | |
| 1107 | +#define SPI_SETSTICKYKEYS 59 | |
| 1108 | +#define SPI_SETTOGGLEKEYS 53 | |
| 1109 | +#define SPI_SETWORKAREA 47 | |
| 1110 | +#define SPIF_UPDATEINIFILE 1 | |
| 1111 | +#define SPIF_SENDWININICHANGE 2 | |
| 1112 | +#define SPIF_SENDCHANGE 2 | |
| 1113 | +#define ATF_ONOFFFEEDBACK 2 | |
| 1114 | +#define ATF_TIMEOUTON 1 | |
| 1115 | +#define WM_APP 32768 | |
| 1116 | +#define WM_ACTIVATE 6 | |
| 1117 | +#define WM_ACTIVATEAPP 28 | |
| 1118 | +/* FIXME/CHECK: Are WM_AFX{FIRST,LAST} valid for WINVER < 0x400? */ | |
| 1119 | +#define WM_AFXFIRST 864 | |
| 1120 | +#define WM_AFXLAST 895 | |
| 1121 | +#define WM_ASKCBFORMATNAME 780 | |
| 1122 | +#define WM_CANCELJOURNAL 75 | |
| 1123 | +#define WM_CANCELMODE 31 | |
| 1124 | +#define WM_CAPTURECHANGED 533 | |
| 1125 | +#define WM_CHANGECBCHAIN 781 | |
| 1126 | +#define WM_CHAR 258 | |
| 1127 | +#define WM_CHARTOITEM 47 | |
| 1128 | +#define WM_CHILDACTIVATE 34 | |
| 1129 | +#define WM_CLEAR 771 | |
| 1130 | +#define WM_CLOSE 16 | |
| 1131 | +#define WM_COMMAND 273 | |
| 1132 | +#define WM_COMMNOTIFY 68 /* obsolete */ | |
| 1133 | +#define WM_COMPACTING 65 | |
| 1134 | +#define WM_COMPAREITEM 57 | |
| 1135 | +#define WM_CONTEXTMENU 123 | |
| 1136 | +#define WM_COPY 769 | |
| 1137 | +#define WM_COPYDATA 74 | |
| 1138 | +#define WM_CREATE 1 | |
| 1139 | +#define WM_CTLCOLORBTN 309 | |
| 1140 | +#define WM_CTLCOLORDLG 310 | |
| 1141 | +#define WM_CTLCOLOREDIT 307 | |
| 1142 | +#define WM_CTLCOLORLISTBOX 308 | |
| 1143 | +#define WM_CTLCOLORMSGBOX 306 | |
| 1144 | +#define WM_CTLCOLORSCROLLBAR 311 | |
| 1145 | +#define WM_CTLCOLORSTATIC 312 | |
| 1146 | +#define WM_CUT 768 | |
| 1147 | +#define WM_DEADCHAR 259 | |
| 1148 | +#define WM_DELETEITEM 45 | |
| 1149 | +#define WM_DESTROY 2 | |
| 1150 | +#define WM_DESTROYCLIPBOARD 775 | |
| 1151 | +#define WM_DEVICECHANGE 537 | |
| 1152 | +#define WM_DEVMODECHANGE 27 | |
| 1153 | +#define WM_DISPLAYCHANGE 126 | |
| 1154 | +#define WM_DRAWCLIPBOARD 776 | |
| 1155 | +#define WM_DRAWITEM 43 | |
| 1156 | +#define WM_DROPFILES 563 | |
| 1157 | +#define WM_ENABLE 10 | |
| 1158 | +#define WM_ENDSESSION 22 | |
| 1159 | +#define WM_ENTERIDLE 289 | |
| 1160 | +#define WM_ENTERMENULOOP 529 | |
| 1161 | +#define WM_ENTERSIZEMOVE 561 | |
| 1162 | +#define WM_ERASEBKGND 20 | |
| 1163 | +#define WM_EXITMENULOOP 530 | |
| 1164 | +#define WM_EXITSIZEMOVE 562 | |
| 1165 | +#define WM_FONTCHANGE 29 | |
| 1166 | +#define WM_GETDLGCODE 135 | |
| 1167 | +#define WM_GETFONT 49 | |
| 1168 | +#define WM_GETHOTKEY 51 | |
| 1169 | +#define WM_GETICON 127 | |
| 1170 | +#define WM_GETMINMAXINFO 36 | |
| 1171 | +#define WM_GETTEXT 13 | |
| 1172 | +#define WM_GETTEXTLENGTH 14 | |
| 1173 | +/* FIXME/CHECK: Are WM_HANDHEL{FIRST,LAST} valid for WINVER < 0x400? */ | |
| 1174 | +#define WM_HANDHELDFIRST 856 | |
| 1175 | +#define WM_HANDHELDLAST 863 | |
| 1176 | +#define WM_HELP 83 | |
| 1177 | +#define WM_HOTKEY 786 | |
| 1178 | +#define WM_HSCROLL 276 | |
| 1179 | +#define WM_HSCROLLCLIPBOARD 782 | |
| 1180 | +#define WM_ICONERASEBKGND 39 | |
| 1181 | +#define WM_INITDIALOG 272 | |
| 1182 | +#define WM_INITMENU 278 | |
| 1183 | +#define WM_INITMENUPOPUP 279 | |
| 1184 | +#define WM_INPUTLANGCHANGE 81 | |
| 1185 | +#define WM_INPUTLANGCHANGEREQUEST 80 | |
| 1186 | +#define WM_KEYDOWN 256 | |
| 1187 | +#define WM_KEYUP 257 | |
| 1188 | +#define WM_KILLFOCUS 8 | |
| 1189 | +#define WM_MDIACTIVATE 546 | |
| 1190 | +#define WM_MDICASCADE 551 | |
| 1191 | +#define WM_MDICREATE 544 | |
| 1192 | +#define WM_MDIDESTROY 545 | |
| 1193 | +#define WM_MDIGETACTIVE 553 | |
| 1194 | +#define WM_MDIICONARRANGE 552 | |
| 1195 | +#define WM_MDIMAXIMIZE 549 | |
| 1196 | +#define WM_MDINEXT 548 | |
| 1197 | +#define WM_MDIREFRESHMENU 564 | |
| 1198 | +#define WM_MDIRESTORE 547 | |
| 1199 | +#define WM_MDISETMENU 560 | |
| 1200 | +#define WM_MDITILE 550 | |
| 1201 | +#define WM_MEASUREITEM 44 | |
| 1202 | +#define WM_MENUCHAR 288 | |
| 1203 | +#define WM_MENUSELECT 287 | |
| 1204 | +#define WM_NEXTMENU 531 | |
| 1205 | +#define WM_MOVE 3 | |
| 1206 | +#define WM_MOVING 534 | |
| 1207 | +#define WM_NCACTIVATE 134 | |
| 1208 | +#define WM_NCCALCSIZE 131 | |
| 1209 | +#define WM_NCCREATE 129 | |
| 1210 | +#define WM_NCDESTROY 130 | |
| 1211 | +#define WM_NCHITTEST 132 | |
| 1212 | +#define WM_NCLBUTTONDBLCLK 163 | |
| 1213 | +#define WM_NCLBUTTONDOWN 161 | |
| 1214 | +#define WM_NCLBUTTONUP 162 | |
| 1215 | +#define WM_NCMBUTTONDBLCLK 169 | |
| 1216 | +#define WM_NCMBUTTONDOWN 167 | |
| 1217 | +#define WM_NCMBUTTONUP 168 | |
| 1218 | +#define WM_NCMOUSEMOVE 160 | |
| 1219 | +#define WM_NCPAINT 133 | |
| 1220 | +#define WM_NCRBUTTONDBLCLK 166 | |
| 1221 | +#define WM_NCRBUTTONDOWN 164 | |
| 1222 | +#define WM_NCRBUTTONUP 165 | |
| 1223 | +#define WM_NEXTDLGCTL 40 | |
| 1224 | +#define WM_NEXTMENU 531 | |
| 1225 | +#define WM_NOTIFY 78 | |
| 1226 | +#define WM_NOTIFYFORMAT 85 | |
| 1227 | +#define WM_NULL 0 | |
| 1228 | +#define WM_PAINT 15 | |
| 1229 | +#define WM_PAINTCLIPBOARD 777 | |
| 1230 | +#define WM_PAINTICON 38 | |
| 1231 | +#define WM_PALETTECHANGED 785 | |
| 1232 | +#define WM_PALETTEISCHANGING 784 | |
| 1233 | +#define WM_PARENTNOTIFY 528 | |
| 1234 | +#define WM_PASTE 770 | |
| 1235 | +#define WM_PENWINFIRST 896 | |
| 1236 | +#define WM_PENWINLAST 911 | |
| 1237 | +#define WM_POWER 72 | |
| 1238 | +#define WM_POWERBROADCAST 536 | |
| 1239 | +#define WM_PRINT 791 | |
| 1240 | +#define WM_PRINTCLIENT 792 | |
| 1241 | +#define WM_QUERYDRAGICON 55 | |
| 1242 | +#define WM_QUERYENDSESSION 17 | |
| 1243 | +#define WM_QUERYNEWPALETTE 783 | |
| 1244 | +#define WM_QUERYOPEN 19 | |
| 1245 | +#define WM_QUEUESYNC 35 | |
| 1246 | +#define WM_QUIT 18 | |
| 1247 | +#define WM_RENDERALLFORMATS 774 | |
| 1248 | +#define WM_RENDERFORMAT 773 | |
| 1249 | +#define WM_SETCURSOR 32 | |
| 1250 | +#define WM_SETFOCUS 7 | |
| 1251 | +#define WM_SETFONT 48 | |
| 1252 | +#define WM_SETHOTKEY 50 | |
| 1253 | +#define WM_SETICON 128 | |
| 1254 | +#define WM_SETREDRAW 11 | |
| 1255 | +#define WM_SETTEXT 12 | |
| 1256 | +#define WM_SETTINGCHANGE 26 | |
| 1257 | +#define WM_SHOWWINDOW 24 | |
| 1258 | +#define WM_SIZE 5 | |
| 1259 | +#define WM_SIZECLIPBOARD 779 | |
| 1260 | +#define WM_SIZING 532 | |
| 1261 | +#define WM_SPOOLERSTATUS 42 | |
| 1262 | +#define WM_STYLECHANGED 125 | |
| 1263 | +#define WM_STYLECHANGING 124 | |
| 1264 | +#define WM_SYSCHAR 262 | |
| 1265 | +#define WM_SYSCOLORCHANGE 21 | |
| 1266 | +#define WM_SYSCOMMAND 274 | |
| 1267 | +#define WM_SYSDEADCHAR 263 | |
| 1268 | +#define WM_SYSKEYDOWN 260 | |
| 1269 | +#define WM_SYSKEYUP 261 | |
| 1270 | +#define WM_TCARD 82 | |
| 1271 | +#define WM_TIMECHANGE 30 | |
| 1272 | +#define WM_TIMER 275 | |
| 1273 | +#define WM_UNDO 772 | |
| 1274 | +#define WM_USER 1024 | |
| 1275 | +#define WM_USERCHANGED 84 | |
| 1276 | +#define WM_VKEYTOITEM 46 | |
| 1277 | +#define WM_VSCROLL 277 | |
| 1278 | +#define WM_VSCROLLCLIPBOARD 778 | |
| 1279 | +#define WM_WINDOWPOSCHANGED 71 | |
| 1280 | +#define WM_WINDOWPOSCHANGING 70 | |
| 1281 | +#define WM_WININICHANGE 26 | |
| 1282 | +#define WM_KEYFIRST 256 | |
| 1283 | +#define WM_KEYLAST 264 | |
| 1284 | +#define WM_SYNCPAINT 136 | |
| 1285 | +#define WM_MOUSEACTIVATE 33 | |
| 1286 | +#define WM_MOUSEMOVE 512 | |
| 1287 | +#define WM_LBUTTONDOWN 513 | |
| 1288 | +#define WM_LBUTTONUP 514 | |
| 1289 | +#define WM_LBUTTONDBLCLK 515 | |
| 1290 | +#define WM_RBUTTONDOWN 516 | |
| 1291 | +#define WM_RBUTTONUP 517 | |
| 1292 | +#define WM_RBUTTONDBLCLK 518 | |
| 1293 | +#define WM_MBUTTONDOWN 519 | |
| 1294 | +#define WM_MBUTTONUP 520 | |
| 1295 | +#define WM_MBUTTONDBLCLK 521 | |
| 1296 | +#define WM_MOUSEWHEEL 522 | |
| 1297 | +#define WM_MOUSEFIRST 512 | |
| 1298 | +#define WM_MOUSELAST 522 | |
| 1299 | +#define WM_MOUSEHOVER 0x2A1 | |
| 1300 | +#define WM_MOUSELEAVE 0x2A3 | |
| 1301 | +#if(_WIN32_WINNT >= 0x0400) | |
| 1302 | +#define WHEEL_DELTA 120 | |
| 1303 | +#define GET_WHEEL_DELTA_WPARAM(wparam) ((short)HIWORD (wparam)) | |
| 1304 | +#endif | |
| 1305 | +#define BM_CLICK 245 | |
| 1306 | +#define BM_GETCHECK 240 | |
| 1307 | +#define BM_GETIMAGE 246 | |
| 1308 | +#define BM_GETSTATE 242 | |
| 1309 | +#define BM_SETCHECK 241 | |
| 1310 | +#define BM_SETIMAGE 247 | |
| 1311 | +#define BM_SETSTATE 243 | |
| 1312 | +#define BM_SETSTYLE 244 | |
| 1313 | +#define BN_CLICKED 0 | |
| 1314 | +#define BN_DBLCLK 5 | |
| 1315 | +#define BN_DISABLE 4 | |
| 1316 | +#define BN_DOUBLECLICKED 5 | |
| 1317 | +#define BN_HILITE 2 | |
| 1318 | +#define BN_KILLFOCUS 7 | |
| 1319 | +#define BN_PAINT 1 | |
| 1320 | +#define BN_PUSHED 2 | |
| 1321 | +#define BN_SETFOCUS 6 | |
| 1322 | +#define BN_UNHILITE 3 | |
| 1323 | +#define BN_UNPUSHED 3 | |
| 1324 | +#define CB_ADDSTRING 323 | |
| 1325 | +#define CB_DELETESTRING 324 | |
| 1326 | +#define CB_DIR 325 | |
| 1327 | +#define CB_FINDSTRING 332 | |
| 1328 | +#define CB_FINDSTRINGEXACT 344 | |
| 1329 | +#define CB_GETCOUNT 326 | |
| 1330 | +#define CB_GETCURSEL 327 | |
| 1331 | +#define CB_GETDROPPEDCONTROLRECT 338 | |
| 1332 | +#define CB_GETDROPPEDSTATE 343 | |
| 1333 | +#define CB_GETDROPPEDWIDTH 351 | |
| 1334 | +#define CB_GETEDITSEL 320 | |
| 1335 | +#define CB_GETEXTENDEDUI 342 | |
| 1336 | +#define CB_GETHORIZONTALEXTENT 349 | |
| 1337 | +#define CB_GETITEMDATA 336 | |
| 1338 | +#define CB_GETITEMHEIGHT 340 | |
| 1339 | +#define CB_GETLBTEXT 328 | |
| 1340 | +#define CB_GETLBTEXTLEN 329 | |
| 1341 | +#define CB_GETLOCALE 346 | |
| 1342 | +#define CB_GETTOPINDEX 347 | |
| 1343 | +#define CB_INITSTORAGE 353 | |
| 1344 | +#define CB_INSERTSTRING 330 | |
| 1345 | +#define CB_LIMITTEXT 321 | |
| 1346 | +#define CB_RESETCONTENT 331 | |
| 1347 | +#define CB_SELECTSTRING 333 | |
| 1348 | +#define CB_SETCURSEL 334 | |
| 1349 | +#define CB_SETDROPPEDWIDTH 352 | |
| 1350 | +#define CB_SETEDITSEL 322 | |
| 1351 | +#define CB_SETEXTENDEDUI 341 | |
| 1352 | +#define CB_SETHORIZONTALEXTENT 350 | |
| 1353 | +#define CB_SETITEMDATA 337 | |
| 1354 | +#define CB_SETITEMHEIGHT 339 | |
| 1355 | +#define CB_SETLOCALE 345 | |
| 1356 | +#define CB_SETTOPINDEX 348 | |
| 1357 | +#define CB_SHOWDROPDOWN 335 | |
| 1358 | +#define CBN_CLOSEUP 8 | |
| 1359 | +#define CBN_DBLCLK 2 | |
| 1360 | +#define CBN_DROPDOWN 7 | |
| 1361 | +#define CBN_EDITCHANGE 5 | |
| 1362 | +#define CBN_EDITUPDATE 6 | |
| 1363 | +#define CBN_ERRSPACE (-1) | |
| 1364 | +#define CBN_KILLFOCUS 4 | |
| 1365 | +#define CBN_SELCHANGE 1 | |
| 1366 | +#define CBN_SELENDCANCEL 10 | |
| 1367 | +#define CBN_SELENDOK 9 | |
| 1368 | +#define CBN_SETFOCUS 3 | |
| 1369 | +#define EM_CANUNDO 198 | |
| 1370 | +#define EM_CHARFROMPOS 215 | |
| 1371 | +#define EM_EMPTYUNDOBUFFER 205 | |
| 1372 | +#define EM_FMTLINES 200 | |
| 1373 | +#define EM_GETFIRSTVISIBLELINE 206 | |
| 1374 | +#define EM_GETHANDLE 189 | |
| 1375 | +#define EM_GETLIMITTEXT 213 | |
| 1376 | +#define EM_GETLINE 196 | |
| 1377 | +#define EM_GETLINECOUNT 186 | |
| 1378 | +#define EM_GETMARGINS 212 | |
| 1379 | +#define EM_GETMODIFY 184 | |
| 1380 | +#define EM_GETPASSWORDCHAR 210 | |
| 1381 | +#define EM_GETRECT 178 | |
| 1382 | +#define EM_GETSEL 176 | |
| 1383 | +#define EM_GETTHUMB 190 | |
| 1384 | +#define EM_GETWORDBREAKPROC 209 | |
| 1385 | +#define EM_LIMITTEXT 197 | |
| 1386 | +#define EM_LINEFROMCHAR 201 | |
| 1387 | +#define EM_LINEINDEX 187 | |
| 1388 | +#define EM_LINELENGTH 193 | |
| 1389 | +#define EM_LINESCROLL 182 | |
| 1390 | +#define EM_POSFROMCHAR 214 | |
| 1391 | +#define EM_REPLACESEL 194 | |
| 1392 | +#define EM_SCROLL 181 | |
| 1393 | +#define EM_SCROLLCARET 183 | |
| 1394 | +#define EM_SETHANDLE 188 | |
| 1395 | +#define EM_SETLIMITTEXT 197 | |
| 1396 | +#define EM_SETMARGINS 211 | |
| 1397 | +#define EM_SETMODIFY 185 | |
| 1398 | +#define EM_SETPASSWORDCHAR 204 | |
| 1399 | +#define EM_SETREADONLY 207 | |
| 1400 | +#define EM_SETRECT 179 | |
| 1401 | +#define EM_SETRECTNP 180 | |
| 1402 | +#define EM_SETSEL 177 | |
| 1403 | +#define EM_SETTABSTOPS 203 | |
| 1404 | +#define EM_SETWORDBREAKPROC 208 | |
| 1405 | +#define EM_UNDO 199 | |
| 1406 | +#define EN_CHANGE 768 | |
| 1407 | +#define EN_ERRSPACE 1280 | |
| 1408 | +#define EN_HSCROLL 1537 | |
| 1409 | +#define EN_KILLFOCUS 512 | |
| 1410 | +#define EN_MAXTEXT 1281 | |
| 1411 | +#define EN_SETFOCUS 256 | |
| 1412 | +#define EN_UPDATE 1024 | |
| 1413 | +#define EN_VSCROLL 1538 | |
| 1414 | +#define LB_ADDFILE 406 | |
| 1415 | +#define LB_ADDSTRING 384 | |
| 1416 | +#define LB_DELETESTRING 386 | |
| 1417 | +#define LB_DIR 397 | |
| 1418 | +#define LB_FINDSTRING 399 | |
| 1419 | +#define LB_FINDSTRINGEXACT 418 | |
| 1420 | +#define LB_GETANCHORINDEX 413 | |
| 1421 | +#define LB_GETCARETINDEX 415 | |
| 1422 | +#define LB_GETCOUNT 395 | |
| 1423 | +#define LB_GETCURSEL 392 | |
| 1424 | +#define LB_GETHORIZONTALEXTENT 403 | |
| 1425 | +#define LB_GETITEMDATA 409 | |
| 1426 | +#define LB_GETITEMHEIGHT 417 | |
| 1427 | +#define LB_GETITEMRECT 408 | |
| 1428 | +#define LB_GETLOCALE 422 | |
| 1429 | +#define LB_GETSEL 391 | |
| 1430 | +#define LB_GETSELCOUNT 400 | |
| 1431 | +#define LB_GETSELITEMS 401 | |
| 1432 | +#define LB_GETTEXT 393 | |
| 1433 | +#define LB_GETTEXTLEN 394 | |
| 1434 | +#define LB_GETTOPINDEX 398 | |
| 1435 | +#define LB_INITSTORAGE 424 | |
| 1436 | +#define LB_INSERTSTRING 385 | |
| 1437 | +#define LB_ITEMFROMPOINT 425 | |
| 1438 | +#define LB_RESETCONTENT 388 | |
| 1439 | +#define LB_SELECTSTRING 396 | |
| 1440 | +#define LB_SELITEMRANGE 411 | |
| 1441 | +#define LB_SELITEMRANGEEX 387 | |
| 1442 | +#define LB_SETANCHORINDEX 412 | |
| 1443 | +#define LB_SETCARETINDEX 414 | |
| 1444 | +#define LB_SETCOLUMNWIDTH 405 | |
| 1445 | +#define LB_SETCOUNT 423 | |
| 1446 | +#define LB_SETCURSEL 390 | |
| 1447 | +#define LB_SETHORIZONTALEXTENT 404 | |
| 1448 | +#define LB_SETITEMDATA 410 | |
| 1449 | +#define LB_SETITEMHEIGHT 416 | |
| 1450 | +#define LB_SETLOCALE 421 | |
| 1451 | +#define LB_SETSEL 389 | |
| 1452 | +#define LB_SETTABSTOPS 402 | |
| 1453 | +#define LB_SETTOPINDEX 407 | |
| 1454 | +#define LBN_DBLCLK 2 | |
| 1455 | +#define LBN_ERRSPACE (-2) | |
| 1456 | +#define LBN_KILLFOCUS 5 | |
| 1457 | +#define LBN_SELCANCEL 3 | |
| 1458 | +#define LBN_SELCHANGE 1 | |
| 1459 | +#define LBN_SETFOCUS 4 | |
| 1460 | +#define SBM_ENABLE_ARROWS 228 | |
| 1461 | +#define SBM_GETPOS 225 | |
| 1462 | +#define SBM_GETRANGE 227 | |
| 1463 | +#define SBM_GETSCROLLINFO 234 | |
| 1464 | +#define SBM_SETPOS 224 | |
| 1465 | +#define SBM_SETRANGE 226 | |
| 1466 | +#define SBM_SETRANGEREDRAW 230 | |
| 1467 | +#define SBM_SETSCROLLINFO 233 | |
| 1468 | +#define STM_GETICON 369 | |
| 1469 | +#define STM_GETIMAGE 371 | |
| 1470 | +#define STM_SETICON 368 | |
| 1471 | +#define STM_SETIMAGE 370 | |
| 1472 | +#define STN_CLICKED 0 | |
| 1473 | +#define STN_DBLCLK 1 | |
| 1474 | +#define STN_DISABLE 3 | |
| 1475 | +#define STN_ENABLE 2 | |
| 1476 | +#define DM_GETDEFID WM_USER | |
| 1477 | +#define DM_SETDEFID (WM_USER+1) | |
| 1478 | +#define DM_REPOSITION (WM_USER+2) | |
| 1479 | +#define PSM_PAGEINFO (WM_USER+100) | |
| 1480 | +#define PSM_SHEETINFO (WM_USER+101) | |
| 1481 | +#define PSI_SETACTIVE 1 | |
| 1482 | +#define PSI_KILLACTIVE 2 | |
| 1483 | +#define PSI_APPLY 3 | |
| 1484 | +#define PSI_RESET 4 | |
| 1485 | +#define PSI_HASHELP 5 | |
| 1486 | +#define PSI_HELP 6 | |
| 1487 | +#define PSI_CHANGED 1 | |
| 1488 | +#define PSI_GUISTART 2 | |
| 1489 | +#define PSI_REBOOT 3 | |
| 1490 | +#define PSI_GETSIBLINGS 4 | |
| 1491 | +#define DCX_WINDOW 1 | |
| 1492 | +#define DCX_CACHE 2 | |
| 1493 | +#define DCX_PARENTCLIP 32 | |
| 1494 | +#define DCX_CLIPSIBLINGS 16 | |
| 1495 | +#define DCX_CLIPCHILDREN 8 | |
| 1496 | +#define DCX_NORESETATTRS 4 | |
| 1497 | +#define DCX_LOCKWINDOWUPDATE 0x400 | |
| 1498 | +#define DCX_EXCLUDERGN 64 | |
| 1499 | +#define DCX_INTERSECTRGN 128 | |
| 1500 | +#define DCX_VALIDATE 0x200000 | |
| 1501 | +#define GMDI_GOINTOPOPUPS 2 | |
| 1502 | +#define GMDI_USEDISABLED 1 | |
| 1503 | +#define FKF_AVAILABLE 2 | |
| 1504 | +#define FKF_CLICKON 64 | |
| 1505 | +#define FKF_FILTERKEYSON 1 | |
| 1506 | +#define FKF_HOTKEYACTIVE 4 | |
| 1507 | +#define FKF_HOTKEYSOUND 16 | |
| 1508 | +#define FKF_CONFIRMHOTKEY 8 | |
| 1509 | +#define FKF_INDICATOR 32 | |
| 1510 | +#define HCF_HIGHCONTRASTON 1 | |
| 1511 | +#define HCF_AVAILABLE 2 | |
| 1512 | +#define HCF_HOTKEYACTIVE 4 | |
| 1513 | +#define HCF_CONFIRMHOTKEY 8 | |
| 1514 | +#define HCF_HOTKEYSOUND 16 | |
| 1515 | +#define HCF_INDICATOR 32 | |
| 1516 | +#define HCF_HOTKEYAVAILABLE 64 | |
| 1517 | +#define MKF_AVAILABLE 2 | |
| 1518 | +#define MKF_CONFIRMHOTKEY 8 | |
| 1519 | +#define MKF_HOTKEYACTIVE 4 | |
| 1520 | +#define MKF_HOTKEYSOUND 16 | |
| 1521 | +#define MKF_INDICATOR 32 | |
| 1522 | +#define MKF_MOUSEKEYSON 1 | |
| 1523 | +#define MKF_MODIFIERS 64 | |
| 1524 | +#define MKF_REPLACENUMBERS 128 | |
| 1525 | +#define SERKF_ACTIVE 8 /* May be obsolete. Not in recent MS docs. */ | |
| 1526 | +#define SERKF_AVAILABLE 2 | |
| 1527 | +#define SERKF_INDICATOR 4 | |
| 1528 | +#define SERKF_SERIALKEYSON 1 | |
| 1529 | +#define SSF_AVAILABLE 2 | |
| 1530 | +#define SSF_SOUNDSENTRYON 1 | |
| 1531 | +#define SSTF_BORDER 2 | |
| 1532 | +#define SSTF_CHARS 1 | |
| 1533 | +#define SSTF_DISPLAY 3 | |
| 1534 | +#define SSTF_NONE 0 | |
| 1535 | +#define SSGF_DISPLAY 3 | |
| 1536 | +#define SSGF_NONE 0 | |
| 1537 | +#define SSWF_CUSTOM 4 | |
| 1538 | +#define SSWF_DISPLAY 3 | |
| 1539 | +#define SSWF_NONE 0 | |
| 1540 | +#define SSWF_TITLE 1 | |
| 1541 | +#define SSWF_WINDOW 2 | |
| 1542 | +#define SKF_AUDIBLEFEEDBACK 64 | |
| 1543 | +#define SKF_AVAILABLE 2 | |
| 1544 | +#define SKF_CONFIRMHOTKEY 8 | |
| 1545 | +#define SKF_HOTKEYACTIVE 4 | |
| 1546 | +#define SKF_HOTKEYSOUND 16 | |
| 1547 | +#define SKF_INDICATOR 32 | |
| 1548 | +#define SKF_STICKYKEYSON 1 | |
| 1549 | +#define SKF_TRISTATE 128 | |
| 1550 | +#define SKF_TWOKEYSOFF 256 | |
| 1551 | +#define TKF_AVAILABLE 2 | |
| 1552 | +#define TKF_CONFIRMHOTKEY 8 | |
| 1553 | +#define TKF_HOTKEYACTIVE 4 | |
| 1554 | +#define TKF_HOTKEYSOUND 16 | |
| 1555 | +#define TKF_TOGGLEKEYSON 1 | |
| 1556 | +#define MDITILE_SKIPDISABLED 2 | |
| 1557 | +#define MDITILE_HORIZONTAL 1 | |
| 1558 | +#define MDITILE_VERTICAL 0 | |
| 1559 | +#define VK_LBUTTON 1 | |
| 1560 | +#define VK_RBUTTON 2 | |
| 1561 | +#define VK_CANCEL 3 | |
| 1562 | +#define VK_MBUTTON 4 | |
| 1563 | +#define VK_BACK 8 | |
| 1564 | +#define VK_TAB 9 | |
| 1565 | +#define VK_CLEAR 12 | |
| 1566 | +#define VK_RETURN 13 | |
| 1567 | +#define VK_KANA 15 | |
| 1568 | +#define VK_SHIFT 16 | |
| 1569 | +#define VK_CONTROL 17 | |
| 1570 | +#define VK_MENU 18 | |
| 1571 | +#define VK_PAUSE 19 | |
| 1572 | +#define VK_CAPITAL 20 | |
| 1573 | +#define VK_ESCAPE 0x1B | |
| 1574 | +#define VK_SPACE 32 | |
| 1575 | +#define VK_PRIOR 33 | |
| 1576 | +#define VK_NEXT 34 | |
| 1577 | +#define VK_END 35 | |
| 1578 | +#define VK_HOME 36 | |
| 1579 | +#define VK_LEFT 37 | |
| 1580 | +#define VK_UP 38 | |
| 1581 | +#define VK_RIGHT 39 | |
| 1582 | +#define VK_DOWN 40 | |
| 1583 | +#define VK_SELECT 41 | |
| 1584 | +#define VK_PRINT 42 | |
| 1585 | +#define VK_EXECUTE 43 | |
| 1586 | +#define VK_SNAPSHOT 44 | |
| 1587 | +#define VK_INSERT 45 | |
| 1588 | +#define VK_DELETE 46 | |
| 1589 | +#define VK_HELP 47 | |
| 1590 | +#define VK_LWIN 0x5B | |
| 1591 | +#define VK_RWIN 0x5C | |
| 1592 | +#define VK_APPS 0x5D | |
| 1593 | +#define VK_NUMPAD0 0x60 | |
| 1594 | +#define VK_NUMPAD1 0x61 | |
| 1595 | +#define VK_NUMPAD2 0x62 | |
| 1596 | +#define VK_NUMPAD3 0x63 | |
| 1597 | +#define VK_NUMPAD4 0x64 | |
| 1598 | +#define VK_NUMPAD5 0x65 | |
| 1599 | +#define VK_NUMPAD6 0x66 | |
| 1600 | +#define VK_NUMPAD7 0x67 | |
| 1601 | +#define VK_NUMPAD8 0x68 | |
| 1602 | +#define VK_NUMPAD9 0x69 | |
| 1603 | +#define VK_MULTIPLY 0x6A | |
| 1604 | +#define VK_ADD 0x6B | |
| 1605 | +#define VK_SEPARATOR 0x6C | |
| 1606 | +#define VK_SUBTRACT 0x6D | |
| 1607 | +#define VK_DECIMAL 0x6E | |
| 1608 | +#define VK_DIVIDE 0x6F | |
| 1609 | +#define VK_F1 0x70 | |
| 1610 | +#define VK_F2 0x71 | |
| 1611 | +#define VK_F3 0x72 | |
| 1612 | +#define VK_F4 0x73 | |
| 1613 | +#define VK_F5 0x74 | |
| 1614 | +#define VK_F6 0x75 | |
| 1615 | +#define VK_F7 0x76 | |
| 1616 | +#define VK_F8 0x77 | |
| 1617 | +#define VK_F9 0x78 | |
| 1618 | +#define VK_F10 0x79 | |
| 1619 | +#define VK_F11 0x7A | |
| 1620 | +#define VK_F12 0x7B | |
| 1621 | +#define VK_F13 0x7C | |
| 1622 | +#define VK_F14 0x7D | |
| 1623 | +#define VK_F15 0x7E | |
| 1624 | +#define VK_F16 0x7F | |
| 1625 | +#define VK_F17 0x80 | |
| 1626 | +#define VK_F18 0x81 | |
| 1627 | +#define VK_F19 0x82 | |
| 1628 | +#define VK_F20 0x83 | |
| 1629 | +#define VK_F21 0x84 | |
| 1630 | +#define VK_F22 0x85 | |
| 1631 | +#define VK_F23 0x86 | |
| 1632 | +#define VK_F24 0x87 | |
| 1633 | +#define VK_NUMLOCK 0x90 | |
| 1634 | +#define VK_SCROLL 0x91 | |
| 1635 | +#define VK_LSHIFT 0xA0 | |
| 1636 | +#define VK_RSHIFT 0xA1 | |
| 1637 | +#define VK_LCONTROL 0xA2 | |
| 1638 | +#define VK_RCONTROL 0xA3 | |
| 1639 | +#define VK_LMENU 0xA4 | |
| 1640 | +#define VK_RMENU 0xA5 | |
| 1641 | +#define VK_PROCESSKEY 0xE5 | |
| 1642 | +#define VK_ATTN 0xF6 | |
| 1643 | +#define VK_CRSEL 0xF7 | |
| 1644 | +#define VK_EXSEL 0xF8 | |
| 1645 | +#define VK_EREOF 0xF9 | |
| 1646 | +#define VK_PLAY 0xFA | |
| 1647 | +#define VK_ZOOM 0xFB | |
| 1648 | +#define VK_NONAME 0xFC | |
| 1649 | +#define VK_PA1 0xFD | |
| 1650 | +#define VK_OEM_CLEAR 0xFE | |
| 1651 | +#define TME_HOVER 1 | |
| 1652 | +#define TME_LEAVE 2 | |
| 1653 | +#define TME_QUERY 0x40000000 | |
| 1654 | +#define TME_CANCEL 0x80000000 | |
| 1655 | +#define HOVER_DEFAULT 0xFFFFFFFF | |
| 1656 | +#define MK_LBUTTON 1 | |
| 1657 | +#define MK_RBUTTON 2 | |
| 1658 | +#define MK_SHIFT 4 | |
| 1659 | +#define MK_CONTROL 8 | |
| 1660 | +#define MK_MBUTTON 16 | |
| 1661 | +#define TPM_CENTERALIGN 4 | |
| 1662 | +#define TPM_LEFTALIGN 0 | |
| 1663 | +#define TPM_RIGHTALIGN 8 | |
| 1664 | +#define TPM_LEFTBUTTON 0 | |
| 1665 | +#define TPM_RIGHTBUTTON 2 | |
| 1666 | +#define TPM_HORIZONTAL 0 | |
| 1667 | +#define TPM_VERTICAL 64 | |
| 1668 | +#define TPM_TOPALIGN 0 | |
| 1669 | +#define TPM_VCENTERALIGN 16 | |
| 1670 | +#define TPM_BOTTOMALIGN 32 | |
| 1671 | +#define TPM_NONOTIFY 128 | |
| 1672 | +#define TPM_RETURNCMD 256 | |
| 1673 | +#define HELP_COMMAND 0x102 | |
| 1674 | +#define HELP_CONTENTS 3 | |
| 1675 | +#define HELP_CONTEXT 1 | |
| 1676 | +#define HELP_CONTEXTPOPUP 8 | |
| 1677 | +#define HELP_FORCEFILE 9 | |
| 1678 | +#define HELP_HELPONHELP 4 | |
| 1679 | +#define HELP_INDEX 3 | |
| 1680 | +#define HELP_KEY 0x101 | |
| 1681 | +#define HELP_MULTIKEY 0x201 | |
| 1682 | +#define HELP_PARTIALKEY 0x105 | |
| 1683 | +#define HELP_QUIT 2 | |
| 1684 | +#define HELP_SETCONTENTS 5 | |
| 1685 | +#define HELP_SETINDEX 5 | |
| 1686 | +#define HELP_CONTEXTMENU 0xa | |
| 1687 | +#define HELP_FINDER 0xb | |
| 1688 | +#define HELP_WM_HELP 0xc | |
| 1689 | +#define HELP_TCARD 0x8000 | |
| 1690 | +#define HELP_TCARD_DATA 16 | |
| 1691 | +#define HELP_TCARD_OTHER_CALLER 0x11 | |
| 1692 | +#define IDH_NO_HELP 28440 | |
| 1693 | +#define IDH_MISSING_CONTEXT 28441 | |
| 1694 | +#define IDH_GENERIC_HELP_BUTTON 28442 | |
| 1695 | +#define IDH_OK 28443 | |
| 1696 | +#define IDH_CANCEL 28444 | |
| 1697 | +#define IDH_HELP 28445 | |
| 1698 | +#define LB_CTLCODE 0 | |
| 1699 | +#define LB_OKAY 0 | |
| 1700 | +#define LB_ERR (-1) | |
| 1701 | +#define LB_ERRSPACE (-2) | |
| 1702 | +#define CB_OKAY 0 | |
| 1703 | +#define CB_ERR (-1) | |
| 1704 | +#define CB_ERRSPACE (-2) | |
| 1705 | +#define HIDE_WINDOW 0 | |
| 1706 | +#define SHOW_OPENWINDOW 1 | |
| 1707 | +#define SHOW_ICONWINDOW 2 | |
| 1708 | +#define SHOW_FULLSCREEN 3 | |
| 1709 | +#define SHOW_OPENNOACTIVATE 4 | |
| 1710 | +#define SW_PARENTCLOSING 1 | |
| 1711 | +#define SW_OTHERZOOM 2 | |
| 1712 | +#define SW_PARENTOPENING 3 | |
| 1713 | +#define SW_OTHERUNZOOM 4 | |
| 1714 | +#define KF_EXTENDED 256 | |
| 1715 | +#define KF_DLGMODE 2048 | |
| 1716 | +#define KF_MENUMODE 4096 | |
| 1717 | +#define KF_ALTDOWN 8192 | |
| 1718 | +#define KF_REPEAT 16384 | |
| 1719 | +#define KF_UP 32768 | |
| 1720 | +#define WSF_VISIBLE 1 | |
| 1721 | +#define PWR_OK 1 | |
| 1722 | +#define PWR_FAIL (-1) | |
| 1723 | +#define PWR_SUSPENDREQUEST 1 | |
| 1724 | +#define PWR_SUSPENDRESUME 2 | |
| 1725 | +#define PWR_CRITICALRESUME 3 | |
| 1726 | +#define NFR_ANSI 1 | |
| 1727 | +#define NFR_UNICODE 2 | |
| 1728 | +#define NF_QUERY 3 | |
| 1729 | +#define NF_REQUERY 4 | |
| 1730 | +#define MENULOOP_WINDOW 0 | |
| 1731 | +#define MENULOOP_POPUP 1 | |
| 1732 | +#define WMSZ_LEFT 1 | |
| 1733 | +#define WMSZ_RIGHT 2 | |
| 1734 | +#define WMSZ_TOP 3 | |
| 1735 | +#define WMSZ_TOPLEFT 4 | |
| 1736 | +#define WMSZ_TOPRIGHT 5 | |
| 1737 | +#define WMSZ_BOTTOM 6 | |
| 1738 | +#define WMSZ_BOTTOMLEFT 7 | |
| 1739 | +#define WMSZ_BOTTOMRIGHT 8 | |
| 1740 | +#define HTERROR (-2) | |
| 1741 | +#define HTTRANSPARENT (-1) | |
| 1742 | +#define HTNOWHERE 0 | |
| 1743 | +#define HTCLIENT 1 | |
| 1744 | +#define HTCAPTION 2 | |
| 1745 | +#define HTSYSMENU 3 | |
| 1746 | +#define HTGROWBOX 4 | |
| 1747 | +#define HTSIZE 4 | |
| 1748 | +#define HTMENU 5 | |
| 1749 | +#define HTHSCROLL 6 | |
| 1750 | +#define HTVSCROLL 7 | |
| 1751 | +#define HTMINBUTTON 8 | |
| 1752 | +#define HTMAXBUTTON 9 | |
| 1753 | +#define HTREDUCE 8 | |
| 1754 | +#define HTZOOM 9 | |
| 1755 | +#define HTLEFT 10 | |
| 1756 | +#define HTSIZEFIRST 10 | |
| 1757 | +#define HTRIGHT 11 | |
| 1758 | +#define HTTOP 12 | |
| 1759 | +#define HTTOPLEFT 13 | |
| 1760 | +#define HTTOPRIGHT 14 | |
| 1761 | +#define HTBOTTOM 15 | |
| 1762 | +#define HTBOTTOMLEFT 16 | |
| 1763 | +#define HTBOTTOMRIGHT 17 | |
| 1764 | +#define HTSIZELAST 17 | |
| 1765 | +#define HTBORDER 18 | |
| 1766 | +#define HTOBJECT 19 | |
| 1767 | +#define HTCLOSE 20 | |
| 1768 | +#define HTHELP 21 | |
| 1769 | +#define MA_ACTIVATE 1 | |
| 1770 | +#define MA_ACTIVATEANDEAT 2 | |
| 1771 | +#define MA_NOACTIVATE 3 | |
| 1772 | +#define MA_NOACTIVATEANDEAT 4 | |
| 1773 | +#define SIZE_RESTORED 0 | |
| 1774 | +#define SIZE_MINIMIZED 1 | |
| 1775 | +#define SIZE_MAXIMIZED 2 | |
| 1776 | +#define SIZE_MAXSHOW 3 | |
| 1777 | +#define SIZE_MAXHIDE 4 | |
| 1778 | +#define SIZENORMAL 0 | |
| 1779 | +#define SIZEICONIC 1 | |
| 1780 | +#define SIZEFULLSCREEN 2 | |
| 1781 | +#define SIZEZOOMSHOW 3 | |
| 1782 | +#define SIZEZOOMHIDE 4 | |
| 1783 | +#define WVR_ALIGNTOP 16 | |
| 1784 | +#define WVR_ALIGNLEFT 32 | |
| 1785 | +#define WVR_ALIGNBOTTOM 64 | |
| 1786 | +#define WVR_ALIGNRIGHT 128 | |
| 1787 | +#define WVR_HREDRAW 256 | |
| 1788 | +#define WVR_VREDRAW 512 | |
| 1789 | +#define WVR_REDRAW (WVR_HREDRAW|WVR_VREDRAW) | |
| 1790 | +#define WVR_VALIDRECTS 1024 | |
| 1791 | +#define PRF_CHECKVISIBLE 1 | |
| 1792 | +#define PRF_NONCLIENT 2 | |
| 1793 | +#define PRF_CLIENT 4 | |
| 1794 | +#define PRF_ERASEBKGND 8 | |
| 1795 | +#define PRF_CHILDREN 16 | |
| 1796 | +#define PRF_OWNED 32 | |
| 1797 | +#define IDANI_OPEN 1 | |
| 1798 | +#define IDANI_CLOSE 2 | |
| 1799 | +#define IDANI_CAPTION 3 | |
| 1800 | +#define WPF_RESTORETOMAXIMIZED 2 | |
| 1801 | +#define WPF_SETMINPOSITION 1 | |
| 1802 | +#define ODT_MENU 1 | |
| 1803 | +#define ODT_LISTBOX 2 | |
| 1804 | +#define ODT_COMBOBOX 3 | |
| 1805 | +#define ODT_BUTTON 4 | |
| 1806 | +#define ODT_STATIC 5 | |
| 1807 | +#define ODA_DRAWENTIRE 1 | |
| 1808 | +#define ODA_SELECT 2 | |
| 1809 | +#define ODA_FOCUS 4 | |
| 1810 | +#define ODS_SELECTED 1 | |
| 1811 | +#define ODS_GRAYED 2 | |
| 1812 | +#define ODS_DISABLED 4 | |
| 1813 | +#define ODS_CHECKED 8 | |
| 1814 | +#define ODS_FOCUS 16 | |
| 1815 | +#define ODS_DEFAULT 32 | |
| 1816 | +#define ODS_COMBOBOXEDIT 4096 | |
| 1817 | +#define IDHOT_SNAPWINDOW (-1) | |
| 1818 | +#define IDHOT_SNAPDESKTOP (-2) | |
| 1819 | +#define DBWF_LPARAMPOINTER 0x8000 | |
| 1820 | +#define DLGWINDOWEXTRA 30 | |
| 1821 | +#define MNC_IGNORE 0 | |
| 1822 | +#define MNC_CLOSE 1 | |
| 1823 | +#define MNC_EXECUTE 2 | |
| 1824 | +#define MNC_SELECT 3 | |
| 1825 | +#define DOF_EXECUTABLE 0x8001 | |
| 1826 | +#define DOF_DOCUMENT 0x8002 | |
| 1827 | +#define DOF_DIRECTORY 0x8003 | |
| 1828 | +#define DOF_MULTIPLE 0x8004 | |
| 1829 | +#define DOF_PROGMAN 1 | |
| 1830 | +#define DOF_SHELLDATA 2 | |
| 1831 | +#define DO_DROPFILE 0x454C4946 | |
| 1832 | +#define DO_PRINTFILE 0x544E5250 | |
| 1833 | +#define SW_SCROLLCHILDREN 1 | |
| 1834 | +#define SW_INVALIDATE 2 | |
| 1835 | +#define SW_ERASE 4 | |
| 1836 | +#define SC_SIZE 0xF000 | |
| 1837 | +#define SC_MOVE 0xF010 | |
| 1838 | +#define SC_MINIMIZE 0xF020 | |
| 1839 | +#define SC_ICON 0xf020 | |
| 1840 | +#define SC_MAXIMIZE 0xF030 | |
| 1841 | +#define SC_ZOOM 0xF030 | |
| 1842 | +#define SC_NEXTWINDOW 0xF040 | |
| 1843 | +#define SC_PREVWINDOW 0xF050 | |
| 1844 | +#define SC_CLOSE 0xF060 | |
| 1845 | +#define SC_VSCROLL 0xF070 | |
| 1846 | +#define SC_HSCROLL 0xF080 | |
| 1847 | +#define SC_MOUSEMENU 0xF090 | |
| 1848 | +#define SC_KEYMENU 0xF100 | |
| 1849 | +#define SC_ARRANGE 0xF110 | |
| 1850 | +#define SC_RESTORE 0xF120 | |
| 1851 | +#define SC_TASKLIST 0xF130 | |
| 1852 | +#define SC_SCREENSAVE 0xF140 | |
| 1853 | +#define SC_HOTKEY 0xF150 | |
| 1854 | +#define SC_DEFAULT 0xF160 | |
| 1855 | +#define SC_MONITORPOWER 0xF170 | |
| 1856 | +#define SC_CONTEXTHELP 0xF180 | |
| 1857 | +#define SC_SEPARATOR 0xF00F | |
| 1858 | +#define EC_LEFTMARGIN 1 | |
| 1859 | +#define EC_RIGHTMARGIN 2 | |
| 1860 | +#define EC_USEFONTINFO 0xffff | |
| 1861 | +#define DC_HASDEFID 0x534B | |
| 1862 | +#define DLGC_WANTARROWS 1 | |
| 1863 | +#define DLGC_WANTTAB 2 | |
| 1864 | +#define DLGC_WANTALLKEYS 4 | |
| 1865 | +#define DLGC_WANTMESSAGE 4 | |
| 1866 | +#define DLGC_HASSETSEL 8 | |
| 1867 | +#define DLGC_DEFPUSHBUTTON 16 | |
| 1868 | +#define DLGC_UNDEFPUSHBUTTON 32 | |
| 1869 | +#define DLGC_RADIOBUTTON 64 | |
| 1870 | +#define DLGC_WANTCHARS 128 | |
| 1871 | +#define DLGC_STATIC 256 | |
| 1872 | +#define DLGC_BUTTON 0x2000 | |
| 1873 | +#define LB_CTLCODE 0 | |
| 1874 | +#define WA_INACTIVE 0 | |
| 1875 | +#define WA_ACTIVE 1 | |
| 1876 | +#define WA_CLICKACTIVE 2 | |
| 1877 | +#define ICON_SMALL 0 | |
| 1878 | +#define ICON_BIG 1 | |
| 1879 | +#define HBMMENU_CALLBACK ((HBITMAP) -1) | |
| 1880 | +#define HBMMENU_SYSTEM ((HBITMAP)1) | |
| 1881 | +#define HBMMENU_MBAR_RESTORE ((HBITMAP)2) | |
| 1882 | +#define HBMMENU_MBAR_MINIMIZE ((HBITMAP)3) | |
| 1883 | +#define HBMMENU_MBAR_CLOSE ((HBITMAP)5) | |
| 1884 | +#define HBMMENU_MBAR_CLOSE_D ((HBITMAP)6) | |
| 1885 | +#define HBMMENU_MBAR_MINIMIZE_D ((HBITMAP)7) | |
| 1886 | +#define HBMMENU_POPUP_CLOSE ((HBITMAP)8) | |
| 1887 | +#define HBMMENU_POPUP_RESTORE ((HBITMAP)9) | |
| 1888 | +#define HBMMENU_POPUP_MAXIMIZE ((HBITMAP)10) | |
| 1889 | +#define HBMMENU_POPUP_MINIMIZE ((HBITMAP)11) | |
| 1890 | +#define MOD_ALT 1 | |
| 1891 | +#define MOD_CONTROL 2 | |
| 1892 | +#define MOD_SHIFT 4 | |
| 1893 | +#define MOD_WIN 8 | |
| 1894 | +#define MOD_IGNORE_ALL_MODIFIER 1024 | |
| 1895 | +#define MOD_ON_KEYUP 2048 | |
| 1896 | +#define MOD_RIGHT 16384 | |
| 1897 | +#define MOD_LEFT 32768 | |
| 1898 | +#define LLKHF_ALTDOWN 0x00000020 | |
| 1899 | + | |
| 1900 | +#ifndef RC_INVOKED | |
| 1901 | +typedef BOOL(CALLBACK *DLGPROC)(HWND,UINT,WPARAM,LPARAM); | |
| 1902 | +typedef VOID(CALLBACK *TIMERPROC)(HWND,UINT,UINT,DWORD); | |
| 1903 | +typedef BOOL(CALLBACK *GRAYSTRINGPROC)(HDC,LPARAM,int); | |
| 1904 | +typedef LRESULT(CALLBACK *HOOKPROC)(int,WPARAM,LPARAM); | |
| 1905 | +typedef BOOL(CALLBACK *PROPENUMPROCA)(HWND,LPCSTR,HANDLE); | |
| 1906 | +typedef BOOL(CALLBACK *PROPENUMPROCW)(HWND,LPCWSTR,HANDLE); | |
| 1907 | +typedef BOOL(CALLBACK *PROPENUMPROCEXA)(HWND,LPSTR,HANDLE,DWORD); | |
| 1908 | +typedef BOOL(CALLBACK *PROPENUMPROCEXW)(HWND,LPWSTR,HANDLE,DWORD); | |
| 1909 | +typedef int(CALLBACK *EDITWORDBREAKPROCA)(LPSTR,int,int,int); | |
| 1910 | +typedef int(CALLBACK *EDITWORDBREAKPROCW)(LPWSTR,int,int,int); | |
| 1911 | +typedef LRESULT(CALLBACK *WNDPROC)(HWND,UINT,WPARAM,LPARAM); | |
| 1912 | +typedef BOOL(CALLBACK *DRAWSTATEPROC)(HDC,LPARAM,WPARAM,int,int); | |
| 1913 | +typedef BOOL(CALLBACK *WNDENUMPROC)(HWND,LPARAM); | |
| 1914 | +typedef BOOL(CALLBACK *ENUMWINDOWSPROC)(HWND,LPARAM); | |
| 1915 | +typedef BOOL(CALLBACK* MONITORENUMPROC)(HMONITOR,HDC,LPRECT,LPARAM); | |
| 1916 | +typedef BOOL(CALLBACK *NAMEENUMPROCA)(LPSTR,LPARAM); | |
| 1917 | +typedef BOOL(CALLBACK *NAMEENUMPROCW)(LPWSTR,LPARAM); | |
| 1918 | +typedef NAMEENUMPROCA DESKTOPENUMPROCA; | |
| 1919 | +typedef NAMEENUMPROCW DESKTOPENUMPROCW; | |
| 1920 | +typedef NAMEENUMPROCA WINSTAENUMPROCA; | |
| 1921 | +typedef NAMEENUMPROCW WINSTAENUMPROCW; | |
| 1922 | +typedef void(CALLBACK *SENDASYNCPROC)(HWND,UINT,DWORD,LRESULT); | |
| 1923 | +DECLARE_HANDLE(HHOOK); | |
| 1924 | +DECLARE_HANDLE(HDWP); | |
| 1925 | +typedef struct tagACCEL { | |
| 1926 | + BYTE fVirt; | |
| 1927 | + WORD key; | |
| 1928 | + WORD cmd; | |
| 1929 | +} ACCEL,*LPACCEL; | |
| 1930 | +typedef struct tagACCESSTIMEOUT { | |
| 1931 | + UINT cbSize; | |
| 1932 | + DWORD dwFlags; | |
| 1933 | + DWORD iTimeOutMSec; | |
| 1934 | +} ACCESSTIMEOUT, *LPACCESSTIMEOUT; | |
| 1935 | +typedef struct tagANIMATIONINFO { | |
| 1936 | + UINT cbSize; | |
| 1937 | + int iMinAnimate; | |
| 1938 | +} ANIMATIONINFO,*LPANIMATIONINFO; | |
| 1939 | +typedef struct tagCREATESTRUCTA { | |
| 1940 | + LPVOID lpCreateParams; | |
| 1941 | + HINSTANCE hInstance; | |
| 1942 | + HMENU hMenu; | |
| 1943 | + HWND hwndParent; | |
| 1944 | + int cy; | |
| 1945 | + int cx; | |
| 1946 | + int y; | |
| 1947 | + int x; | |
| 1948 | + LONG style; | |
| 1949 | + LPCSTR lpszName; | |
| 1950 | + LPCSTR lpszClass; | |
| 1951 | + DWORD dwExStyle; | |
| 1952 | +} CREATESTRUCTA,*LPCREATESTRUCTA; | |
| 1953 | +typedef struct tagCREATESTRUCTW { | |
| 1954 | + LPVOID lpCreateParams; | |
| 1955 | + HINSTANCE hInstance; | |
| 1956 | + HMENU hMenu; | |
| 1957 | + HWND hwndParent; | |
| 1958 | + int cy; | |
| 1959 | + int cx; | |
| 1960 | + int y; | |
| 1961 | + int x; | |
| 1962 | + LONG style; | |
| 1963 | + LPCWSTR lpszName; | |
| 1964 | + LPCWSTR lpszClass; | |
| 1965 | + DWORD dwExStyle; | |
| 1966 | +} CREATESTRUCTW,*LPCREATESTRUCTW; | |
| 1967 | +typedef struct tagCBT_CREATEWNDA { | |
| 1968 | + LPCREATESTRUCTA lpcs; | |
| 1969 | + HWND hwndInsertAfter; | |
| 1970 | +} CBT_CREATEWNDA, *LPCBT_CREATEWNDA; | |
| 1971 | +typedef struct tagCBT_CREATEWNDW { | |
| 1972 | + LPCREATESTRUCTW lpcs; | |
| 1973 | + HWND hwndInsertAfter; | |
| 1974 | +} CBT_CREATEWNDW, *LPCBT_CREATEWNDW; | |
| 1975 | +typedef struct tagCBTACTIVATESTRUCT { | |
| 1976 | + BOOL fMouse; | |
| 1977 | + HWND hWndActive; | |
| 1978 | +} CBTACTIVATESTRUCT,*LPCBTACTIVATESTRUCT; | |
| 1979 | +typedef struct tagCLIENTCREATESTRUCT { | |
| 1980 | + HANDLE hWindowMenu; | |
| 1981 | + UINT idFirstChild; | |
| 1982 | +} CLIENTCREATESTRUCT,*LPCLIENTCREATESTRUCT; | |
| 1983 | +typedef struct tagCOMPAREITEMSTRUCT { | |
| 1984 | + UINT CtlType; | |
| 1985 | + UINT CtlID; | |
| 1986 | + HWND hwndItem; | |
| 1987 | + UINT itemID1; | |
| 1988 | + DWORD itemData1; | |
| 1989 | + UINT itemID2; | |
| 1990 | + DWORD itemData2; | |
| 1991 | + DWORD dwLocaleId; | |
| 1992 | +} COMPAREITEMSTRUCT,*LPCOMPAREITEMSTRUCT; | |
| 1993 | +typedef struct tagCOPYDATASTRUCT { | |
| 1994 | + DWORD dwData; | |
| 1995 | + DWORD cbData; | |
| 1996 | + PVOID lpData; | |
| 1997 | +} COPYDATASTRUCT,*PCOPYDATASTRUCT; | |
| 1998 | +typedef struct tagCURSORSHAPE { | |
| 1999 | + int xHotSpot; | |
| 2000 | + int yHotSpot; | |
| 2001 | + int cx; | |
| 2002 | + int cy; | |
| 2003 | + int cbWidth; | |
| 2004 | + BYTE Planes; | |
| 2005 | + BYTE BitsPixel; | |
| 2006 | +} CURSORSHAPE,*LPCURSORSHAPE; | |
| 2007 | +typedef struct tagCWPRETSTRUCT { | |
| 2008 | + LRESULT lResult; | |
| 2009 | + LPARAM lParam; | |
| 2010 | + WPARAM wParam; | |
| 2011 | + DWORD message; | |
| 2012 | + HWND hwnd; | |
| 2013 | +} CWPRETSTRUCT; | |
| 2014 | +typedef struct tagCWPSTRUCT { | |
| 2015 | + LPARAM lParam; | |
| 2016 | + WPARAM wParam; | |
| 2017 | + UINT message; | |
| 2018 | + HWND hwnd; | |
| 2019 | +} CWPSTRUCT,*PCWPSTRUCT; | |
| 2020 | +typedef struct tagDEBUGHOOKINFO { | |
| 2021 | + DWORD idThread; | |
| 2022 | + DWORD idThreadInstaller; | |
| 2023 | + LPARAM lParam; | |
| 2024 | + WPARAM wParam; | |
| 2025 | + int code; | |
| 2026 | +} DEBUGHOOKINFO,*PDEBUGHOOKINFO,*LPDEBUGHOOKINFO; | |
| 2027 | +typedef struct tagDELETEITEMSTRUCT { | |
| 2028 | + UINT CtlType; | |
| 2029 | + UINT CtlID; | |
| 2030 | + UINT itemID; | |
| 2031 | + HWND hwndItem; | |
| 2032 | + UINT itemData; | |
| 2033 | +} DELETEITEMSTRUCT,*PDELETEITEMSTRUCT,*LPDELETEITEMSTRUCT; | |
| 2034 | +#pragma pack(push,2) | |
| 2035 | +typedef struct { | |
| 2036 | + DWORD style; | |
| 2037 | + DWORD dwExtendedStyle; | |
| 2038 | + short x; | |
| 2039 | + short y; | |
| 2040 | + short cx; | |
| 2041 | + short cy; | |
| 2042 | + WORD id; | |
| 2043 | +} DLGITEMTEMPLATE,*LPDLGITEMTEMPLATE; | |
| 2044 | +typedef struct { | |
| 2045 | + DWORD style; | |
| 2046 | + DWORD dwExtendedStyle; | |
| 2047 | + WORD cdit; | |
| 2048 | + short x; | |
| 2049 | + short y; | |
| 2050 | + short cx; | |
| 2051 | + short cy; | |
| 2052 | +} DLGTEMPLATE,*LPDLGTEMPLATE; | |
| 2053 | +typedef const DLGTEMPLATE *LPCDLGTEMPLATE; | |
| 2054 | +#pragma pack(pop) | |
| 2055 | +typedef struct tagDRAWITEMSTRUCT { | |
| 2056 | + UINT CtlType; | |
| 2057 | + UINT CtlID; | |
| 2058 | + UINT itemID; | |
| 2059 | + UINT itemAction; | |
| 2060 | + UINT itemState; | |
| 2061 | + HWND hwndItem; | |
| 2062 | + HDC hDC; | |
| 2063 | + RECT rcItem; | |
| 2064 | + DWORD itemData; | |
| 2065 | +} DRAWITEMSTRUCT,*LPDRAWITEMSTRUCT,*PDRAWITEMSTRUCT; | |
| 2066 | +typedef struct { | |
| 2067 | + UINT cbSize; | |
| 2068 | + int iTabLength; | |
| 2069 | + int iLeftMargin; | |
| 2070 | + int iRightMargin; | |
| 2071 | + UINT uiLengthDrawn; | |
| 2072 | +} DRAWTEXTPARAMS,*LPDRAWTEXTPARAMS; | |
| 2073 | +typedef struct tagPAINTSTRUCT { | |
| 2074 | + HDC hdc; | |
| 2075 | + BOOL fErase; | |
| 2076 | + RECT rcPaint; | |
| 2077 | + BOOL fRestore; | |
| 2078 | + BOOL fIncUpdate; | |
| 2079 | + BYTE rgbReserved[32]; | |
| 2080 | +} PAINTSTRUCT,*LPPAINTSTRUCT; | |
| 2081 | +typedef struct tagMSG { | |
| 2082 | + HWND hwnd; | |
| 2083 | + UINT message; | |
| 2084 | + WPARAM wParam; | |
| 2085 | + LPARAM lParam; | |
| 2086 | + DWORD time; | |
| 2087 | + POINT pt; | |
| 2088 | +} MSG,*LPMSG,*PMSG; | |
| 2089 | +typedef struct _ICONINFO { | |
| 2090 | + BOOL fIcon; | |
| 2091 | + DWORD xHotspot; | |
| 2092 | + DWORD yHotspot; | |
| 2093 | + HBITMAP hbmMask; | |
| 2094 | + HBITMAP hbmColor; | |
| 2095 | +} ICONINFO,*PICONINFO; | |
| 2096 | +typedef struct tagNMHDR { | |
| 2097 | + HWND hwndFrom; | |
| 2098 | + UINT idFrom; | |
| 2099 | + UINT code; | |
| 2100 | +} NMHDR,*LPNMHDR; | |
| 2101 | +typedef struct _WNDCLASSA { | |
| 2102 | + UINT style; | |
| 2103 | + WNDPROC lpfnWndProc; | |
| 2104 | + int cbClsExtra; | |
| 2105 | + int cbWndExtra; | |
| 2106 | + HANDLE hInstance; | |
| 2107 | + HICON hIcon; | |
| 2108 | + HCURSOR hCursor; | |
| 2109 | + HBRUSH hbrBackground; | |
| 2110 | + LPCSTR lpszMenuName; | |
| 2111 | + LPCSTR lpszClassName; | |
| 2112 | +} WNDCLASSA,*LPWNDCLASSA,*PWNDCLASSA; | |
| 2113 | +typedef struct _WNDCLASSW { | |
| 2114 | + UINT style; | |
| 2115 | + WNDPROC lpfnWndProc; | |
| 2116 | + int cbClsExtra; | |
| 2117 | + int cbWndExtra; | |
| 2118 | + HANDLE hInstance; | |
| 2119 | + HICON hIcon; | |
| 2120 | + HCURSOR hCursor; | |
| 2121 | + HBRUSH hbrBackground; | |
| 2122 | + LPCWSTR lpszMenuName; | |
| 2123 | + LPCWSTR lpszClassName; | |
| 2124 | +} WNDCLASSW,*LPWNDCLASSW,*PWNDCLASSW; | |
| 2125 | +typedef struct _WNDCLASSEXA { | |
| 2126 | + UINT cbSize; | |
| 2127 | + UINT style; | |
| 2128 | + WNDPROC lpfnWndProc; | |
| 2129 | + int cbClsExtra; | |
| 2130 | + int cbWndExtra; | |
| 2131 | + HANDLE hInstance; | |
| 2132 | + HICON hIcon; | |
| 2133 | + HCURSOR hCursor; | |
| 2134 | + HBRUSH hbrBackground; | |
| 2135 | + LPCSTR lpszMenuName; | |
| 2136 | + LPCSTR lpszClassName; | |
| 2137 | + HICON hIconSm; | |
| 2138 | +} WNDCLASSEXA,*LPWNDCLASSEXA,*PWNDCLASSEXA; | |
| 2139 | +typedef struct _WNDCLASSEXW { | |
| 2140 | + UINT cbSize; | |
| 2141 | + UINT style; | |
| 2142 | + WNDPROC lpfnWndProc; | |
| 2143 | + int cbClsExtra; | |
| 2144 | + int cbWndExtra; | |
| 2145 | + HANDLE hInstance; | |
| 2146 | + HICON hIcon; | |
| 2147 | + HCURSOR hCursor; | |
| 2148 | + HBRUSH hbrBackground; | |
| 2149 | + LPCWSTR lpszMenuName; | |
| 2150 | + LPCWSTR lpszClassName; | |
| 2151 | + HICON hIconSm; | |
| 2152 | +} WNDCLASSEXW,*LPWNDCLASSEXW,*PWNDCLASSEXW; | |
| 2153 | +typedef struct tagMENUITEMINFOA { | |
| 2154 | + UINT cbSize; | |
| 2155 | + UINT fMask; | |
| 2156 | + UINT fType; | |
| 2157 | + UINT fState; | |
| 2158 | + UINT wID; | |
| 2159 | + HMENU hSubMenu; | |
| 2160 | + HBITMAP hbmpChecked; | |
| 2161 | + HBITMAP hbmpUnchecked; | |
| 2162 | + DWORD dwItemData; | |
| 2163 | + LPSTR dwTypeData; | |
| 2164 | + UINT cch; | |
| 2165 | +#if (_WIN32_WINNT >= 0x0500) | |
| 2166 | + HBITMAP hbmpItem; | |
| 2167 | +#endif | |
| 2168 | +} MENUITEMINFOA,*LPMENUITEMINFOA; | |
| 2169 | +typedef const MENUITEMINFOA *LPCMENUITEMINFOA; | |
| 2170 | +typedef struct tagMENUITEMINFOW { | |
| 2171 | + UINT cbSize; | |
| 2172 | + UINT fMask; | |
| 2173 | + UINT fType; | |
| 2174 | + UINT fState; | |
| 2175 | + UINT wID; | |
| 2176 | + HMENU hSubMenu; | |
| 2177 | + HBITMAP hbmpChecked; | |
| 2178 | + HBITMAP hbmpUnchecked; | |
| 2179 | + DWORD dwItemData; | |
| 2180 | + LPWSTR dwTypeData; | |
| 2181 | + UINT cch; | |
| 2182 | +#if (_WIN32_WINNT >= 0x0500) | |
| 2183 | + HBITMAP hbmpItem; | |
| 2184 | +#endif | |
| 2185 | +} MENUITEMINFOW,*LPMENUITEMINFOW; | |
| 2186 | +typedef const MENUITEMINFOW *LPCMENUITEMINFOW; | |
| 2187 | +typedef struct tagSCROLLINFO { | |
| 2188 | + UINT cbSize; | |
| 2189 | + UINT fMask; | |
| 2190 | + int nMin; | |
| 2191 | + int nMax; | |
| 2192 | + UINT nPage; | |
| 2193 | + int nPos; | |
| 2194 | + int nTrackPos; | |
| 2195 | +} SCROLLINFO,*LPSCROLLINFO; | |
| 2196 | +typedef const SCROLLINFO *LPCSCROLLINFO; | |
| 2197 | +typedef struct _WINDOWPLACEMENT { | |
| 2198 | + UINT length; | |
| 2199 | + UINT flags; | |
| 2200 | + UINT showCmd; | |
| 2201 | + POINT ptMinPosition; | |
| 2202 | + POINT ptMaxPosition; | |
| 2203 | + RECT rcNormalPosition; | |
| 2204 | +} WINDOWPLACEMENT,*LPWINDOWPLACEMENT,*PWINDOWPLACEMENT; | |
| 2205 | +typedef struct { | |
| 2206 | + WORD versionNumber; | |
| 2207 | + WORD offset; | |
| 2208 | +} MENUITEMTEMPLATEHEADER; | |
| 2209 | +typedef struct { | |
| 2210 | + WORD mtOption; | |
| 2211 | + WORD mtID; | |
| 2212 | + WCHAR mtString[1]; | |
| 2213 | +} MENUITEMTEMPLATE; | |
| 2214 | +typedef void MENUTEMPLATE,MENUTEMPLATEA,MENUTEMPLATEW,*LPMENUTEMPLATEA,*LPMENUTEMPLATEW,*LPMENUTEMPLATE; | |
| 2215 | +typedef struct tagHELPINFO { | |
| 2216 | + UINT cbSize; | |
| 2217 | + int iContextType; | |
| 2218 | + int iCtrlId; | |
| 2219 | + HANDLE hItemHandle; | |
| 2220 | + DWORD dwContextId; | |
| 2221 | + POINT MousePos; | |
| 2222 | +} HELPINFO,*LPHELPINFO; | |
| 2223 | +typedef void(CALLBACK *MSGBOXCALLBACK)(LPHELPINFO); | |
| 2224 | +typedef struct { | |
| 2225 | + UINT cbSize; | |
| 2226 | + HWND hwndOwner; | |
| 2227 | + HINSTANCE hInstance; | |
| 2228 | + LPCSTR lpszText; | |
| 2229 | + LPCSTR lpszCaption; | |
| 2230 | + DWORD dwStyle; | |
| 2231 | + LPCSTR lpszIcon; | |
| 2232 | + DWORD dwContextHelpId; | |
| 2233 | + MSGBOXCALLBACK lpfnMsgBoxCallback; | |
| 2234 | + DWORD dwLanguageId; | |
| 2235 | +} MSGBOXPARAMSA,*PMSGBOXPARAMSA,*LPMSGBOXPARAMSA; | |
| 2236 | +typedef struct { | |
| 2237 | + UINT cbSize; | |
| 2238 | + HWND hwndOwner; | |
| 2239 | + HINSTANCE hInstance; | |
| 2240 | + LPCWSTR lpszText; | |
| 2241 | + LPCWSTR lpszCaption; | |
| 2242 | + DWORD dwStyle; | |
| 2243 | + LPCWSTR lpszIcon; | |
| 2244 | + DWORD dwContextHelpId; | |
| 2245 | + MSGBOXCALLBACK lpfnMsgBoxCallback; | |
| 2246 | + DWORD dwLanguageId; | |
| 2247 | +} MSGBOXPARAMSW,*PMSGBOXPARAMSW,*LPMSGBOXPARAMSW; | |
| 2248 | +typedef struct tagUSEROBJECTFLAGS { | |
| 2249 | + BOOL fInherit; | |
| 2250 | + BOOL fReserved; | |
| 2251 | + DWORD dwFlags; | |
| 2252 | +} USEROBJECTFLAGS; | |
| 2253 | +typedef struct tagFILTERKEYS { | |
| 2254 | + UINT cbSize; | |
| 2255 | + DWORD dwFlags; | |
| 2256 | + DWORD iWaitMSec; | |
| 2257 | + DWORD iDelayMSec; | |
| 2258 | + DWORD iRepeatMSec; | |
| 2259 | + DWORD iBounceMSec; | |
| 2260 | +} FILTERKEYS; | |
| 2261 | +typedef struct tagHIGHCONTRASTA { | |
| 2262 | + UINT cbSize; | |
| 2263 | + DWORD dwFlags; | |
| 2264 | + LPSTR lpszDefaultScheme; | |
| 2265 | +} HIGHCONTRASTA,*LPHIGHCONTRASTA; | |
| 2266 | +typedef struct tagHIGHCONTRASTW { | |
| 2267 | + UINT cbSize; | |
| 2268 | + DWORD dwFlags; | |
| 2269 | + LPWSTR lpszDefaultScheme; | |
| 2270 | +} HIGHCONTRASTW,*LPHIGHCONTRASTW; | |
| 2271 | +typedef struct tagICONMETRICSA { | |
| 2272 | + UINT cbSize; | |
| 2273 | + int iHorzSpacing; | |
| 2274 | + int iVertSpacing; | |
| 2275 | + int iTitleWrap; | |
| 2276 | + LOGFONTA lfFont; | |
| 2277 | +} ICONMETRICSA,*LPICONMETRICSA; | |
| 2278 | +typedef struct tagICONMETRICSW { | |
| 2279 | + UINT cbSize; | |
| 2280 | + int iHorzSpacing; | |
| 2281 | + int iVertSpacing; | |
| 2282 | + int iTitleWrap; | |
| 2283 | + LOGFONTW lfFont; | |
| 2284 | +} ICONMETRICSW,*LPICONMETRICSW; | |
| 2285 | +typedef struct tagMINIMIZEDMETRICS { | |
| 2286 | + UINT cbSize; | |
| 2287 | + int iWidth; | |
| 2288 | + int iHorzGap; | |
| 2289 | + int iVertGap; | |
| 2290 | + int iArrange; | |
| 2291 | +} MINIMIZEDMETRICS,*LPMINIMIZEDMETRICS; | |
| 2292 | +typedef struct tagMOUSEKEYS{ | |
| 2293 | + UINT cbSize; | |
| 2294 | + DWORD dwFlags; | |
| 2295 | + DWORD iMaxSpeed; | |
| 2296 | + DWORD iTimeToMaxSpeed; | |
| 2297 | + DWORD iCtrlSpeed; | |
| 2298 | + DWORD dwReserved1; | |
| 2299 | + DWORD dwReserved2; | |
| 2300 | +} MOUSEKEYS, *LPMOUSEKEYS; | |
| 2301 | +typedef struct tagNONCLIENTMETRICSA { | |
| 2302 | + UINT cbSize; | |
| 2303 | + int iBorderWidth; | |
| 2304 | + int iScrollWidth; | |
| 2305 | + int iScrollHeight; | |
| 2306 | + int iCaptionWidth; | |
| 2307 | + int iCaptionHeight; | |
| 2308 | + LOGFONTA lfCaptionFont; | |
| 2309 | + int iSmCaptionWidth; | |
| 2310 | + int iSmCaptionHeight; | |
| 2311 | + LOGFONTA lfSmCaptionFont; | |
| 2312 | + int iMenuWidth; | |
| 2313 | + int iMenuHeight; | |
| 2314 | + LOGFONTA lfMenuFont; | |
| 2315 | + LOGFONTA lfStatusFont; | |
| 2316 | + LOGFONTA lfMessageFont; | |
| 2317 | +} NONCLIENTMETRICSA,*LPNONCLIENTMETRICSA; | |
| 2318 | +typedef struct tagNONCLIENTMETRICSW { | |
| 2319 | + UINT cbSize; | |
| 2320 | + int iBorderWidth; | |
| 2321 | + int iScrollWidth; | |
| 2322 | + int iScrollHeight; | |
| 2323 | + int iCaptionWidth; | |
| 2324 | + int iCaptionHeight; | |
| 2325 | + LOGFONTW lfCaptionFont; | |
| 2326 | + int iSmCaptionWidth; | |
| 2327 | + int iSmCaptionHeight; | |
| 2328 | + LOGFONTW lfSmCaptionFont; | |
| 2329 | + int iMenuWidth; | |
| 2330 | + int iMenuHeight; | |
| 2331 | + LOGFONTW lfMenuFont; | |
| 2332 | + LOGFONTW lfStatusFont; | |
| 2333 | + LOGFONTW lfMessageFont; | |
| 2334 | +} NONCLIENTMETRICSW,*LPNONCLIENTMETRICSW; | |
| 2335 | +typedef struct tagSERIALKEYSA { | |
| 2336 | + UINT cbSize; | |
| 2337 | + DWORD dwFlags; | |
| 2338 | + LPSTR lpszActivePort; | |
| 2339 | + LPSTR lpszPort; | |
| 2340 | + UINT iBaudRate; | |
| 2341 | + UINT iPortState; | |
| 2342 | + UINT iActive; | |
| 2343 | +} SERIALKEYSA,*LPSERIALKEYSA; | |
| 2344 | +typedef struct tagSERIALKEYSW { | |
| 2345 | + UINT cbSize; | |
| 2346 | + DWORD dwFlags; | |
| 2347 | + LPWSTR lpszActivePort; | |
| 2348 | + LPWSTR lpszPort; | |
| 2349 | + UINT iBaudRate; | |
| 2350 | + UINT iPortState; | |
| 2351 | + UINT iActive; | |
| 2352 | +} SERIALKEYSW,*LPSERIALKEYSW; | |
| 2353 | +typedef struct tagSOUNDSENTRYA { | |
| 2354 | + UINT cbSize; | |
| 2355 | + DWORD dwFlags; | |
| 2356 | + DWORD iFSTextEffect; | |
| 2357 | + DWORD iFSTextEffectMSec; | |
| 2358 | + DWORD iFSTextEffectColorBits; | |
| 2359 | + DWORD iFSGrafEffect; | |
| 2360 | + DWORD iFSGrafEffectMSec; | |
| 2361 | + DWORD iFSGrafEffectColor; | |
| 2362 | + DWORD iWindowsEffect; | |
| 2363 | + DWORD iWindowsEffectMSec; | |
| 2364 | + LPSTR lpszWindowsEffectDLL; | |
| 2365 | + DWORD iWindowsEffectOrdinal; | |
| 2366 | +} SOUNDSENTRYA,*LPSOUNDSENTRYA; | |
| 2367 | +typedef struct tagSOUNDSENTRYW { | |
| 2368 | + UINT cbSize; | |
| 2369 | + DWORD dwFlags; | |
| 2370 | + DWORD iFSTextEffect; | |
| 2371 | + DWORD iFSTextEffectMSec; | |
| 2372 | + DWORD iFSTextEffectColorBits; | |
| 2373 | + DWORD iFSGrafEffect; | |
| 2374 | + DWORD iFSGrafEffectMSec; | |
| 2375 | + DWORD iFSGrafEffectColor; | |
| 2376 | + DWORD iWindowsEffect; | |
| 2377 | + DWORD iWindowsEffectMSec; | |
| 2378 | + LPWSTR lpszWindowsEffectDLL; | |
| 2379 | + DWORD iWindowsEffectOrdinal; | |
| 2380 | +} SOUNDSENTRYW,*LPSOUNDSENTRYW; | |
| 2381 | +typedef struct tagSTICKYKEYS { | |
| 2382 | + DWORD cbSize; | |
| 2383 | + DWORD dwFlags; | |
| 2384 | +} STICKYKEYS,*LPSTICKYKEYS; | |
| 2385 | +typedef struct tagTOGGLEKEYS { | |
| 2386 | + DWORD cbSize; | |
| 2387 | + DWORD dwFlags; | |
| 2388 | +} TOGGLEKEYS; | |
| 2389 | +typedef struct tagTRACKMOUSEEVENT { | |
| 2390 | + DWORD cbSize; | |
| 2391 | + DWORD dwFlags; | |
| 2392 | + HWND hwndTrack; | |
| 2393 | + DWORD dwHoverTime; | |
| 2394 | +} TRACKMOUSEEVENT,*LPTRACKMOUSEEVENT; | |
| 2395 | +typedef struct tagTPMPARAMS { | |
| 2396 | + UINT cbSize; | |
| 2397 | + RECT rcExclude; | |
| 2398 | +} TPMPARAMS,*LPTPMPARAMS; | |
| 2399 | +typedef struct tagEVENTMSG { | |
| 2400 | + UINT message; | |
| 2401 | + UINT paramL; | |
| 2402 | + UINT paramH; | |
| 2403 | + DWORD time; | |
| 2404 | + HWND hwnd; | |
| 2405 | +} EVENTMSG,*PEVENTMSGMSG,*LPEVENTMSGMSG, *PEVENTMSG, *LPEVENTMSG; | |
| 2406 | +typedef struct _WINDOWPOS { | |
| 2407 | + HWND hwnd; | |
| 2408 | + HWND hwndInsertAfter; | |
| 2409 | + int x; | |
| 2410 | + int y; | |
| 2411 | + int cx; | |
| 2412 | + int cy; | |
| 2413 | + UINT flags; | |
| 2414 | +} WINDOWPOS,*PWINDOWPOS,*LPWINDOWPOS; | |
| 2415 | +typedef struct tagMDICREATESTRUCTA { | |
| 2416 | + LPCSTR szClass; | |
| 2417 | + LPCSTR szTitle; | |
| 2418 | + HANDLE hOwner; | |
| 2419 | + int x; | |
1053 more lines aren’t shown here.
This diff is large: its 134 lines aren’t shown here.
This diff is large: its 30 lines aren’t shown here.
This diff is large: its 36 lines aren’t shown here.
This diff is large: its 14 lines aren’t shown here.
This diff is large: its 10 lines aren’t shown here.
This diff is large: its 338 lines aren’t shown here.
This diff is large: its 764 lines aren’t shown here.
This diff is large: its 783 lines aren’t shown here.
This diff is large: its 655 lines aren’t shown here.
This diff is large: its 50 lines aren’t shown here.
This diff is large: its 103 lines aren’t shown here.