IMAPIv2 ограничивает размер файла на диске, совместимом с ISO9660, до 2 ГБ.
Для записи файлов размером более 2 ГБ необходимо установить файловую систему UDF.
HRESULT hr = FileSystemImage->put_FileSystemsToCreate( FsiFileSystemUDF );
Перечисление FsiFileSystems определяет значения для распознанных файловых систем:
typedef enum FsiFileSystems {
FsiFileSystemNone = 0,
FsiFileSystemISO9660 = 1,
FsiFileSystemJoliet = 2,
FsiFileSystemUDF = 4,
FsiFileSystemUnknown = 0x40000000
} FsiFileSystems;
- FsiFileSystemNone Диск не содержит распознанной файловой системы.
- FsiFileSystemISO9660 Стандартная файловая система CD.
- Файловая система FsiFileSystemJoliet Joliet.
- Файловая система FsiFileSystemUDF UDF.
- FsiFileSystemUnknown. Диск, похоже, имеет файловую систему, но макет не соответствует ни одному из распознанных типов.
UDF изначально поддерживает многие функции современных файловых систем:
- Большой размер раздела (максимум 2 ТБ с размером блока 512 Б или 8 ТБ с размером блока 2 КБ) Размер файла 64-разрядный
- Расширенные атрибуты (например, именованные потоки или вилки) без ограничения размера
- Длинные имена файлов (максимум 254 байта, в имени может появляться любой символ)
- Unicode-кодировка имен файлов
- разреженный файл
- Жесткие ссылки
- Символические ссылки
- Контрольная сумма метаданных
Ограничения:
- Ограниченный размер раздела. 32-битный номер блока ограничивает размер раздела до 2 ТБ для размера 512 секторов.
- Не поддерживает сжатые / зашифрованные файлы и каталоги.