Hoje eu tive um problema ao tentar migrar um projeto desenvolvido no Visual Studio 2008 para o Visual Studio 2010.
A migração do projeto em si do Visual Studio 2008 para o 2010 foi tranquilo, não tive nenhum alerta ou erro. Isso se deve às boas práticas no desenvolvimento do projeto.
No entanto, um dos projetos da solução estava com 2 referências não localizadas do Crystal Reports XI: CrystalDecisions.CrystalReports.Engine e a CrystalDecisions.Shared. Logo pensei que fosse algo simples. Simplesmente tentar fazer novamente a referência pra ver se o Visual Studio 2010 reconhece. Depois de algumas tentativas, nada fazia reconhecer essas bibliotecas.
E agora? Qual seria a solução? Vamos pesquisar...Depois de alguns cliques, achei uma solução que seria instalar a versão beta 2 do Crystal Reports For Visual Studio 2010. Mas instalar uma biblioteca Beta 2 em um projeto que está em produção, não tem nenhum cabimento. Impossível! Mais alguns cliques e achei uma solução no Microsoft Connect, agora sim, algo interessante. Então vamos lá.
Vou ser bem direto como fazer pra resolver o problema sem ficar apanhando com as versões do Crystal Reports, porque esse tempo eu já perdi.
Abaixo segue os passos:
-
Abra no explorer o caminho %WINDIR%\Microsoft.NET\Framework\v2.0.50727\RedistList
-
Crie uma cópia do arquivo CrystalReportsList2008.xml no mesmo diretório e renomeie para CrystalReportsListXI.xml
-
Edite o arquivo CrystalReportsListXI.xml, no meu caso eu eu alterei as referências de 10.5.3700.0 para 11.5.3700.0
-
Agora no framework 3.5 ou 4.0, crie a pasta RediList (%WINDIR%\Microsoft.NET\Framework\v3.5\RedistList) e copie o arquivo CrystalReportsListXI.xml.
-
Pronto, dê um refresh no seu projeto e a referência estará atualizada.
;)