NSIS安装成功是否选择开机自动启动

Posted 一如年少模样

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NSIS安装成功是否选择开机自动启动相关的知识,希望对你有一定的参考价值。

对于制作好的安装包,有些时候可能需要在安装完成界面上添加一个可勾选的开机自启动的选项。 下面是具体的细节: 1.在安装完成界面设置添加如下代码:

!define MUI_FINISHPAGE_SHOWREADME
!define MUI_FINISHPAGE_SHOWREADME_Function AutoBoot
!define MUI_FINISHPAGE_SHOWREADME_TEXT "开机自动启动"

上面的代码务必要添加在 " !insertmacro MUIPAGEFINISH "之前。

2.在Section后区段的后面添加Function部分(在Section之后,是为了避免产生未知的错误) 代码如下:

Function AutoBoot
    WriteRegStr HKCU"Software\\Microsoft\\Windows\\CurrentVersion\\Run" "test""test.exe"
FunctionEnd

把上面的test替换成你要打包程序名就行了,主要是把信息写入系统注册表。

3.前两步已经可以实现开机自启动了。这最后一步,需要在卸载和初始化区段里面把注册表信息删除。原因是让用户在卸载程序和覆盖安装程序后,不会受到刚开始安装程序的写入系统注册表的影响。 在Function .onInit里面添加如下代码:

;删除开机自启

DeleteRegKey HKCU"Software\\Microsoft\\Windows\\CurrentVersion\\Run"

在Section Uninstall里面添加如下代码:

;删除开机自启

DeleteRegKey HKCU"Software\\Microsoft\\Windows\\CurrentVersion\\Run"



补充说明:

      开机启动项注册表一般可以在运行cmd中输入msconfig 就可以看到本机的开机自启项


     

最后编译运行,就会发现在程序的安装完成界面出现了可勾选的开机自启动选项。效果如下图:



续:

列出注册表"HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Run"中的所有键值到界面上或文本中;并把自己做的这个程序设置为开机  由于是lua脚本,现在还没确定怎么操作。后续吧。


以上是关于NSIS安装成功是否选择开机自动启动的主要内容,如果未能解决你的问题,请参考以下文章

NSIS小记:管理员权限和开机自动启动

NSIS制作了一个完整的演示产品安装程序

电脑开机出现NSIS Error

安装程序出现NSIS ERROR

Nginx设置成服务并开机自动启动yum安装的成功了

NSIS 打包脚本基础