2012-02-04 65 views
1

我想根据生成配置设置“复制到输出目录”属性。我还没有测试过,但我认为Condition=" '$(Configuration)' == 'Release'"应该可以正常工作。虽然有一个问题 - 我的项目中有很多内容文件,我会添加更多,但我不想手动更改每个文件的属性。我可以编写一个修改所有内容条目的工具,但可能有另一种方法吗?根据配置设置“复制到输出目录”的方法

编辑:在写这篇文章的时候,我希望有一个更简单的方法,但现在我认为任何其他方式将是很好考虑,所以任何建议,欢迎。

+1

它几乎没有什么意义,以改变该属性为配置类型。如果您编写的代码在Debug配置中构建时期望文件位于其他位置,则应删除该代码。 – 2012-02-04 22:48:10

+0

我有一个项目严重依赖于它的内容(内容包括图像,配置文件和一些python脚本)。我编写了一个内容打包工具,我希望在发布配置中执行后构建,而在调试中,我想按原样访问内容,因此我可以动态地更改配置/脚本文件以进行测试。有两个IO包装器 - 文件系统IO和压缩内容IO,内容加载代码通过接口使用包装器,包装器创建在一个地方,所以我可以在'#if DEBUG #else#endif'中附上一行。 – 2012-02-04 23:20:33

+0

如果您或其他人可以提出一种更充分的方法来保持内容在Debug中解压并包装在Release中,我很感兴趣。 – 2012-02-04 23:23:31

回答

0

决定采取一种简单的方法,复制通过对生成后XCOPY内容和设置的所有“复制到输出目录”属性设置为“不复制”:

mkdir $(TargetDir)\Content 
if $(ConfigurationName) == Debug goto :debug 
:release 
$(ProjectDir)\Tools\PackTool.exe $(ProjectDir)Content\ $(TargetDir)Content\Content.dat 
goto :exit 
:debug 
xcopy $(ProjectDir)\Content $(TargetDir)\Content /q /s /e /y 
:exit