ホーム

私訳です。より確かな記述は MSDN (英語)を直接読んで下さい。

 

MSDN > MSDN Library > Win32 and COM Development > Administration and Management > Application Installation and Servicing > Windows Installer > Windows Installer Guide > Properties > Using Properties > Using Properties in Conditional Statements

条件文でのプロパティの使用


セットされてしまっているプロパティの論理的な値は、True です。 実際にプロパティの値を得る事なく それがセットされているかどうか決定するには、論理式 "MyProperty" か "NOT MyProperty" を試します。MyProperty がセットされている時には、 前者が True で後者が False になります。

1つ以上のプロパティを、条件文中で使用される論理式を作るのに 演算子で組み合わせる事ができます。 条件文中で使用できる演算子についての詳細は、 条件文シンタックス ( Conditional Statement Syntax ) を見て下さい。

Feature table 中のいずれかのエントリーの選択状態を変更するのに、プロパティを使った条件文を Condition table の Condition カラム中に 入力できます。

1つ以上のプロパティを持つ条件文は一般的に、データベース テーブルの Condition カラム中で 使用されます。

以下のテーブルは 条件式の為のカラムをそれぞれ持っています:

6つのアクションシーケンステーブルが条件の為のフィールドを持っている事に 注意して下さい。 もしこのフィールド中の条件式が False になると、インストーラーはそのアクションをスキップします。

(訳注:上記9つから ExecuteSequence を除けば6つです。 Condition テーブルは1つだけで、その他は 他のテーブルの Condition カラムです。)

もし ユーザーインターフェース シーケンス テーブルの1つにカスタム アクションを書く事によって UI シーケンス中に プライベート プロパティ ( private property ) をセットしても、そのプロパティは Execute シーケンスではセットされません。 Execute シーケンスでプロパティをセットするには、Execute シーケンス テーブル中にも カスタム アクションを置かなければなりません。 あるいはまた、 パブリック プロパティ ( public property ) を作り、それを SecureCustomProperties プロパティ中に入れる事ができます。

詳細については、 シーケンステーブルの使用 ( Using a Sequence Table ) や Using Properties を見て下さい。