Meu ambiente C ++ preferido atualmente é a edição gratuita e amplamente excelente do Microsoft Visual Studio 2005 Express. De vez em quando, envio arquivos .exe de lançamento para outras pessoas com resultados agradáveis. No entanto, recentemente fiz a descoberta perturbadora de que os resultados satisfatórios foram baseados em mais sorte do que eu gostaria. A tentativa de executar um desses programas em uma caixa XP antiga (vintage de 2001, não cuidadosamente atualizada) não me deu nada além de uma mensagem desagradável "O sistema não pode executar x.exe" (ou semelhante).
Algumas pesquisas no Google revelaram que, com esse conjunto de ferramentas, até mesmo a especificação de links estáticos resulta em um simples hello-world.exe, na verdade, contando com arquivos .dll extras (msvcm80.dll etc.). Um sistema de esquema de versões incrivelmente elaborado (arquivos de manifesto, alguém?) Não permitirá que o .exe seja executado sem exatamente as versões .dll corretas. Eu não quero ou preciso dessas coisas, eu só quero um antigo .exe autocontido que não faz nada além de operações Win32 de menor denominador comum e roda em qualquer sistema operacional win32 antigo.
Alguém sabe se é possível fazer o que quero fazer com meu conjunto de ferramentas existente?
Obrigado.