次の方法で共有


RIFF チャンクの作成

[このページに関連付けられている機能である マルチメディア ファイル I/O は、従来の機能です。 ソース リーダーに置き換わりました。 ソース リーダーは、Windows 10とWindows 11用に最適化されています。 可能な場合は、新しいコードでマルチメディア ファイル I/O ではなくソース リーダーを使用することを強くお勧めします。 Microsoft は、レガシ API を使用する既存のコードを、可能であれば新しい API を使用するように書き換えるよう提案しています。]

次の例では、 mmioCreateChunk 関数を使用して、チャンク識別子が "RIFF" で、フォームの種類が "RDIB" のチャンクを作成します。

HMMIO    hmmio; 
MMCKINFO mmckinfo; 
. 
. 
. 
mmckinfo.fccType = mmioFOURCC('R', 'D', 'I', 'B'); 
mmioCreateChunk(hmmio, &mmckinfo, MMIO_CREATERIFF); 

"RIFF" または "LIST" チャンクを作成する場合は、MMCKINFO 構造体の fccType メンバーでフォームの種類またはリストの種類を指定する必要があります。 前の例では、"RDIB" はフォームの種類です。

新しいチャンク内のデータ フィールドのサイズがわかっている場合は、チャンクの作成時に MMCKINFO 構造体の cksize メンバーを設定できます。 この値は、新しいチャンクのデータ サイズ フィールドに書き込まれます。 mmioAscend を呼び出してチャンクの末尾をマークするときにこの値が正しくない場合は、データ フィールドの正しいサイズを反映するように自動的に書き換えられます。

mmioCreateChunk 関数を使用してチャンクを作成すると、ファイルの位置はチャンクのデータ フィールド (チャンクの先頭から 8 バイト) に設定されます。 チャンクが "RIFF" または "LIST" チャンクの場合、ファイルの位置は、フォームの種類またはリストの種類 (チャンクの先頭から 12 バイト) の後の場所に設定されます。