2.2.1.3.18 VDS_FILE_SYSTEM_FORMAT_SUPPORT_PROP

The VDS_FILE_SYSTEM_FORMAT_SUPPORT_PROP structure provides information about file systems that are supported for formatting volumes.<23>

 typedef struct _VDS_FILE_SYSTEM_FORMAT_SUPPORT_PROP {
   unsigned long ulFlags;
   unsigned short usRevision;
   unsigned long ulDefaultUnitAllocationSize;
   unsigned long rgulAllowedUnitAllocationSizes[32];
   WCHAR wszName[32];
 } VDS_FILE_SYSTEM_FORMAT_SUPPORT_PROP,
  *PVDS_FILE_SYSTEM_FORMAT_SUPPORT_PROP;

ulFlags: The combination of any values, by using the bitwise OR operator, that are defined in the VDS_FILE_SYSTEM_FORMAT_SUPPORT_FLAG enumeration.

usRevision: A 16-bit, binary-coded decimal number that indicates the file system version, if any. The first two (most significant) digits (8-bits) indicate the major version while the last two (least significant) digits (8-bits) indicate the minor version. For example, a value that has a bit pattern of 00000010 01010000 (0x0250 in hexadecimal) represents version 2.50; 0x1195 represents version 11.95, and so on.

ulDefaultUnitAllocationSize: The default allocation unit size, in bytes, that the file system uses for formatting the volume. This value MUST be a power of 2 and MUST also appear in rgulAllowedUnitAllocationSizes.

rgulAllowedUnitAllocationSizes: A zero-terminated array of allocation unit sizes, in bytes, that the file system supports for formatting the volume. An array is not zero-terminated if the array contains 32 elements. Each of the values in the array MUST be a power of 2.

wszName: A null-terminated Unicode wide-character string that indicates the name of the file system.