3.2.2.2 Category Property Example

This is an example of a Category property (Lpstr property (section 2.3.3.1.4)).

Offset

Size

Structure

Value

000000CC

0014

TypedPropertyValue - GKPIDDSI_CATEGORY

000000CC

0002

    WORD - wType

0x001E

000000CE

0002

    WORD - padding

0x0000

000000D0

0010

    Lpstr - stringValue

000000D0

0004

        DWORD - cch

0x0000000C

000000D4

000C

        Array of CHAR - value

Tutorials

Figure 18: Structure of a Category property

GKPIDDSI_CATEGORY: Category.

wType: 0x001E indicates that this property is an Lpstr property (section 2.3.3.1.4).

stringValue.cch: 0x0000000C indicates that the count of characters of the Lpstr (section 2.3.3.1.4) value is 12. The value field contains 10 characters (9 for "Tutorials" plus a terminating NULL character). There are 2 additional bytes after the terminating NULL character which pad the value field to a multiple of 4 bytes.

stringValue.value: The value of this field is "Tutorials" followed by a null-terminator and 2 bytes of padding, so the length of this field is 0x0000000C (12). The 2 bytes of padding is added to make the length a multiple of 4 bytes.