Páginas

quarta-feira, 25 de maio de 2011

visual studio -> erro: mfc90d.dll não encontrado

Recentemente eu precisei executar um exemplo em MFC/C++ no Visual Studio 2008. O problema é que o projeto havia sido criado no Visual Studio 2005 para uma plataforma diferente.

Quem quiser baixar o projeto aqui o link: http://msdn.microsoft.com/en-us/library/zz9355ha%28v=vs.80%29.aspx   (Achei muito interessante porque tem um botão personalizado uando o MFC. Procurei por isso por um bom tempo) 

Durante a compilação do projeto encontrei os seguintes erros:
error LNK1104: cannot open file 'mfc90d.lib'
error LNK1112: module machine type 'X86' conflicts with target machine type 'IA64'

Para quem estiver com problemas para rodar programas em C++ feitos em versões anteriores do visual studio aqui vai uma dica:

Clique no menu:
Project > Properties

Clicar no botão "Configuration Mananger" e escolher "Active Solution Plataform" como "Win32"


na guia "Linker > General"

em "Add Library Directories" adicione o valor:
"C:\Arquivos de programas\Microsoft Visual Studio 9.0\VC\atlmfc\lib\"
 
na quia "Linker > Advanced" na opção "Target Machine" selecione "MachineX86(MACHINE/X86)"

Com isso eu consegui compilar e executar o projeto com sucesso!

Um comentário:

  1. Aqui uma coisa interessante sobre o MFC/C++. No seguinte endereço tem uma hierarquia de todos os controles do MFC:

    http://msdn.microsoft.com/en-us/library/ws8s10w4%28v=VS.90%29.aspx.

    O botão que eu estava falando é o "CBitmapButton".

    ResponderExcluir