有时在使用大型解决方案时,某些项目会丢失所有筛选器(而是变成庞大的文件列表)。检查.vcxproj.filters
文件时,它实际上是无效的XML。然后,我必须手动修复问题并重新加载项目。
但是,它并没有在结尾处被切掉-实际上是中间缺少行,这使得写入文件时不太可能出现意外中断。
这是当前的样子:
<ClInclude Include="plugins\FileName1.h">
<Filter>plugins</Filter>
</ClInclude>
<ClInclude Include="utils\FileName2.h">
<Filter>utils</Filter>
<ClInclude Include="otherfolder\FileName3.h">
<Filter>otherfolder</Filter>
</ClInclude>
请注意,FileName2.h
缺少结束标记。
是什么原因导致这种情况发生,以及将来如何避免这种情况发生?
答案 0 :(得分:0)
使用无法将结束标记识别为需要添加的行的合并工具时,会导致此问题。合并工具会看到目标文件中已经存在行</ClInclude>
,因此不会合并它。
由于您已经意识到问题所在,因此除了更仔细地合并之外,我不确定是否有修复程序。