2009-07-09 20 views
1

私のアプリ用の単純なリリースビルドバッチを構築しようとしています。私は<AppName> .cfgファイルの中で環境変数を使用したいと思います。しかし、これらは拡張されていないようです。どちらdcc32:* .cfgの環境変数

-U"$(DELPHIKOMP)\VclZip;..." 

-U"%DELPHIKOMP%\VclZip;..." 

作品。しかし

-U"C:\DelphiKomp\VclZip;..." 

です。私が間違っていることは何か考えていますか?

注意:私たちはBDS2006を使用しているため、MSBuildは今のところオプションがありません。

更新: gabrが示唆したように、私はcfgの環境変数を拡張し、dcc32を私のために呼び出す小さなツールを書いています。彼らの答えに感謝します!

答えて

2

DCC32は環境変数の拡張をサポートしていません。

cfgファイルのすべての変数を展開し、dcc32.exeを呼び出して元のcfgファイルを復元するユーティリティがインターネット上に存在することは間違いありませんが、私はもうそれを見つけることができません。

あなたはこのプログラムを自分で簡単に書くことができます。

+0

これは私が今やっていることです。 :-) –

1

なぜコマンドラインパラメータとしてdcc32に渡さないのですか?その場合、シェルはそれらを展開します。

+0

私は後で別の検索パスを持つ他のプロジェクトにそのバッチファイルを再利用できるようにしたいと思います。ですから、私はプロジェクト固有のものをcfgファイルに入れたいと思っています。 –

+0

まあ、.cfgファイルの代わりに別の.batファイルを使用し、メインのビルドバッチから分離することができます。もちろん、命令文はオプションの指定ほどエレガントではありませんが、少しの規律では非常に実行可能です。私はビルドのためにいつも自宅で使っています(オフィスでcygwin makefileを使用しています)。 –

+0

さて、多くのオプションがあります:各プロジェクトのバッチファイル。プロジェクト固有のバッチファイルで、いくつかのenv変数を設定し、マスタービルドバッチファイルを呼び出します。あるいは、Makefileは、ソフトウェア成果物の構築を意図したものです。またはナント、または... – mghie

1

FWIWでは、Delphi 2006を使用しても、MSBuild、make、または別のビルドツールを使用することはできません。必要に応じてdcc32にシェルするだけです。