Visual Studio で 64ビット版のASP.NET を実行すると「ファイルまたはアセンブリ、またはその依存関係の1つが読み込めませんでした。間違ったフォーマットのプログラムを読み込もうとしました。」エラーが発生する

Visual Studio で 64ビット版のASP.NET を実行すると「ファイルまたはアセンブリ、またはその依存関係の1つが読み込めませんでした。間違ったフォーマットのプログラムを読み込もうとしました。」エラーが発生することがあります。この記事では対策について紹介します。

現象

構成マネージャーで64ビット版のASP.NETプロジェクトを作成します。(デフォルトではany cpuの設定になっています。)
Visual Studio で 64ビット版のASP.NET を実行すると「ファイルまたはアセンブリ、またはその依存関係の1つが読み込めませんでした。間違ったフォーマットのプログラムを読み込もうとしました。」エラーが発生する:画像1

x64の構成でビルドしてASP.NETプロジェクトを実行します。
Visual Studio で 64ビット版のASP.NET を実行すると「ファイルまたはアセンブリ、またはその依存関係の1つが読み込めませんでした。間違ったフォーマットのプログラムを読み込もうとしました。」エラーが発生する:画像2

下図の「ファイルまたはアセンブリ、またはその依存関係の1つが読み込めませんでした。間違ったフォーマットのプログラムを読み込もうとしました。」エラーが発生しASP.NETプロジェクトを実行できません。
Visual Studio で 64ビット版のASP.NET を実行すると「ファイルまたはアセンブリ、またはその依存関係の1つが読み込めませんでした。間違ったフォーマットのプログラムを読み込もうとしました。」エラーが発生する:画像3

原因

Visual Studioでのデバッグ時に利用するIIS Expressがデフォルトの状態では、32ビット版であり、64ビットのASP.NETバイナリを実行できないため。

対策

以下の対策があります。

対策1 : Visual Studioの設定を変更

Visual Studioの[ツール]メニューの[オプション]を選択します。
Visual Studio で 64ビット版のASP.NET を実行すると「ファイルまたはアセンブリ、またはその依存関係の1つが読み込めませんでした。間違ったフォーマットのプログラムを読み込もうとしました。」エラーが発生する:画像4

下図のオプションウィンドウが表示されます。
Visual Studio で 64ビット版のASP.NET を実行すると「ファイルまたはアセンブリ、またはその依存関係の1つが読み込めませんでした。間違ったフォーマットのプログラムを読み込もうとしました。」エラーが発生する:画像5

左側のツリービューで、[プロジェクトおよびソリューション]カテゴリ内の[Webプロジェクト]を選択します。下図の画面が表示されます。
Visual Studio で 64ビット版のASP.NET を実行すると「ファイルまたはアセンブリ、またはその依存関係の1つが読み込めませんでした。間違ったフォーマットのプログラムを読み込もうとしました。」エラーが発生する:画像6

右側の[Webサイトおよびプロジェクト用 IIS Express の 64ビットバージョンを使用する]にチェックをつけます。設定が完了したら[OK]ボタンをクリックし、オプションウィンドウを閉じます。
Visual Studio で 64ビット版のASP.NET を実行すると「ファイルまたはアセンブリ、またはその依存関係の1つが読み込めませんでした。間違ったフォーマットのプログラムを読み込もうとしました。」エラーが発生する:画像7

ASP.NETプロジェクトを実行すると、64ビット版のIIS Expressが利用されるため、64ビットのASP.NETプロジェクトが正しく実行されます。
Visual Studio で 64ビット版のASP.NET を実行すると「ファイルまたはアセンブリ、またはその依存関係の1つが読み込めませんでした。間違ったフォーマットのプログラムを読み込もうとしました。」エラーが発生する:画像8

対策2 : レジストリの設定を変更

上記の設定をレジストリエディタでレジストリを直接編集できます。

レジストリエディタを起動します。
HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio\14.0\WebProjects
キーを開きます。
キー内の"Use64BitIISExpress"の値を確認します。32ビット版のIIS Expressが利用される場合は、値が"0"になっています。
Visual Studio で 64ビット版のASP.NET を実行すると「ファイルまたはアセンブリ、またはその依存関係の1つが読み込めませんでした。間違ったフォーマットのプログラムを読み込もうとしました。」エラーが発生する:画像9

64ビット版のIIS Expressを利用する場合は、Use64BitIISExpress"の値を"1"に変更します。
Visual Studio で 64ビット版のASP.NET を実行すると「ファイルまたはアセンブリ、またはその依存関係の1つが読み込めませんでした。間違ったフォーマットのプログラムを読み込もうとしました。」エラーが発生する:画像10

ASP.NETプロジェクトを実行し、エラーが表示されないことを確認します。

AuthorPortraitAlt
著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
作成日: 2015-10-29
Copyright © 1995–2025 iPentec all rights reserverd.