最近、ビルド中に私の VB.Net プロジェクトが失敗し、(およそ) 次のようなダイアログが表示されました。
External Tool: VbMyResourcesResXFileCodeGenerator failed due to a System.OutOfMemoryException
この質問と回答は、同じ問題を抱えている将来の検索者のための公共サービスとして投稿しています。特に、理解するのが簡単ではなかったためです。
最近、ビルド中に私の VB.Net プロジェクトが失敗し、(およそ) 次のようなダイアログが表示されました。
External Tool: VbMyResourcesResXFileCodeGenerator failed due to a System.OutOfMemoryException
この質問と回答は、同じ問題を抱えている将来の検索者のための公共サービスとして投稿しています。特に、理解するのが簡単ではなかったためです。
この問題を解決する手がかりを探していると、Visual Studio 2010 - (OutOfMemoryException) & (理想的な状態でのメモリの増加) - と、 Solution Load Managerを使用してメモリの使用を減らすようにという提案がありました。失敗したプロジェクトのみをロードした状態で、VS2010 を起動した直後に、ソリューション エクスプローラーのコンテキスト メニューから resx ファイルに対して「カスタム ツールの実行」を実行し、アプリケーションをビルドすることができました。
しかし、その後すぐに、このポスターの状況のように、ビルドが静かに失敗し始めました: Visual studio 2010 IDE のビルドがエラーや警告なしで不可解に失敗 する
Visual Studio の [オプション] ダイアログに移動し、[プロジェクトとソリューション] | [プロジェクトとソリューション] に移動する必要があります。ビルドして実行します。MSBuild プロジェクトのビルド出力の詳細度を [詳細] または [診断] に変更してから、出力を分析します。これにより、根本的な原因が何であるかについてのヒントが得られるはずです。
実行すると、resource.resx ファイルをビルドできないことがわかりました。
最終的な問題は、忘れられたファイル リソースであることが判明しました。以前にファイルをリソースとして埋め込んだことがあり、その後、いくつかのスクリーンショットを追加してそのファイルのサイズを大幅に増やしました。コードでファイルを使用しなくなったものの、プロジェクト リソースとして削除していませんでした。このファイルのサイズが原因で、最終的System.OutOfMemoryException
に私が見ていたビルドの失敗が発生しました。リソースからファイルを削除すると、ソリューションを期待どおりに構築できます。