Visual Studio 2010とMSBuildが、どのvcxproj MSBuildファイルを正常に実行するかについて、非常に寛大であるという難しい方法を学びました。サブタスクと単一ファイルの不足している構成を見落とし、ビルドタスクを正常に実行します。ただし、これにより、複数の構成間でビルドに一貫性がなくなり、さらにプロジェクトファイルの内部的な不整合により、VisualStudioのプロパティビューでそれらを編集できるとは限らないため、問題が発生します。
これまでのところ、vcxprojファイルを手動で編集することで、最も問題のある不整合を取り除くことができましたが、この特定のソリューションに80を超えるプロジェクトファイルが含まれていることを考えると、これは実際には受け入れられる戦略ではありません。
MSBuildファイルの内部整合性をチェックし、「プロジェクトファイルは構成X、Y、Zを提供すると言っていますが、ファイルXのカスタムビルドタスクは構成XとZのみをサポートしている」という行に沿って欠落している構成を強調表示できるツールはありますか?
更新: vcxprojファイルをリントするというより一般的な問題とは対照的に、私が今解決しようとしている特定の問題は、特定の構成の条件が欠落していることです。残念ながら、条件の追加と更新には、検索と置換のツールを使用して安全に実行できるよりも少し多くのことが必要なようです。プログラムで正しく実行するには、DOMの操作が必要になる可能性が高く、これまでのところビルドファイルの内部構造に精通していることを考えると、基本的な構造XML検証を実行できるテキストエディターを使用するのが最も簡単な方法のようです。手元のタスク。
しかし、私が本当に見たいのは、少なくともこれらの問題を自動的に強調表示して、追跡に費やす時間を削減できるツールです。