Inno Setup在注册表中的多字符串键中追加行

时间:2018-11-19 15:09:26

标签: windows registry inno-setup

我需要在Windows注册表的PreshutdownOrder键的多字符串值中添加一些行。

如何将行附加到现有值?

1 个答案:

答案 0 :(得分:1)

[Registry] section设置为multisz的项添加到ValueType parameter。在ValueData parameter中使用{olddata}{break}令牌:

  

stringexpandszmultisz类型的值上,可以在此参数中使用称为{olddata}的特殊常量。 {olddata}被替换为注册表值的先前数据。如果您需要将字符串附加到现有值(例如{olddata})上,则{olddata};{app}常量很有用。如果该值不存在或现有值不是字符串类型,则{olddata}常量将被静默删除。如果创建的值是{olddata}类型但现有值不是多字符串类型(即REG_SZ或REG_EXPAND_SZ),则multisz也会被静默删除。

     

multisz类型的值上,您可以在此参数中使用称为{break}的特殊常量来嵌入换行符(空值)。

[Registry]
Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control"; ValueType: multisz; \
    ValueName: "PreshutdownOrder"; ValueData: "{olddata}{break}newline"
相关问题