Each data structure in the value list must be DWORD-aligned. It is a good idea to zero the memory of your value list buffer before building the list so that bytes used for padding do not contain misleading values.
To mark the end of a value list, the last entry in the list contains only the Syntax member of a data structure set to CLUSPROP_SYNTAX_ENDMARK. The last entry has no Length member and no data. The following diagram shows the layout of a value list.
For more information on how to build and read value lists, see Using Value Lists.