作成日: 2014/01/17 最終更新日: 2014/01/17
文書種別
使用方法
詳細
.NET製品を使用したアプリケーションの実行には、製品のランタイムファイル(アセンブリのDLLファイル)が必要です。そのため、アプリケーションを運用環境へ配布する際は、製品のランタイムファイルも一緒に配布する必要があります。
ランタイムファイルの配布に何らかの問題がある場合、アプリケーションの実行時に「ファイルまたはアセンブリ名 'xxx'、またはその依存関係の 1 つが読み込めませんでした。(Could not load file or assembly 'xxx' or one of its dependencies.)」というエラーが発生します。本エラーの発生原因と対処方法について説明します。
※ ランタイムファイルの具体的なファイル名、インストールされている場所、配布方法などの詳細については、各製品に付属している製品ヘルプの「配布」に関する項目(「アプリケーションの配布」「ランタイムファイルの配布」など)を参照してください。製品ヘルプは、スタートメニューなどから表示できます。
ランタイムファイルの配布に何らかの問題がある場合、アプリケーションの実行時に「ファイルまたはアセンブリ名 'xxx'、またはその依存関係の 1 つが読み込めませんでした。(Could not load file or assembly 'xxx' or one of its dependencies.)」というエラーが発生します。本エラーの発生原因と対処方法について説明します。
※ ランタイムファイルの具体的なファイル名、インストールされている場所、配布方法などの詳細については、各製品に付属している製品ヘルプの「配布」に関する項目(「アプリケーションの配布」「ランタイムファイルの配布」など)を参照してください。製品ヘルプは、スタートメニューなどから表示できます。
- アセンブリのDLLファイルが配布されていない
【エラーメッセージ】
「ファイルまたはアセンブリ名 'xxx'、またはその依存関係の 1 つが読み込めませんでした。指定されたファイルが見つかりません。」
「Could not load file or assembly 'xxx' or one of its dependencies. The system cannot find the file specified.」
【原因】
アプリケーションが、使用している製品のランタイムファイルを見つけられない場合、本エラーが発生します。
【対処方法】
製品のランタイムファイルを、アプリケーションから参照可能な、運用環境の適切な場所(アプリケーションのEXEやDLLと同じフォルダ、またはグローバルアセンブリキャッシュなど)に配置してください。
- DLLファイルのアセンブリバージョンが異なる
【エラーメッセージ】
「ファイルまたはアセンブリ名 'xxx'、またはその依存関係の 1 つが読み込めませんでした。見つかったアセンブリのマニフェスト定義はアセンブリ参照に一致しません。」
「Could not load file or assembly 'xxx' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference.」
【原因】
運用環境に配布されているランタイムファイルのアセンブリバージョンが、アプリケーションのビルド時に参照されていたバージョンと異なる場合、本エラーが発生します。
たとえば、製品のサービスパック適用によりアセンブリバージョンが更新された場合、適用後にビルドしたアプリケーションを実行するには、そのバージョンのDLLファイルが必要です。そのため、サービスパック適用時には、アセンブリのDLLファイルもあらためて配布しなおす必要があります。
【対処方法】
アプリケーションのビルド時に参照されていたアセンブリのバージョンを確認し、同じバージョンのDLLファイルを運用環境に配布してください。
- DLLファイルの対象プラットフォーム(32bit/64bit)が異なる
【エラーメッセージ】
「ファイルまたはアセンブリ名 'xxx'、またはその依存関係の 1 つが読み込めませんでした。間違ったフォーマットのプログラムを読み込もうとしました。」
「Could not load file or assembly 'xxx' or one of its dependencies. An attempt was made to load a program with an incorrect format.」
【原因】
一部の製品では、32ビット(x86)環境と64ビット(x64)環境のそれぞれに対応した専用のランタイムファイルが用意されており、運用環境に合わせて適切なファイルを配布する必要があります。たとえば、32ビット環境用のDLLファイルを64ビット環境に配布した場合、本エラーが発生します。
【対処方法】
運用環境のプラットフォームに合わせ、適切なランタイムファイルを配布してください。
関連情報
旧文書番号
31591