IMAPIv2 は、ISO9660 互換ディスク上のファイルのサイズを 2GB に制限します。
2GB を超えるファイルを書き込むには、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 は、多くの最新のファイル システム機能をネイティブにサポートしています。
- 大きなパーティション サイズ (ブロック サイズが 512B の場合は最大 2TB、ブロック サイズが 2KB の場合は最大 8TB) 64 ビットのファイル サイズ
- サイズ制限のない拡張属性 (名前付きストリームやフォークなど)
- 長いファイル名 (最大 254 バイト、名前には任意の文字を使用できます)
- ファイル名の Unicode エンコーディング
- スパースファイル
- ハードリンク
- シンボリックリンク
- メタデータ チェックサム
制限:
- 制限されたパーティション サイズ。32 ビットのブロック番号は、512 セクター サイズのパーティション サイズを 2TB に制限します。
- 圧縮/暗号化されたファイルとディレクトリはサポートされていません。