2013-07-19 9 views
23

すべてのビルドで特定のディレクトリを出力フォルダ( "bin")にコピーします。私はそれがポストビルドスクリプトを介して処理できると思います。しかし、ディレクトリ自体をコピーする方法がわかりません。私は特定のファイルを処理する方法を知っています。例えばのためにディレクトリ全体を出力フォルダにコピーし、フォルダ構造を維持しますか?

、これはファイルのために動作します:プロパティ>ビルドイベント

プロジェクト>>投稿

COPY "$(SolutionDir)Resources\Release Notes.pdf" "$(TargetDir)" 

を構築しかし、私は持っていると仮定ディレクトリTemplate、今私はすべてTemplateの下に来る必要があります成功するとフォルダ構造を維持してbinフォルダに移動します。

私はこれを試してみました:

COPY "$(SolutionDir)Resources\Template\" "$(TargetDir)" 

のみTemplateディレクトリ内のファイルは、この方法ではなく、サブディレクトリおよびTemplateフォルダ内のファイルをコピーされます。私はTemplateというフォルダ自体を私の出力のbinフォルダに入れたいと思っています。言い換えれば、binは、次のようになります。

bin > Template > abc.xxx 
       xxx.yyy 
       Subdirectory1 > asd.qwe 
           zxc.qwe 
       Subdirectory2 > ... 

これが重複かもしれないが、私は、関連するスレッドを見つけることができませんでした。ありがとう。

答えて

23

これは私のために働きました。 /Sはすべてを再帰的にコピーするキーです。

XCOPY "$(SolutionDir)Resources\Template" "$(TargetDir)\Template\" /S 

私はファイルはプロンプトなしたびに上書きされてみたかったので、私も/Yスイッチを追加しました。

XCOPY "$(SolutionDir)Resources\Template" "$(TargetDir)\Template\" /S /Y 
+9

/Sを使用してSolutionDirの上に1つのディレクトリを空白のフォルダを無視できることに注意してください。空のフォルダを含むすべてをコピーするには、代わりに/ Eを使用します。 –

16

COPYではなくXCOPYを試してください。例えば

XCOPY "$(SolutionDir)Resources\Template\" "$(TargetDir)" /s /i /y 

ここXCOPYの詳細情報...

http://www.computerhope.com/xcopyhlp.htm

+2

+1は私に正しい方向を与えます。しかし、私はあなたの解決策を働かせていませんでした。 2番目の引数にターゲットの宛先Templateを指定する必要がありました。 '/ I'が本当に必要なのかどうかは分かりません。あなたのものを編集するのではなく、私はそれを別の答えとして作りました。 – nawfal

+1

XCOPY "$(SolutionDir).. \ Resources \ Template" "$(TargetDir)"/S/I/Y –

関連する問題