⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 upeconst.pas

📁 在delphi中实现windows核心编程.原书光盘代码核心编程.原书光盘代码
💻 PAS
字号:
unit UPEConst;

interface

uses Windows;

const
  IMAGE_RESOURCE_NAME_IS_STRING = $80000000;
  IMAGE_RESOURCE_DATA_IS_DIRECTORY = $80000000;
  IMAGE_OFFSET_STRIP_HIGH = $7FFFFFFF;

  StringsPerBlock = 16;
  IMAGE_FILE_LARGE_ADDRESS_AWARE = $0020; // App can handle >2gb addresses

  IMAGE_FILE_MACHINE_WCEMIPSV2 = $0169; // MIPS little-endian WCE v2
  IMAGE_FILE_MACHINE_SH3 = $01A2; // SH3 little-endian
  IMAGE_FILE_MACHINE_SH3E = $01A4; // SH3E little-endian
  IMAGE_FILE_MACHINE_SH4 = $01A6; // SH4 little-endian
  IMAGE_FILE_MACHINE_SH5 = $01A8; // SH5
  IMAGE_FILE_MACHINE_ARM = $01C0; // ARM Little-Endian
  IMAGE_FILE_MACHINE_THUMB = $01C2;
  IMAGE_FILE_MACHINE_ARM33 = $01D3;
  IMAGE_FILE_MACHINE_IA64 = $0200; // Intel 64
  IMAGE_FILE_MACHINE_MIPS16 = $0266; // MIPS
  IMAGE_FILE_MACHINE_ALPHA64 = $0284; // ALPHA64
  IMAGE_FILE_MACHINE_MIPSFPU = $0366; // MIPS
  IMAGE_FILE_MACHINE_MIPSFPU16 = $0466; // MIPS
  IMAGE_FILE_MACHINE_AMD64 = $0500; // AMD K8
  IMAGE_FILE_MACHINE_TRICORE = $0520; // Infineon
  IMAGE_FILE_MACHINE_CEF = $0CEF;

  rtUnknown0 = 0;
  rtCursorEntry = 1;
  rtBitmap = 2;
  rtIconEntry = 3;
  rtMenu = 4;
  rtDialog = 5;
  rtString = 6;
  rtFontDir = 7;
  rtFont = 8;
  rtAccelerators = 9;
  rtRCData = 10;
  rtMessageTable = 11;
  rtCursor = 12;
  rtUnknown13 = 13;
  rtIcon = 14;
  rtUnknown15 = 15;
  rtVersion = 16;

  rtCursorLink = 17;
  rtIconLink = 18;
  rtDirectory = 19;
  rtDirectorySelected = 20;
  rtFirstEntry = 21;

  MAXResourceType = 17;
  ResourceTypeName:array[0..MAXResourceType-1]of string = (
    'Unknown0',
    'CursorEntry',
    'Bitmap',
    'IconEntry',
    'Menu',
    'Dialog',
    'String',
    'FontDir',
    'Font',
    'Accelerators',
    'RCData',
    'MessageTable',
    'Cursor',
    'Unknown13',
    'Icon',
    'Unknown15',
    'Version');
type
  PImageResourceDirectory = ^TImageResourceDirectory;
  TImageResourceDirectory = packed record
    Characteristics: DWORD;
    TimeDateStamp: DWORD;
    MajorVersion: WORD;
    MinorVersion: WORD;
    NumberOfNamedEntries: WORD;
    NumberOfIdEntries: WORD;
  end;
  PImageResourceDirectoryEntry = ^TImageResourceDirectoryEntry;
  TImageResourceDirectoryEntry = packed record
    Name : DWORD;//最高位为0时,低31位是资源类型;最高位为1时,低31位是PTmageResourceDirStringU
    OffsetToData : DWORD;//最高位为0时,低31位是PImageResourceDataEntry;
                         //最高位为1时,低31位是下一个PImageResourceDirectoryEntry
  end;
  PImageResourceDataEntry = ^TImageResourceDataEntry;
  TImageResourceDataEntry = packed record
    OffsetToData: DWORD;
    Size: DWORD;
    CodePage: DWORD;
    Reserved: DWORD;
  end;
  PImageResourceDirStringU = ^TImageResourceDirStringU;
  TImageResourceDirStringU = packed record
    Length: WORD;
    NameString: array[0..0] of WCHAR;
  end;
  TResourceType = integer;
  PIconHeader = ^TIconHeader;
  TIconHeader = packed record
    wReserved: Word; { Currently zero }
    wType: Word; { 1 for icons }
    wCount: Word; { Number of components }
  end;
  PIconResInfo = ^TIconResInfo;
  TIconResInfo = packed record
    bWidth: Byte;
    bHeight: Byte;
    bColorCount: Byte;
    bReserved: Byte;
    wPlanes: Word;
    wBitCount: Word;
    lBytesInRes: DWORD;
    wNameOrdinal: Word; { Points to component }
  end;

  PCursorResInfo = ^TCursorResInfo;
  TCursorResInfo = packed record
    wWidth: Word;
    wHeight: Word;
    wPlanes: Word;
    wBitCount: Word;
    lBytesInRes: DWORD;
    wNameOrdinal: Word; { Points to component }
  end;

implementation

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -