Función LZRead (lzexpand.h)

Lee (como máximo) el número especificado de bytes de un archivo y los copia en un búfer.

Sintaxis

INT LZRead(
  [in]  INT  hFile,
  [out] CHAR *lpBuffer,
  [in]  INT  cbRead
);

Parámetros

[in] hFile

Identificador del archivo.

[out] lpBuffer

Puntero a un búfer que recibe los bytes leídos del archivo. Asegúrese de que este búfer sea mayor que cbRead.

[in] cbRead

Recuento de bytes que se van a leer.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto especifica el número de bytes leídos.

Si se produce un error en la función, el valor devuelto es un código LZERROR_*. Estos códigos tienen valores inferiores a cero. Tenga en cuenta que LZRead no llama a SetLastError ni a SetLastErrorEx; por lo tanto, su error no afecta al código de último error de un subproceso.

A continuación se muestra la lista de códigos de error que LZRead puede devolver tras un error.

Código devuelto Descripción
LZERROR_BADINHANDLE
El identificador que identifica el archivo de origen no es válido. No se puede leer el archivo.
LZERROR_BADOUTHANDLE
El identificador que identifica el archivo de destino no es válido. No se puede escribir el archivo.
LZERROR_BADVALUE
Uno de los parámetros de entrada no es válido.
LZERROR_GLOBALLOC
No se puede asignar el número máximo de archivos comprimidos abiertos o no se puede asignar memoria local.
LZERROR_GLOBLOCK
El identificador de archivo LZ no se puede bloquear.
LZERROR_READ
El formato de archivo de origen no es válido.
LZERROR_WRITE
No hay espacio suficiente para el archivo de salida.
 

No hay información de error extendida para esta función; no llame a GetLastError.

Comentarios

El identificador que identifica el archivo debe recuperarse llamando a la función LZInit o LZOpenFile .

Si el archivo está comprimido, LZRead funciona en una imagen expandida del archivo y copia los bytes de los datos en el búfer especificado.

En Windows 8 y Windows Server 2012, esta función es compatible con las tecnologías siguientes.

Tecnología Compatible
Protocolo Bloque de mensajes del servidor (SMB) 3.0
Conmutación por error transparente (TFO) de SMB 3.0
SMB 3.0 con recursos compartidos de archivos de escalabilidad horizontal (SO)
Sistema de archivos de Volumen compartido de clúster (CsvFS)
Sistema de archivos resistente a errores (ReFS)
 

CsvFs realizará la E/S redirigida para los archivos comprimidos.

Requisitos

   
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado lzexpand.h (incluya Windows.h)
Library Lz32.lib
Archivo DLL Lz32.dll

Consulte también

Compresión y descompresión de archivos

Funciones de administración de archivos

LZInit

LZOpenFile

LZSeek