Crystal Reports API を使用してフォームを表示および印刷するデスクトップ アプリケーションをクライアントに展開しています。InstallShield 2012 を使用してインストーラーをビルドしています。すべての Crystal アセンブリと共に .NET 4.0 Framework も含めました。私には2つの(ちょっと関連した)懸念があります:
1) クライアント マシンでアプリケーションを実行しようとすると、次のエラーが表示されます。
The type initializer for 'CrystalDecisions.CrystalReports.Engine.ReportDocument'
threw an exception.
ここで何を忘れているのかわかりません。CrystalDecisions.CrystalReports.Engine
dll は GAC に正しく登録されており、他の約 10 個の Crystal アセンブリも同様です。
2) SAP フォーラムでこの質問をしたところ、.NET 4.0 Framework と共に .NET 2.0 Framework を含める必要があると言われました。インストーラー パッケージに .NET 2.0 再頒布可能ファイルを含めようとしましたが、インストーラーはそれをインストールしません。インストーラーは 4.0 がインストールされていることを認識し、2.0 のインストールをスキップしますか?