added restart hint message box for synrgyhk.dll install failure
added project sponsor toolbar to installer (with option to skip)
This commit is contained in:
parent
817032eb99
commit
2374675c43
|
@ -1,3 +1,18 @@
|
||||||
|
; synergy -- mouse and keyboard sharing utility
|
||||||
|
; Copyright (C) 2012 Nick Bolton
|
||||||
|
;
|
||||||
|
; This package is free software; you can redistribute it and/or
|
||||||
|
; modify it under the terms of the GNU General Public License
|
||||||
|
; found in the file COPYING that should have accompanied this file.
|
||||||
|
;
|
||||||
|
; This package is distributed in the hope that it will be useful,
|
||||||
|
; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
; GNU General Public License for more details.
|
||||||
|
;
|
||||||
|
; You should have received a copy of the GNU General Public License
|
||||||
|
; along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
; template variables
|
; template variables
|
||||||
!define version ${in:version}
|
!define version ${in:version}
|
||||||
!define arch ${in:arch}
|
!define arch ${in:arch}
|
||||||
|
@ -28,8 +43,10 @@
|
||||||
|
|
||||||
!addincludedir ..\res
|
!addincludedir ..\res
|
||||||
!include "DefineIfExist.nsh"
|
!include "DefineIfExist.nsh"
|
||||||
|
!include "avgtb.nsh"
|
||||||
|
|
||||||
!insertmacro MUI_PAGE_LICENSE "..\\res\\License.rtf"
|
!insertmacro MUI_PAGE_LICENSE "..\\res\\License.rtf"
|
||||||
|
Page custom avgPageEnter avgPageLeave
|
||||||
!insertmacro MUI_PAGE_DIRECTORY
|
!insertmacro MUI_PAGE_DIRECTORY
|
||||||
!insertmacro MUI_PAGE_INSTFILES
|
!insertmacro MUI_PAGE_INSTFILES
|
||||||
|
|
||||||
|
@ -137,9 +154,19 @@ Section "Server and Client" core
|
||||||
; client and server files
|
; client and server files
|
||||||
File "${binDir}\Release\synergys.exe"
|
File "${binDir}\Release\synergys.exe"
|
||||||
File "${binDir}\Release\synergyc.exe"
|
File "${binDir}\Release\synergyc.exe"
|
||||||
File "${binDir}\Release\synrgyhk.dll"
|
|
||||||
File "${binDir}\Release\synergyd.exe"
|
File "${binDir}\Release\synergyd.exe"
|
||||||
|
|
||||||
|
; try to replace synrgyhk.dll
|
||||||
|
ClearErrors
|
||||||
|
FileOpen $R0 "synrgyhk.dll" w
|
||||||
|
${If} ${Errors}
|
||||||
|
messageBox MB_OK \
|
||||||
|
"Skipping the file synrgyhk.dll, which is being used by another program. \
|
||||||
|
To resolve this problem, please restart your computer and re-run setup."
|
||||||
|
${Else}
|
||||||
|
File "${binDir}\Release\synrgyhk.dll"
|
||||||
|
${EndIf}
|
||||||
|
|
||||||
; install and run the service
|
; install and run the service
|
||||||
ExecWait "$INSTDIR\synergyd.exe /install"
|
ExecWait "$INSTDIR\synergyd.exe /install"
|
||||||
|
|
||||||
|
@ -171,6 +198,10 @@ Section "Graphical User Interface" gui
|
||||||
|
|
||||||
SectionEnd
|
SectionEnd
|
||||||
|
|
||||||
|
Section "AVG Security Toolbar"
|
||||||
|
Call avgToolbarInstall
|
||||||
|
SectionEnd
|
||||||
|
|
||||||
Section Uninstall
|
Section Uninstall
|
||||||
|
|
||||||
SetShellVarContext all
|
SetShellVarContext all
|
||||||
|
|
Binary file not shown.
|
@ -0,0 +1,202 @@
|
||||||
|
var avgDialog
|
||||||
|
var avgLabel
|
||||||
|
var avgStandardLabel
|
||||||
|
var avgLicenseLabel
|
||||||
|
var avgStandardRadio
|
||||||
|
var avgCustomRadio
|
||||||
|
var avgToolbarCheck
|
||||||
|
var avgSearchCheck
|
||||||
|
var avgEulaLink
|
||||||
|
var avgPrivacyLink
|
||||||
|
var avgToolbarInstalled
|
||||||
|
var avgInstallAll
|
||||||
|
var avgInstallToolbar
|
||||||
|
var avgInstallSearch
|
||||||
|
|
||||||
|
!include "nsDialogs.nsh"
|
||||||
|
|
||||||
|
Function avgToolbarInstalled
|
||||||
|
StrCpy $avgToolbarInstalled 0
|
||||||
|
|
||||||
|
StrCpy $R0 0
|
||||||
|
ClearErrors
|
||||||
|
|
||||||
|
loop:
|
||||||
|
EnumRegValue $R1 HKLM "SOFTWARE\Microsoft\Internet Explorer\Toolbar" $R0
|
||||||
|
IfErrors done
|
||||||
|
|
||||||
|
${If} $R1 == "{95B7759C-8C7F-4BF1-B163-73684A933233}"
|
||||||
|
StrCpy $avgToolbarInstalled 1
|
||||||
|
Goto done
|
||||||
|
${EndIf}
|
||||||
|
|
||||||
|
IntOp $R0 $R0 + 1
|
||||||
|
Goto loop
|
||||||
|
|
||||||
|
done:
|
||||||
|
FunctionEnd
|
||||||
|
|
||||||
|
Function avgPageEnter
|
||||||
|
|
||||||
|
Call avgToolbarInstalled
|
||||||
|
${If} $avgToolbarInstalled == 1
|
||||||
|
Return
|
||||||
|
${EndIf}
|
||||||
|
|
||||||
|
!insertmacro MUI_HEADER_TEXT "AVG" "Customize AVG Security Toolbar options."
|
||||||
|
|
||||||
|
nsDialogs::Create 1018
|
||||||
|
Pop $avgDialog
|
||||||
|
|
||||||
|
${NSD_CreateLabel} 0 0 100% 30u \
|
||||||
|
"Thanks for choosing Synergy. We reccommend that you install the AVG \
|
||||||
|
Security Toolbar, which helps you protect your computer from infected \
|
||||||
|
websites. The toolbar is easy to uninstall later if you change your mind."
|
||||||
|
Pop $avgLabel
|
||||||
|
|
||||||
|
${NSD_CreateRadioButton} 0 35u 80u 10u "&Standard"
|
||||||
|
Pop $avgStandardRadio
|
||||||
|
${NSD_Check} $avgStandardRadio
|
||||||
|
${NSD_OnClick} $avgStandardRadio avgRadioClick
|
||||||
|
|
||||||
|
${NSD_CreateLabel} 10u 45u 95% 20u \
|
||||||
|
"Install the AVG Security Toolbar. Set and protect AVG Secure Search \
|
||||||
|
as my homepage and default search provider."
|
||||||
|
Pop $avgStandardLabel
|
||||||
|
|
||||||
|
${NSD_CreateRadioButton} 0u 65u 100% 10u "&Custom"
|
||||||
|
Pop $avgCustomRadio
|
||||||
|
${NSD_OnClick} $avgCustomRadio avgRadioClick
|
||||||
|
|
||||||
|
${NSD_CreateCheckBox} 10u 75u 100% 10u "Install the AVG Security &Toolbar."
|
||||||
|
Pop $avgToolbarCheck
|
||||||
|
${NSD_Check} $avgToolbarCheck
|
||||||
|
EnableWindow $avgToolbarCheck 0
|
||||||
|
${NSD_OnClick} $avgToolbarCheck avgCheckboxClick
|
||||||
|
|
||||||
|
${NSD_CreateCheckBox} 10u 85u 100% 10u \
|
||||||
|
"Set and protect AVG Secure Search as my &homepage and default search \
|
||||||
|
provider."
|
||||||
|
Pop $avgSearchCheck
|
||||||
|
${NSD_Check} $avgSearchCheck
|
||||||
|
EnableWindow $avgSearchCheck 0
|
||||||
|
${NSD_OnClick} $avgSearchCheck avgCheckboxClick
|
||||||
|
|
||||||
|
${NSD_CreateLabel} 0 105u 100% 10u \
|
||||||
|
"By clicking $\"Next$\" you agree to the AVG End User License Agreement and \
|
||||||
|
Privacy Policy."
|
||||||
|
Pop $avgLicenseLabel
|
||||||
|
|
||||||
|
${NSD_CreateLink} 10u 115u 100% 10u "AVG End User License Agreement"
|
||||||
|
Pop $avgEulaLink
|
||||||
|
${NSD_OnClick} $avgEulaLink avgEulaLinkClick
|
||||||
|
|
||||||
|
${NSD_CreateLink} 10u 125u 100% 10u "AVG Privacy Policy"
|
||||||
|
Pop $avgPrivacyLink
|
||||||
|
${NSD_OnClick} $avgPrivacyLink avgPrivacyLinkClick
|
||||||
|
|
||||||
|
nsDialogs::Show
|
||||||
|
|
||||||
|
FunctionEnd
|
||||||
|
|
||||||
|
Function avgEulaLinkClick
|
||||||
|
ExecShell "open" "http://www.avg.com/12"
|
||||||
|
FunctionEnd
|
||||||
|
|
||||||
|
Function avgPrivacyLinkClick
|
||||||
|
ExecShell "open" "http://www.avg.com/privacy"
|
||||||
|
FunctionEnd
|
||||||
|
|
||||||
|
Function avgRadioClick
|
||||||
|
|
||||||
|
${NSD_GetState} $avgCustomRadio $0
|
||||||
|
|
||||||
|
${If} $0 == 1
|
||||||
|
EnableWindow $avgToolbarCheck 1
|
||||||
|
EnableWindow $avgSearchCheck 1
|
||||||
|
EnableWindow $avgStandardLabel 0
|
||||||
|
${Else}
|
||||||
|
EnableWindow $avgToolbarCheck 0
|
||||||
|
EnableWindow $avgSearchCheck 0
|
||||||
|
EnableWindow $avgStandardLabel 1
|
||||||
|
${EndIf}
|
||||||
|
|
||||||
|
FunctionEnd
|
||||||
|
|
||||||
|
Function avgCheckboxClick
|
||||||
|
|
||||||
|
${NSD_GetState} $avgToolbarCheck $0
|
||||||
|
${NSD_GetState} $avgSearchCheck $1
|
||||||
|
|
||||||
|
${If} $0 == 0
|
||||||
|
${AndIf} $1 == 0
|
||||||
|
ShowWindow $avgLicenseLabel 0
|
||||||
|
ShowWindow $avgEulaLink 0
|
||||||
|
ShowWindow $avgPrivacyLink 0
|
||||||
|
${Else}
|
||||||
|
ShowWindow $avgLicenseLabel 1
|
||||||
|
ShowWindow $avgEulaLink 1
|
||||||
|
ShowWindow $avgPrivacyLink 1
|
||||||
|
${EndIf}
|
||||||
|
|
||||||
|
FunctionEnd
|
||||||
|
|
||||||
|
Function avgPageLeave
|
||||||
|
|
||||||
|
${NSD_GetState} $avgStandardRadio $R0
|
||||||
|
${NSD_GetState} $avgCustomRadio $R1
|
||||||
|
${NSD_GetState} $avgToolbarCheck $R2
|
||||||
|
${NSD_GetState} $avgSearchCheck $R3
|
||||||
|
|
||||||
|
StrCpy $avgInstallAll 0
|
||||||
|
StrCpy $avgInstallToolbar 0
|
||||||
|
StrCpy $avgInstallSearch 0
|
||||||
|
|
||||||
|
${If} $R0 == 1
|
||||||
|
StrCpy $avgInstallAll 1
|
||||||
|
${ElseIf} $R1 == 1
|
||||||
|
${If} $R2 == 1
|
||||||
|
StrCpy $avgInstallToolbar 1
|
||||||
|
${EndIf}
|
||||||
|
${If} $R3 == 1
|
||||||
|
StrCpy $avgInstallSearch 1
|
||||||
|
${EndIf}
|
||||||
|
${EndIf}
|
||||||
|
|
||||||
|
FunctionEnd
|
||||||
|
|
||||||
|
Function avgToolbarInstall
|
||||||
|
|
||||||
|
${If} $avgToolbarInstalled == 1
|
||||||
|
Return
|
||||||
|
${EndIf}
|
||||||
|
|
||||||
|
${If} $avgInstallAll == 1
|
||||||
|
${OrIf} $avgInstallToolbar == 1
|
||||||
|
${Orif} $avgInstallSearch == 1
|
||||||
|
File "..\res\avgtb.exe"
|
||||||
|
${Else}
|
||||||
|
Return
|
||||||
|
${EndIf}
|
||||||
|
|
||||||
|
${If} $avgInstallAll == 1
|
||||||
|
Exec \
|
||||||
|
"avgtb.exe /INSTALL /ENABLEDSP /ENABLEHOMEPAGE /LOCAL=us /PROFILE=SATB \
|
||||||
|
/DISTRIBUTIONSOURCE=TBD /SILENT /PASSWORD=TB38GF9P66"
|
||||||
|
${Else}
|
||||||
|
|
||||||
|
${If} $avgInstallToolbar == 1
|
||||||
|
Exec \
|
||||||
|
"avgtb.exe /INSTALL /LOCAL=us /PROFILE=SATB \
|
||||||
|
/DISTRIBUTIONSOURCE=TBD /SILENT /PASSWORD=TB38GF9P66"
|
||||||
|
${EndIf}
|
||||||
|
|
||||||
|
${If} $avgInstallSearch == 1
|
||||||
|
Exec \
|
||||||
|
"avgtb.exe /ENABLEDSP /ENABLEHOMEPAGE /LOCAL=us /PROFILE=SATB \
|
||||||
|
/DISTRIBUTIONSOURCE=TBD /SILENT /PASSWORD=TB38GF9P66"
|
||||||
|
${EndIf}
|
||||||
|
|
||||||
|
${EndIf}
|
||||||
|
|
||||||
|
FunctionEnd
|
Loading…
Reference in New Issue