LZRead-Funktion (lzexpand.h)
Liest (höchstens) die angegebene Anzahl von Bytes aus einer Datei und kopiert sie in einen Puffer.
Syntax
INT LZRead(
[in] INT hFile,
[out] CHAR *lpBuffer,
[in] INT cbRead
);
Parameter
[in] hFile
Ein Handle zur Datei.
[out] lpBuffer
Ein Zeiger auf einen Puffer, der die aus der Datei gelesenen Bytes empfängt. Stellen Sie sicher, dass dieser Puffer größer als cbRead ist.
[in] cbRead
Die Anzahl der zu lesenden Bytes.
Rückgabewert
Wenn die Funktion erfolgreich ist, gibt der Rückgabewert die Anzahl der gelesenen Bytes an.
Wenn die Funktion fehlschlägt, ist der Rückgabewert ein LZERROR_*-Code. Diese Codes haben Werte kleiner als 00. Beachten Sie, dass LZRead weder SetLastError noch SetLastErrorEx aufruft. daher wirkt sich sein Fehler nicht auf den Code des letzten Fehlers eines Threads aus.
Im Folgenden finden Sie die Liste der Fehlercodes, die LZRead bei einem Fehler zurückgeben kann.
Rückgabecode | Beschreibung |
---|---|
|
Das Handle, das die Quelldatei identifiziert, ist ungültig. Die Datei kann nicht gelesen werden. |
|
Das Handle, das die Zieldatei identifiziert, ist ungültig. Die Datei kann nicht geschrieben werden. |
|
Einer der Eingabeparameter ist ungültig. |
|
Die maximale Anzahl geöffneter komprimierter Dateien wurde überschritten, oder der lokale Arbeitsspeicher kann nicht zugewiesen werden. |
|
Das LZ-Dateihandle kann nicht gesperrt werden. |
|
Das Quelldateiformat ist ungültig. |
|
Für die Ausgabedatei ist nicht genügend Speicherplatz vorhanden. |
Es gibt keine erweiterten Fehlerinformationen für diese Funktion. Rufen Sie GetLastError nicht auf.
Hinweise
Das Handle, das die Datei identifiziert, muss durch Aufrufen der Funktion LZInit oder LZOpenFile abgerufen werden.
Wenn die Datei komprimiert ist, arbeitet LZRead mit einem erweiterten Image der Datei und kopiert die Datenbytes in den angegebenen Puffer.
Unter Windows 8 und Windows Server 2012 wird diese Funktion von den folgenden Technologien unterstützt.
Technologie | Unterstützt |
---|---|
SMB 3.0-Protokoll (Server Message Block) | Ja |
SMB 3.0 Transparent Failover (TFO) | Ja |
SMB 3.0 mit Dateifreigaben mit horizontaler Skalierung (SO) | Ja |
Dateisystem mit freigegebenen Clustervolumes (CsvFS) | Ja |
Robustes Dateisystem (Resilient File System, ReFS) | Ja |
CsvFs leiten E/A für komprimierte Dateien um.
Anforderungen
Unterstützte Mindestversion (Client) | Windows XP [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | lzexpand.h (einschließlich Windows.h) |
Bibliothek | Lz32.lib |
DLL | Lz32.dll |