返回列表 回复 发帖

在NSIS安装完成页面添加多个Checkbox,用来处理一定问题

我想实现的功能是这样的:
    1,在完成界面上多几个自定义checkbox,而不是自述文档的checkbox
    2,这个checkbox如果选中,用户点击完成我想往注册表里写些键值

问题是:  1,怎么实现完成界面或其它界面添加checkbox
         2,怎样检测checkbox的状态(或者说在那里检测checkbox状态,.onInstSuccess中么?怎样检测),从而执行一定代码

搜索了一下论坛上帖子,看见有类似的解决方案,不过没有看明白,估计nsis没有入门的缘故吧

---引用:
可以在完成页面的准备函数里面写入如下代码
代码:
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Type"
"Checkbox"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5"
"Text" "选择是否开机自动运行"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini"
"Field 5" "Left" "120"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini"
"Field 5" "Right" "315"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini"
"Field 5" "Top" "75"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini"
"Field 5" "Bottom" "87"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini"
"Field 5" "State" "1"
然后在完成页面离开函数里通过判断!insertmacro MUI_INSTALLOPTIONS_READ $0 "ioSpecial.ini"
"Field 5" "State"
$0为1时说明选择了,否则就是没有选择。


以上代码有多处不理解:
    1,完成页面的准备函数是那个函数,自己定义的(怎么定义)还是其它
    2,完成页面离开函数 是那个函数
说白了就是这些代码应该往那里写...........哎,nsis的整体框架结构不是很清楚啊!


急切盼望高手的帮忙,在线等待中。。。
楼主,给你个文档看吧,MUI定义的都写在里面!

我搜集的,拿来与大家分享。
附件: 您所在的用户组无法下载或查看附件
已经顺利解决
原帖由 fy_8303 于 2008-6-12 01:58 PM 发表
楼主,给你个文档看吧,MUI定义的都写在里面!

我搜集的,拿来与大家分享。
嘿嘿,和我搜索的一模一样哦


不过mui用不怎么来,用了里面的几个实例,编译时提示出错,不知道是不是位置的问题,还是语法的问题
!define MUI_PAGE_CUSTOMFUNCTION_PRE   FinishPagePre
!define MUI_PAGE_CUSTOMFUNCTION_SHOW  FinishPageShow
!define MUI_PAGE_CUSTOMFUNCTION_LEAVE FinishPageLeave
返回列表