Export (0) Print
Expand All
Expand Minimize

LZRead function

Reads (at most) the specified number of bytes from a file and copies them into a buffer.

Syntax


INT WINAPI LZRead(
  _In_   INT hFile,
  _Out_  LPSTR lpBuffer,
  _In_   INT cbRead
);

Parameters

hFile [in]

A handle to the file.

lpBuffer [out]

A pointer to a buffer that receives the bytes read from the file. Ensure that this buffer is larger than cbRead.

cbRead [in]

The count of bytes to be read.

Return value

If the function succeeds, the return value specifies the number of bytes read.

If the function fails, the return value is an LZERROR_* code. These codes have values less than zero. Note that LZRead calls neither SetLastError nor SetLastErrorEx; thus, its failure does not affect a thread's last-error code.

The following is the list of error codes that LZRead can return upon failure.

Return codeDescription
LZERROR_BADINHANDLE

The handle identifying the source file is not valid. The file cannot be read.

LZERROR_BADOUTHANDLE

The handle identifying the destination file is not valid. The file cannot be written.

LZERROR_BADVALUE

One of the input parameters is not valid.

LZERROR_GLOBALLOC

The maximum number of open compressed files has been exceeded or local memory cannot be allocated.

LZERROR_GLOBLOCK

The LZ file handle cannot be locked down.

LZERROR_READ

The source file format is not valid.

LZERROR_WRITE

There is insufficient space for the output file.

 

There is no extended error information for this function; do not call GetLastError.

Remarks

The handle identifying the file must be retrieved by calling either the LZInit or LZOpenFile function.

If the file is compressed, LZRead operates on an expanded image of the file and copies the bytes of data into the specified buffer.

In Windows 8 and Windows Server 2012, this function is supported by the following technologies.

TechnologySupported

Server Message Block (SMB) 3.0 protocol

Yes

SMB 3.0 Transparent Failover (TFO)

Yes

SMB 3.0 with Scale-out File Shares (SO)

Yes

Cluster Shared Volume File System (CsvFS)

Yes

Resilient File System (ReFS)

Yes

 

CsvFs will do redirected IO for compressed files.

Requirements

Minimum supported client

Windows XP [desktop apps only]

Minimum supported server

Windows Server 2003 [desktop apps only]

Header

LzExpand.h (include Windows.h)

Library

Lz32.lib

DLL

Lz32.dll

See also

File Compression and Decompression
File Management Functions
LZInit
LZOpenFile
LZSeek

 

 

Community Additions

ADD
Show:
© 2014 Microsoft