Compartir a través de


Función mmioGetInfo (mmiscapi.h)

La función mmioGetInfo recupera información sobre un archivo abierto mediante la función mmioOpen . Esta información permite que la aplicación acceda directamente al búfer de E/S, si el archivo se abre para E/S almacenada en búfer.

Sintaxis

MMRESULT mmioGetInfo(
  HMMIO      hmmio,
  LPMMIOINFO pmmioinfo,
  UINT       fuInfo
);

Parámetros

hmmio

Identificador de archivo del archivo.

pmmioinfo

Puntero a un búfer que recibe una estructura MMIOINFO que mmioGetInfo rellena con información sobre el archivo.

fuInfo

Reservados; debe ser cero.

Valor devuelto

Devuelve cero si es correcto o si se produce un error de lo contrario.

Comentarios

Para acceder directamente al búfer de E/S de un archivo abierto para E/S almacenada en búfer, use los siguientes miembros de la estructura MMIOINFO rellenada por mmioGetInfo:

  • El miembro pchNext apunta al siguiente byte del búfer que se puede leer o escribir. Al leer o escribir, incremente pchNext por el número de bytes leídos o escritos.
  • El miembro pchEndRead apunta a 1 byte más allá del último byte válido del búfer que se puede leer.
  • El miembro pchEndWrite apunta a 1 byte después de la última ubicación del búfer que se puede escribir.
Después de leer o escribir en el búfer y modificar pchNext, no llame a ninguna función de E/S de archivo multimedia excepto mmioAdvance hasta que llame a la función mmioSetInfo . Llame a mmioSetInfo cuando haya terminado de acceder directamente al búfer.

Cuando llegue al final del búfer especificado por el miembro pchEndRead o pchEndWrite , llame a mmioAdvance para rellenar el búfer del disco o escribir el búfer en el disco. La función mmioAdvance actualiza los miembros pchNext, pchEndRead y pchEndWrite en la estructura MMIOINFO del archivo.

Antes de llamar a mmioAdvance o mmioSetInfo para vaciar un búfer en el disco, establezca la marca MMIO_DIRTY en el miembro dwFlags de la estructura MMIOINFO del archivo. De lo contrario, el búfer no se escribirá en el disco.

No decremento pchNext ni modifique ningún miembro de la estructura MMIOINFO que no sea pchNext y dwFlags. No establezca ninguna marca en dwFlags excepto MMIO_DIRTY.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado mmiscapi.h (incluye Mmiscapi.h, Windows.h)
Library Winmm.lib
Archivo DLL Winmm.dll