- Código fonte em Delphi (7) incluído;
- Me inspirei em Doublekiller Free (o programa que eu usava para isso) e incluí muita coisa que me fazia falta;
- Produzido com a ajuda de Gemini, Claude e ChatGPT. Ainda assim consumiu dezenas de horas e usando o código fonte como base você pode economizar bastante tempo e créditos para ter sua própria versão;
- Está em inglês porque prefiro assim, mas a pedido posso pedir ao Claude/Gemini/ChatGPT que inclua suporte a PT-BR;
- Leitores de longa data que precisarem do Delphi, me contatem no privado.
Features
- Portable – Nada é escrito no Registro;
- O programa primeiro faz uma lista de todos os arquivos com o mesmo tamanho, ordena e começa a comparar a partir dos maiores. Para aumentar a eficiência ele não não faz o hash imediatamente: um pequeno pedaço do início de cada arquivo é comparado antes para ver se os arquivos pelo menos poderiam ser o mesmo. Se passar por esse teste então faz o hash dos arquivos para comparar;
- Envia mensagens de erro e término por Telegram se você incluir as credenciais – Mensagens de erro são enviadas apenas uma vez por sessão para evitar flood. Útil quando você tem uma longa comparação a fazer e não quer ter que ficar vindo de tempos em tempos ao computador para checar o andamento;
- Suporte a Long Paths (> 260 caracteres)
- Suporte parcial a Unicode – Caracteres que não sejam ANSI não são exibidos na interface (você vai ver como um ‘?’) mas o mecanismo de comparação consegue ler normalmente;
- Você pode bloquear um ou mais diretórios para que o mecanismo não delete nada neles, mesmo que tenha achado duplicatas lá. Útil quando só o que você quer é podar cópias;
- Salva e carrega sessões automaticamente – Se você não tiver tempo de analisar os resultados e decidir o que apagar, pode fechar o programa que ao reiniciar ele vai carregar tudo de novo sem ser necessário fazer nova comparação;
- Tamanho default da janela definido em 1024×768 para que possa ser usado mesmo em máquinas antigas, mas você pode maximizar a janela para exibir mais informação;
- O log de cada sessão é automaticamente salvo. Um arquivo por dia;
- Se você rodar o programa de uma unidade somente leitura, roteia as gravações automaticamente para o perfil do usuário. Isso é informado no log;
- Você também pode rodar múltiplas instâncias a partir do mesmo diretório. O programa cria automaticamente arquivos de log e sessão individuais, mas os INI são compartilhados;
- Faz a comparação por CRC32 (compatível com pkZip) ou Murmur3-32 – Este último foi escolhido pelo Gemini e não sei explicar por que. Depois mandei Claude colocar CRC32 e mantive os dois para poder comparar o desempenho, porque qualquer outro hash diferente de CRC32 só vale a pena se for mais rápido, mas não houve diferença notável nos meus testes. Tenha em mente ao fazer sua própria análise que o cache do Windows influencia na velocidade e a primeira comparação que você faz é sempre mais demorada;
- Também compara os arquivos byte-a-byte – Mas essa é uma comparação lenta que só é necessária se você desconfia de ação de algum threat actor que possa ter modificado um arquivo sensível de tal maneira a manter o hash. Em 99.99% dos casos você deve manter a opção Trust Hash Only marcada. Hashes são suficientes para detectar modificação acidental.
Uso
Escolha um ou mais diretórios a comparar, marque o que você não quer que seja modificado e clique em Scan For Duplicates. Quando o processo terminar, marque os arquivos que quer deletar ou mover e clique na opção desejada.

Deixe um comentário