320

正確なエラーは次のとおりです

ファイルまたはアセンブリ 'Microsoft.SqlServer.Replication, Version=9.0.242.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' またはその依存関係の 1 つを読み込めませんでした。不正な形式のプログラムをロードしようとしました。

私は最近、別のプロジェクトに 2 か月間移動した後、このプロジェクトに再び取り組み始めました。以前は完全に機能していましたが、すべての参照を再確認しました。

4

12 に答える 12

405

以下の baldyの回答は正しいですが、AppPool で 32 ビット アプリケーションを有効にする必要がある場合もあります。

ソース: http://www.alexjamesbrown.com/uncategorized/could-not-load-file-or-assembly-chilkatdotnet2-or-one-of-its-dependencies-an-attempt-was-made-to-load-不正な形式のプログラム/

ローカル マシン (Vista 64 ビットを実行) で実行するアプリケーションをセットアップしているときに、次のエラーが発生しました。

ChilkatDotNet2ファイル、アセンブリ、またはその依存関係の 1 つを読み込めませんでした。不正な形式のプログラムをロードしようとしました。

明らかに、アプリケーションはChilKat コンポーネントを使用していますが、使用しているバージョンは 32 ビット バージョンのみのようです。

このエラーを解決するために、IIS でアプリケーション プールを設定して 32 ビット アプリケーションを許可しました。IIS マネージャーを開き、アプリケーション プールを右クリックして、[詳細設定] を選択します (以下を参照)。

ここに画像の説明を入力

次に、「32 ビット アプリケーションを有効にする」を True に設定します。

ここに画像の説明を入力

すべて完了!

于 2010-05-28T06:19:41.417 に答える
120

私は解決策を見つけました。最近、マシンを Windows 2008 Server 64 ビットにアップグレードしました。SqlServer.Replication 名前空間は、32 ビット プラットフォーム用に作成されました。再度実行するために必要だったのは、プロジェクト ビルド プロパティのターゲット プラットフォームを X86 に設定することだけでした。

于 2008-09-03T10:57:53.560 に答える
91

Web プロジェクトのプロパティ ページで [プラットフォーム ターゲット] の値を に変更しますAny CPU

ここに画像の説明を入力

于 2010-10-26T13:09:20.947 に答える
53

IIS に移動 -> アプリケーション プール -> 詳細設定 -> 32 ビット アプリケーションを有効にする

于 2011-10-13T09:31:56.333 に答える
24

最近、Visual Studio からコードを実行しようとしたときに問題が発生しました。その場合、
[ツール] > [オプション] > [プロジェクトとソリューション] > [WEB プロジェクト] を実行し、[Web サイトとプロジェクトに 64 ビット バージョンの IIS Express を使用する] をオンにする必要があります。

于 2015-11-05T20:15:28.930 に答える
11

Visual Studio 内のASP.NET MVC 3プロジェクトでこのエラーが発生した場合:

私が取り組んでいる ASP.NET MVC 3 アプリで、Microsoft.SqlServer.BatchParser への参照をプロジェクトに追加して、展開サーバーにない問題を解決しようとしました。(私たちのアプリは SMO を使用しています。正しい修正は、展開サーバーに SQL Server Native Client とその他のいくつかのものをインストールすることでした。)

BatchParser への参照を削除した後でも、開いたすべての ASP.NET MVC 3 ページで、BatchParser DLL を参照する「試行が行われました...」というエラーが表示され続け、そのエラーの後に何十ものページ解析が続きました。エラー。

これが発生した場合は、ファイル検索を実行して、DLL がまだプロジェクトの \bin フォルダーの 1 つにあるかどうかを確認してください。 再構築を行っても、Visual Studio は必ずしもすべての \bin フォルダー内のすべてを消去するとは限りません。ビンから DLL を削除して再度ビルドすると、エラーはなくなりました。

于 2011-06-21T13:33:05.597 に答える
3

32ビット(true)に変更すると機能します

この長さを取得する場合、ゼロ未満にすることはできません。パラメーター名: iis サーバー構成の長さの問題 SQL サーバー名やサーバー名などの web.config ファイルの接続文字列を変更し、iis を再起動してから、動作するページを読み込んでください。

于 2016-02-05T11:17:51.520 に答える