创建 RIFF 区块
[与此页面关联的功能 多媒体文件 I/O 是旧版功能。 它已被 源读取者取代。 源读取器已针对Windows 10和Windows 11进行了优化。 如果可能,Microsoft 强烈建议新代码使用 源读取器 而不是 多媒体文件 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 个字节。