2.2.16 IFILE_SYSTEM_INFO
The IFILE_SYSTEM_INFO structure provides information about an installed file system. For more information, see [MSDN-STC].
-
struct ifilesysteminfo { long fsType; WCHAR fsName[MAX_FS_NAME_SIZE]; unsigned long fsFlags; unsigned long fsCompressionFlags; int cchLabelLimit; int cchLabel; [size_is(cchLabel)] wchar_t* iLabelChSet; }; typedef struct ifilesysteminfo IFILE_SYSTEM_INFO;
fsType: Type of the file system. This field contains one of the following values.
-
Value
Meaning
FSTYPE_UNKNOWN
0x00000000
File system type is unknown.
FSTYPE_NTFS
0x00000001
File system type is NTFS.
FSTYPE_FAT
0x00000002
File system type is FAT.
FSTYPE_FAT32
0x00000003
File system type is FAT32 file system.
FSTYPE_CDFS
0x00000004
File system type is CDFS.
FSTYPE_UDF
0x00000005
File system type is UDF.
FSTYPE_OTHER
0x80000000
File system type is not listed.
fsName: Null-terminated Unicode file system name.
fsFlags: Bitmap of file system flags. The value of this field is a logical OR of zero or more of the applicable flags.
-
Value
Meaning
FSF_FMT_OPTION_COMPRESS
0x00000001
File system supports compression.
FSF_FMT_OPTION_LABEL
0x00000002
File system supports label specification.
FSF_MNT_POINT_SUPPORT
0x00000004
File system supports creation of mount points.
FSF_REMOVABLE_MEDIA_SUPPORT
0x00000008
File system supports creation of removable media.
FSF_FS_GROW_SUPPORT
0x00000010
File system supports the extend operation.
FSF_FS_QUICK_FORMAT_ENABLE
0x00000020
File system supports quick formatting.
FSF_FS_ALLOC_SZ_512
0x00000040
File system supports an allocation unit size of 512 bytes.
FSF_FS_ALLOC_SZ_1K
0x00000080
File system supports an allocation unit size of 1 kilobyte.
FSF_FS_ALLOC_SZ_2K
0x00000100
File system supports an allocation unit size of 2 kilobytes.
FSF_FS_ALLOC_SZ_4K
0x00000200
File system supports an allocation unit size of 4 kilobytes.
FSF_FS_ALLOC_SZ_8K
0x00000400
File system supports an allocation unit size of 8 kilobytes.
FSF_FS_ALLOC_SZ_16K
0x00000800
File system supports an allocation unit size of 16 kilobytes.
FSF_FS_ALLOC_SZ_32K
0x00001000
File system supports an allocation unit size of 32 kilobytes.
FSF_FS_ALLOC_SZ_64K
0x00002000
File system supports an allocation unit size of 64 kilobytes.
FSF_FS_ALLOC_SZ_128K
0x00004000
File system supports an allocation unit size of 128 kilobytes.
FSF_FS_ALLOC_SZ_256K
0x00008000
File system supports an allocation unit size of 256 kilobytes.
FSF_FS_ALLOC_SZ_OTHER
0x00010000
File system supports any allocation unit size that the user provides.
FSF_FS_FORMAT_SUPPORTED
0x00020000
File system supports formatting.
FSF_FS_VALID_BITS
0x0003FFFF
All other bits in the bitmap MUST be ignored. The server does a bitwise AND operation with this value to clear upper-level bits that may be present but are not supported.
fsCompressionFlags: Bitmap of allocation unit sizes that are valid for compression. The value of this field is a logical 'OR' of zero or more of the applicable flags.
-
Value
Meaning
FSF_FS_ALLOC_SZ_1K
0x00000080
File system supports an allocation unit size of 1 kilobyte.
FSF_FS_ALLOC_SZ_2K
0x00000100
File system supports an allocation unit size of 2 kilobytes.
FSF_FS_ALLOC_SZ_4K
0x00000200
File system supports an allocation unit size of 4 kilobytes.
FSF_FS_ALLOC_SZ_8K
0x00000400
File system supports an allocation unit size of 8 kilobytes.
FSF_FS_ALLOC_SZ_16K
0x00000800
File system supports an allocation unit size of 16 kilobytes.
FSF_FS_ALLOC_SZ_32K
0x00001000
File system supports an allocation unit size of 32 kilobytes.
FSF_FS_ALLOC_SZ_64K
0x00002000
File system supports an allocation unit size of 64 kilobytes.
FSF_FS_ALLOC_SZ_128K
0x00004000
File system supports an allocation unit size of 128 kilobytes.
FSF_FS_ALLOC_SZ_256K
0x00008000
File system supports an allocation unit size of 256 kilobytes.
FSF_FS_ALLOC_SZ_OTHER
0x00010000
File system supports any allocation unit size that the user provides.
cchLabelLimit: Maximum number of characters allowed in the file system's label.
cchLabel: Length of the iLabelChSet member in bytes.
iLabelChSet: Array of characters that are not allowed in the file system's label.