mmioSetBuffer 函数 (mmiscapi.h)
mmioSetBuffer 函数启用或禁用缓冲 I/O,或更改使用 mmioOpen 函数打开的文件的缓冲区或缓冲区大小。
语法
MMRESULT mmioSetBuffer(
HMMIO hmmio,
LPSTR pchBuffer,
LONG cchBuffer,
UINT fuBuffer
);
parameters
hmmio
文件的文件句柄。
pchBuffer
指向要用于缓冲 I/O 的应用程序定义缓冲区的指针。 如果此参数为 NULL, 则 mmioSetBuffer 为缓冲 I/O 分配内部缓冲区。
cchBuffer
应用程序定义缓冲区的大小(以字符为单位),或要分配的 mmioSetBuffer 的缓冲区的大小。
fuBuffer
保留;必须为零。
返回值
如果成功,则返回零,否则返回错误。 如果发生错误,文件句柄将保持有效。 定义了以下值。
返回代码 | 说明 |
---|---|
|
无法将旧缓冲区的内容写入磁盘,因此操作已中止。 |
|
无法分配新缓冲区,可能是由于缺少可用内存。 |
注解
若要使用内部缓冲区启用缓冲,请将 pchBuffer 设置为 NULL ,并将 cchBuffer 设置为所需的缓冲区大小。
若要提供自己的缓冲区,请将 pchBuffer 设置为指向缓冲区,并将 cchBuffer 设置为缓冲区的大小。
若要禁用缓冲 I/O,请将 pchBuffer 设置为 NULL , 将 cchBuffer 设置为零。
如果已使用内部缓冲区启用缓冲 I/O,可以通过将 pchBuffer 设置为 NULL ,将 cchBuffer 设置为新的缓冲区大小,将缓冲区重新分配到不同的大小。 调整大小后,可以更改缓冲区的内容。
要求
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | mmiscapi.h (包括 Mmiscapi.h、Windows.h) |
Library | Winmm.lib |
DLL | Winmm.dll |