将 属性 值设置为 ini 文件 WIX
Set the Property value to an ini file WIX
我正在使用编辑控件在对话框中设置一个 属性 值。但是当我使用相同的 属性 写入 ini 值时,它不会写入更新的值并且只写入旧值。下面给出我的WIX源码(因为wix代码太大,只写重要代码)
<Property Id="testNumber" Value="1122" />
<CustomAction Id="SettestNumber" Property="ModifiedtestNumber" Value="[testNumber]" />
<ComponentGroup Id="INIFileGroup">
<Component Id="IniFile" Guid="{0ded271b-9268-49e7-8c13-60c7538acc25}" KeyPath="yes" Directory="DirCfg" >
<IniFile Id="IniPath" Action="addLine" Directory="Dirtest" Key="testkey" Name="test.ini" Section="test" Value="[ModifiedtestNumber]" />
</Component>
</ComponentGroup>
<InstallUISequence>
<Custom Action="SettestNumber" Sequence="1299"/>
</InstallUISequence>
<Dialog Id="testNumberUI" X="50" Y="50" Width="375" Height="270" Title="[ProductName]" CustomPalette="yes">
<Control Type="Edit" Id="test_Number" Width="50" Height="15" X="258" Y="53" Property="testNumber" Text="{50}" TabSkip="yes"/>
</Dialog>
我在控件编辑框中给出值 1212 并安装,但在 test.ini 文件中它没有得到更新,值是 1122。有人可以提供一种方法让我将 Modifedtestnumber 更新为ini文件
注意:
当我将自定义操作放入 时,ini 文件中的值为 null
您的 属性 需要 public(全部大写 TESTNUMBER)并标有安全属性,以便在 SecureCustomPublicProperties 属性 中列出。另请注意,属性不会持久化。您需要使用类似 WiX 的记忆 属性 模式,以便在后续事务(如维修和升级)期间从 INI 文件加载值。
我正在使用编辑控件在对话框中设置一个 属性 值。但是当我使用相同的 属性 写入 ini 值时,它不会写入更新的值并且只写入旧值。下面给出我的WIX源码(因为wix代码太大,只写重要代码)
<Property Id="testNumber" Value="1122" />
<CustomAction Id="SettestNumber" Property="ModifiedtestNumber" Value="[testNumber]" />
<ComponentGroup Id="INIFileGroup">
<Component Id="IniFile" Guid="{0ded271b-9268-49e7-8c13-60c7538acc25}" KeyPath="yes" Directory="DirCfg" >
<IniFile Id="IniPath" Action="addLine" Directory="Dirtest" Key="testkey" Name="test.ini" Section="test" Value="[ModifiedtestNumber]" />
</Component>
</ComponentGroup>
<InstallUISequence>
<Custom Action="SettestNumber" Sequence="1299"/>
</InstallUISequence>
<Dialog Id="testNumberUI" X="50" Y="50" Width="375" Height="270" Title="[ProductName]" CustomPalette="yes">
<Control Type="Edit" Id="test_Number" Width="50" Height="15" X="258" Y="53" Property="testNumber" Text="{50}" TabSkip="yes"/>
</Dialog>
我在控件编辑框中给出值 1212 并安装,但在 test.ini 文件中它没有得到更新,值是 1122。有人可以提供一种方法让我将 Modifedtestnumber 更新为ini文件
注意:
当我将自定义操作放入
您的 属性 需要 public(全部大写 TESTNUMBER)并标有安全属性,以便在 SecureCustomPublicProperties 属性 中列出。另请注意,属性不会持久化。您需要使用类似 WiX 的记忆 属性 模式,以便在后续事务(如维修和升级)期间从 INI 文件加载值。