原文 NSIS脚本:在卸载页面收集信息

此功能用于在软件卸载时收集相关信息,以便进行后续改进。实现功能如图:

以下为实现代码:

01 !include nsDialogs.nsh
02 !include LogicLib.nsh
03  
04 OutFile "Test.EXE"
05 Name "Test"
06 !include "MUI2.nsh"
07 BrandingText "轻狂志www.flighty.cn"
08  
09 Page custom ReportPageShow ReportPageLeave
10  
11 !insertmacro MUI_LANGUAGE "SimpChinese"
12  
13 Var Dialog
14 Var Label1
15 Var Label2
16 Var Checkbox1
17 Var Checkbox2
18 Var Checkbox3
19 Var Checkbox4
20 Var Checkbox5
21 Var Checkbox6
22 Var Text
23 Section
24 SectionEnd
25 Function ReportPageShow
26 nsDialogs::Create /NOUNLOAD 1018
27 Pop $Dialog
28  
29 ${NSD_Createlabel} 0u 0u -1u 20u "很遗憾您选择卸载傲游,请告诉我们您卸载的原因。这将帮助我们以后进行改进:"
30 Pop $Label1
31 SetCtlColors $Label1 0x0080FF transparent
32  
33 ${NSD_Createcheckbox} 0u 25u -1u 10u "它经常崩溃"
34 Pop $Checkbox1
35  
36 ${NSD_Createcheckbox} 0u 40u -1u 10u "它经常假死"
37 Pop $Checkbox2
38 ${NSD_Createcheckbox} 0u 55u -1u 10u "它显示一些网页不正确"
39 Pop $Checkbox3
40 ${NSD_Createcheckbox} 0u 70u -1u 10u "它缺少我需要的功能"
41 Pop $Checkbox4
42 ${NSD_Createcheckbox} 0u 85u -1u 10u "我喜欢上其它浏览器了,请在下边注明"
43 Pop $Checkbox5
44 ${NSD_Createcheckbox} 0u 100u -1u 10u "升级傲游[Maxthon]"
45 Pop $Checkbox6
46 ${NSD_Createlabel} 0u 115u -1u 10u "其它原因, 请在下边写入:"
47 Pop $Label2
48 ${NSD_Createtext} 0u 125u -1u -126u ""
49 Pop $Text
50 nsDialogs::Show
51  
52 FunctionEnd
53  
54 Function ReportPageLeave
55     ${NSD_GetText} $Text $R0
56     StrCpy $R1 ""
57     ${NSD_GetState} $Checkbox1 $R2
58     StrCpy $R1 "$R1$R2"
59     ${NSD_GetState} $Checkbox2 $R2
60     StrCpy $R1 "$R1$R2"
61     ${NSD_GetState} $Checkbox3 $R2
62     StrCpy $R1 "$R1$R2"
63     ${NSD_GetState} $Checkbox4 $R2
64     StrCpy $R1 "$R1$R2"
65     ${NSD_GetState} $Checkbox5 $R2
66     StrCpy $R1 "$R1$R2"
67     ${NSD_GetState} $Checkbox6 $R2
68     StrCpy $R1 "$R1$R2"
69     MessageBox MB_OK '结果:勾选题:$R1;文本题:"$R0"'
70  
71 ;通过PHP获取$R1_$R0参数分析结果。
72 FunctionEnd

NSIS脚本:在卸载页面收集信息的更多相关文章

  1. 轻狂写的桌面日历秀NSIS脚本供大家参考学习

    原文 轻狂写的桌面日历秀NSIS脚本供大家参考学习 现在共享桌面日历秀的NSIS脚本,以便交流学习.此脚本实现的功能如下: 7-Zip打开看不到内容.自动读取原安装路径,如果有则不允许更改.取得编译日 ...

  2. 全方位掌握nsis脚本

    NSIS 确实是一个不错的安装程序制作软件.新版本 2.0a7 真正实现了中文支持和支持 WinXP 的安装对话框. 不过要用它实现漂亮的安装界面和完美的安装功能就必须好好的写脚本. 而 NSIS 的 ...

  3. 使用NSIS脚本制作一个安装包

    大部分人第一次看到NSIS脚本都是一脸懵逼的.因为它这个脚本的结构乍一看上去就非常奇怪,不作说明的话是看不懂的. 编写脚本命令的时候要非常注意,命令要按照规定写在脚本中不同的段落里,也就是说,命令的先 ...

  4. 关于NSIS脚本的Demo

    这个NSIS脚本是打包公司的整个Release项目工程. 用NSIS编译器编译下就可以了. ; Script generated by the HM NIS Edit Script Wizard. ! ...

  5. NSIS脚本入门和进阶方法

    NSIS(Nullsoft Scriptable Install System)是一个开源的 Windows 系统下安装程序制作程序.它提供了安装.卸载.系统设置.文件解压缩等功能.对于新手来说,它有 ...

  6. 编写无Java脚本的JSP页面

    在上一章中总结了Web开发中应用MVC架构模式,将Servlet 用做控制器,JSP作为视图,JavaBean作为模型,实现业务流程控制,页面逻辑和业务逻辑的分离.然而,使用前面的技术实现MVC,并不 ...

  7. 超详细的php用户注册页面填写信息完整实例(附源码)

    这篇文章主要介绍了一个超详细的php用户注册页面填写信息完整实例,内容包括邮箱自动匹配.密码强度验证以及防止表单重复等,小编特别喜欢这篇文章,推荐给大家. 注册页面是大多数网站必备的页面,所以很有必要 ...

  8. 利用PHP获取访客IP、地区位置、浏览器及来源页面等信息

    这篇文章主要介绍了利用PHP获取访客IP.地区位置.浏览器及来源页面等信息的相关资料,文中给出了详细的示例代码供大家参考学习,对大家具有一定的参考借鉴价值,需要的朋友们下面来一起看看吧. 前言 本文中 ...

  9. [课程设计]Scrum 3.4 多鱼点餐系统开发进度(下单详细信息页面&会员信息页面)

    Scrum 3.4 多鱼点餐系统开发进度(下单详细信息页面&会员信息页面) 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团队 ...

随机推荐

  1. client对象层次和0级DOM

    刚開始学了两天JS,闲着无聊,顺手画了张图

  2. mvc图片地址

    System.Web.HttpContext.Current.Server.MapPath(@"~\Images\radio1.png");

  3. java序列化是什么和反序列化和hadoop序列化

    1.什么是序列化和系列化DE- 神马是序列化它,序列化是内存中的对象状态信息,兑换字节序列以便于存储(持久化)和网络传输.(网络传输和硬盘持久化,你没有一定的手段来进行辨别这些字节序列是什么东西,有什 ...

  4. aspx向silverlight传值

    原文:http://www.cnblogs.com/lensso/archive/2010/07/27/1785844.html 方法1: 向嵌入aspx页面的silverlight对象添加imnit ...

  5. 阿里巴巴2014年校园招聘(秋季招聘)在线笔试--測试研发project师

    第一部分是单选题:40分钟答题时间. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveG1oMTk1NA==/font/5a6L5L2T/fontsize/ ...

  6. 站点系统压力測试Jmeter+Badboy

    近期项目须要压力測试,因此搜了几款试用,首选的是LoadRunner这款大名鼎鼎的測试软件: LoadRunner11 下载请猛戳这里 传送门LoadRunner破解文件 下载请猛戳这里 传送门Loa ...

  7. 七牛对用户使用webp图片格式的使用建议

    Qiniu 七牛问题解答 Chrome浏览器是可打开WebP格式的.可是并非全部的浏览器都支持webp格式,比如360.ie等浏览器是不支持的. WebP格式,谷歌(google)开发的一种旨在加快图 ...

  8. index_ss hint 使用的运行计划变化对照

    index_ss  hint 使用的运行计划变化对照 当中 buffer 代表:当前操作中发生的内存读次数,包括一致性读和当前读 尽管 emp 表记录数不多,可是buffer 读内存的次数区别还是有点 ...

  9. 从"分层二进制输出"至"解决二进制树深度"总结

    本文研究的摘要,欢迎转载,但请注明出处:http://write.blog.csdn.net/postedit/41964669 近期在刷LettCode上的算法题,发现好多题目的解题思路大体是一致的 ...

  10. Connect2015 简要整理

    2015 简要整理 去年 Connect(); 2014 Visual Studio Contact(); 直播笔记 对于我个人来说,今年 Connect(); 的三个重要发布: ASP.NET 5 ...