0

機能が選択されている場合はレジスタ値を特定の文字列(true)に設定し、選択されていない場合はデフォルト値(false)に設定したいと思います。私は以下を試しましたが、うまくいかないようです:-(

    <Component Id="ExampleFalseComponent">
        <Condition><![CDATA[Feature1 = "3" ]]></Condition>
        <RegistryValue Root="HKCU" Key="path" Name="examplevalue" Type="string" Value="false" KeyPath="yes"/>
    </Component>
    <Component Id="ExampleTrueComponent">
        <Condition><![CDATA[Feature1 < "3" ]]></Condition>
        <RegistryValue Root="HKCU" Key="path" Name="examplevalue" Type="string" Value="true" KeyPath="yes"/>
    </Component>
    <Feature Id="Feature1" Title="Some text string" Absent="allow" AllowAdvertise="no" InstallDefault="local" Display="collapse" Level="3">
        <ComponentRef Id="ExampleFalseComponent"/>
        <ComponentRef Id="ExampleTrueComponent"/>
    </Feature>
4

1 に答える 1

2

コストが確定した後、実行シーケンスでスケジュールされたSetProperty要素を使用して、条件がtrueと評価されたときにSomePropertyを「true」に設定します。次に、RegistryValueで[SomeProperty]を使用します。

また、最初のインストール時に機能はインストールされますがまだインストールされておらず、修復中に機能はインストールされますがインストールされないことに注意してください。それに応じて条件を記述してください。

于 2012-04-16T21:48:46.520 に答える