abbiamo un'applicazione scritta in .NET 4.0 che utilizza questo SAP Crystal Reports. Mentre la stessa build (x86) funziona perfettamente OK in Windows 2003/2008 (entrambi x86/x64) con .NET 4.0 framework installato (x86) e CrystalReports runtime installati (pagina a partire da pagine SAP http://scn.sap.com/docs/DOC-7824) utilizzando 13.0.1.x (32bit_13_0_1.msi).Impossibile caricare il file o l'assembly 'CrystalDecisions.CrystalReports.Engine'/Windows 2012 server
Quando la stessa roba è installata nel server MS 2012 (x64), è già preinstallato .NET Framework 4.5, quindi non ho potuto installare .NET 4.0, tuttavia sembra che sia retrocompatibile, perché il l'applicazione funziona correttamente, ad eccezione della parte di Crystal Reports, in cui l'applicazione genera un'eccezione.
Impossibile caricare il file o l'assembly 'CrystalDecisions.CrystalReports.Engine, Versione 10.5.3700.0, culture = neutro, PublicKeyToken = blahblah' o una delle sue dipendenze. Il sistema non trova il file specificato.
Ovviamente i runtime sono installati, ma per qualche motivo la nostra applicazione non è in grado di riconoscere quelle DLL. Personalmente non penso che sia un problema di build visto che funziona correttamente con la stessa configurazione nel server 2003/2008.
Abbiamo installato solo la versione di rilascio, quindi non sono disponibili opzioni di debug, né VS è installato.
In pratica eseguiamo solo alcuni test se l'applicazione funziona correttamente nel server 2012, ma questo problema sembra impossibile da risolvere. Ho trascorso ore su Google senza alcun risultato. Quindi, qualsiasi idea di cosa da controllare è altamente apprezzato :)
Grazie Tomas
Modifica
Soluzione: installare vecchie tempi di esecuzione 2008.
causa root: sul nostro computer di costruzione abbiamo entrambi i runtime installati (dobbiamo supportare anche le versioni precedenti). Nei file proj gli assembly CR non sono specifici della versione di riferimento, solo per il nome. Durante il processo di compilazione, quindi, è stato utilizzato il primo assemblaggio di accoppiamento più basso di GAC e quindi la necessità di installare anche CR 2008. La soluzione è fare riferimento agli assembly di terze parti nei file di progetto anche per versione per forzare l'utilizzo di quelli più recenti.
Ok, risolto. Usando "gacutil/lr" ho capito che il CR utilizzato per la build era per VS 2008. Installare runtime più vecchi risolveva questo problema. – TomKyblik