Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Func.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.58 Mб
Скачать

MmioSendMessage

LRESULT mmioSendMessage( HMMIO hmmio, UINT wMsg, LPARAM lParam1, LPARAM lParam2 );

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

Возвращает значение, определяемое посылаемым сообщением. Если процедура ввода/вывода не смогла распознать сообщение, то должно возвращаться нулевое значение.

Аргументы

  1. hmmio — дескриптор файла, открытого функцией mmioOpen.

  2. wMsg — сообщение, посылаемое процедуре ввода/вывода.

  3. lParam1 и lParam2 — аргументы сообщения.

Примечание

Функция mmioSendMessage посылает сообщение процедуре ввода/вывода, связанной с указанным файлом.

Данная функция может использоваться только для посылки пользовательских сообщений. С её помощью нельзя посылать сообщения MMIOM_OPEN, MMIOM_CLOSE, MMIOM_READ, MMIOM_WRITE, MMIOM_WRITEFLUSH или MMIOM_SEEK. Значение пользовательского сообщения должно быть большим либо равным значению константы MMIOM_USER.

Описание данной функции содержится в файле заголовка mmsystem.h. При работе с данной функцией следует включить в проект библиотеку winmm.lib.

MmioSetBuffer

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

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

В случае успешного завершения работы возвращает нулевое значение. В противном случае возвращаемое значение может принимать одно из следующих значений:

  • MMIOERR_CANNOTWRITE — содержимое старого буфера не может быть записано на диск, что приводит к аварийному завершению операции.

  • MMIOERR_OUTOFMEMORY — новый буфер не может быть размещён, скорее всего вследствие нехватки оперативной памяти.

Аргументы

  1. hmmio — дескриптор файла.

  2. pchBuffer — указатель на созданный приложением буфер, используемый для буферированного ввода/вывода. Если этот аргумент имеет нулевое значение, функция mmioSetBuffer создаёт внутренний буфер для буферированного ввода/вывода.

  3. cchBuffer — размер в символах буфера, созданного приложением, или создаваемого функцией mmioSetBuffer внутреннего буфера.

  4. wFlags — зарезервирован и должен иметь нулевое значение.

Примечание

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

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

Для использования собственного буфера в аргумент pchBuffer записывается указатель на этот буфер, а в аргумент cchBuffer — размер передаваемого буфера.

Для отмены буферизации операций ввода/вывода следует передать в аргументах pchBuffer и cchBuffer нулевое значение.

Вследствие изменения размера буфера может измениться и его содержимое.

Описание данной функции содержится в файле заголовка mmsystem.h. При работе с данной функцией следует включить в проект библиотеку winmm.lib.

MmioSetInfo

MMRESULT mmioSetInfo( HMMIO hmmio, LPMMIOINFO lpmmioinfo, UINT wFlags );

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

В случае успешного завершения работы возвращает нулевое значение. В противном случае возвращает значение ошибки.

Аргументы

  1. hmmio — дескриптор файла.

  2. lpmmioinfo — указатель на объект структуры MMIOINFO, заполненный функцией mmioGetInfo.

  3. wFlags — зарезервирован. Должен иметь нулевое значение.

Примечание

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

При записи информации в буфер следует установить флаг MMIO_DIRTY в переменной dwFlags объекта структуры MMIOINFO до того, как функция mmioSetInfo завершит операцию прямого доступа к буферу. В противном случае информация, содержащаяся в буфере, не будет записана на диск.

Описание данной функции содержится в файле заголовка mmsystem.h. При работе с данной функцией следует включить в проект библиотеку winmm.lib.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]