Visual studio 使用MSBuild从文件列表复制目录结构

Visual studio 使用MSBuild从文件列表复制目录结构,visual-studio,msbuild,projects-and-solutions,msbuild-task,Visual Studio,Msbuild,Projects And Solutions,Msbuild Task,这比结构副本稍微复杂,因此是一个单独的问题 我们有一个项目组,它是要复制的文件集合 <ItemGroup> <FilesToBeCopied Include=" C:\SomeFolder\a.exe; C:\SomeFolder\d.dll; C:\SomeFolder\AFolder\*; C:\SomeFolder\e.dll; C:\SomeFolder\some.xml;> <

这比结构副本稍微复杂,因此是一个单独的问题

我们有一个项目组,它是要复制的文件集合

<ItemGroup>
   <FilesToBeCopied Include="
       C:\SomeFolder\a.exe;
       C:\SomeFolder\d.dll;
       C:\SomeFolder\AFolder\*;
       C:\SomeFolder\e.dll;
       C:\SomeFolder\some.xml;>
   </FilesToBeCopied>
</ItemGroup>
有没有办法做到这一点?
因为上面的copy语句将所有文件复制到bin\folder,并且不会在bin中创建AFolder*结构。

结果表明,修复非常简单。只需使用文件夹周围有通配符**的项目组

<ItemGroup>
   <FilesToBeCopied Include="
       C:\SomeFolder\a.exe;
       C:\SomeFolder\d.dll;
       C:\SomeFolder\**\AFolder\**;
       C:\SomeFolder\e.dll;
       C:\SomeFolder\some.xml;>
   </FilesToBeCopied>
</ItemGroup>

somelocation\bin\a.exe; 
somelocation\bin\d.dll;
somelocation\bin\AFolder\*;
somelocation\bin\e.dll;
somelocation\bin\some.xml;
<ItemGroup>
   <FilesToBeCopied Include="
       C:\SomeFolder\a.exe;
       C:\SomeFolder\d.dll;
       C:\SomeFolder\**\AFolder\**;
       C:\SomeFolder\e.dll;
       C:\SomeFolder\some.xml;>
   </FilesToBeCopied>
</ItemGroup>