预构建事件:使用XCopy将文件夹及其子文件和文件复制到构建目录中

我有Window Application,我有一些插件,它是我放在My Application文件夹结构中的ChildPlugins(参见文件夹结构图)。 我使用SVN作为源代码控制,因此,每个文件夹都有.SVN文件夹。

这是我的问题:

下图是我的插件目录结构。 所有文件夹都有一些与插件相关的文件。 现在我想通过使用Pre Built Event将所有文件夹(包含SubFolders)及其文件复制到我的Application Build输出路径。

**插件目录结构**

在网上搜索后,我发现通过使用XCopy我可以实现我想要的。 通过使用下面的代码,我可以复制插件目录及其文件,但无法复制它的子文件夹和子文件夹文件。

 xcopy "$(SolutionDir)Plugins\*.*" "$(SolutionDir)Windows\Host\Host.GUI\bin\x86\$(ConfigurationName)\Plugins\" /Y/D 

我想复制文件夹&它是包含所有文件的所有子文件夹,并且想要排除.SVN 。 谁能指出我怎么能这样做?

谢谢。

您需要添加/ E开关来复制子目录(包括空目录)。

我用过这个:

 xcopy "$(ProjectDir)MyFolder\*.*" "$(SolutionDir)ConsoleApplication1\bin\Release\MyFolder" /Y /I /E 

并且工作正常,当我用其中的所有文档编译项目时,’MyFolder’文件夹出现在我的’Release’文件夹中。

需要指出的是,$(SolutionDir)之后的路径会根据解决方案的名称而改变,我的解决方案是ConsoleApplication1。

如果它不需要具有解决方案名称或配置类型的路径,则更好:

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