Udostępnij przez


Sekcja

Sekcja jest trzecią częścią strumienia zestawu właściwości i zawiera rzeczywiste wartości zestawu właściwości.

Sekcja zawiera:

  • Liczba bajtów dla sekcji, która uwzględnia samą liczbę bajtów.
  • Tablica 32-bitowych par właściwości/przesunięcia.
  • Tablica par wskaźników/wartości typu właściwości.

Przesunięcia to odległość od początku sekcji do początku pary właściwości (typ, wartość). Umożliwia to skopiowanie sekcji jako tablicy bajtów bez żadnego tłumaczenia struktury wewnętrznej.

Poniższe pseudo-struktury ilustrują format sekcji.

typedef struct tagPROPERTYSECTIONHEADER 
{ 
    DWORD  cbSection ;    // Size of Section 
    DWORD  cProperties ;  // Count of Properties in section 
} PROPERTYSECTIONHEADER; 
 
typedef struct tagPROPERTYIDOFFSET 
{ 
    DWORD  propid;    // Name of property 
    DWORD  dwOffset;  // Offset from start of section to property 
} PROPERTYIDOFFSET; 
 
typedef struct tagSERIALIZEDPROPERTYVALUE 
{ 
    DWORD  dwType;    // Property Type 
    BYTE   rgb[];     // Property Value 
} SERIALIZEDPROPERTYVALUE ;