The PROPERTYINSTEX structure is used to describe a free-form extended property instance when the actual data is in a proprietary format. For instance, if you want your parser to interpret a DWORD as a DWORD, but the protocol stores it in reverse format, then your parser should call AttachPropertyInstanceEx using PropertyInstEx information, and translate the DWORD from the proprietary format into the common format. See AttachPropertyInstance.
typedef struct _PROPERTYINSTEX {
WORD Length;
WORD LengthEx;
ULPVOID lpData;
union
{
BYTE Byte[];
WORD Word[];
DWORD Dword[];
LARGE_INTEGER LargeInt [];
SYSTEMTIME SysTime[];
TYPED_STRING TypedString;
};
} PROPERTYINSTEX;