Função LZCopy (lzexpand.h)

Copia um arquivo de origem para um arquivo de destino. Se o arquivo de origem tiver sido compactado pelo algoritmo Lempel-Ziv, essa função criará um arquivo de destino descompactado. Se o arquivo de origem não for compactado, essa função duplicará o arquivo original.

Sintaxe

LONG LZCopy(
  [in] INT hfSource,
  [in] INT hfDest
);

Parâmetros

[in] hfSource

Um identificador para o arquivo de origem.

[in] hfDest

Um identificador para o arquivo de destino.

Valor retornado

Se a função for bem-sucedida, o valor retornado especificará o tamanho, em bytes, do arquivo de destino.

Se a função falhar, o valor retornado será um código LZERROR_*. Esses códigos têm valores menores que zero. Observe que LZCopy não chama SetLastError nem SetLastErrorEx; Portanto, sua falha não afeta o código de último erro de um thread.

Veja a seguir uma lista de códigos de erro que o LZCopy pode retornar após a falha.

Código de retorno Descrição
LZERROR_BADINHANDLE
O identificador que identifica o arquivo de origem não é válido. O arquivo não pode ser lido.
LZERROR_BADOUTHANDLE
O identificador que identifica o arquivo de destino não é válido. O arquivo não pode ser gravado.
LZERROR_GLOBALLOC
O número máximo de arquivos compactados abertos foi excedido ou a memória local não pode ser alocada.
LZERROR_GLOBLOCK
O identificador de arquivo LZ não pode ser bloqueado.
LZERROR_READ
O formato do arquivo de origem não é válido.
 

Não há informações de erro estendidas para essa função; não chame GetLastError.

Comentários

Os identificadores que identificam os arquivos de origem e destino devem ser recuperados chamando a função LZInit ou LZOpenFile .

Se a função for bem-sucedida, o arquivo identificado pelo parâmetro hfDest sempre será descompactado.

No Windows 8 e Windows Server 2012, essa função é compatível com as tecnologias a seguir.

Tecnologia Com suporte
Protocolo SMB (SMB) 3.0 Sim
TFO (Failover transparente) do SMB 3.0 Sim
SMB 3.0 com compartilhamentos de arquivos de expansão (SO) Sim
Sistema de arquivos de Volume Compartilhado Clusterizado (CsvFS) Sim
ReFS (Sistema de Arquivos Resiliente) Sim
 

CsvFs fará E/S redirecionada em caso de arquivos compactados.

Requisitos

   
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho lzexpand.h (inclua Windows.h)
Biblioteca Lz32.lib
DLL Lz32.dll

Confira também

Descompactação e compactação de arquivo

Funções de gerenciamento de arquivos

LZInit

LZOpenFile