inno setup
dongsongz
这个作者很懒,什么都没留下…
展开
-
inno setup 通过windows计划任务实现开机自启动
windows计划任务可以实现开机自启动,且是随系统启动,开机用户不登录就启动了。代码示例:function SetStartOnBoot():Boolean;var startCmd: String;var ErrorCode: Integer;begin //加上/F可以在计划任务已存在的情况下强制更新 startCmd := Format('/c schtasks /create /TN %s /RU SYSTEM /SC ONSTART /TR %s /F', ['{#MyA原创 2021-05-01 21:57:38 · 1591 阅读 · 0 评论 -
inno setup 通过注册表检测重复安装及重复安装提示卸载
inno setup可以在安装时写注册表,在卸载时删除注册表。重复安装检测可以通过检查注册表是否存在特定的键。代码示例如下:function CheckIsInstalled(): Boolean;var UnInstallExe, strCmdUnInstall, errorStr: String;var ErrorCode: Integer;var Subkeys: TArrayOfString;var Subkey: string;var I: Integer;var u原创 2021-05-01 21:51:07 · 1529 阅读 · 0 评论 -
inno setup 遍历注册表
inno setup遍历注册表某个路径如HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall下包含指定字符串的key示例如下://out表示出参function CheckIsInstalledFromRegistry(out uninstallKey: String):Boolean;var Names: TArrayOfString; I: Integer; RootKey: Integer; Subkey: Stri原创 2021-05-01 13:01:21 · 876 阅读 · 1 评论 -
inno setup 通过自定义宏实现读文本文件获取软件版本号
很多时候我们开发的软件本身已经有版本号文件了,那么如何在inno setup中使用这个版本号呢?inno setup通过新建一个安装向导会产生一个版本号,需要通过自定义宏在[Setup]段中使用从文件中获取的版本号。代码示例:#define RetrieveVersion(str FileName) \ Local[0] = FileName, \ Local[1] = FileOpen(Local[0]), \ Local[2] = FileRead(Local[1]), \原创 2021-05-01 12:02:52 · 1623 阅读 · 0 评论 -
inno setup 禁用复选框
inno setup可以很方便的打包window软件来制作安装程序。我们常需要提供复选框让用户来选择安装部分功能或软件,inno setup提供了TNewCheckBox来创建复选框,但TCheckBox适用于不互斥的选项之间,遇到互斥的选项该如何处理呢?方法一 通过TRadioButton实现多个选项单选。方法二 通过在TCheckBox的OnClick事件中,禁用其他复选框来达到单选的目的。inno setup代码示例如下:procedure ClickWinpcapCh...原创 2021-05-01 11:27:26 · 633 阅读 · 0 评论