Perguntas Freqüentes (FAQ)

Dúvidas Freqüentes de Usuários

Posso usar 7-Zip em uma Organização Comercial?

Sim, o 7-Zip é um software livre. Você pode usar em qualquer computador. Você não precisa registrar ou pagar pelo 7-Zip.

Como posso associar arquivos com o 7-Zip no Windows 7 e no Windows Vista?

Você precisa executar o 7-Zip File Manager em modo de Administrador. Clique com o botão direito no ícone do of 7-Zip File Manager, e então clique em Executar como administrador. Assim, você poderá mudar as associações de arquivos e outras opções.

Por que os arquivos 7z criados pela nova versão do 7-Zip podem ser maiores que os criados pela versão antiga do 7-Zip?

As novas versões do 7-Zip (a partir da versão 15.06) usam outra ordenação padrão de arquivos por padrão, para arquivos 7z sólidos.

Versões anteriores do 7-Zip (antes da 15.06) usavam ordenação "por tipo" ("por extensão do arquivo ").

As novas versões do 7-Zip aceitam os dois tipos de ordenamento de arquivos:

  • ordenação por nome - por default.
  • ordenação por tipo, se 'qs' for especificado no campo de Parâmetros na janela "Adicionar ao arquivo", (ou a opção -mqs para a versão de linha de comando).

Você pode conseguir uma diferença bem grande na taxa de compressão para tipos diferentes de ordenação, se o tamanho do dicionário for menor que o tamanho total dos arquivos. Se há arquivos similares em pastas diferentes, a opção de ordenar "por tipo" pode lhe trazer taxas de compressão melhores em alguns casos.

Note que ordenar "por tipo" tem algumas desvantagens. Por exemplo, volumes NTFS usam a ordenação "por nome", de modo que, se um arquivo for criado com outra opção, a velocidade de algumas operações para arquivos com ordenação fora do normal pode cair em HDDs (HDDs têm velocidade baixa para operações "seek").

Você pode aumentar a taxa de compressão com os seguintes métodos:

  • Aumentar o tamanho do dicionário. Isso pode ajudar quanto 'qs' não é usado.
  • Especificar a opção 'qs' no campo Parâmetros (ou usar -mqs para a versão de linha de comando).

Se você acha que a ordenação não usual não é problema para você, e se uma compressão melhor, com dicionário menor, é mais importante, use o 'qs'.

 

Por que o 7-Zip não pode abrir alguns arquivos ZIP?

Em 99% dos casos isso significa que o arquivo contém cabeçalhos incorretos. Um arquivo ZIP tem 2 cópias dos cabeçalhos. O 7-Zip lê as duas cópias e não abre arquivos que têm dados incorretos nos cabeçalhos.Outros programas de ZIP podem abrir alguns arquivos incorretos, já que geralmente esses programas só lêem uma das cópias dos cabeçalhos, ou apenas ignoram esses erros.

Então, se você tem um arquivos assim, por favor não chame os desenvolvedores do 7-Zip por causa disso. Tente encontrar o programa que foi usado para criar o arquivo e envie informações sobre esse programa aos desenvolvedores daquele programa, avisando que o programa não é compatível com ZIP.

Também, agora existe uma extensão ao formato ZIP para suporte a encriptação forte (AES). O 7-Zip ainda não o suporta. Será implementado mais tarde.

Por que o 7-Zip não consegue abrir alguns arquivos RAR?

O 7-Zip ainda não suporta o novo formato RAR 5. O 7-Zip suporta somente os formatos RAR 2/3/4.

Por que a extração de arquivos arrastando-e-soltando do 7-Zip para o Explorer usa arquivos temporários?

O 7-Zip não sabe o caminho final para onde você soltou os arquivos. Só o Windows Explorer sabe o caminho exato. E o Windows Explorer precisa dos arquivos como arquivos descompactados no arquivo. Assim, o 7-Zip extrai tudo para o diretório temporário e notifica o Windows Explorer sobre esses arquivos. E aí, o Windows Explorer copia os arquivos para o local final.

Para evitar a utilização de arquivos temporários, você pode usar o comando "Extrair" do 7-Zip, ou utilizar o "arrastar-e-soltar" do 7-Zip para o próprio 7-Zip.

Por que a versão de linha de comando não adiciona arquivos que não têm extensão?

Você provavelmente usou "*.*". O 7-Zip não usa o parse do sistema para os caracteres coringas e o 7-Zip não segue aquela regra arcaica em que *.* significa qualquer arquivo. O 7-Zip trata *.* como qualquer arquivo que tenha qualquer extensão. Para processar todos os arquivos, você tem que usar * ou não usar nada.

Por que a opção -r não funciona como esperado?

Na maioria dos casos, você não precisa da opção -r. O 7-Zip pode compactar subdiretórios mesmo sem essa opção.

Exemplo 1:

  7z.exe a c:\a.7z "C:\Program Files"

compacta o diretório "C:\Program Files" completamente, incluindo todos os subdiretórios.

Exemplo 2:

  7z.exe a -r c:\a.7z "C:\Program Files"

procura e compracta o "Program Files" em todos os subdiretórios de C:\ (por exemplo, em "C:\WINDOWS").

Se você precisa de compactar somente arquivos com alguma extensão específica, você pode usar o -r:

  7z a -r c:\a.zip c:\dir\*.txt 

compactar todos os arquivos *.txt da pasta c:\dir\ e de todos seus subdiretórios.

Como posso armazenar o caminho completo de um arquivo dentro do arquivo compactado?

O 7-Zip armazena somente caminhos relativos dos arquivos (sem a letra do drive). Você pode mudar o diretório atual par ao diretório que seja comum para todos os arquivos que você quer compactar e então usar caminhos relativos:

  cd /D C:\dir1\    7z.exe a c:\a.7z file1.txt dir2\file2.txt  

Por que o 7-Zip não pode usar o dicionário grande em Windows de 32 bits?

O Windows de 32 bits aloca apenas 2 Gb de espaço virtual para cada aplicação. Além disso, esse bloco de 2Gb pode ser fragmentado (por exemplo, por algum arquivo DLL), de modo que o 7-Zip não pode alocar um bloco grande contínuo de espaço virtual. Não existem essas limitações no Windows de 64 bits. Então, você pode usar qualquer dicionário no Windows x64, se você tiver memória RAM física suficiente.

Como instalar o 7-Zip em modo silencioso?

Para o instalador exe: Use o parâmetro "/S" para fazer uma instalação silenciosa e o parâmetro "/D=dir" para especificar o "diretório de saída". Essas opções precisam estar em maiúsculas (faz diferença). O 7-Zip usa o instalador NSIS da Nullsoft.

Para o instalador msi: Use os parâmetros /q INSTALLDIR="C:\Program Files\7-Zip".

Como faço para recuperar arquivo 7z corrompido?

Existem algumas possibilidades quando um arquivo está corrompido:

  • Você consegue abrir o arquivo e ver a lista de arquivos, mas quando tenta "Extrair" ou "Testar", ele dá os erros de "Data Error" ou "CRC Error"
  • Quando você abre o arquivo, você recebe a mensagem "Can not open file 'a.7z' as archive"

É possível recuperar alguns dados. Leia sobre o procedimento de recuperação nesse link:

Recover corrupted 7z archive

 

Dúvidas Freqüentes de Desenvolvedores

Por que é que quando eu compilo o 7-Zip ou o LZMA SDK com o Visual C++ 6.0, existem alguns erros de linkagem?

Para compilar os fontes você precisa do Visual c++ 6.0, ou uma versão mais nova. Para compilar alguns arquivos você também precisa do novo Platform SDK do site da Microsoft:

http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm or http://www.microsoft.com/msdownload/platformsdk/sdkupdate/

Se você usar o MSVC6, especifique os diretórios do SDK no topo das listas de diretórios "Include Files" e "Library Files", no menu "Tools / Options / Directories".

A versãomais recente do Platform SDK não é compatível com MSVC6. Assim, você deve usar o Windows Server 2003 PSDK (Fevereiro/2003) com MSVC6.

Posso usar algum EXE ou DLL do 7-Zip numa Aplicação Comercial?

Sim. Mas nesse caso você precisa especificar em algum lugar na documentação (1) que você usou partes do 7-Zip, (2) que o 7-Zip está sob licença GNU LGPL e (3) linkar para www.7-zip.org, onde o código fonte do 7-Zip pode ser encontrado.

Como adicionar suporte para arquivos 7z na minha aplicação?

Um modo é usar o 7za.dll (disponível para download no site no SourceForge). O 7za.dll funciona via interfaces COM. Contudo, ele não usa interfaces padrão COM para criação de objetos. Você pode encontrar um pequeno exemplo no código fonte. O exemplo completo é o próprio 7-Zip, já que o 7-Zip usa aquela dll também. Agora, existem umas aplicações que usam o 7za.dll: WinRAR, PowerArchiver e outros.

Outro modo é chamar a versão de linha de comando: 7za.exe.

Posso usar o código fonte do 7-Zip numa Aplicação Comercial?

O 7-Zip está sob a licença GNU LGPL. Então, você deve seguir as regras daquela licença. Resumindo, ela quer dizer que qualquer código sob a LGPL deve continuar sob LGPL. Por exemplo, você pode mudar o código do 7-Zip ou escrever um wrapper para algum código do 7-Zip e compilar para uma DLL. Mas o código fonte daquela DLL (incluindo suas modificações / adições / wrapper) deve estar sob a LGPL ou GPL.Outro código de sua aplicação pode estar sob qualquer outra licença. Tal esquema permite aos usuários e desenvolvedores mudar códigos sob LGPL e recompilar uma DLL. Essa é a idéia do software livre. Leia mais aqui: http://www.gnu.org/. Veja também informações sobre o LZMA SDK, que está disponível sob licenças mais liberais.


Copyright (C) 2016 Igor Pavlov
Portuguese Version by Renato Nunes Bastos