Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

55 lines
4.3 KiB

  1. #include <stdio.h>
  2. typedef struct _message {
  3. unsigned int id;
  4. char *str;
  5. } MESSAGE;
  6. MESSAGE __MSGTAB[] = {
  7. {2600, "\x45\x52\x5f\x4d\x69\x6e"}, // "ER_Min"
  8. {2601, "\x25\x73\x20\x6d\x75\x6c\x74\x69\x70\x6c\x79\x20\x64\x65\x66\x69\x6e\x65\x64"}, // "%s multiply defined"
  9. {2602, "\x75\x6e\x65\x78\x70\x65\x63\x74\x65\x64\x20\x65\x6e\x64\x20\x6f\x66\x20\x6e\x61\x6d\x65\x20\x74\x61\x62\x6c\x65\x20\x69\x6e\x20\x44\x4c\x4c"}, // "unexpected end of name table in DLL"
  10. {2603, "\x25\x73\x20\x3a\x20\x69\x6e\x76\x61\x6c\x69\x64\x20\x2e\x44\x4c\x4c\x20\x66\x69\x6c\x65"}, // "%s : invalid .DLL file"
  11. {2699, "\x45\x52\x5f\x4d\x61\x78"}, // "ER_Max"
  12. {1599, "\x45\x52\x5f\x4d\x69\x6e\x46\x61\x74\x61\x6c"}, // "ER_MinFatal"
  13. {1600, "\x65\x72\x72\x6f\x72\x20\x77\x72\x69\x74\x69\x6e\x67\x20\x74\x6f\x20\x6f\x75\x74\x70\x75\x74\x20\x66\x69\x6c\x65\x20\x2d\x20\x25\x73"}, // "error writing to output file - %s"
  14. {1601, "\x6f\x75\x74\x20\x6f\x66\x20\x6d\x65\x6d\x6f\x72\x79\x2c\x20\x25\x73\x20\x68\x65\x61\x70\x20\x65\x78\x68\x61\x75\x73\x74\x65\x64"}, // "out of memory, %s heap exhausted"
  15. {1602, "\x69\x6e\x20\x6d\x6f\x64\x75\x6c\x65\x2d\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x20\x66\x69\x6c\x65"}, // "in module-definition file"
  16. {1603, "\x25\x73\x20\x3a\x20\x63\x61\x6e\x6e\x6f\x74\x20\x63\x72\x65\x61\x74\x65\x20\x66\x69\x6c\x65\x20\x2d\x20\x25\x73"}, // "%s : cannot create file - %s"
  17. {1604, "\x25\x73\x20\x3a\x20\x63\x61\x6e\x6e\x6f\x74\x20\x6f\x70\x65\x6e\x20\x66\x69\x6c\x65\x20\x2d\x20\x25\x73"}, // "%s : cannot open file - %s"
  18. {1605, "\x74\x6f\x6f\x20\x6d\x61\x6e\x79\x20\x6e\x65\x73\x74\x65\x64\x20\x69\x6e\x63\x6c\x75\x64\x65\x20\x66\x69\x6c\x65\x73\x20\x69\x6e\x20\x6d\x6f\x64\x75\x6c\x65\x2d\x64\x65\x66\x69\x6e\x69\x74\x69\x6f\x6e\x20\x66\x69\x6c\x65"}, // "too many nested include files in module-definition file"
  19. {1606, "\x6d\x69\x73\x73\x69\x6e\x67\x20\x6f\x72\x20\x69\x6e\x76\x61\x6c\x69\x64\x20\x69\x6e\x63\x6c\x75\x64\x65\x20\x66\x69\x6c\x65\x20\x6e\x61\x6d\x65"}, // "missing or invalid include file name"
  20. {1607, "\x25\x73\x20\x3a\x20\x69\x6e\x76\x61\x6c\x69\x64\x20\x65\x78\x74\x65\x6e\x73\x69\x6f\x6e\x20\x66\x6f\x72\x20\x74\x61\x72\x67\x65\x74\x20\x6c\x69\x62\x72\x61\x72\x79"}, // "%s : invalid extension for target library"
  21. {1608, "\x6e\x6f\x20\x2e\x44\x4c\x4c\x20\x6f\x72\x20\x2e\x44\x45\x46\x20\x66\x69\x6c\x65\x20\x73\x70\x65\x63\x69\x66\x69\x65\x64"}, // "no .DLL or .DEF file specified"
  22. {1699, "\x45\x52\x5f\x4d\x61\x78\x46\x61\x74\x61\x6c"}, // "ER_MaxFatal"
  23. {4599, "\x45\x52\x5f\x57\x69\x6e\x57\x61\x72\x6e"}, // "ER_WinWarn"
  24. {4600, "\x6c\x69\x6e\x65\x20\x25\x64\x20\x74\x6f\x6f\x20\x6c\x6f\x6e\x67\x3b\x20\x74\x72\x75\x6e\x63\x61\x74\x65\x64\x20\x74\x6f\x20\x25\x64\x20\x63\x68\x61\x72\x61\x63\x74\x65\x72\x73"}, // "line %d too long; truncated to %d characters"
  25. {4601, "\x75\x6e\x72\x65\x63\x6f\x67\x6e\x69\x7a\x65\x64\x20\x6f\x70\x74\x69\x6f\x6e\x20\x27\x25\x73\x27\x3b\x20\x6f\x70\x74\x69\x6f\x6e\x20\x69\x67\x6e\x6f\x72\x65\x64"}, // "unrecognized option '%s'; option ignored"
  26. {4699, "\x45\x52\x5f\x4d\x61\x78\x57\x61\x72\x6e"}, // "ER_MaxWarn"
  27. {999, "\x4d\x5f\x4d\x69\x6e\x55\x73\x61\x67\x65"}, // "M_MinUsage"
  28. {1000, "\x55\x73\x61\x67\x65\x3a\x20\x49\x4d\x50\x4c\x49\x42\x20\x5b\x6f\x70\x74\x69\x6f\x6e\x73\x5d\x20\x3c\x6f\x75\x74\x70\x75\x74\x20\x6c\x69\x62\x72\x61\x72\x79\x3e\x20\x3c\x2e\x44\x45\x46\x2f\x2e\x44\x4c\x4c\x20\x66\x69\x6c\x65\x20\x6c\x69\x73\x74\x3e"}, // "Usage: IMPLIB [options] <output library> <.DEF/.DLL file list>"
  29. {1001, "\x4f\x70\x74\x69\x6f\x6e\x73\x3a\x20\x2f\x3f"}, // "Options: /?"
  30. {1002, "\x2f\x68\x65\x6c\x70"}, // "/help"
  31. {1004, "\x2f\x6e\x6f\x69\x67\x6e\x6f\x72\x65\x63\x61\x73\x65"}, // "/noignorecase"
  32. {1005, "\x2f\x6e\x6f\x6c\x6f\x67\x6f"}, // "/nologo"
  33. {1006, "\x2f\x6e\x74\x64\x6c\x6c"}, // "/ntdll"
  34. {1007, "\x65\x72\x72\x6f\x72"}, // "error"
  35. {1008, "\x66\x61\x74\x61\x6c"}, // "fatal"
  36. {1009, "\x52\x65\x61\x64\x69\x6e\x67\x20\x49\x6e\x70\x75\x74\x20\x46\x69\x6c\x65"}, // "Reading Input File"
  37. {1010, "\x43\x72\x65\x61\x74\x69\x6e\x67\x20\x4f\x75\x74\x70\x75\x74\x20\x4c\x69\x62\x72\x61\x72\x79"}, // "Creating Output Library"
  38. {1011, "\x2f\x6e\x6f\x77\x65\x70"}, // "/nowep"
  39. {1099, "\x4d\x5f\x4d\x61\x78\x55\x73\x61\x67\x65"}, // "M_MaxUsage"
  40. {0, NULL}
  41. };
  42. char * __NMSG_TEXT(
  43. unsigned msgId
  44. ) {
  45. MESSAGE *pMsg = __MSGTAB;
  46. for (;pMsg->id; pMsg++) {
  47. if (pMsg->id == msgId)
  48. break;
  49. }
  50. return pMsg->str;
  51. }