I have updated a VS2005 project to VS2010. Iu2019ve downloaded and installed CRforVS_13_0 and CRforVS_clickonce_13_0.
This application has a CrystalReportViewer control on a form.
Sign the ClickOnce manifests is checked on the Signing page.
On Advanced Compiler Settings Iu2019m targeting .NET framework 4.0 and Target CPU = x86.
My only Crystal references are:
CrystalDecisions.CrystalReports.Engine CrystalDecisions.Shared CrystalDecisions.Windows.Forms
On the Publish/Application Filesu2026 screen Iu2019ve selected the following Crystal dlls:
CrystalDecisions.CrystalReports.Engine.dll CrystalDecisions.Shared.dll CrystalDecisions.Windows.Forms.dll
On the Publish/Prerequisites screen Iu2019ve selected:
.NET Framework 2.0 Microsoft .NET Framework 4 (x86 and x64) Microsoft Data Access Components 2.8 SAP Crystal Reports Runtime Engine for .NET Framework 4.0 Windows Installer 3.1 (Iu2019ve also tried 4.5)
The application runs fine on my development machine and I can view Crystal reports.
I publish to a shared folder on a server where client PCs access updates to the application. The Install folder contains:
Application Files crystal reports for .net framework 4.0 >CRRuntime_32bit_13_0.msi >CRRuntime_64bit_13_0.msi dotnetfx dotnetfx40 mdac28 windowsinstaller3_1 (and 4_5 from my prior testing) the application setup.exe
When I try to view a Crystal Report from a client PC, I receive the following error:
Exception Source: CrystalDecisions.CrystalReports.Engine Exception Type: System.IO.FileNotFoundException Exception Message: Could not load file or assembly 'CrystalDecisions.ReportAppServer.CommLayer, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304' or one of its dependencies. The system cannot find the file specified. Exception Target Site: .cctor
If I add a reference to CrystalDecisions.ReportAppServer.CommLayer I get the following warning:
A reference was created to embedded interop assembly 'CrystalDecisions.ReportAppServer.CommLayer' because of an indirect reference to that assembly from assembly 'CrystalDecisions.CrystalReports.Engine'. Consider changing the 'Embed Interop Types' property on either assembly
I tried removing the reference and just adding CrystalDecisions.ReportAppServer.CommLayer as a prerequisite but then I get an error when I try to run the application on the client PC that says CrystalDecisions.ReportAppServer.CommLayer is not in the GAC.
I have been fighting with this for days now. Can someone tell me what Iu2019m doing wrong?