IT培训网 - IT职场人学IT技术上IT培训网
NSIS打包源文件有哪些常见问题
时间:2019-04-09 14:07:27 来源:编程网 作者:IT培训网 已有:名学员访问该课程
NSIS打包源文件有哪些常见问题?有关NSIS相关问题,这里将一一阐明。
列举NSIS打包源文件常见问题
1.关于修改安装包的欢迎页上的最上面的caption
XPStyle on
Caption " 客户端"
Name "客户端"
2.怎样设置安装进度条不显示文件的详细信息
在工具开始处添加
ShowInstDetails nevershow
ShowUninstDetails nevershow
在section中开始处添加 SetDetailsPrint none,结束处添加 SetDetailsPrint textonly
3.messageBox的处理
在静默的时候MessageBox也会弹出对话框,可以在弹出对话框的地方添加
IfSilent +2 0
MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "您确实要完全移除 $(^Name) ,及其所有的组件?" IDYES +2
Abort
4.修改 安装界面的文字显示
MiscButtonText 可以替换掉安装页面的button显示,[上一步][下一步][取消][关闭],如果留空参数,将使用默认值代替。
例如 MiscButtonText "测试1" "测试2" "测试3" "完成(&G)"
将MiscButtonText的修改项放到; 安装过程页面!insertmacro MUI_PAGE_INSTFILES前。
5.隐藏安装界面的button按钮:使用MyInstFiles替换掉MUI_PAGE_INSTFILES
; 安装过程页面
;!insertmacro MUI_PAGE_INSTFILES
!define MUI_PAGE_CUSTOMFUNCTION_SHOW MyInstFiles
Function MyInstFiles
GetDlgItem $0 $HWNDPARENT 1 ;下一步
ShowWindow $0 ${SW_HIDE}
GetDlgItem $0 $HWNDPARENT 2 ;取消
ShowWindow $0 ${SW_HIDE}
GetDlgItem $1 $HWNDPARENT 3 ;上一步
ShowWindow $1 ${SW_HIDE}
FunctionEnd
6.去掉安装界面和卸载界面的Nullsoft…字:
在安装页面!insertmacro MUI_PAGE_INSTFILES前面添加BrandingText " "
7.修改安装页面的上一步,下一步,取消按钮和卸载页面的关闭按钮的文字
安装页面:
GetDlgItem $R0 $HWNDPARENT 1
SendMessage $R0 ${WM_SETTEXT} 0 `STR:下一步1`
GetDlgItem $R0 $HWNDPARENT 2
SendMessage $R0 ${WM_SETTEXT} 0 `STR:取消1`
GetDlgItem $R0 $HWNDPARENT 3
SendMessage $R0 ${WM_SETTEXT} 0 `STR:上一步1`
卸载页面
Section Uninstall
GetDlgItem $R0 $HWNDPARENT 1
SendMessage $R0 ${WM_SETTEXT} 0 `STR:完成`
SetDetailsPrint none
…
SetDetailsPrint textonly
SetAutoClose true
SectionEnd
8.使用NSIS给自己的程序在开始菜单中添加卸载菜单
因为是想将程序安装到所有用户,所有脚本中添加
RequestExecutionLevel admin
在安装section中
Section CREATESTARTMENU
SetShellVarContext all
CreateDirectory "$SMPROGRAMS\\${PRODUCT_NAME}"
CreateShortCut "$SMPROGRAMS\\${PRODUCT_NAME}\\$(UNINSTALL_STARTMENUVALUE).lnk" "$INSTDIR\\uninst.exe"
SectionEnd
在卸载section中
Section Uninstall
SetShellVarContext all
Delete "$SMPROGRAMS\\${PRODUCT_NAME}\\$(UNINSTALL_STARTMENUVALUE).lnk"
RMDir "$SMPROGRAMS\\${PRODUCT_NAME}"
SetAutoClose false
SectionEnd
SetShellVarContext all一定要添加上,否则会出现卸载之后开始菜单中仍然显示有我们的程序的Bug
每期开班座位有限.0元试听抢座开始!
温馨提示 : 请保持手机畅通,咨询老师为您
提供专属一对一报名服务。
- 上一篇:谈谈cufon-yui.js兼容性及优缺点
- 下一篇:房地产广告设计难不难