zoukankan      html  css  js  c++  java
  • Inno Setup使用上的几个问题

    Inno Setup使用上的几个问题

    分类: Install Setup
    Inno Setup使用上的几个问题:

    【问题一:Inno Setup 执行REG文件代码?】
    [Run]
    Filename: "{win} egedit.exe";Parameters:"/s {tmp} eg.reg" // 静默参数/S


    【问题二:安装时,如果已经有同名文件存在,就不更新该文件?】
    [Files]
    Source: "test.tmp"; DestDir: "{app}"; Flags: onlyifdoesntexist //onlyifdoesntexist表示只有当这个文件不存在的时候才安装这个文件。


    【问题三:卸载时不卸载某一个文件?】
    [Files]
    Source: "CTL3DV2.DLL"; DestDir: "{sys}"; Flags: uninsneveruninstall //uninsneveruninstall 卸载时,不删除


    【问题四:Inno Setup 注册OCX】
    [Files]
    Source: "xxxxxx.ocx"; DestDir: "{app}"; Flags: onlyifdoesntexist regserver //注册regserver


    【问题五:如何在Inno Setup中设置某选项默认被选择?】
    [Tasks]
    Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: checkedonce //参数Flags包含checkedonce即可

    【问题六:Inno Setup 安装新版本之前卸载老版本?】
    [code]
    if RegQueryStringValue(HKLM, 'SOFTWAREMicrosoftWindowsCurrentVersionUninstallMy_Program_is1', 'UninstallString', ResultStr) then
    begin
    ResultStr := RemoveQuotes(ResultStr);
    Exec(ResultStr, '', '', SW_SHOWNORMAL, ewWaitUntilTerminated, ErrorCode)
    end

    把其中 My_Program 换成自己的 app name 即可!


    Flags :该参数是一个额外的可选项,可用空格隔开多个选项。下面是该参数所支持的选项:
    createvalueifdoesntexist :当指定该标记时,安装程序只会在同名键值不存在时创建该键值。该标记在数据类型为none或者指定了deletevalue标记时不会生效。
    deletekey :当指定该标记时,安装程序将会先删除整个键(若存在的话),包括其中的所有键值和子键。如果ValueType 为none时,它才会创建新的键和键值。
    deletevalue :当指定该标记时,安装程序会先删除这个键值(若存在的话)。如果ValueType 为none并且不曾存在时,它才会创建新的键值。
    dontcreatekey :当指定该标记时,如果指定的键在用户的系统中未曾存在时,安装程序不会尝试去创建指定的键或键值。如果指定的键已经存在,将不显示错误信息。典型的例子就是该标记与uninsdeletekey标记合用,以此达到在卸载时删除键而在安装时不会创建它们。
    noerror :无论任何原因而导致安装程序创建该键失败都不会显示错误信息。
    preservestringtype :这只在ValueType参数是string或expandsz时使用。当指定了该标记后,如果键值不存在并且它是字符串类型时,它将被换成先前值的相同类型。
    uninsclearvalue :卸载程序时,清空键值的数据(REG_SZ类型)。该标记不能与uninsdeletekey标记合用。
    uninsdeletekey :卸载程序时,删除整个键,包括其中所有的键值和子键。显然,在Windows自身的键内时,这不是一个好主意。你只应在你软件的私有键中使用它。
    uninsdeletekeyifempty :卸载程序时,如果该键没有键值或子键时将其删除。该标记可以与uninsdeletevalue.标记合用。
    uninsdeletevalue :卸载程序时删除键值。该标记可以与uninsdeletekeyifempty标记合用。
  • 相关阅读:
    pgfplots画二维图真的很方便,多例比较
    LaTeX技巧206:使用gather输入多行公式的技巧
    LaTeX技巧205:使用split输入多行公式技巧
    LaTeX技巧207:使用align环境输入多行公式的技巧
    LaTeX技巧24:LaTeX常用命令集锦
    CTEX
    Latex常用指令学习
    LATEX数学公式基本语法
    LaTeX使用技巧
    C 命令行参数
  • 原文地址:https://www.cnblogs.com/joean/p/4843125.html
Copyright © 2011-2022 走看看