驅(qū)動精靈是我們系統(tǒng)裝機時缺少驅(qū)動安裝的好幫手,作者根據(jù) 似水年華 給出來的代碼改的,加上自己一些的理解,做的一個單文件NSIS打包代碼。沒有技術(shù)含量,大鳥請飄過~
;腳本編寫:xixi
;我的網(wǎng)站:http://m.elephantinaurance.com
!define PRODUCT_NAME "驅(qū)動精靈2013" ;產(chǎn)品名稱
!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" "驅(qū)動精靈2013" ;產(chǎn)品名稱
VIAddVersionKey /LANG=2052 "CompanyName" "驅(qū)動精靈2013" ;產(chǎn)品名稱
VIAddVersionKey /LANG=2052 "LegalTrademarks" "驅(qū)動精靈2013" ;注冊商標
VIAddVersionKey /LANG=2052 "LegalCopyright" "Copyright MyDrivers.com all right reserved" ;版權(quán)
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" ;打包后程序安裝的路徑,這里是設(shè)計程序釋放的路徑為臨時目錄
Icon "DriverGenius.ico" ;打包用的程序圖標文件名稱
SilentInstall silent ;表示靜默安裝,就是釋放過程中不顯示釋放過程
Section "DriverGenius" SEC01
SetOutPath "$TEMP\DriverGenius-Yanu" ;表示程序運行時釋放的臨時目錄
SetOverwrite on ;不管目標文件是否存在都寫入(覆蓋)
Call FindProc ;檢測程序是否正在運行
file /r "DriverGenius\*.*" ;打包用的文件夾內(nèi)所有文件都壓縮進入程序文件
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" ;刪除注冊表內(nèi)容
DeleteRegKey HKLM "Wow6432Node\SOFTWARE\MyDrivers" ;刪除注冊表內(nèi)容
SectionEnd
Function FindProc
FindProcDLL::FindProc "DriverGenius.exe"
StrCmp $R0 1 +1 +3
MessageBox MB_OK|MB_ICONSTOP " 檢測到 驅(qū)動精靈 正在運行,請$\r$\n$\r$\n先關(guān)閉再運行單文件版!"
abort
FunctionEnd