the_mantrillのシナリオを確認できます。(これはコメントに収まらないため、回答として投稿します。)
私のソリューションでは、プロジェクトAがプロジェクトBを参照しています。何らかの理由で、プロジェクトBのプロジェクトGUIDが変更されました。(これが発生する可能性があることはわかっています。この場合、原因を調査しませんでした。)ソリューションファイルにはプロジェクトBの正しい新しいGUIDが含まれていましたが、プロジェクトAのプロジェクトファイルでは、プロジェクトBへの参照にはまだ古いGUIDが含まれていました。
ソリューションエクスプローラーでプロジェクトをアンロードおよびリロードすると、プロジェクトAによって「プロジェクトファイル」の名前が変更されたか、ソリューションに含まれなくなったことがわかりました。「見つかったら、プロジェクトAのプロジェクトファイルでプロジェクトBのGUIDを手動で更新すると、問題。
詳細:
ProjectB.vcxproj
<PropertyGroup Label="Globals">
<Keyword>Win32Proj</Keyword>
<ProjectGuid>{9CF2493A-0C79-88E7-12ED-7DFAEBA8535B}</ProjectGuid>
</PropertyGroup>
過去のある時点で、ProjectBのProjectGuidはでした{d6f1934a-905f-77ca-49c0-164b2171a0f6}
。今{9CF2493A-0C79-88E7-12ED-7DFAEBA8535B}
です。
ProjectA.vcxproj –以前は、「プロジェクトファイル」の名前が変更されたか、ソリューションに含まれていません。
<ItemGroup>
<ProjectReference Include="..\ProjectB\ProjectB.vcxproj">
<Project>{d6f1934a-905f-77ca-49c0-164b2171a0f6}</Project>
</ProjectReference>
:
</ItemGroup>
ProjectA.vcxproj –手動編集後、機能するようになりました。
<ItemGroup>
<ProjectReference Include="..\ProjectB\ProjectB.vcxproj">
<Project>{9CF2493A-0C79-88E7-12ED-7DFAEBA8535B}</Project>
</ProjectReference>
:
</ItemGroup>