プロパティ リストとプロパティ

ms227270.ce(ja-jp,VS.90).jpgms227270.pro(ja-jp,VS.90).jpg プロパティ リスト セクションは省略可能であり、構成ファイルで後から利用される可能性のある ("プロパティ" と呼ばれる) 変数の定義および値の代入を行うことができます。このセクションで定義したプロパティ定義は、"内部" プロパティと呼ばれます。

<!-- 拡張可能なプロパティを定義します -->
<!-- 省略可能 -->
<propertylist>
 <property name="projectname" value="myproject"/>
 <property name="projectdir" value="c:\myprojects"/>
</propertylist>

変数 ("プロパティ参照") は、このセクションで定義されずに、構成ファイルで使用されることもあります。たとえば、コマンド ラインで変数を定義したり、環境変数を利用することができます。

プロパティは、次のアルゴリズムを使用してそのプロパティに関連付けられた値を検索し、文字列の置き換えを行うことによって機能します。

  1. 外部のプロパティ リストで値を確認します。
  2. 見つからない場合、プロパティと同じ名前の環境変数を確認します。
  3. それでも見つからない場合、構成ファイルの propertylist セクションで内部定義を確認します。
  4. 依然として見つからない場合は、値に空の文字列を使用します。

外部のプロパティは、–p オプションを使用して、コマンド ラインから渡されます。組み込みの外部プロパティには次の 3 つがあります。

  • Dotfuscator のインストール ディレクトリを表す "applicationdir"
  • Dotfuscator のローカル データ ディレクトリを表す "appdatadir"
  • 構成ファイルが存在するディレクトリを示す "configdir"

プロパティは、複数のプロジェクトや同じプロジェクトのさまざまなバージョン、あるいはさまざまなビルド環境間での移植を容易にするためのテンプレートとしての役割を果たす構成ファイルの作成に役立ちます。

プロパティは、次の構文で参照されます。

${property_name}

プロパティ参照は大文字と小文字を区別するので、${MyProjectDir}${myprojectdir} とは異なるプロパティを参照します。

プロパティ参照は、構成ファイルのどの場所でも使用できるわけではありません。現在、プロパティの参照は、"file" 要素の "dir" 属性または "name" 属性の値としてのみ使用できます。file 要素を使用するセクションの一覧は以下のとおりです。

inputassembly mapinput mapoutput
output tempdir assembly
removalreport transform key
loadpaths program filelist

プロパティ参照は、構成ファイル内のその他の場所では文字どおりに解釈されます。

プロパティ参照は、入れ子にすることはできません。入れ子にすると、エラーになります。

プロパティ参照の使用例は、次のとおりです。

<output>
 <file dir="${testdir}\output"/>
</output>

© 2002-2007 PreEmptive Solutions. All rights reserved.