最新消息:

nsis 绿化程序UI源码

nsis 永恒心锁 1746浏览 0评论
#压缩设置

 SetCompressor /SOLID lzma

 SetCompressorDictSize 32

 SetDatablockOptimize on

 SetCompress auto

#预先载入文件,方便安装加速释放

 Reservefile "Res\iewb_net.ini"

 ReserveFile "Res\header.bmp"

 ReserveFile "${NSISDIR}\Plugins\System.dll"

#头文件

 !include "MUI.nsh"

 !include "logiclib.nsh"

 !include "WinMessages.nsh"

 !include "UsefulLib.nsh"

#界面相关

 ;只有单击"取消"才能取消安装

 ;!define MUI_ABORTWARNING

 ;!define MUI_ABORTWARNING_TEXT "你确定要退出?"

 !define MUI_ICON "Res\io.ico"

 !define MUI_HEADERIMAGE

 !define MUI_HEADERIMAGE_BITMAP "Res\header.bmp"

 !define MUI_CUSTOMFUNCTION_GUIINIT .MyGUIInit

 !define MUI_FINISHPAGE_NOAUTOCLOSE

 page custom show leave

#相关宏

 !insertmacro MUI_LANGUAGE "SimpChinese"

#使用自定义UI

 ChangeUI all "C:\Documents and Settings\Administrator\桌面\绿化工具\Contrib\default.exe"

#程序设置

 Caption "绿化工具"

 OutFile "绿化工具.exe"

 XPStyle on

#程序执行前操作

 Function .oninit

 InitPluginsDir

 ;设置输出路径且当路径不存在时创建,设定当前的工作目录

 SetOutPath $PluginsDIR

 ;释放文件

 File "Res\iewb_net.ini"

 ;检测"要检测的文件"是否存在,当文件存在时跳转

 ;IfFileExists "$EXEDIR\*.exe" PathGood

 ;MessageBox MB_OK|MB_ICONEXCLAMATION|MB_TOPMOST "请把绿化工具复制到程序所在文件夹下运行。"

 ;Abort

 ;PathGood:

 Functionend

#定义要创建的控件(ID不能重复,否则会产生未知错误!)

 ;定义关于按钮

 !ifndef IDC_BUTTON

 !define IDC_BUTTON 1190

 !endif

 ;定义链接

 !ifndef IDC_LINKER

 !define IDC_LINKER 1200

 !endif

 ;创建公共函数

 !macro MYMACRO un

 Function ${un}.AboutButton

 MessageBox MB_OK|MB_ICONINFORMATION "启光博客$\nwww.iewb.net"

 FunctionEnd

 Function ${un}.MyGUIInit

 InitPluginsDir

 ;创建按钮

 ;用法:${CreateButton2} 显示文本 X轴位置 Y轴位置 宽度 高度 父窗口窗口句柄 控件ID 目标函数

 ${CreateButton2} "关于(&A)" 118 192 68 18 $HWNDPARENT ${IDC_BUTTON} ${un}.AboutButton

 ;创建链接

 ${CreateLinker2} "启光博客" 20 194 80 $2 $HWNDPARENT ${IDC_LINKER} "http:/www.iewb.net"

 FunctionEnd

 Function ${un}.onGUIEnd

 ButtonLinker::unload

 FunctionEnd

 !macroend

 ;插入安装函数

 !insertmacro MYMACRO ""

#函数定义

 Function show

 installoptions::initdialog /nounload $PluginsDIR\iewb_net.ini

 installoptions::show

 Functionend

 Function leave

 ReadINIStr $0 "$PluginsDIR\iewb_net.ini" Settings State

 ${Switch} $0

 ${Default}

 Abort

 ${Case} 2

 Call inst

 Abort

 ${Case} 3

 Call uninst

 Abort

 ${Case} 0

 ${EndSwitch}

 Functionend



 Function inst

 ;在这里放上绿化的代码

 ;………………..

 ;刷新屏幕

 ;System::Call 'Shell32::SHChangeNotify(i 0x8000000, i 0, i 0, i 0)'

 MessageBox MB_OK|MB_ICONINFORMATION "绿化完成!"

 Return

 FunctionEnd

 Function uninst

 ;在这里放上卸载的代码

 ;………………..

 MessageBox MB_OK|MB_ICONINFORMATION "卸载完成!"

 Return

 FunctionEnd

#区段定义

 Section "-形式而已"

 sectionend
免责声明:根据《计算机软件保护条例》第十七条规定“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。”您需知晓本站所有内容资源均来源于网络,仅供用户交流学习与研究使用,版权归属原版权方所有,版权争议与本站无关,用户本人下载后不能用作商业或非法用途,需在24个小时之内从您的电脑中彻底删除上述内容,否则后果均由用户承担责任;如果您访问和下载此文件,表示您同意只将此文件用于参考、学习而非其他用途,否则一切后果请您自行承担,如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。丨本站为个人博客非盈利性站点,所有软件信息均来自网络,所有资源仅供学习参考研究目的,并不贩卖软件,不存在任何商业目的及用途。丨本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权BY-NC-SA协议进行授权

转载请注明:永恒心锁-分享互联网 » nsis 绿化程序UI源码

您必须 登录 才能发表评论!