WPFアプリケーションがあります。ビルド中に次のエラーが表示されます。
ファイルまたはアセンブリ、またはその依存関係のいずれかをロードできませんでした。パラメータが正しくありません。 (HRESULTからの例外:0x80070057(E_INVALIDARG))
アプリケーションは(デバッグフォルダーとして)仮想ドライブからアセンブリをロードしようとしています
例:[subst r:c:[my Assembly bin pth]
以前、c:\ binをネットワークドライブとしてマウントしていて、次のエラーが発生していました。
このアセンブリは、Webからダウンロードされた可能性があります。アセンブリがWebからダウンロードされている場合、ローカルコンピューター上に存在する場合でも、WindowsによってWebファイルとしてフラグが付けられます。これにより、プロジェクトで使用できなくなる場合があります。ファイルのプロパティを変更すると、この指定を変更できます。信頼できるアセンブリのみブロックを解除してください。詳細については、 http://go.Microsoft.com/fwlink/?LinkId=179545 を参照してください。
編集:ところで、プロパティウィンドウに[ブロックを解除]ボタンが見つかりません。
次の場所にあるプロジェクトの一時的なフレームワークファイルをクリアします。
Windows 7の場合、パスは次のとおりです。
C:\Users\[username]\AppData\Local\Temp\Temporary ASP.NET Files\
パスに「フレームワーク」がある64ビットシステムの場合、フルパスは次のとおりです。
C:\WINDOWS\Microsoft.NET\Framework64\v2.0.50727\Temporary ASP.NET Files\
以下のパスからすべての一時ファイルを削除しても機能します。Webサーバーでホストされている開発サイトを保存します(HRESULT:0x80070057(E_INVALIDARG))
C:\ WINDOWS\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files \
これは、構築中にブルースクリーンが表示されたときに起こりました。
パッケージとbinフォルダーを削除し、TFSから取得する必要がありました
その時、私は次の場所に何もありませんでした...
C:\ Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files
解決するには、Visual Studioをデバッグモードに設定し、上記のディレクトリを監視します。表示されたファイルを削除すると、アプリが再び動作し始めました。
新しいDevマシンを探し始めましょう。
WCFサービスの構築中にWindows 8ブルースクリーンエラーが発生した後、この問題が発生していました。上記の提案をすべて試しましたが、問題は解決しませんでした。
最後に、同じwcfプロジェクトでIISから新しいアプリケーションを削除して再作成しました。
その後、すべてが正常に機能します。
マウント時に取得していたエラーは、Assemblies/DLLのブロックが原因です。ダウンロードしたDLLを右クリックすると、ブロックを解除するオプションが表示されます。
「ファイルまたはアセンブリをロードできませんでした」またはその依存関係エラーの1つについては、開始クラスのコンストラクターにブレークポイントを設定し、何が原因で失敗しているかを確認します。
引用 this SO answer:
これは、COMラッパーdllを参照しているときに発生する可能性があります。
Visual Studioプロジェクトの[参照設定]で、参照されているCOMラッパーアセンブリを選択し、右クリックして設定を選択し、Embed Interop Types
およびSpecific Version
は両方ともFalse
に設定されます。