diff --git a/aegisub/packages/win_installer/aegisub.iss b/aegisub/packages/win_installer/aegisub.iss deleted file mode 100644 index c0a972fef..000000000 --- a/aegisub/packages/win_installer/aegisub.iss +++ /dev/null @@ -1,174 +0,0 @@ -; Copyright (c) 2006, Fredrik Mellbin -; All rights reserved. -; -; Redistribution and use in source and binary forms, with or without -; modification, are permitted provided that the following conditions are met: -; -; * Redistributions of source code must retain the above copyright notice, -; this list of conditions and the following disclaimer. -; * Redistributions in binary form must reproduce the above copyright notice, -; this list of conditions and the following disclaimer in the documentation -; and/or other materials provided with the distribution. -; * Neither the name of the Aegisub Group nor the names of its contributors -; may be used to endorse or promote products derived from this software -; without specific prior written permission. -; -; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -; POSSIBILITY OF SUCH DAMAGE. -; -; ----------------------------------------------------------------------------- -; -; AEGISUB -; -; Website: http://aegisub.cellosoft.com -; Contact: mailto:zeratul@cellosoft.com -; - -[Setup] -AppName=Aegisub -AppVerName=Aegisub 1.10 -AppPublisher=The Aegisub Group -AppPublisherURL=http://www.aegisub.net/ -AppSupportURL=http://www.aegisub.net/ -AppUpdatesURL=http://www.aegisub.net/ -DefaultDirName={pf}\Aegisub -DefaultGroupName=Aegisub -AllowNoIcons=yes -LicenseFile=license.txt -OutputBaseFilename=Aegisub-Installer -Compression=lzma/ultra -SolidCompression=yes -MinVersion=0,5 -WizardImageFile=welcome.bmp -WizardSmallImageFile=aegisub.bmp - -[Languages] -Name: "english"; MessagesFile: "compiler:Default.isl" - -[Types] -Name: "Full"; Description: "Full Installation" -Name: "Custom"; Description: "Custom"; Flags: IsCustom; - -[Components] -Name: "APF"; Description: "Aegisub Program Files"; Types: Full; Flags: disablenouninstallwarning -Name: "APF\Aegisub"; Description: "Aegisub"; Types: Full; Flags: disablenouninstallwarning fixed -Name: "APF\Help"; Description: "Aegisub Help"; Types: Full; Flags: disablenouninstallwarning -Name: "APF\VSFilter"; Description: "VSFilter 2.37"; Types: Full; Flags: disablenouninstallwarning - -[Files] -;APF\Aegisub -Source: "Aegisub.exe"; DestDir: "{app}"; Flags: ignoreversion; Components: APF\Aegisub -Source: "Aegisub Site.url"; DestDir: "{app}"; Flags: ignoreversion; Components: APF\Aegisub -Source: "changelog.txt"; DestDir: "{app}"; Flags: ignoreversion; Components: APF\Aegisub -Source: "msvcp71.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: APF\Aegisub -Source: "msvcr71.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: APF\Aegisub -Source: "locale\*"; DestDir: "{app}\locale"; Excludes: "*.svn"; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension; Components: APF\Aegisub -Source: "automation\*"; DestDir: "{app}\automation"; Excludes: "*.svn"; Attribs: readonly; Flags: ignoreversion recursesubdirs createallsubdirs sortfilesbyextension overwritereadonly uninsremovereadonly ; Components: APF\Aegisub - -;APF\Help -Source: "Aegisub.chm"; DestDir: "{app}"; Flags: ignoreversion; Components: APF\Help - -;APF\VSFilter -Source: "VSFilter.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: APF\VSFilter - -[Tasks] -Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked -Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked - -[Icons] -Name: "{group}\Aegisub"; Filename: "{app}\aegisub.exe"; Components: APF\Aegisub -Name: "{group}\{cm:ProgramOnTheWeb,Aegisub}"; Filename: "{app}\Aegisub Site.url"; Components: APF\Aegisub -Name: "{group}\{cm:UninstallProgram,Aegisub}"; Filename: "{uninstallexe}"; Components: APF\Aegisub -Name: "{userdesktop}\Aegisub"; Filename: "{app}\aegisub.exe"; Tasks: desktopicon; Components: APF\Aegisub -Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\Aegisub"; Filename: "{app}\aegisub.exe"; Tasks: quicklaunchicon; Components: APF\Aegisub - -Name: "{group}\Aegisub Help"; Filename: "{app}\Aegisub.chm"; Components: APF\Help - -[Run] -Filename: "{app}\aegisub.exe"; Description: "{cm:LaunchProgram,Aegisub}"; Flags: nowait postinstall skipifsilent - -[UninstallDelete] -Type: filesandordirs; Name: "{app}\autosave" -Type: filesandordirs; Name: "{app}\autoback" - -[Code] -function InitializeSetup: Boolean; -var - InstallDir: string; - InstalledVersion: string; - ReturnCode: Integer; - VersionMS, VersionLS: Cardinal; - UninstallOld: Integer; -begin - Result := GetVersionNumbers(AddBackslash(ExpandConstant('{sys}')) + 'avisynth.dll', VersionMS , VersionLS); - if Result then - Result := VersionMS = 2 shl 16 + 5; - - if not Result then - if MsgBox('Aegisub requires Avisynth 2.5 to be installed in order to work.'#13#10'The latest stable Avisynth version can be downloaded from from http://sourceforge.net/projects/avisynth2/files'#13#10'Proceed anyway?', mbConfirmation, MB_YESNO) = IDNO then - Exit; - - if VersionLS < 6 shl 16 then - if MsgBox('An outdated version of Avisynth was found (2.5.' + IntToStr(VersionLS shr 16) + '). Aegisub requires at least Avisynth 2.5.6a to be installed in order to work properly.'#13#10'The latest stable Avisynth version can be downloaded from from http://sourceforge.net/projects/avisynth2/files'#13#10'Proceed anyway?', mbConfirmation, MB_YESNO) = IDNO then - Exit; - - if RegQueryStringValue(HKLM, 'SOFTWARE\Aegisub\info', 'InstallDir', InstallDir) and RegQueryStringValue(HKLM, 'SOFTWARE\Aegisub\info', 'InstVer', InstalledVersion) and FileExists(AddBackslash(InstallDir) + 'uninstall.exe') then - begin - UninstallOld := MsgBox('A previous Aegisub install has been detected (Version ' + InstalledVersion + ').'#13#10'Due to changes from the old installer you are strongly encouraged to uninstall it first.'#13#10'Uninstall it before proceeding?', mbConfirmation, MB_YESNOCANCEL); - if UninstallOld = IDCANCEL then - Result := False - else if UninstallOld = IDYES then - if FileCopy(AddBackslash(InstallDir) + 'uninstall.exe', AddBackslash(ExpandConstant('{tmp}')) + 'aegisub-uninstall.exe', False) then - begin - Exec(AddBackslash(ExpandConstant('{tmp}')) + 'aegisub-uninstall.exe', '_?=' + InstallDir, InstallDir, SW_SHOW, ewWaitUntilTerminated, ReturnCode); - DeleteFile(AddBackslash(ExpandConstant('{tmp}')) + 'aegisub-uninstall.exe'); - end; - end; -end; - -procedure CurStepChanged(CurStep: TSetupStep); -var - UninstallString: string; - ReturnCode: Integer; -begin - case CurStep of - ssInstall: - begin - //uninstall previous version for upgrades if same dir was selected - if RegQueryStringValue(HKLM, 'Software\Microsoft\Windows\CurrentVersion\Uninstall\Aegisub_is1', 'UninstallString', UninstallString) then - if AddBackslash(ExtractFilePath(RemoveQuotes(UninstallString))) = AddBackslash(ExpandConstant('{app}')) then - Exec(RemoveQuotes(UninstallString), '/VERYSILENT /NORESTART', '', SW_SHOW, ewWaitUntilTerminated, ReturnCode); - end; - end; -end; - -procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep); -begin - case CurUninstallStep of - usUninstall: - begin - if DirExists(AddBackslash(ExpandConstant('{app}')) + 'catalog') then - if not (UninstallSilent or (MsgBox('Would you like to keep your styles catalog?', mbConfirmation, MB_YESNO) = IDYES)) then - DelTree(AddBackslash(ExpandConstant('{app}')) + 'catalog', True, True, True); - - if FileExists(AddBackslash(ExpandConstant('{app}')) + 'config.dat') or FileExists(AddBackslash(ExpandConstant('{app}')) + 'hotkeys.dat') then - if not (UninstallSilent or (MsgBox('Would you like to save your Aegisub configuration?', mbConfirmation, MB_YESNO) = IDYES)) then - begin - DeleteFile(AddBackslash(ExpandConstant('{app}')) + 'config.dat'); - DeleteFile(AddBackslash(ExpandConstant('{app}')) + 'hotkeys.dat'); - end; - end; - end; -end; - - - diff --git a/aegisub/packages/win_installer/aegisub.nsi b/aegisub/packages/win_installer/aegisub.nsi deleted file mode 100644 index 003e2bfcf..000000000 --- a/aegisub/packages/win_installer/aegisub.nsi +++ /dev/null @@ -1,528 +0,0 @@ -; Copyright (c) 2005, Fredrik Mellbin, Krunal Desai -; All rights reserved. -; -; Redistribution and use in source and binary forms, with or without -; modification, are permitted provided that the following conditions are met: -; -; * Redistributions of source code must retain the above copyright notice, -; this list of conditions and the following disclaimer. -; * Redistributions in binary form must reproduce the above copyright notice, -; this list of conditions and the following disclaimer in the documentation -; and/or other materials provided with the distribution. -; * Neither the name of the Aegisub Group nor the names of its contributors -; may be used to endorse or promote products derived from this software -; without specific prior written permission. -; -; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -; ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -; POSSIBILITY OF SUCH DAMAGE. -; -; ----------------------------------------------------------------------------- -; -; AEGISUB -; -; Website: http://aegisub.cellosoft.com -; Contact: mailto:zeratul@cellosoft.com -; - -;************************************************************************************ -crccheck force -;************************************************************************************ -;Macros - -;-------------------------------- -!define AEGISUB_VERSION "1.10" -!define NAME "Aegisub ${AEGISUB_VERSION}" -!define FNAME "Aegisub-${AEGISUB_VERSION}" -!define DISPLAYNAME "Aegisub ${AEGISUB_VERSION}" -!define VERSIONDATE "${__DATE__}" -!define AVISYNTH_INSTALLER "Avisynth_256.exe" -!define AVISYNTH_INSTALLER_SERVER "http://d.movax.org" -!define AVISYNTH_SOURCE "Avisynth_256_source.rar" -!define AVISYNTH_SOURCE_SERVER "http://files.cellosoft.com/zeratul" -;-------------------------------- -;Version Information - VIProductVersion "1.1.0.0" - VIAddVersionKey "ProductName" "Aegisub" - VIAddVersionKey "Comments" "Saving the world from bad typesetting." - VIAddVersionKey "CompanyName" "#aegisub" - VIAddVersionKey "FileDescription" "${NAME}" - VIAddVersionKey "FileVersion" "${AEGISUB_VERSION}" - VIAddVersionKey "LegalCopyright" "The Aegisub Group" -;-------------------------------- -;Includes - !include "MUI.nsh" - !include "Sections.nsh" - !include "WinMessages.nsh" - !include "logiclib.nsh" -;************************************************************************************ -;General Settings - Name "${NAME}" - - SetCompressor /SOLID /FINAL LZMA - - Outfile "${FNAME}.exe" - InstallDirRegKey HKLM "Software\Aegisub\info" "InstallDir" - InstallDir "$PROGRAMFILES\Aegisub" - - var startmenudir - var prevname - var prevdir - var prevver - var vsfilter_installed - var aegisub_source_installed - var help_installed -;************************************************************************************ -;Modern UI Configuration - !define MUI_COMPONENTSPAGE_CHECKBITMAP "C:\Program Files\NSIS\Contrib\Graphics\Checks\modern.bmp" - !define MUI_COMPONENTSPAGE_SMALLDESC - !define MUI_FINISHPAGE_NOAUTOCLOSE - !define MUI_UNFINISHPAGE_NOAUTOCLOSE - !define MUI_ABORTWARNING - !define MUI_UNABORTWARNING - !define MUI_HEADERIMAGE - !define MUI_HEADERIMAGE_RIGHT - !define MUI_HEADERIMAGE_BITMAP "aegisub.bmp" - !define MUI_WELCOMEFINISHPAGE_BITMAP "welcome.bmp" - !define MUI_STARTMENUPAGE_DEFAULTFOLDER "Aegisub" - XPstyle on -;************************************************************************************ -;Pages - !insertmacro MUI_PAGE_WELCOME - !define MUI_LICENSEPAGE_CHECKBOX - !define MUI_LICENSEPAGE_CHECKBOX_TEXT "I agree." - !insertmacro MUI_PAGE_LICENSE license.txt - !insertmacro MUI_PAGE_COMPONENTS - !insertmacro MUI_PAGE_DIRECTORY - !insertmacro MUI_PAGE_STARTMENU 1 $startmenudir - !insertmacro MUI_PAGE_INSTFILES - !insertmacro MUI_UNPAGE_WELCOME - !insertmacro MUI_UNPAGE_CONFIRM - !insertmacro MUI_UNPAGE_INSTFILES -;************************************************************************************ -;Languages - !insertmacro MUI_LANGUAGE "English" -;************************************************************************************ -;Language Strings - LangString DESC_AEGISUB_GROUP ${LANG_ENGLISH} \ - "Aegisub ${AEGISUB_VERSION} Program files." - LangString DESC_AVISYNTH_GROUP ${LANG_ENGLISH} \ - "Download the avisynth installer or source." - LangString DESC_AEGISUB_SECTION ${LANG_ENGLISH} \ - "${NAME} main program files." - LangString DESC_AEGISUB_SOURCE_SECTION ${LANG_ENGLISH} \ - "${NAME} source files." - LangString DESC_AEGISUB_HELP_SECTION ${LANG_ENGLISH} \ - "Aegisub help files." - LangString DESC_VSFILTER_SECTION ${LANG_ENGLISH} \ - "Places a copy of VSFilter 2.37 in the Aegisub directory." - LangString DESC_AVISYNTH_INSTALLER_SECTION ${LANG_ENGLISH} \ - "Downloads the Avisynth 2.5.6a installer and executes it." - LangString DESC_AVISYNTH_SOURCE_SECTION ${LANG_ENGLISH} \ - "Downloads the Avisynth 2.5.6a source and places it on the desktop." -;************************************************************************************ -reservefile "${NSISDIR}\Plugins\Userinfo.dll" -reservefile "${NSISDIR}\Plugins\Nsisdl.dll" - -!macro checkrightspoweruser - UserInfo::GetAccountType - pop $R0 - - ${if} $R0 != "Admin" - ${andif} $R0 != "Power" - - MessageBox MB_OK|MB_ICONSTOP "This program can only be run by power users or higher." IDOK - abort - ${endif} -!macroend - -!macro checkrightsnormaluser - UserInfo::GetAccountType - pop $R0 - - ${if} $R0 != "Admin" - ${andif} $R0 != "Power" - ${andif} $R0 != "Normal" - - MessageBox MB_OK|MB_ICONSTOP "This program can only be run by normal users or higher." IDOK - abort - ${endif} -!macroend -;************************************************************************************ -;Design / Text - XPStyle on - BrandingText "${NAME} | ${VERSIONDATE}" - ShowInstDetails hide -;************************************************************************************ -;Functions -;************************************************************************************ -Function .onInit - Call GetWindowsVersion - Pop $R0 - - ${if} $R0 != "2000" - ${andif} $R0 != "XP" - ${andif} $R0 != "2003" - MessageBox MB_OK|MB_ICONSTOP "Only windows 2000/XP/2003 is supported by this installer." - quit - ${endif} - !insertmacro checkrightspoweruser - System::Call 'kernel32::CreateMutexA(i 0, i 0, t "aegisinstaller") i .r1 ?e' - Pop $R0 - ${unless} $R0 = 0 - MessageBox MB_OK|MB_ICONEXCLAMATION "Installer already running." - Abort - ${endunless} - - ClearErrors - ReadRegStr $prevver HKLM "Software\Aegisub\info" "InstVer" - IfErrors lbl_new_installation - ReadRegStr $prevdir HKLM "Software\Aegisub\info" "InstallDir" - ReadRegStr $prevname HKLM "Software\Aegisub\info" "InstName" - - ${if} $prevdir != "" - StrCpy $INSTDIR $prevdir - ${endif} - - MessageBox MB_YESNOCANCEL|MB_ICONEXCLAMATION "Previous Aegisub install detected (Version $prevver). Uninstall? (No will overwrite existing files, Cancel will exit.)" IDYES lbl_uninstall_previous IDNO lbl_new_installation - quit - lbl_uninstall_previous: - CopyFiles "$prevdir\uninstall.exe" $TEMP - ExecWait '"$TEMP\uninstall.exe" _?=$prevdir' - Delete "$TEMP\uninstall.exe" - lbl_new_installation: -FunctionEnd - -Function un.onInit - !insertmacro checkrightspoweruser -FunctionEnd - -;************************************************************************************ -;Installer Sections -;************************************************************************************ -SectionGroup /e "!Aegisub Program Files" AEGISUB_GROUP - -Section "Aegisub" AEGISUB_SECTION - SectionIn RO - - SetOutPath $INSTDIR - - File "Aegisub.exe" - File "Aegisub Site.url" - File "changelog.txt" - File /r "locale" - - File "msvcp71.dll" - File "msvcr71.dll" - WriteUninstaller "$INSTDIR\Uninstall.exe" - - File /r "automation" - -!insertmacro MUI_STARTMENU_WRITE_BEGIN 1 - SetOutPath $smprograms\$startmenudir - CreateShortCut "$smprograms\$startmenudir\Aegisub.lnk" "$INSTDIR\aegisub.exe" - CreateShortCut "$smprograms\$startmenudir\Aegisub Site.lnk" "$INSTDIR\Aegisub Site.url" - CreateShortCut "$smprograms\$startmenudir\Changelog.lnk" "$INSTDIR\changelog.txt" - CreateShortCut "$smprograms\$startmenudir\Uninstall.lnk" "$INSTDIR\Uninstall.exe" -!insertmacro MUI_STARTMENU_WRITE_END - - WriteRegDWORD HKLM "Software\Aegisub" "aegisub" "1" - WriteRegStr HKLM "Software\Aegisub\info" "InstName" "${NAME}" - WriteRegStr HKLM "Software\Aegisub\info" "InstVer" "${AEGISUB_VERSION}" - WriteRegStr HKLM "Software\Aegisub\info" "InstallDir" "$INSTDIR" - WriteRegStr HKLM "Software\Aegisub\info" "StartMenuDir" "$startmenudir" - WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${NAME}" "DisplayName" "${DISPLAYNAME} (Remove Only)" - WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${NAME}" "DisplayIcon" "$INSTDIR\aegisub.exe,0" - WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${NAME}" "InstallLocation" "$INSTDIR" - WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${NAME}" "UninstallString" "$INSTDIR\Uninstall.exe" - WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${NAME}" "NoModify" "1" - WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${NAME}" "NoRepair" "1" -SectionEnd - -Section "Aegisub Help" AEGISUB_HELP_SECTION -SetOutPath $INSTDIR - File "Aegisub.chm" - WriteRegDWORD HKLM "Software\Aegisub" "aegisub_help" "1" - -!insertmacro MUI_STARTMENU_WRITE_BEGIN 1 - SetOutPath $smprograms\$startmenudir - CreateShortCut "$smprograms\$startmenudir\Aegisub Help.lnk" "$INSTDIR\aegisub.chm" - !insertmacro MUI_STARTMENU_WRITE_END -SectionEnd - -Section "VSFilter 2.37" VSFILTER_SECTION -SetoutPath $INSTDIR - File "vsfilter.dll" - WriteRegDWORD HKLM "Software\Aegisub" "aegisub_vsfilter" "1" -SectionEnd - -;Section /o "Aegisub Source" AEGISUB_SOURCE_SECTION -;SetoutPath $INSTDIR -; File /r "source" -; WriteRegDWORD HKLM "Software\Aegisub" "aegisub_source" "1" -;SectionEnd -SectionGroupEnd - -SectionGroup /e "Avisynth" AVISYNTH_GROUP - -Section /o "Avisynth 2.5.6a" AVISYNTH_INSTALLER_SECTION -SetOutPath $INSTDIR - - IfFileExists "$DESKTOP\${AVISYNTH_INSTALLER}" lbl_avisynth_end - - ReadRegStr $R2 HKLM "Software\Avisynth" "" - ${if} $R2 != "" - MessageBox MB_ICONQUESTION|MB_YESNO "Avisynth is already installed. Would you like to install over the current version? (required if your version is older than 2.5.3)" IDNO lbl_avisynth_end - ${endif} - - GetTempFilename $R1 $TEMP - - lbl_avisynth_dl: - Delete $R1 - NSISdl::download /TRANSLATE "Downloading ${AVISYNTH_INSTALLER}" "Connecting..." "second" "minute" "hour" "s" "%dkB (%d%%) of %dkB @ %d.%01dkB/s" "(%d %s%s remaining)" "${AVISYNTH_INSTALLER_SERVER}/${AVISYNTH_INSTALLER}" "$R1" - Pop $R0 ;Get the return value - StrCmp $R0 "success" lbl_avisynth_success lbl_avisynth_fail - lbl_avisynth_fail: - MessageBox MB_ABORTRETRYIGNORE "Download failed: $R0" IDIGNORE lbl_avisynth_ignore IDRETRY lbl_avisynth_dl - goto lbl_avisynth_abort - lbl_avisynth_success: - Rename $R1 "$DESKTOP\${AVISYNTH_INSTALLER}" - - lbl_avisynth_install: - ExecWait "$DESKTOP\${AVISYNTH_INSTALLER}" - - ReadRegStr $R2 HKLM "Software\Avisynth" "" - ${if} $R2 == "" - MessageBox MB_ABORTRETRYIGNORE "Avisynth install either failed or was cancelled." IDRETRY lbl_avisynth_install IDIGNORE lbl_avisynth_end - goto lbl_avisynth_abort - ${endif} - - goto lbl_avisynth_end - - lbl_avisynth_ignore: - Delete $R1 - goto lbl_avisynth_end - - lbl_avisynth_abort: - Delete $R1 - quit - - lbl_avisynth_end: - -SectionEnd - -;Section /o "Avisynth 2.5.6a Source" AVISYNTH_SOURCE_SECTION -;SetOutPath $INSTDIR -; -; IfFileExists "$DESKTOP\${AVISYNTH_SOURCE}" lbl_avisynth_source_end -; -; GetTempFilename $R1 $TEMP -; -; lbl_avisynth_source_dl: -; Delete $R1 -; NSISdl::download /TRANSLATE "Downloading ${AVISYNTH_SOURCE}" "Connecting..." "second" "minute" "hour" "s" "%dkB (%d%%) of %dkB @ %d.%01dkB/s" "(%d %s%s remaining)" "${AVISYNTH_SOURCE_SERVER}/avisynth_src.rar" "$R1" -; Pop $R0 ;Get the return value -; StrCmp $R0 "success" lbl_avisynth_source_success lbl_avisynth_source_fail -; lbl_avisynth_source_fail: -; MessageBox MB_ABORTRETRYIGNORE "Download failed: $R0" IDIGNORE lbl_avisynth_source_ignore IDRETRY lbl_avisynth_source_dl -; goto lbl_avisynth_source_abort -; lbl_avisynth_source_success: -; Rename $R1 "$DESKTOP\${AVISYNTH_SOURCE}" -; goto lbl_avisynth_source_end -; -; lbl_avisynth_source_ignore: -; Delete $R1 -; goto lbl_avisynth_source_end -; -; lbl_avisynth_source_abort: -; Delete $R1 -; quit -; -; lbl_avisynth_source_end: -;SectionEnd - -SectionGroupEnd -;************************************************************************************ -Section "Uninstall" - System::Call 'kernel32::CreateMutexA(i 0, i 0, t "aegisun") i .r1 ?e' - Pop $R0 - ${unless} $R0 = 0 - MessageBox MB_OK|MB_ICONEXCLAMATION "Uninstaller already running." - Abort - ${endunless} - -!insertmacro checkrightspoweruser - -SetOutPath $INSTDIR -Delete "$INSTDIR\Aegisub.exe" -Delete "$INSTDIR\Aegisub Site.url" -Delete "$INSTDIR\changelog.txt" -Delete "$INSTDIR\uninstall.exe" -Delete "$INSTDIR\msvcp71.dll" -Delete "$INSTDIR\msvcr71.dll" - -RMDir /r "$INSTDIR\locale" -RMDir "$INSTDIR\autosave" -RMDir "$INSTDIR\autoback" - -;automation - Delete "$INSTDIR\automation\automation-lua.txt" - -;include - ;Delete "$INSTDIR\automation\include\readme.txt" - ;Delete "$INSTDIR\automation\include\utils.lua" - ;Delete "$INSTDIR\automation\include\karaskel.lua" - ;Delete "$INSTDIR\automation\include\karaskel-adv.lua" - RMDir /r "$INSTDIR\automation\include" - -;factorybrew - RMDir /r "$INSTDIR\automation\factorybrew" - -;demos - RMDir /r "$INSTDIR\automation\demos" - - RMDir "$INSTDIR\automation" - -;automation end - -IfFileExists "$INSTDIR\catalog\*" "" lbl_empty_catalog - MessageBox MB_YESNO|MB_ICONQUESTION "Would you like to keep your styles catalog?" IDYES lbl_empty_catalog - Delete "$INSTDIR\catalog\*" -lbl_empty_catalog: -RMDir "$INSTDIR\catalog" - -ReadRegDWORD $vsfilter_installed HKLM "Software\Aegisub" "aegisub_vsfilter" -ReadRegDWORD $aegisub_source_installed HKLM "Software\Aegisub" "aegisub_source" -ReadRegDWORD $help_installed HKLM "Software\Aegisub" "aegisub_help" -ReadRegStr $startmenudir HKLM "Software\Aegisub\info" "StartMenuDir" - -${if} $aegisub_source_installed = 1 - MessageBox MB_YESNO|MB_ICONQUESTION "Would you like to keep the source directory?" IDYES lbl_keep_aegisub_source - RMDir /r "$INSTDIR\source" - lbl_keep_aegisub_source: -${endif} - -${if} $vsfilter_installed = 1 - Delete "$INSTDIR\vsfilter.dll" -${endif} - -${if} $help_installed = 1 - Delete "$INSTDIR\aegisub.chm" - Delete "$SMPROGRAMS\$startmenudir\Aegisub Help.lnk" -${endif} - -DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${NAME}" -DeleteRegKey HKLM "Software\Aegisub" - -;backup config -IfFileExists "$INSTDIR\config.dat" "" lbl_no_config_end - -MessageBox MB_YESNO "Would you like to save your Aegisub configuration?" IDYES lbl_no_config_end - Delete "$INSTDIR\config.dat" -lbl_no_config_end: - -${unless} $startmenudir == "" - Delete "$SMPROGRAMS\$startmenudir\Aegisub.lnk" - Delete "$SMPROGRAMS\$startmenudir\Uninstall.lnk" - Delete "$SMPROGRAMS\$startmenudir\Aegisub Site.lnk" - Delete "$SMPROGRAMS\$startmenudir\Changelog.lnk" - RMDir "$SMPROGRAMS\$startmenudir" -${endunless} - - SetOutPath $TEMP - RMDir "$INSTDIR" -SectionEnd -;************************************************************************************ -Function GetWindowsVersion - Push $R0 - Push $R1 - - ClearErrors - - ReadRegStr $R0 HKLM \ - "SOFTWARE\Microsoft\Windows NT\CurrentVersion" CurrentVersion - - IfErrors 0 lbl_winnt - - ; we are not NT - ReadRegStr $R0 HKLM \ - "SOFTWARE\Microsoft\Windows\CurrentVersion" VersionNumber - - StrCpy $R1 $R0 1 - StrCmp $R1 '4' 0 lbl_error - - StrCpy $R1 $R0 3 - - StrCmp $R1 '4.0' lbl_win32_95 - StrCmp $R1 '4.9' lbl_win32_ME lbl_win32_98 - - lbl_win32_95: - StrCpy $R0 '95' - Goto lbl_done - - lbl_win32_98: - StrCpy $R0 '98' - Goto lbl_done - - lbl_win32_ME: - StrCpy $R0 'ME' - Goto lbl_done - - lbl_winnt: - - StrCpy $R1 $R0 1 - - StrCmp $R1 '3' lbl_winnt_x - StrCmp $R1 '4' lbl_winnt_x - - StrCpy $R1 $R0 3 - - StrCmp $R1 '5.0' lbl_winnt_2000 - StrCmp $R1 '5.1' lbl_winnt_XP - StrCmp $R1 '5.2' lbl_winnt_2003 lbl_error - - lbl_winnt_x: - StrCpy $R0 "NT $R0" 6 - Goto lbl_done - - lbl_winnt_2000: - Strcpy $R0 '2000' - Goto lbl_done - - lbl_winnt_XP: - Strcpy $R0 'XP' - Goto lbl_done - - lbl_winnt_2003: - Strcpy $R0 '2003' - Goto lbl_done - - lbl_error: - Strcpy $R0 '' - lbl_done: - - Pop $R1 - Exch $R0 - -FunctionEnd -;************************************************************************************ -;Descriptions - !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN - !insertmacro MUI_DESCRIPTION_TEXT ${AEGISUB_GROUP} $(DESC_AEGISUB_GROUP) - !insertmacro MUI_DESCRIPTION_TEXT ${AVISYNTH_GROUP} $(DESC_AVISYNTH_GROUP) - !insertmacro MUI_DESCRIPTION_TEXT ${AEGISUB_SECTION} $(DESC_AEGISUB_SECTION) - !insertmacro MUI_DESCRIPTION_TEXT ${AEGISUB_SOURCE_SECTION} $(DESC_AEGISUB_SOURCE_SECTION) - !insertmacro MUI_DESCRIPTION_TEXT ${AEGISUB_HELP_SECTION} $(DESC_AEGISUB_HELP_SECTION) - !insertmacro MUI_DESCRIPTION_TEXT ${VSFILTER_SECTION} $(DESC_VSFILTER_SECTION) - !insertmacro MUI_DESCRIPTION_TEXT ${AVISYNTH_INSTALLER_SECTION} $(DESC_AVISYNTH_INSTALLER_SECTION) - !insertmacro MUI_DESCRIPTION_TEXT ${AVISYNTH_SOURCE_SECTION} $(DESC_AVISYNTH_SOURCE_SECTION) - !insertmacro MUI_FUNCTION_DESCRIPTION_END -;*****************EOF*********EOF***********EOF**************EOF*********EOF********** \ No newline at end of file