web-dev-qa-db-ja.com

ファイルまたはアセンブリを読み込めませんでした 'CrystalDecisions.ReportAppServer.CommLayer、バージョン= 13.0.2000.0

私は単純なプロジェクトを開発しました。クリスタルレポートを印刷する必要があります。プロジェクトはローカルマシンで非常に良好に実行されますが、Webホスティングサーバーでこれを起動すると、クリスタルレポートの表示時にエラーが表示されます。

ファイルまたはアセンブリ 'CrystalDecisions.ReportAppServer.CommLayer、バージョン= 13.0.2000.0、Culture = neutral、PublicKeyToken = 692fbea5521e1304'またはその依存関係の1つをロードできませんでした。システムは、指定されたファイルを見つけることができません。説明:現在のWebリクエストの実行中に未処理の例外が発生しました。エラーの詳細とコードのどこで発生したかについては、スタックトレースを確認してください。

例外の詳細:System.IO.FileNotFoundException:ファイルまたはアセンブリ 'CrystalDecisions.ReportAppServer.CommLayer、Version = 13.0.2000.0、Culture = neutral、PublicKeyToken = 692fbea5521e1304'またはその依存関係の1つを読み込めませんでした。システムは、指定されたファイルを見つけることができません。

ソースエラー:

現在のWeb要求の実行中に、未処理の例外が生成されました。例外の発生元と場所に関する情報は、以下の例外スタックトレースを使用して特定できます。

アセンブリロードトレース:次の情報は、アセンブリ 'CrystalDecisions.ReportAppServer.CommLayer、バージョン= 13.0.2000.0、Culture = neutral、PublicKeyToken = 692fbea5521e1304'をロードできなかった理由を判断するのに役立ちます。

WRN:アセンブリバインディングログはオフになっています。アセンブリバインドエラーログを有効にするには、レジストリ値[HKLM\Software\Microsoft\Fusion!EnableLog](DWORD)を1に設定します。注:アセンブリバインドエラーログに関連するパフォーマンスの低下があります。この機能をオフにするには、レジストリ値[HKLM\Software\Microsoft\Fusion!EnableLog]を削除します。

誰でも助けてください.....

13

コメントで言ったように、crystaldecisions.reportappserver.commlayer.dllは、サーバーにコピー/存在しません。そのため、dllを手動でコピーしてBinフォルダに貼り付ける必要があります

Visual StudioプロジェクトからDLLをコピーするには、次の手順を実行します

1。プロジェクトの参照階層を展開します(プロジェクトはデバッグモードにしないでください)

2.特定のDll(あなたの場合はcrystaldecisions.reportappserver.commlayer.dll)[プロパティ]を選択し、[ローカルのコピー]属性を[〜#〜] true [〜#〜]に設定します

3プロジェクトをビルドします。 DLLはBINフォルダーにあります。

enter image description here

7
KanisXXX

新しいラップトップ(Windows 10)に移動した後も同じエラーが発生しました。上記のようにCopy Localをtrueに設定することに加えて、他のすべてが64ビット環境で実行するように設定されていても、.Net Framework用のCrystal Reports 32ビットランタイムエンジンをインストールする必要がありました。お役に立てば幸いです。

Windows Control Panel - Programs and Features

7
Mike

各crystaldecisionsファイルバージョンのWeb構成を編集して、dllファイルと同じバージョンにします(rghtからクリックし、ソリューションエクスプローラーからプロパティから選択します)。 crystaldecisions.reportappserver.commlayer.dll-> 13.0.2000.0クリスタルレポートをCRforVS_13_0_21にアップグレードした後、編集して---> 13.0.35.00.0

2
Khaled Elt

私は同じ問題に直面し、次の手順を使用してそれを解決しました

1)ソリューションエクスプローラーで右側に移動
2)Project Nameをクリックします
3)Referenceをクリックします
4)一部のDLLに黄色のシンボルが表示されます
5)DLL)を右クリックして、Propertyに移動します。
6)Specific Version = Trueを検索し、Specific Version = Falseに置き換えます

また、Copy Local = FalseCopy Local = Trueに変更します

1
samir pathan

最初のプレートでは、以下を確認する必要があります:

  • 1)Crystal Reports SDKの適切なバージョンをインストールします=> http://downloads.i-theses.com/index.php?option=com_downloads&task=downloads&groupid=9&id=101 (例えば)
  • 2)dllへの参照を追加=> crystaldecisions.reportappserver.commlayer.dll
1
AllmanTool

どういうわけか、間違ったバージョンのDLLがプロジェクトに登録されました。

  • プロジェクトからCrystal Report dllへの3つの参照を削除しました。 Crystal DLLs
  • [参照]を右クリックし、[参照の追加]をクリックします
  • ポップアップウィンドウで、左側の[参照]メニューをクリックし、[参照]ボタン Reference Manager
  • DLLが存在するディレクトリウィンドウ(おそらくアプリケーションのbinディレクトリ)で、3つのCrystal Reports DLLを選択し、[追加]をクリックします。 DLLs
  • [参照マネージャー]ウィンドウに戻り、3つのCrystal dllの左側の最初の列をクリックし、[OK]をクリックします enter image description here
  • この時点で、Crystal Reportsが再び機能するはずです。
0
Glenn Gordon