2

だから私は単純な条件付きプロパティセットを持っています:

<SetProperty Id="STOP_CHROME" Action="Set" Value="1" After="CostFinalize">
  <![CDATA[(&FEAT_Chrome_Hpr=3)]]>
</SetProperty>

それについての奇妙なことは、ログにあるにもかかわらず、プロパティが常に設定されていることです。次に例を示します。

MSI (s) (70:28) [14:39:33:398]: Feature: FEAT_Chrome_Hpr; Installed: Absent;   Request: Null;   Action: Null

SetProperty アクションの順序が間違っている可能性があると思いますが、どちらが正しいかわかりません。しかし、AFAIKAfter="CostFinalize"は私の場合には正しいです(機能が選択された後)。

更新します。私の質問に対する解決策が見つかりませんでした。今は実際にテストできないので、新しい回答を追加しないでください。モデレーターは、この質問を完全に削除することができます。

4

2 に答える 2

1

CostFinalize の前にスケジュールを設定する必要があると思います。これは、SetProperty要素がタイプ 51 カスタム アクションを作成するためです。タイプ 51カスタム アクションを使用して、CostFinalizeの前にスケジュールされている場合にのみ、コンポーネントまたは機能の条件で使用されるプロパティに影響を与えることができます。

于 2012-10-09T15:34:13.957 に答える
0

私の質問に対する解決策は見つかりませんでした。また、私は今それを実際にテストすることができないので、新しい答えを追加しないように、あなたに賢明です。モデレーターは、この質問を完全に削除できます。

于 2012-11-20T03:22:35.833 に答える