Erro ao compactar arquivos com caracteres Unicode em nomes com "enviar para> pasta compactada (zipada)" do Win7

Erro ao compactar arquivos com caracteres Unicode em nomes com "enviar para> pasta compactada (zipada)" do Win7

Quando tento compactar arquivos contendo caracteres Unicode em seus nomes, como © ou ™, recebo o seguinte erro:

[Título da janela] Erro de pastas compactadas (zipadas)

[Conteúdo] 'C:\Asd™.txt' não pode ser compactado porque inclui caracteres que não podem ser usados ​​em uma pasta compactada, como ™. Você deve renomear este arquivo ou diretório.

[OK]

Isso só se tornou um problema quando reinstalei o Windows 7. Provavelmente tive alguns recursos necessários para que esse erro fosse resolvido automaticamente, mas agora a instalação está quase limpa e não consigo compactar os arquivos. Como faço para corrigir isso?

Atualização:Já passou algum tempo desde que postei esta pergunta, instalei alguns dos meus aplicativos habituais, mas o problema ainda existe e não tenho certeza se pode ser corrigido instalando algum aplicativo específico anterior.


A compactação integrada do Windows 10 pode não ter esse problema, conforme relatado em umcomente esta pergunta.

Responder1

Se os caracteres incorretos forem de um idioma diferente do inglês, mas compatível com a Microsoft, você poderá instalar o arquivo relevantePacote de idiomas MUI (interface de usuário multilíngue)do Windows Update ou do relevanteLIP (pacote de interface de idioma)deaquicomo uma possível correção.

Além do acima, você também pode precisar alterar oLocal do sistema.

A localidade do sistema determina o conjunto de caracteres padrão (letras, símbolos e números) e a fonte usada para inserir e exibir informações em programas que não usam Unicode. Isso permite que programas não Unicode sejam executados no seu computador usando o idioma especificado. Talvez seja necessário alterar o código de idioma padrão do sistema ao instalar idiomas de exibição adicionais em seu computador. A seleção de um idioma diferente para a localidade do sistema não afeta o idioma nos menus e caixas de diálogo do Windows ou de outros programas que usam Unicode.

Para fazer isso:

  1. Digite “região” na caixa de pesquisa do Menu Iniciar (sem as aspas)

  2. Abra oRegião e IdiomaMiniaplicativo do Painel de Controle

  3. Clique noAdministrativoguia e, em seguida, em Idioma para programas não Unicode, clique emAlterar localidade do sistema. Se for solicitada uma senha de administrador ou confirmação, digite a senha ou forneça a confirmação.

  4. Selecione o idioma e clique em OK.

  5. Se você for solicitado a reiniciar o computador, clique emReinicie agorapara fazer isso.

    Win7 Alterar localidade do sistema


No entanto, se os personagens ofensores forem algo comocomo mencionado acima, não acredito que exista alguma correção oficial da Microsoft para issolimitação zipfldr.dll, que existe desde que o Windows tem esse recurso (então, se você realmentefezcorrigi-lo antes, possivelmente você instalou algum componente de terceiros). DeWikipédia:

As versões do Microsoft Windows incluem suporte para compactação zip no Explorer desde o Plus! pack foi lançado para Windows 98. A Microsoft chama esse recurso de "Pastas compactadas". Nem todos os recursos zip são suportados pelo recurso Pastas compactadas do Windows. Por exemplo, criptografia AES, arquivos divididos ou estendidos eCodificação de entrada Unicodenão são legíveis ou graváveis ​​pelo recurso Pastas compactadas no Windows XP ou versões posteriores.

O formato de arquivo ZIP não teve suporte para Unicde por muito tempo, e esta extensão só foi adicionada há 6 anos em 2006. ConformeAPÊNDICE D - Codificação de Linguagem (EFS)doEspecificação de formato de arquivo ZIP:

D.1 O formato ZIP tem historicamente suportado apenas o conjunto de codificação de caracteres original do IBM PC, comumente referido como IBM Code Page 437. Isso limita o armazenamento de caracteres de nome de arquivo apenas àqueles dentro do intervalo de valores original do MS-DOS e não suporta adequadamente nomes de arquivos em outras codificações de caracteres ou idiomas. Para resolver esta limitação, esta especificação suportará a seguinte alteração. [Leia o documento para o resto.]

Desde então, é claro, todos os principais arquivadores do Windows que implementam o formato foram atualizados para incluir suporte Unicode, começando, acredito, com o WinZip em 2008. Infelizmente, a Microsoft, por algum motivo estranho, licenciou uma biblioteca de terceiros para seu recurso Pastas compactadas (embora não seja terrivelmente difícil de codificar o suporte ZIP) e obviamente esta biblioteca é anterior à adição do Unicode ao formato de arquivo ZIP. Além disso, como um sinal claro do quanto se preocupa com esse recurso, a Microsoft não atualizou o código para corrigir esse bugaté agora(aparentemente, mesmo a nova classe System.IO.ZipArchive na versão mais recente do .Net Framework, ou seja, 4.5, não acertou inicialmente, mas o bug já foi corrigido).Acho que eles esperam que todos instalem um dos muitos arquivadores de terceiros completos disponíveis, que é exatamente o que recomendei a você acima.

Você pode ler os detalhes sórdidos sobre essa falta peculiar de suporte Unicode no Windows na seguinte série de postagens de blog da Microsoft.Michael Kaplan:


PS "Acabei de descobrir que compactar com o" enviar para "do Windows funciona tão bem quanto o" melhor "compactar do Winrar, mas muito mais rápido." - Acabei de testar isso várias vezes. Além do tempo extra necessário para abrir o WinRARAdicionar ao arquivocaixa de diálogo, selecione ZIP como formato de arquivo e pressione OK, o tempo real necessário para a compactação foi aproximadamente o mesmo para ambos, com o WinRAR demorando menos tempo em geral (embora as diferenças fossem insignificantes). Se você viu uma grande diferença, só poderia ter acontecido se você primeiro testasse o WinRAR em um conjunto de arquivos e depois compactasse imediatamente os mesmos arquivos com pastas compactadas. Naturalmente, na segunda vez, o Windows já havia armazenado os dados em cache, então o processo demorou uma fração do tempo inicial. Faça isso na ordem oposta em um conjunto de arquivos que você não tocou anteriormente durante a sessão atual do Windows e aposto que o resultado será revertido. :)

Quanto ao tamanho final compactado, dependendo dos dados/combinação de formatos de arquivo arquivados, descobri que qualquer um dos dois fez um trabalho melhor (embora novamente as diferenças fossem insignificantes). Claro, os formatos 7z ou Rar (ou mesmo ZipX do WinZip) sãodistantemelhor nesse aspecto e superará o ZIP quase qualquer dia (ou seja, ZIP usando o tradicional/legadoesvaziaralgoritmo em vez dePPMde similar).

Responder2

Eu tenho o mesmo problema. Use o gerenciador 7-zip e compacte seus arquivos e o problema estará resolvido. :)

informação relacionada