3

我正在构建一个应用程序,它有很多需要包含在目标目录中的文件。到目前为止,还没有很多文件,所以我只需将每个文件的设置单独更改为Copy to Output Directory :: Copy if newer. 现在的问题是我正在以指数速度添加文件。

在此处输入图像描述

你们有谁知道如何使“Some_Directory”的所有子文件都有Copy to Output Directory :: Copy if newer我想要的设置吗?

4

3 回答 3

1

您可以使用xcopy命令编写自己的自定义构建后事件(选择项目 -> 属性 -> 构建事件) 。您可以为解决方案目录使用 $(solution) 宏并指定文件的相对路径。

于 2012-06-08T02:02:17.367 回答
1

您可以使用构建后事件。

使用以下帖子,我创建了一个完全符合您要求的帖子事件:

现在,您可以轻松地编辑Post-build事件,进入项目设置并进入 Compile 选项卡,现在单击Build Events并将以下行放入 *Post-build event command line" 文本框中:

xcopy "$(ProjectDir)Test\*.*" "$(TargetDir)Test\\" /E /I /F /Y

看这张图片: 构建后事件

在您的情况下,您将不得不通过“some_directory”更改“测试”,仅此而已。

但是,有一个警告。每次我的项目构建时,这都会复制每个文件。正在复制的文件夹超过 3MB(我正在开发一个相当大的项目)。这使得调试需要很长时间,因为每次我进行构建时都必须将所有内容移过来。有没有办法让它只复制自上次构建以来已更新的文件?这就是我使用该Copy if newer选项的原因。

您可以添加/D参数(您可以在命令提示符中查找xcopy /?)。

/D:m-d-y     Copies files changed on or after the specified date.
             If no date is given, copies only those files whose
             source time is newer than the destination time.
于 2012-06-08T02:02:40.403 回答
1

我有同样的问题,但接受的答案并没有解决它。对我有用的是在 Local.testsettings 中启用部署(在解决方案项下)。

于 2012-06-18T15:08:22.990 回答