2013年8月29日木曜日

構築やコンパイルをした後に自動的にコマンドを実行

構築やコンパイルをした後に自動的にコマンドを実行することができます。
各構築モードごとに設定できます。

リリースモードを指定してコンパイルした時のみ、コンパイル済みのファイルをリリース用のディレクトリにコピーしたりなど便利に使えそうです。

コマンドは、「コンパイラオプション」の「コンパイル」で指定できます。
コマンドプロンプトで使えるコマンドは一応そのまま使えそうです。
実行結果は、IDE のメッセージウィンドウで確認できますが、文字化けします。
コマンドが出力したメッセージを正しく表示できないようです。
なので、バッチファイルを作り、コードページを変更したほうが良さそうです。
しかし、コードページ 932 (日本語)、65001 (UTF8) のどちらでも文字化けしてしまいました。
chcp 437ascii を指定し、結果は英文で受け取るしかなさそうです。

以下は設定とバッチファイルの例です。

設定の例

次の後の実行」の「コマンド」の欄に記述します。
$ProjPath()\_release.bat $TargetFile()

$ProjPath()でプロジェクトディレクトリがコマンドに渡ります。
$TargetFile()でコンパイルされてできたバイナリのファイル名が渡ります。

$ProjPath()等のマクロはメニューの「ツール」→「外部ツールの設定」→編集または追加→「マクロ」の欄 で一覧が確認できます。

バッチファイルの例
_release.bat で保存
@echo off
chcp 437

set RELEASE_DIR=D:\MyTOOLS\64bit\tcesyn\

if not exist %RELEASE_DIR%NUL goto err
echo copying...
C:\Windows\System32\xcopy.exe /Y "%1" %RELEASE_DIR%
echo completed.
goto eof

:err
@echo %RELEASE_DIR%
@echo That directory not found.

:eof

以上です。

0 件のコメント:

コメントを投稿