最新消息:

NSIS自动检测

nsis 永恒心锁 1163浏览 0评论
!include "MUI.nsh"
OutFile "S32.exe"

!define MUI_PAGE_CUSTOMFUNCTION_PRE ComponentsPage1Pre
!insertmacro MUI_PAGE_COMPONENTS

Sectiongroup "完整独立程序" SecOL3
 Section /o "QQ直播程序" Sec60
 SectionIn 1 2
 SetOutPath "$TEMP"
setoverwrite on
 File "QQLive5.0.3240.exe"
 ExecWait '"$TEMP\QQLive5.0.3240.exe /S'
SectionEnd
 Section /o "QQ音乐程序" Sec20
 SectionIn 1 2
 SetOutPath "$TEMP"
setoverwrite on
 File "QQMusicClickInstall.exe"
 ExecWait '"$TEMP\QQMusicClickInstall.exe /S'
SectionEnd
 Section /o "QQ医生程序" Sec30
 SectionIn 1 2
 SetOutPath "$TEMP"
setoverwrite on
 File "qqdoctor1.3kb1setup.exe"
 ExecWait '"$TEMP\qqdoctor1.3kb1setup.exe /S'
SectionEnd
 Section /o "QQ旋风程序" Sec50
 SectionIn 1
 SetOutPath "$TEMP"
setoverwrite on
 File "qqdownload1.4b1.exe"
 ExecWait '"$TEMP\qqdownload1.4b1.exe /S'
SectionEnd
 Section /o "QQ游戏程序" Sec40
 SectionIn 1 2
 SetOutPath "$TEMP"
setoverwrite on
 File "QQGame2007Beta1_setup.EXE"
 ExecWait '"$TEMP\QQGame2007Beta1_setup.EXE /S'
SectionEnd
 SectionGroupend

Function ComponentsPage1Pre
 Call Check1
 Call Check2
 Call Check3
 Call Check4
 Call Check5
FunctionEnd

Function Check1
IfFileExists $PROGRAMFILES\NSIS\NSIS.exe skip
 !insertmacro UnselectSection ${Sec60}
 skip:
FunctionEnd

Function Check2
IfFileExists $PROGRAMFILESA\A.exe skip
 !insertmacro UnselectSection ${Sec20}
 skip:
FunctionEnd

Function Check3
IfFileExists $PROGRAMFILES\DAEMON Tools\DAEMON.exe skip
 !insertmacro UnselectSection ${Sec30}
 skip:
FunctionEnd

Function Check4
IfFileExists $PROGRAMFILES\QQGAME\Game.exe skip
 !insertmacro UnselectSection ${Sec40}
 skip:
FunctionEnd

Function Check5
IfFileExists $windir\notepad skip
 !insertmacro UnselectSection ${Sec50}
 skip:
FunctionEnd
=====================================================
上下源码均为NSIS自动检测。罾心製作DIY。
=====================================================
!include Sections.nsh

Name TestSelectSection
OutFile "TestSelectSection.exe"

Page components
Page instfiles
ShowInstDetails show

Sectiongroup "完整独立程序" SecOL3
 Section /o "QQ直播程序" Sec60
 SectionIn 1 2
 SetOutPath "$TEMP"
setoverwrite on
 File "QQLive5.0.3240.exe"
 ExecWait '"$TEMP\QQLive5.0.3240.exe /S'
SectionEnd
 Section /o "QQ音乐程序" Sec20
 SectionIn 1 2
 SetOutPath "$TEMP"
setoverwrite on
 File "QQMusicClickInstall.exe"
 ExecWait '"$TEMP\QQMusicClickInstall.exe /S'
SectionEnd
 Section /o "QQ医生程序" Sec30
 SectionIn 1 2
 SetOutPath "$TEMP"
setoverwrite on
 File "qqdoctor1.3kb1setup.exe"
 ExecWait '"$TEMP\qqdoctor1.3kb1setup.exe /S'
SectionEnd
 Section /o "QQ旋风程序" Sec50
 SectionIn 1
 SetOutPath "$TEMP"
setoverwrite on
 File "qqdownload1.4b1.exe"
 ExecWait '"$TEMP\qqdownload1.4b1.exe /S'
SectionEnd
 Section /o "QQ游戏程序" Sec40
 SectionIn 1 2
 SetOutPath "$TEMP"
setoverwrite on
 File "QQGame2007Beta1_setup.EXE"
 ExecWait '"$TEMP\QQGame2007Beta1_setup.EXE /S'
SectionEnd
 SectionGroupend

IfFileExists $windir\notepad.exe QQliveExists PastQQliveCheck
QQliveExists:
 !insertmacro SelectSection ${SEC60}
PastQQliveCheck:
;/////////////////////QQ音乐//////////////////////////////////////////////////
IfFileExists $windir\notepad.exe QQmusicExists PastQQmusicCheck
QQmusicExists:
 !insertmacro SelectSection ${SEC20}
PastQQmusicCheck:
;/////////////////////QQ医生//////////////////////////////////////////////////
IfFileExists $windir\notepad.exe QQdoctorExists PastQQdoctorCheck
QQdoctorExists:
 !insertmacro SelectSection ${SEC30}
PastQQdoctorCheck:
;/////////////////////QQ旋风//////////////////////////////////////////////////
IfFileExists $windir\notepad.exe QQdownloadExists PastQQdownloadCheck
QQdownloadExists:
 !insertmacro SelectSection ${SEC40}
PastQQdownloadCheck:
;//////////////////////QQ游戏/////////////////////////////////////////////////
IfFileExists $windir\notepad.exe QQgameExists PastQQgameCheck
QQgameExists:
 !insertmacro SelectSection ${SEC50}
PastQQgameCheck:
FunctionEnd

!include Sections.nsh

Section "Photoshop plug-ins" ps_plugins
SectionEnd

Function .onInit
IfFileExsists $PROGRAMFILES\Photoshop\main.exe psins
!insertmacro SelectSection ${ps_plugins}
Goto done
psins:
!insertmacro UnselectSection ${ps_plugins}
done:
FunctionEnd
永恒心锁,版权所有丨如未注明,均为转载丨本网站采用BY-NC-SA协议进行授权

转载请注明:永恒心锁-分享互联网 » NSIS自动检测

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