Compacta uma lista de arquivos no formato zip.
Sintaxe
FZip( < cZipFile >, < aFiles >, [ cBaseDir ], [ cPassword ] )
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|---|---|---|---|
cZipFile | character | Indica o nome do arquivo final compactado zip. | X | |
aFiles | array | Lista de arquivos que serão compactados. | X | |
cBaseDir | character | Indica o diretório base para não incluir dentro do arquivo compactado. | ||
cPassword | character | Informar uma senha para gerar um arquivo compactado criptografado. |
Retorno
Nome | Tipo | Descrição |
---|---|---|
nRet | numeric | Retorna 0 zero se conseguir compactar ou diferente de 0 zero em caso de erro. |
Observações
- O caminho dos arquivos apontados em aFiles pode ser tanto a partir do Rootpath quanto um caminho completo para ser executado no cliente.
- A entrada cBaseDir serve para não incluir a pasta informada no baseDir dentro do zip. Por exemplo, a lista de arquivos contém "tocompress\arq1.txt", "tocompress\arq2.txt" e não se deseja que o arquivo zip contenha a pasta "tocompress", apenas os arquivos, portanto cBaseDir deve ser informado como "tocompress\".
- Os caminhos apontados em aFiles e cBaseDir devem ter a mesma origem do caminho apontado em cZipFile, ou seja, caso o caminho apontado em cZipFile seja no servidor, os caminhos apontados em aFiles e cBaseDir também devem ser; o mesmo se aplica caso cZipFile aponte para um caminho no cliente.
- Caso haja diferença na origem dos arquivos apontados nos parâmetros, será apresentada no console do Application Server a mensagem "tFzip: Error, all paths must be on the same side (server/client)" e o retorno da função será -1.
- Os caminhos apontados em cZipFile, aFiles e cBaseDir não são convertidos para minúsculo, sendo tratados da forma como são escritos. Dessa forma, em Windows não existe impacto no acesso aos arquivos e pastas, mas em Linux, devido ao sistema operacional diferenciar caminhos em maiúsculo e minúsculo, pode não conseguir acessar o caminho, devendo ser escrito com o Case Sensitive correto.
- Caso não seja informado o parâmetro cBaseDir, o valor utilizado será o caminho do RootDir convertido para minúsculo.
- Função disponível apenas para builds iguais ou superiores a 7.00.131227 - 13.2.3.17.
Aviso
A função FZIP tem um limite de trabalho com arquivos de até 4GB (4.294.967.296 bytes).
Exemplos
user function exemplo() files := { "\testing\gps.bmp", "\testing\receita.bmp" } nret := FZip( "\imagens.zip", files ) if nret != 0 conout( "Não foi possível criar o arquivo zip" ) else conout( "Arquivo zip criado com sucesso" ) endif nret := FZip( "\testing\imgs.zip", files, "\testing\", "123456" ) if nret != 0 conout( "Não foi possível criar o arquivo zip" ) else conout( "Arquivo zip criado com sucesso" ) endif return
Veja também
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas