Visual studio 2012 Microsoft.CppClean.targets删除我需要的文件
我有一个VS2012解决方案。其中一个项目A在运行时生成一个.h文件。此头文件由另一个项目B使用。项目A和项目B位于同一目录中 但是,当项目B开始重新生成时,C:\Program Files(x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.CppClean.targets将删除项目A生成的文件。由于此原因,项目B无法再找到该文件,生成失败 如何避免在干净构建期间删除文件?这两个项目是否应该移动到不同的目录Visual studio 2012 Microsoft.CppClean.targets删除我需要的文件,visual-studio-2012,rebuild,Visual Studio 2012,Rebuild,我有一个VS2012解决方案。其中一个项目A在运行时生成一个.h文件。此头文件由另一个项目B使用。项目A和项目B位于同一目录中 但是,当项目B开始重新生成时,C:\Program Files(x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.CppClean.targets将删除项目A生成的文件。由于此原因,项目B无法再找到该文件,生成失败 如何避免在干净构建期间删除文件?这两个项目是否应该移动到不同的目录 请注意,此问题在Visual Studio
请注意,此问题在Visual Studio 2008中不会出现。您在解决方案中设置了吗?必须明确设置项目B依赖于A,除非您使用直接设置两个项目之间的依赖关系。此标头是由“生成事件”在temp(“中间”)目录中生成的吗?如果是这样,那么项目B假定它是一个临时文件并将其删除。这是因为项目B的清理在临时目录中找到标题,但不知道它是项目A的输出。可能的解决方案:
- 将输出文件夹与临时文件夹分开,并在输出文件夹中生成标题
- 将输出和临时文件夹放在一起,但将项目A的输出/临时文件夹与项目B的输出/临时文件夹分开
- 在自定义生成步骤而不是生成事件中生成标头,并将标头指定为该步骤的输出