论坛风格切换
正版合作和侵权请联系 sd173@foxmail.com
 
  • 帖子
  • 日志
  • 用户
  • 版块
  • 群组
帖子
购买邀请后未收到邀请联系sdbeta@qq.com
  • 2252阅读
  • 2回复

[教程资料]驱动精灵单文件代码-NSIS [复制链接]

上一主题 下一主题
离线闪电
 

发帖
27953
今日发帖
最后登录
2024-05-04
只看楼主 倒序阅读 使用道具 楼主  发表于: 2013-07-28 18:06:32

是根据 似水年华 给出来的代码改的,加上自己一些的理解。没有技术含量,大鸟请飘过~

;脚本编写:Yanu
;我的博客:http://blog.ccav1.com
!define PRODUCT_NAME "驱动精灵2013" ;产品名称
!define PRODUCT_VERSION "7.0.612.1110" ;版本号
!define PRODUCT_PUBLISHER "Yanu" ;程序制作者
!define PRODUCT_WEB_SITE "http://blog.ccav1.com" ;链接
!include "MUI.nsh"
;上面一堆基本上是废话
!system '>blank set/p=MSCF<NUL'
!packhdr temp.dat 'cmd /c Copy /b temp.dat /b +blank&&del blank' ;7-zip打开显示空白
SetCompressor /SOLID lzma ;压缩算法
SetCompressorDictSize 32
!insertmacro MUI_LANGUAGE "SimpChinese" ;版本语言
VIProductVersion "7.0.612.1110" ;版本号
VIAddVersionKey /LANG=2052 "ProductName" "驱动精灵2013" ;产品名称
VIAddVersionKey /LANG=2052 "CompanyName" "驱动精灵2013" ;产品名称
VIAddVersionKey /LANG=2052 "LegalTrademarks" "驱动精灵2013" ;注册商标
VIAddVersionKey /LANG=2052 "LegalCopyright" "Copyright MyDrivers.com all right reserved" ;版权
VIAddVersionKey /LANG=2052 "FileDescription" "Yanu"
VIAddVersionKey /LANG=2052 "FileVersion" "7.0.612.1110"
VIAddVersionKey /LANG=2052 "OriginalFilename" "DriverGenius" ;源文件名
Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
OutFile "DriverGenius.exe" ;打包后输出的程序名称
InstallDir "$TEMP\DriverGenius-Yanu" ;打包后程序安装的路径,这里是设计程序释放的路径为临时目录
Icon "DriverGenius.ico" ;打包用的程序图标文件名称
SilentInstall silent ;表示静默安装,就是释放过程中不显示释放过程
Section "DriverGenius" SEC01
SetOutPath "$TEMP\DriverGenius-Yanu" ;表示程序运行时释放的临时目录
SetOverwrite on ;不管目标文件是否存在都写入(覆盖)
Call FindProc ;检测程序是否正在运行
file /r "DriverGenius\*.*" ;打包用的文件夹内所有文件都压缩进入程序文件
Execwait "$TEMP\DriverGenius-Yanu\DriverGenius.exe" ;释放后要运行的程序
RMDir /r /REBOOTOK "$TEMP\DriverGenius" ;删除程序运行完成后释放的文件或文件夹
RMDir /r /REBOOTOK "$TEMP\~DriverUpdate" ;删除程序运行完成后释放的文件或文件夹
RMDir /r /REBOOTOK "$AppData\dg" ;删除程序运行完成后释放的文件或文件夹
RMDir /r /REBOOTOK "$TEMP\~DriverUpdate" ;删除程序运行完成后释放的文件或文件夹
DeleteRegKey HKLM "SOFTWARE\MyDrivers" ;删除注册表内容
DeleteRegKey HKLM "Wow6432Node\SOFTWARE\MyDrivers" ;删除注册表内容
SectionEnd

Function FindProc
FindProcDLL::FindProc "DriverGenius.exe"
StrCmp $R0 1 +1 +3
MessageBox MB_OK|MB_ICONSTOP " 检测到 驱动精灵 正在运行,请$\r$\n$\r$\n先关闭再运行单文件版!"
abort
FunctionEnd
百度一下“闪电软件园”,惊喜等着您哦!
┖───────────────┘┕━━━━┛  

离线xiaoqinfeng
发帖
*
今日发帖
最后登录
1970-01-01
只看该作者 沙发  发表于: 2013-07-28 18:44:50
这个代码看看
离线power3

发帖
1469
今日发帖
最后登录
2024-05-04
只看该作者 板凳  发表于: 2021-09-28 08:07:40
看看了解下。