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.

80 lines
1.7 KiB

  1. /**
  2. ** Header for the New version of RC.EXE. This contains the structures
  3. ** for new format of BITMAP files.
  4. **/
  5. /* The width of the name field in the Data for the group resources */
  6. #ifndef RC_INVOKED // RC can't handle #pragmas
  7. #pragma pack(2)
  8. typedef struct tagBITMAPHEADER
  9. {
  10. DWORD Size;
  11. WORD Width;
  12. WORD Height;
  13. WORD Planes;
  14. WORD BitCount;
  15. } BITMAPHEADER;
  16. // WHY WASN'T THIS DEFINED TO BE SAME AS RESOURCE FORMAT?
  17. // Image File header
  18. typedef struct tagIMAGEFILEHEADER
  19. {
  20. BYTE cx;
  21. BYTE cy;
  22. BYTE nColors;
  23. BYTE iUnused;
  24. WORD xHotSpot;
  25. WORD yHotSpot;
  26. DWORD cbDIB;
  27. DWORD offsetDIB;
  28. } IMAGEFILEHEADER;
  29. // File header
  30. #define FT_ICON 1
  31. #define FT_CURSOR 2
  32. typedef struct tagICONFILEHEADER
  33. {
  34. WORD iReserved;
  35. WORD iResourceType;
  36. WORD cresIcons;
  37. IMAGEFILEHEADER imh[1];
  38. } ICONFILEHEADER;
  39. typedef struct tagNEWHEADER {
  40. WORD Reserved;
  41. WORD ResType;
  42. WORD ResCount;
  43. } NEWHEADER, *LPNEWHEADER;
  44. typedef struct tagICONDIR
  45. {
  46. BYTE Width; /* 16, 32, 64 */
  47. BYTE Height; /* 16, 32, 64 */
  48. BYTE ColorCount; /* 2, 8, 16 */
  49. BYTE reserved;
  50. } ICONDIR;
  51. // Format of resource directory (array of resources)
  52. typedef struct tagRESDIR
  53. {
  54. ICONDIR Icon;
  55. WORD Planes;
  56. WORD BitCount;
  57. DWORD BytesInRes;
  58. WORD idIcon;
  59. } RESDIR, *LPRESDIR;
  60. typedef struct tagRESDIRDISK
  61. {
  62. struct tagICONDIR Icon;
  63. WORD Reserved[2];
  64. DWORD BytesInRes;
  65. DWORD Offset;
  66. } RESDIRDISK, *LPRESDIRDISK;
  67. #pragma pack()
  68. #endif // !RC_INVOKED