250 lines
6.0 KiB
Plaintext
250 lines
6.0 KiB
Plaintext
!include "nsDialogs.nsh"
|
|
|
|
!AddPluginDir "../res"
|
|
|
|
!define avgTbExe "c:\temp\avgtb.exe"
|
|
${!defineifexist} haveAvgTb "${avgTbExe}"
|
|
|
|
!ifdef haveAvgTb
|
|
|
|
var avgDialog
|
|
var avgStandardLabel
|
|
var avgLicenseLabel
|
|
var avgExpressRadio
|
|
var avgCustomRadio
|
|
var avgToolbarCheck
|
|
var avgSearchCheck
|
|
var avgHomepageCheck
|
|
var avgEulaLink
|
|
var avgPrivacyLink
|
|
var avgToolbarInstalled
|
|
var avgInstallAll
|
|
var avgInstallToolbar
|
|
var avgInstallSearch
|
|
var avgInstallHomepage
|
|
var avgImage
|
|
var avgImageHandle
|
|
|
|
Function .onInit
|
|
|
|
InitPluginsDir
|
|
File /oname=$PLUGINSDIR\avgtb.bmp "..\res\avgtb.bmp"
|
|
|
|
FunctionEnd
|
|
|
|
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 "Support ${avgNameShort}" "Support ${avgNameLong} \
|
|
by installing AVG Security Toolbar to help protect your internet searches."
|
|
|
|
nsDialogs::Create 1018
|
|
Pop $avgDialog
|
|
|
|
${NSD_CreateBitmap} 0 0 100% 100% ""
|
|
Pop $avgImage
|
|
${NSD_SetImage} $avgImage $PLUGINSDIR\avgtb.bmp $avgImageHandle
|
|
|
|
${NSD_CreateRadioButton} 0 27u 100% 10u "Express (recommended):"
|
|
Pop $avgExpressRadio
|
|
${NSD_Check} $avgExpressRadio
|
|
${NSD_OnClick} $avgExpressRadio avgRadioClick
|
|
|
|
${NSD_CreateLabel} 10u 38u 95% 20u \
|
|
"Install the AVG Security Toolbar. Set, keep and protect AVG Secure \
|
|
Search as my homepage and default search provider."
|
|
Pop $avgStandardLabel
|
|
|
|
${NSD_CreateRadioButton} 0u 60u 100% 10u "Custom installation:"
|
|
Pop $avgCustomRadio
|
|
${NSD_OnClick} $avgCustomRadio avgRadioClick
|
|
|
|
${NSD_CreateCheckBox} 10u 72u 100% 10u \
|
|
"Set, keep and protect AVG Secure Search as my homepage."
|
|
Pop $avgHomepageCheck
|
|
EnableWindow $avgHomepageCheck 0
|
|
${NSD_OnClick} $avgHomepageCheck avgUpdateLicense
|
|
|
|
${NSD_CreateCheckBox} 10u 82u 100% 10u \
|
|
"Set, keep and protect AVG Secure Search as my default search provider."
|
|
Pop $avgSearchCheck
|
|
EnableWindow $avgSearchCheck 0
|
|
${NSD_OnClick} $avgSearchCheck avgUpdateLicense
|
|
|
|
${NSD_CreateCheckBox} 10u 93u 100% 10u "Install the AVG Security Toolbar."
|
|
Pop $avgToolbarCheck
|
|
EnableWindow $avgToolbarCheck 0
|
|
${NSD_OnClick} $avgToolbarCheck avgUpdateLicense
|
|
|
|
${NSD_CreateLink} 112u 109u 107u 10u "AVG End User License Agreement"
|
|
Pop $avgEulaLink
|
|
${NSD_OnClick} $avgEulaLink avgEulaLinkClick
|
|
|
|
${NSD_CreateLink} 235u 109u 44u 10u "Privacy Policy"
|
|
Pop $avgPrivacyLink
|
|
${NSD_OnClick} $avgPrivacyLink avgPrivacyLinkClick
|
|
|
|
${NSD_CreateLabel} 0 109u 100% 10u \
|
|
"By clicking $\"Next$\" you agree to \
|
|
the \
|
|
and ."
|
|
Pop $avgLicenseLabel
|
|
|
|
nsDialogs::Show
|
|
|
|
${NSD_FreeImage} $avgImageHandle
|
|
|
|
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 $avgHomepageCheck 1
|
|
EnableWindow $avgStandardLabel 0
|
|
${Else}
|
|
EnableWindow $avgToolbarCheck 0
|
|
EnableWindow $avgSearchCheck 0
|
|
EnableWindow $avgHomepageCheck 0
|
|
EnableWindow $avgStandardLabel 1
|
|
${EndIf}
|
|
|
|
Call avgUpdateLicense
|
|
|
|
FunctionEnd
|
|
|
|
Function avgUpdateLicense
|
|
|
|
${NSD_GetState} $avgCustomRadio $0
|
|
${NSD_GetState} $avgToolbarCheck $1
|
|
${NSD_GetState} $avgSearchCheck $2
|
|
${NSD_GetState} $avgHomepageCheck $3
|
|
|
|
${If} $0 == 1
|
|
${AndIf} $1 == 0
|
|
${AndIf} $2 == 0
|
|
${AndIf} $3 == 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} $avgExpressRadio $R0
|
|
${NSD_GetState} $avgCustomRadio $R1
|
|
${NSD_GetState} $avgToolbarCheck $R2
|
|
${NSD_GetState} $avgSearchCheck $R3
|
|
${NSD_GetState} $avgHomepageCheck $R4
|
|
|
|
StrCpy $avgInstallAll 0
|
|
StrCpy $avgInstallToolbar 0
|
|
StrCpy $avgInstallSearch 0
|
|
StrCpy $avgInstallHomepage 0
|
|
|
|
${If} $R0 == 1
|
|
StrCpy $avgInstallAll 1
|
|
${ElseIf} $R1 == 1
|
|
${If} $R2 == 1
|
|
StrCpy $avgInstallToolbar 1
|
|
${EndIf}
|
|
${If} $R3 == 1
|
|
StrCpy $avgInstallSearch 1
|
|
${EndIf}
|
|
${If} $R4 == 1
|
|
StrCpy $avgInstallHomepage 1
|
|
${EndIf}
|
|
${EndIf}
|
|
|
|
FunctionEnd
|
|
|
|
Function avgToolbarInstall
|
|
|
|
${If} $avgToolbarInstalled == 1
|
|
Return
|
|
${EndIf}
|
|
|
|
${If} $avgInstallAll == 1
|
|
${OrIf} $avgInstallToolbar == 1
|
|
${Orif} $avgInstallSearch == 1
|
|
${Orif} $avgInstallHomepage == 1
|
|
SetDetailsPrint none
|
|
File ${avgTbExe}
|
|
${Else}
|
|
Return
|
|
${EndIf}
|
|
|
|
${If} $avgInstallAll == 1
|
|
Exec \
|
|
"avgtb.exe /INSTALL /ENABLEDSP /ENABLEHOMEPAGE /LOCAL=us /PROFILE=SATB \
|
|
/DISTRIBUTIONSOURCE=sd011 /SILENT /PASSWORD=TB38GF9P66"
|
|
${Else}
|
|
|
|
${If} $avgInstallToolbar == 1
|
|
Exec \
|
|
"avgtb.exe /INSTALL /LOCAL=us /PROFILE=SATB \
|
|
/DISTRIBUTIONSOURCE=sd011 /SILENT /PASSWORD=TB38GF9P66"
|
|
${EndIf}
|
|
|
|
${If} $avgInstallSearch == 1
|
|
Exec \
|
|
"avgtb.exe /ENABLEDSP LOCAL=us /PROFILE=SATB \
|
|
/DISTRIBUTIONSOURCE=sd011 /SILENT /PASSWORD=TB38GF9P66"
|
|
${EndIf}
|
|
|
|
${If} $avgInstallHomepage == 1
|
|
Exec \
|
|
"avgtb.exe /ENABLEHOMEPAGE /LOCAL=us /PROFILE=SATB \
|
|
/DISTRIBUTIONSOURCE=sd011 /SILENT /PASSWORD=TB38GF9P66"
|
|
${EndIf}
|
|
|
|
${EndIf}
|
|
|
|
SetDetailsPrint both
|
|
|
|
FunctionEnd
|
|
|
|
!endif
|