Developer Studioでは、コンパイル(ビルド)の途中(または終了後)にバッチ処理を動かすことが出来る。
ビルドして生成されたファイルを所定の場所に自動的にコピーさせることが出来て便利。
以下の説明は、VC++4.0で、「testDll.dll」という生成ファイルを別の場所にコピーする例。
copy $(InputPath) "C:\vcpp\testCall\Debug"
C:\vcpp\testCall\Debug\$(InputName).dll
これでビルドを実行すると、入力ファイルと出力ファイルのタイムスタンプが比較され、入力ファイルが新しい場合に設定したコマンドが実行される。
$(InputPath)や$(InputName)というのはカスタムビルドのマクロで、カスタムビルドの実行時に実際のパスやファイル名に置き換わる。
これらのマクロは、下方の「ディレクトリ(I)」ボタンや「ファイル(F)」ボタンから選択することが出来る。
以下の説明は、VC++.NET 2003で、「test.dll」という生成ファイルを別の場所にコピーする例。[2006-07-28]
エリア名 | 内容の例 | 備考 |
---|---|---|
コマンドライン | copy
"$(TargetPath)" "C:\vcpp\testCall\Debug" |
|
説明 | DLLコピー中 | ビルド中に表示される文言 |
出力ファイル | C:\vcpp\testCall\Debug\$(TargetFileName) |
$(TargetFileName)が「test.dll」、$(TargetPath)はそのフルパスを表すマクロ。
「マクロ(M)」ボタンでマクロを選択できるが、名前に対してどんな値になるか表示されるのでVC++4.0より分かりやすくなった。
以下の説明は、VC++2005で、「test.dll」という生成ファイルを別の場所にコピーする例。[2007-09-27]
エリア名 | 内容の例 | 備考 |
---|---|---|
コマンドライン | copy
$(TargetPath) C:\vcpp8\testCall\Debug |
VC++2003と異なり、ダブルクォーテーションを付けるとエラーになる… |
説明 | DLLコピー中 | ビルド中に表示される文言 |
出力ファイル | C:\vcpp8\testCall\Debug\$(TargetFileName) |
カスタムビルドによって更新されるファイル(コピー先) |
追加の依存ファイル |
$(TargetPath) |
通常のビルドによって作られるファイル(コピー元) |
ほぼVC++2003と同様。