問題タブ [badimageformatexception]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
.net - IIS7.5 アプリ エラー
Web サイトにアクセスしようとすると、このメッセージが表示されます
アセンブリの単純名が空です。
説明: 現在の Web 要求の実行中に未処理の例外が発生しました。エラーの詳細とコード内のどこでエラーが発生したかについては、スタック トレースを確認してください。
例外の詳細: System.BadImageFormatException: アセンブリの単純名が空です。
ソース エラー:
現在の Web 要求の実行中に未処理の例外が生成されました。例外の発生元と場所に関する情報は、以下の例外スタック トレースを使用して特定できます。
スタックトレース:
[BadImageFormatException: アセンブリの単純名が空です。]
[BadImageFormatException: ファイルまたはアセンブリ 'System.Web.Abstractions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' またはその依存関係の 1 つを読み込めませんでした。不正な形式のプログラムをロードしようとしました。]
System.Web.UI.ScriptManager.OnInit(EventArgs e) +0
System.Web.UI.Control.InitRecursive(コントロールの名前付けコンテナー) +333
System.Web.UI.Control.InitRecursive(コントロールの名前付けコンテナー) +210
System.Web.UI.Control.InitRecursive(コントロールの名前付けコンテナー) +210
System.Web.UI.Page.ProcessRequestMain (ブール値 includeStagesBeforeAsyncPoint、ブール値 includeStagesAfterAsyncPoint) +378
バージョン情報: Microsoft .NET Framework バージョン:2.0.50727.5485; ASP.NET バージョン:2.0.50727.5491
2 つのサーバーがあり、サイトは一方のサーバーでは機能しますが、もう一方のサーバーでは機能しません
助けてください
listview - .resources ファイルでシリアル化された型は、.resources ファイルに含まれていると示された型と同じではありませんでした
大規模なプロジェクトを .NET 3.5 から .NET 4.0 にアップグレードしました。ListView からのリソースの読み込みに関するエラーを除いて、すべて正常に動作します。現在、リリースの直前であり、これは非常にブロッカーです。
これは Microsoft による既知の問題です。たとえば、こちらまたはこちらです。この問題に対する修正プログラムがありますが、.NET Framework 4.0 の利用可能なすべてのサービス パックを試しましたが、何も機能しませんでした。
We tried to install: KB2416472, KB2487367, KB2604121, KB2729449, KB2736428, KB2737019, KB2742595, KB2840628, KB2858302v2, KB2861188, KB2972106, KB2972215, KB2978125, KB2979575v2, KB3023221, KB3032662, KB3037578, KB3048074, KB3072309, KB3074547 - but without success.
修正は、4.0.30319.461 (GDR) の CLR にあるはずです。
また、デザイナーのビットを変更して、Visual Studio に強制的に .NET 4 形式に変更させようとしました。それは役に立ちません。
この問題を解決する唯一の方法は、.NET Framework 4.5.2 をインストールすることでした。しかし、Windows XP のサポートを中止したくはありません。
もう 1 つの解決策は、そのようなすべてのユーザー コントロールのLocalizableプロパティを falseに切り替えることです。私には大変な作業のように思えますが、ローカリゼーションを維持したいと考えています。そしてそれは十分ですか?妥当な時間内にリリース直前にすべてのコントロールとシナリオをテストすることはできません。
根本的な解決策はありますか?利用可能なサービス パックはありますか?
.NET Framework 4.0 が安定していないとは思いたくありません。この Winform コントロールは .NET の基本機能です!
unit-testing - Moq で BadImageFormatException をスローするすべての単体テスト?
現在、ソフトウェア製品のコード カバレッジを拡大している最中に問題が発生しました。「BadImageFormatException」をスローするため、すべての単体テスト (「任意の CPU」を使用してコンパイルした場合) が失敗します。
この例外は、「Any CPU」の代わりに「x86」を使用してソリューションを構築することで回避できますが、Any CPU/x64 ビットを使用して実行できる必要があるという要件があります。
Moq を含むすべての単体テストは、ほぼ同じ形式に従います。
x86でビルドした場合、このテストが成功することを確認できます。「Any CPU」を使用して構築したときに Moq をうまくプレイさせる方法について、誰かアイデアはありますか?
余談ですが、ソリューション内のすべてのプロジェクトが同じ値 (「任意の CPU」) を使用してビルドされていることも確認できます。Moq v4.0 を使用しています。
編集: 完全な例外は次のとおりです: テスト メソッド [ProductName と呼び出されたメソッド] が例外をスローしました: System.BadImageFormatException: ファイルまたはアセンブリを読み込めませんでした '[製品名]、バージョン = 1.0.0.0、カルチャ = ニュートラル、PublicKeyToken = null'またはその依存関係の 1 つ。不正な形式のプログラムをロードしようとしました。
c# - TeamCity: GhostscriptSharp: 不正な形式のプログラムをロードしようとしました。(HRESULT からの例外: 0x8007000B)
CI でのテストの実行中に PDF 変換が失敗します。変換には GhostscriptsSharp ライブラリを使用しています。
テストをローカルで実行している間、この問題に直面していません.PDFファイルは正しく画像に変換されます。
私はインターネットで解決策を探してきましたが、これまでのところ、私が見つけたすべてが解決策を見つけるのに役立っていません.
不正な形式のプログラムをロードしようとしました。(HRESULT からの例外: 0x8007000B)
System.BadImageFormatException: 不正な形式のプログラムを読み込もうとしました。(HRESULT からの例外: 0x8007000B) GhostscriptSharp.GhostscriptWrapper.CreateAPIInstance(IntPtr& pinstance、IntPtr caller_handle) で、Int32 幅、Int32 高さ) の Framework.Utils.FileUtils.ConvertPdfToImages(String pdfPath, String imagesPath, Int32 pageCount) の c:\TeamCity\buildAgent\work\8e7aa88e702dfaf7\Framework\Utils\FileUtils.cs:line 90 の StepDefinitions。 c の General.Search.SearchTableSteps.ThenImagesAreCorrectInDownloadedDocumentFromSearchGrid(テーブル テーブル):
c# - AspNetCompiler - 不正な形式のプログラムをロードしようとしました
私は 64 ビットのみの Web アプリケーション ( AssemblyA
) を構築しており、これも 64 ビットのみの別のアプリケーション ( ) を参照していますAssemblyB
。
AssemblyB
で参照として追加するとAssemblyA
、Visual Studio で次のコンパイル エラーが発生します。
ASPNETCOMPILER ファイルまたはアセンブリ 'AssemblyB' またはその依存関係の 1 つを読み込めませんでした。不正な形式のプログラムをロードしようとしました。
私のアプリケーションのプラットフォーム ターゲット設定はx64
両方とも に設定されており、ターゲット フレームワーク設定は両方とも.Net Framework 4.6
とPrefer 32bit is unchecked
です。
すべての依存参照のバージョンが同じであることを確認して、AssemblyB
inのすべての依存参照を参照しようとしました。AssemblyA
この質問を使用しました: .NET アセンブリが x86 または x64 用にビルドされたかどうかを確認するにはどうすればよいですか? 参照されているすべてのアセンブリがMSIL
またはであることを確認しますAMD64
。
aspnet_compiler.exe
オプションを有効にしてコマンド ライン ツールを使用したerrorstack
ところ、次のスタック トレースが得られました。
[BadImageFormatException]: ファイルまたはアセンブリ 'AssemblyB' またはその依存関係の 1 つを読み込めませんでした。不正な形式のプログラムをロードしようとしました。
System.Reflection.RuntimeAssembly._nLoad (AssemblyName fileName、文字列 codeBase、エビデンス assemblySecurity、RuntimeAssembly locationHint、StackCrawlMark& stackMark、IntPtr pPrivHostBinder、ブール型 throwOnFileNotFound、ブール型 forIntro spection、ブール型 suppressSecurityChecks) で
System.Reflection.RuntimeAssembly.nLoad (AssemblyName fileName、String code Base、Evidence assemblySecurity、RuntimeAssembly locationHint、StackCrawlMark& s tackMark、IntPtr pPrivHostBinder、ブール値 throwOnFileNotFound、ブール値 forIntros pection、ブール値を抑制する SecurityChecks) で
System.Reflection.RuntimeAssembly.InternalLoadAssemblyName (AssemblyName assemblyRef、Evidence assemblySecurity、RuntimeAssembly reqAssembly、StackCrawlMark &stackMark、IntPtr pPrivHostBinder、ブール値 throwOnFileNotFound、ブール値 forIntrospection、ブール値 suppressSecurityChecks) で
System.Reflection.RuntimeAssembly.InternalLoad (文字列 assemblyString、証拠 assemblySecurity、StackCrawlMark &stackMark、IntPtr pPrivHostBinder、Boolean forIntrospection) で
System.Reflection.RuntimeAssembly.InternalLoad (文字列 assemblyString、証拠 assemblySecurity、StackCrawlMark &stackMark、Boolean forIntrospection) で
System.Reflection.Assembly.Load (文字列 assemblyString) で
System.Web.Configuration.CompilationSection.LoadAssemblyHelper (文字列 assemblyName、ブール値 starDirective) で
[ConfigurationErrorsException]: ファイルまたはアセンブリ 'AssemblyB' またはその依存関係の 1 つを読み込めませんでした。不正な形式のプログラムをロードしようとしました。
System.Web.Configuration.CompilationSection.LoadAssemblyHelper (文字列 assemblyName、ブール値 starDirective) で
System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomain BinDirectory () で
System.Web.Configuration.CompilationSection.LoadAssembly (AssemblyInfo ai) で
System.Web.Compilation.BuildManager.GetReferencedAssemblies (CompilationSection compConfig) で
System.Web.Compilation.BuildManager.GetPreStartInitMethodsFromReferencedAssemblies() で
System.Web.Compilation.BuildManager.CallPreStartInitMethods (文字列 preStartInitListPath、ブール値 & isRefAssemblyLoaded) で
System.Web.Compilation.BuildManager.ExecutePreAppStart() で
System.Web.Hosting.HostingEnvironment.Initialize (ApplicationManager appManager、IApplicationHost appHost、IConfigMapPathFactory configMapPathFactory、ホスティング ingEnvironmentParameters、hostingParameters、PolicyLevel policyLevel、例外 appDomainCreationException) で
次の関連する質問を見ましたが、この質問に答えるものはありません。ほとんどはIIS構成に関連していますが、これはコンパイルエラーであるためそうではありません。または、私の場合には適していない32ビットプラットフォームターゲットを許可するようにプロジェクトを設定するという解決策があります。
- プラットフォームが同じ場合でも、「正しくない形式のプログラムを読み込もうとしました」 (IIS 構成を使用するのは良くありません)
- ファイルまたはアセンブリを読み込めませんでした ... 不正な形式のプログラムを読み込もうとしました (System.BadImageFormatException) (実行時エラーのため、適切ではありません)
- System.BadImageFormatException 不正な形式のプログラムをロードしようとしました(32 ビット ソリューションを使用しているため、適切ではありません) 。
- ファイルまたはアセンブリ 'xxx' またはその依存関係の 1 つを読み込めませんでした。不正な形式のプログラムをロードしようとしました(32 ビット ソリューションを使用しているため、適切ではありません) 。
私はここからどこへ行くべきか途方に暮れています。繰り返しますが、どちらのプロジェクトも 32 ビットに設定したくありません。これはコンパイル エラーであるため、IIS 構成の問題ではありません。
また、いくつかの異なるマシンと新しいアプリケーションで試してみましたが、同じ結果が得られました。
このコンパイル エラーを修正するにはどうすればよいですか?
c# - Oracle ODP.Net Oracle.DataAccess.dll エラー
Windows 7 64 ビット マシンに Oracle 11.2.0.1 64 ビット バージョンをインストールしました。C# コンソール アプリケーション (VS2012) を介して Oracle DB に接続しようとすると、プラットフォーム ターゲットを AnyCPU/X64 として選択すると正常に動作します。X86を選択すると、以下のエラーが表示されます
ファイルまたはアセンブリ 'Oracle.DataAccess, Version=2.121.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342' またはその依存関係の 1 つを読み込めませんでした。不正な形式のプログラムをロードしようとしました。
X64 バージョンの dll をインストールしたのは正しいのですが、32 ビット モードで実行しようとするとエラーが表示されます。
データ レイヤーをビジネス レイヤーと統合すると、AnyCPU/X64 モードを選択するとエラーが表示されます。このエラーを解決するにはどうすればよいですか。
PS - Oracle ホームのみをインストールしました。クライアント バージョンはインストールしていません。