Eu estou trabalhando em um novo utilitário a pedido de um amigo. Eu uso XP e ele o Seven x64. Tudo ia bem até eu criar a pedido dele uma "shell extension" para tornar meu programa acessível pelo menu de contexto do Explorer.
No Seven x64, a extensão é instalada, mas o item não aparece. Testei no Seven x86 e aparece.
Uma rápida pesquisa e descobri a razão. Minha DLL (extensões do shell tem que ser DLLs) é naturalmente de 32 bits. E DLLs de 32 bits não podem ser carregadas por um programa de 64 bits (o Explorer x64) e vice-versa:
http://stackoverflow.com/questions/2631807/context-menu-shell-extension-not-working-under-windows-7-64-bit
Mas eu só uso Delphi 5 e Delphi 7. E nenhum dos dois parece ser capaz de criar DLLs de 64 bits.
Acabo de verificar, no XP, que o tamanho real do diretório é 1.38GB. O doido do Seven errou duas vezes ao calcular o tamanho. A medição errada de 937MB eu obtive nas propriedades do diretório, dentro do Seven. Mas não me pergunte por que apenas no destino ele mediu o tamanho corretamente.