2014-04-15 201 views

回答

6

当您清理解决方案时(除非您更改项目属性,但这不能解决您的问题),项目的bin文件夹内的文件夹始终会被删除。

最简单的方法是将所需的文件夹添加到您的项目和文件夹中的exe文件。将exe文件的属性更改为“内容”和“始终复制”。

通过这样做,每次重建解决方案时,输出都将具有文件夹和exe文件。

如果EXE文件的变化,你可以将其添加为一个链接;确保您每次都能获得最新版本。

+0

,如果我有什么空文件夹?我有名为Temp的空文件夹,在其中创建并删除临时文件。我无法为文件夹设置“始终复制”。 – user3111311

+0

在输出文件夹,VS仅复制其将被用于:正在由需要被复制(例如文档)的代码和内容引用的DLL。这样做的时候,默认情况下它会尝试保持项目的结构。这意味着如果一个文件夹是空的,它将不会被复制,因为VS将其检测为无用的东西。就我所知,这就是它的工作原理。在你的案例解决方案中一个丑陋但有用的可能是创建你想要的文件夹,并在其中放置一个虚拟文件,如“Dummy.txt”空文件。 –

+0

另一种方法是从您的代码创建目录,然后自动复制该文件。 –

1

在您的项目只需创建一个文件夹,该文件夹中添加一个引用您的exe文件,然后将EXE的Copy to Output Directory属性设置为Copy always/Copy if newer

,其中该exe是将在输出目录被复制的文件夹结构。

1

在项目中创建一个文件夹,将exe文件放入其中,并将“Copy To Output Directory”属性设置为“Copy if newer”。

0

添加mkdir命令生成后事件命令行项目选项 - >生成事件

0

你可以为使用生成后事件。 项目属性 - >生成事件 - >后生成事件命令行“从a复制到b”

或第二个选项,你在你的项目中创建一个文件夹“外部”,并把你的exe文件。将属性“Copy to Output Direcotry”设置为“始终复制”。

3

再或者另一种方式..

使用Post build event你写DOS命令。

例如,在你的情况,你可以这样写:

mkdir $(TargetDir)\External 
xcopy SOURCE_DIR_EXE $(TargetDir)\External\EXE_NAME 
0

尝试将此融入构建过程:

<ItemGroup> 
    <_CopyItems Include="$(your_path)\*.*" /> 
</ItemGroup> 
<Copy 
    SourceFiles="@(_CopyItems)" 
    DestinationFolder="$(BuildOutput)\External" 
/> 
0

在解决方案中创建您的愿望名称的文件夹,添加文件有(添加现有项),右键单击文件,并设置BuildAction为None,CopyToOutputDIrectoryCopy AlwaysCopy If Newer,重建项目,就是它!

相关问题