70 lines
1.9 KiB
Plaintext
70 lines
1.9 KiB
Plaintext
!include FileFunc.nsh
|
|
!include WinVer.nsh
|
|
|
|
Unicode true
|
|
XPStyle on
|
|
ManifestSupportedOS all
|
|
RequestExecutionLevel user
|
|
AutoCloseWindow true
|
|
InstallColors FFD74A 000000
|
|
ShowInstDetails show
|
|
|
|
OutFile "bin\post-install-launcher.exe"
|
|
Icon "post-install-launcher.ico"
|
|
ChangeUI all "${NSISDIR}\Contrib\UIs\sdbarker_tiny.exe"
|
|
|
|
Caption "Almost there..."
|
|
SubCaption 1 " "
|
|
SubCaption 2 " "
|
|
SubCaption 3 " "
|
|
SubCaption 4 " "
|
|
|
|
!macro PrintStatusMessage message
|
|
SetDetailsPrint both
|
|
DetailPrint "${message}"
|
|
SetDetailsPrint listonly
|
|
Sleep 333
|
|
!macroend
|
|
|
|
!define REG_KEY_DOTNET_FRAMEWORK `'SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full' 'Release'`
|
|
|
|
Section
|
|
BringToFront # Just to be sure!
|
|
|
|
!insertmacro PrintStatusMessage "Detecting operating system, please wait..."
|
|
${IfNot} ${AtLeastBuild} 7601
|
|
MessageBox MB_ICONSTOP|MB_TOPMOST "This application runs on Windows 7 (SP1) or later!"
|
|
Quit
|
|
${EndIf}
|
|
|
|
!insertmacro PrintStatusMessage "Detecting installed .NET Framework version, please wait..."
|
|
ClearErrors
|
|
ReadRegDWORD $0 HKLM64 ${REG_KEY_DOTNET_FRAMEWORK}
|
|
${If} ${Errors}
|
|
${OrIfNot} $0 U> 0
|
|
ReadRegDWORD $0 HKLM32 ${REG_KEY_DOTNET_FRAMEWORK}
|
|
${EndIf}
|
|
${If} $0 U> 0
|
|
DetailPrint "Installed release: $0"
|
|
${IfThen} $0 >= 461808 ${|} Goto launch_application ${|}
|
|
${Else}
|
|
DetailPrint ".NET Framework not found!"
|
|
${Endif}
|
|
|
|
!insertmacro PrintStatusMessage "Installing .NET Framework 4.7.2, please wait..."
|
|
${Do}
|
|
ClearErrors
|
|
ExecShellWait /ALLOWERRORUI "open" "$EXEDIR\ndp472-kb4054531-web.exe" /passive
|
|
${IfNot} ${Errors}
|
|
${OrIf} ${Cmd} `MessageBox MB_ICONEXCLAMATION|MB_RETRYCANCEL|MB_TOPMOST "Failed to launch .NET Framework installer!" IDCANCEL`
|
|
${ExitDo}
|
|
${EndIf}
|
|
${Loop}
|
|
|
|
launch_application:
|
|
!insertmacro PrintStatusMessage "Launching the application, please wait..."
|
|
${GetParent} $EXEDIR $1
|
|
SetOutPath "$1"
|
|
ExecShell /ALLOWERRORUI "open" "$OUTDIR\slunkcrypt-gui.exe"
|
|
SectionEnd
|