NSIS安装包制做软件的常用小技巧
2017-02-10 21:22
344 查看
NSIS安装包制做软件的常用小技巧
用NSIS软件制作安装包时总会用到那么几个常用的代码,正因为常用到,自己脑袋又不好记不住,所以就一一记录下来,时间一长自然也就成好多条了,贴出来与大家分享一下吧。
1.如何运行一个批处理文件 .bat
注:xiaojian.bat为你的文件名
不显示黑框框
2.如何运行一个VBS文件 .vbs
注:xiaojian.vbs为你的文件名
3.如何运行一个注册表文件
注:xiaojian.reg为你的文件名
请看NSIS详细说明
4.如何运行一个安装文件 .inf
注:xiaojian.inf 为你的文件名
5.如何运行一个安装文件 .msi
注:xiaojian.msi为你的文件名
6.关联文件图标后,图标没变化。
刷新图标
7.安装窗体变窄了。
用NSIS软件制作安装包时总会用到那么几个常用的代码,正因为常用到,自己脑袋又不好记不住,所以就一一记录下来,时间一长自然也就成好多条了,贴出来与大家分享一下吧。
1.如何运行一个批处理文件 .bat
注:xiaojian.bat为你的文件名
ExecWait "xiaojian.bat"
不显示黑框框
nsExec::Exec "xiaojian.bat"
2.如何运行一个VBS文件 .vbs
注:xiaojian.vbs为你的文件名
ExecWait '"$SYSDIR\cscript.exe" "xiaojian.vbs"' 不显示黑框框 nsExec::Exec '"$SYSDIR\cscript.exe" "xiaojian.vbs"'
3.如何运行一个注册表文件
注:xiaojian.reg为你的文件名
ExecWait "regedit.exe /s xiaojian.reg"接写入注册表 WriteRegStr WriteRegExpandStr WriteRegDWORD WriteRegBin 比如:WriteRegDWORD HKCU "Software\ES-Computing\xiaojian\Install" "eula" '0x00000001"
请看NSIS详细说明
4.如何运行一个安装文件 .inf
注:xiaojian.inf 为你的文件名
ExecWait "RunDll32 advpack.dll,LaunchINFSection xiaojian.inf,DefaultInstall"
5.如何运行一个安装文件 .msi
注:xiaojian.msi为你的文件名
Execwait `msiexec /qn /i "xiaojian.msi"`
6.关联文件图标后,图标没变化。
刷新图标
'System::Call shell32.dll::SHChangeNotify(l, l, i, i) v (0x08000000, 0, 0, 0)'
7.安装窗体变窄了。
SetFont /LANG=2052 "tahoma" 8 XP特殊文件夹的位置: HKCU "Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" 安装硬盘上的字体(代码插入Function,Section内): StrCpy $0 "D:\Fonts\Chs\经典空趣体繁.ttf" WriteRegStr HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts" "经典空趣体繁(TrueType)" "$0" System::Call "GDI32::AddFontResource(t) i ('$0') .s" 在经典模式下使用中文界面(代码插入文件头): LoadLanguageFile "${NSISDIR}\Contrib\Language files\SimpChinese.nlf" LangString Name 2052 "Simplified Chinese" #-- 根据 NSIS 脚本编辑规则,所有 Function 区段必须放置在 Section 区段之后编写,以避免安装程序出现未可预知的问题。--# ;卸载程序之前 Function un.onInit MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "你确实要完全移除 $(^Name) ,及其所有的组件?" IDYES +2 Abort ;运行批处理文件 ExecShell Open "$INSTDIR\rege\UnregUAC.bat" "" SW_HIDE ;ExecShell Open "sdbinst /u *.sdb" "" SW_HIDE FunctionEnd Function un.onUninstSuccess HideWindow MessageBox MB_ICONINFORMATION|MB_OK "$(^Name) 已成功地从你的计算机移除。" FunctionEnd ;安装结束后,运行批处理文件 Function .onInstSuccess ;ExecShell Open "$INSTDIR\rege\RegUAC.bat" "" SW_HIDE ;ExecShell Open "sdbinst /q *.sdb" "" SW_HIDE ;ExecWait "sdbinst /q *.sdb" ;ExecShell Open 'cmd' '/c "sdbinst /q *.sdb"' SW_HIDE ExecShell Open 'cmd' '/k "sdbinst /q *.sdb"' SW_SHOWNORMAL functionend
相关文章推荐
- 如何在 Linux 上安装应用程序
- 批量自动安装常用软件
- 批量自动安装常用软件
- 企业批量部署RealVNC远程控制软件
- 好用的Markdown编辑器一览
- WinWorld:大型的废弃操作系统、软件、游戏的博物馆
- 网上视频站 视频下载利器 优酷网 视频下载 必备 软件 下载[原创]_常用工具_脚本之家
- BAT批处理实现软件的自动安装(以搜狗拼音为例)
- nw.js实现类似微信的聊天软件
- 采用C#实现软件自动更新的方法
- C#判断某个软件是否已安装实现代码分享
- IIS 防盗链 软件
- asp文件用什么软件编辑
- android判断软件是否第一次运行的方法
- Android实现软件列表的点击启动另外一个程序功能【附demo源码下载】
- Android软件自动更新实现代码
- Python实现的二维码生成小软件
- 软件、服务、进程、端口关系
- 【转】对软件产品化的理解