3.5 Additional Header Information

The additional information contains more information about the particular resource data, including size and language ID. The structure of the Header, plus its additional information, is as follows:


struct tagResource {
   DWORD     DataSize;           // Size of data without header
   DWORD     HeaderSize;         // Length of the additional header
   [Ordinal or name TYPE]        // Type identifier, id or string
   [Ordinal or name NAME]        // Name identifier, id or string
   DWORD     DataVersion;        // Predefined resource data version
   WORD      MemoryFlags;        // State of the resource
   WORD      LanguageId;         // Unicode support for NLS
   DWORD     Version;            // Version of the resource data
   DWORD     Characteristics;    // Characteristics of the data
   } ;

The additional information structure will always begin on a DWORD boundary within the resource file, which may require adding some padding in between the name field and the ResAdditional structure.