Поделиться через


Функция mmioSetBuffer (mmiscapi.h)

Функция mmioSetBuffer включает или отключает буферизованный ввод-вывод, а также изменяет размер буфера или буфера для файла, открытого с помощью функции mmioOpen .

Синтаксис

MMRESULT mmioSetBuffer(
  HMMIO hmmio,
  LPSTR pchBuffer,
  LONG  cchBuffer,
  UINT  fuBuffer
);

Параметры

hmmio

Дескриптор файла.

pchBuffer

Указатель на буфер, определяемый приложением, который используется для буферизованного ввода-вывода. Если этот параметр имеет значение NULL, mmioSetBuffer выделяет внутренний буфер для буферизованного ввода-вывода.

cchBuffer

Размер (в символах) определенного приложением буфера или размер буфера для выделения mmioSetBuffer .

fuBuffer

Защищены; значение должно быть равно нулю.

Возвращаемое значение

Возвращает ноль в случае успешного выполнения или ошибку в противном случае. При возникновении ошибки дескриптор файла остается действительным. Определены следующие значения.

Код возврата Описание
MMIOERR_CANNOTWRITE
Содержимое старого буфера не удалось записать на диск, поэтому операция была прервана.
MMIOERR_OUTOFMEMORY
Не удалось выделить новый буфер, вероятно, из-за нехватки доступной памяти.

Комментарии

Чтобы включить буферизацию с помощью внутреннего буфера, задайте для параметра pchBufferзначение NULL , а для cchBuffer — требуемый размер буфера.

Чтобы предоставить собственный буфер, задайте для параметра pchBuffer значение , указывающего на буфер, и задайте для параметра cchBuffer значение размера буфера.

Чтобы отключить буферизованные операции ввода-вывода, задайте для параметра pchBufferзначение NULL , а для cchBuffer — нулевое значение.

Если буферизованный ввод-вывод уже включен с помощью внутреннего буфера, можно перераспределить буфер до другого размера, задав для pchBufferзначение NULL , а для cchBuffer — новый размер буфера. Содержимое буфера можно изменить после изменения размера.

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header mmiscapi.h (включая Mmiscapi.h, Windows.h)
Библиотека Winmm.lib
DLL Winmm.dll