原文 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. Docker创建支持ssh服务的容器和镜像

    原文链接:Docker创建支持ssh服务的容器和镜像 1. 这里使用的centos作为容器,所以首先下载centos的images # sudo docker pull centos 2. 下载后执行 ...

  2. 前端构建工具gulp

    前端构建工具gulp使用   前端自动化流程工具,用来合并文件,压缩等. Gulp官网 http://gulpjs.com/ Gulp中文网 http://www.gulpjs.com.cn/ Gul ...

  3. 【牛刀小试2】password保

    ]password保 主要知识: 1.        while循环 2.        do-while循环 3.        if-else 4.        strcmp()函数 [充电一下 ...

  4. 树莓派安装 dig命令

     apt-get install  dnsutils

  5. 【原创】leetCodeOj ---Remove Duplicates from Sorted List II 解题报告

    明日深圳行,心情紧张,写博文压压惊 囧 ------------------------------------- 原题地址: https://oj.leetcode.com/problems/rem ...

  6. 【原创】纯OO:从设计到编码写一个FlappyBird (一)

    说起来,自学计算机也有2年多的时间了,自己还没有从设计到编码,完完整整的设计一个基于面向对象的软件的经历..囧 于是,就有了这个系列.首先选用的语言是Java,没别的原因,HeadFirst设计模式是 ...

  7. RH033读书笔记(2)-Lab 3 Getting Help with Commands

    Lab 3 Getting Help with Commands Sequence 1: Using the Help Tools 1. man -f keyword whatis keyword l ...

  8. [渣译文] SignalR 2.0 系列: 开始使用SignalR 2.0

    原文:[渣译文] SignalR 2.0 系列: 开始使用SignalR 2.0 英文渣水平,大伙凑合着看吧…… 这是微软官方SignalR 2.0教程Getting Started with ASP ...

  9. ASP.NET自定义控件组件开发 第二章 继承WebControl的自定义控件

    原文:ASP.NET自定义控件组件开发 第二章 继承WebControl的自定义控件 第二章 继承于WebControl的自定义控件 到现在为止,我已经写了三篇关于自定义控件开发的文章,很感谢大家的支 ...

  10. 基于nodejs 的微信 JS-SDK 简单应用

    2015 是 Hybrid App 崛起之年 ,Web App 和 Native App 各有其强大之处,也有着致命的缺点,人们一边追求native流畅的用户体验,一边同时期望产品能够快速的迭代更新, ...