aboutsummaryrefslogtreecommitdiff
path: root/Src/Plugins/Visualization/vis_milk2/milkdrop.nsi
diff options
context:
space:
mode:
Diffstat (limited to 'Src/Plugins/Visualization/vis_milk2/milkdrop.nsi')
-rw-r--r--Src/Plugins/Visualization/vis_milk2/milkdrop.nsi439
1 files changed, 439 insertions, 0 deletions
diff --git a/Src/Plugins/Visualization/vis_milk2/milkdrop.nsi b/Src/Plugins/Visualization/vis_milk2/milkdrop.nsi
new file mode 100644
index 00000000..c10333e6
--- /dev/null
+++ b/Src/Plugins/Visualization/vis_milk2/milkdrop.nsi
@@ -0,0 +1,439 @@
+; LICENSE
+; -------
+; Copyright 2005-2013 Nullsoft, Inc.
+; 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 Nullsoft 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.
+
+; ----------------------------------------------------------------
+; NOTE: this .nsi script was last built with 'makensis.exe'
+; version 1.98. If you go to install it (unchanged) and get errors,
+; try tracking down that older version, or try to figure out what
+; has changed since then. You can get NSIS at:
+;
+; http://www.nullsoft.com/free/nsis/
+;
+; This installer will produce a single EXE file that, when run,
+; will decompress and install your plugin and all of its data files
+; to Winamp 2 or Winamp 3.
+; ----------------------------------------------------------------
+; MODIFYING THIS SCRIPT TO CREATE AN INSTALLER FOR YOUR OWN PLUGIN:
+; ----------------------------------------------------------------
+; 1) there are three sections below, each marked 'EDIT THIS SECTION
+; [x/3]' where 'x' is the section number. These are the 3
+; places where you need to make changes to customize this
+; installer script for your particular plugin. Go to each
+; and make the changes, reading the comments there for
+; more information.
+; 2) download NSIS from http://www.nullsoft.com/free/nsis/, if you
+; haven't already.
+; 3) run the command 'makensis.exe installer.nsi' to build
+; the executable. (note: ignore the warning message about
+; 'InstallRegKey' being used multiple times; this is necessary
+; to determine whether Winamp 2 or 3 is a better candidate
+; for the install.)
+; ----------------------------------------------------------------
+; WHAT THIS INSTALLER SCRIPT DOES:
+; ----------------------------------------------------------------
+; If Winamp 2 is installed, it will install your plugin to Winamp 2,
+; in the directory Winamp\Plugins (or whatever is specified as the
+; vis plugins path, in Winamp\winamp.ini). It will also select
+; the plugin as the current plugin. (Note that Winamp must be
+; closed to do this, so if it's open, the installer will ask the
+; user to close it before proceeding.) At the end of a successful
+; install, it asks if they'd like to run Winamp.
+;
+; If Winamp 2 is not present but Winamp 3 is, or if the user manually
+; selects the Winamp 3 directory to install to, the plugin will be
+; installed to Winamp 3 as a classic visualization plugin, to the
+; directory Winamp3\Plugins. At install time, if ClassicVis is not
+; installed, it will prompt the user to go download it. If they
+; don't download it, it will tell them the installation failed.
+; If they already had it, or after they presumably download it,
+; the installer will briefly tell them how to select their new
+; plugin and run it in Winamp 3, using ClassicVis. Finally, at
+; the end of a successful install, it asks if they'd like to run
+; Winamp 3.
+; ----------------------------------------------------------------
+
+
+
+; -------------------- EDIT THIS SECTION [1/3] --------------------
+; -------------------- EDIT THIS SECTION [1/3] --------------------
+; -------------------- EDIT THIS SECTION [1/3] --------------------
+
+ !define PLUGIN_NAME "MilkDrop 2" ; Brief name of the component. Can have spaces in it.
+ !define INSTALL_CAPTION "MilkDrop 2.2 Setup" ; Caption for the installer dialog
+ !define PLUGIN_DLL "vis_milk2.dll" ; The filename of the actual plugin
+ !define PLUGIN_OUTFILE "milkdrop_2.exe" ; Name of the installer to create
+
+; ----------------------- END SECTION [1/3] -----------------------
+; ----------------------- END SECTION [1/3] -----------------------
+; ----------------------- END SECTION [1/3] -----------------------
+
+; ----------------------------------------------------------------
+Name ${PLUGIN_NAME}
+Caption "${INSTALL_CAPTION}"
+OutFile ${PLUGIN_OUTFILE}
+; ----------------------------------------------------------------
+
+; to determine the install directory, we start with Program Files\Winamp.
+; then, if winamp 3 is found, override this and use that directory.
+; finally, if winamp 2 is found, override again and use that directory.
+InstallDir $PROGRAMFILES\Winamp
+InstallDirRegKey HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Winamp3" "UninstallString"
+InstallDirRegKey HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Winamp" "UninstallString"
+DirText \
+ "The installer has determined that this is the path to Winamp.$\rIf it is not correct, please change it. You will not be able to proceed$\runtil a valid path is found." \
+ "Select the directory in which Winamp 2 or 3 is installed:"
+
+Function .onInit
+ IfFileExists $INSTDIR\winamp.exe End ; else if winamp.exe found (winamp2), we're good
+ IfFileExists $INSTDIR\winamp3.exe End ; if winamp3.exe found (winamp3), we're good
+ IfFileExists $INSTDIR\studio.exe End ; or if studio.exe found (older version of winamp3), we're good
+ ; the above will work fine if winamp 2 or 3 is installed,
+ ; but will break if winamp 2 or 3 was uninstalled *but the directory remains.*
+ IfFileExists $PROGRAMFILES\Winamp\winamp.exe SelectNaturalWinamp2 ; last but not least, try the default winamp 2 directory
+ IfFileExists $PROGRAMFILES\Winamp3\winamp3.exe SelectNaturalWinamp3 ; otherwise, try the default winamp 3 directory
+ IfFileExists $PROGRAMFILES\Winamp3\studio.exe SelectNaturalWinamp3 ; otherwise, try the default winamp 3 directory
+ ; if all of these failed, no good path to Winamp (2 or 3) could be found,
+ ; and the 'Next' button will be disabled until the user can specify
+ ; the correct folder.
+ Goto End
+
+ SelectNaturalWinamp3:
+ strcpy $INSTDIR $PROGRAMFILES\Winamp3
+ goto End
+
+ SelectNaturalWinamp2:
+ strcpy $INSTDIR $PROGRAMFILES\Winamp
+ goto End
+
+ End:
+FunctionEnd
+
+
+Function .onVerifyInstDir
+ IfFileExists $INSTDIR\Winamp.exe DirOk
+ IfFileExists $INSTDIR\Winamp3.exe DirOk
+ IfFileExists $INSTDIR\Studio.exe DirOk
+ Abort ; leaves the directory as the selected one, but disables the 'Next' button...
+
+ DirOk:
+FunctionEnd
+
+
+
+
+
+Function QueryWinampVisPath
+ ; input: $INSTDIR, the currently-selected install dir (path to winamp)
+ ; output: $1, the path to the winamp vis plugins subdirectory
+ ; -for winamp 3x, this is just $INSTDIR\plugins
+ ; -for winamp 2x, it comes from the winamp.ini file
+ ; (or just $INSTDIR\plugins if there is an error reading it.)
+ IfFileExists $INSTDIR\Winamp.exe CaseWinamp2
+ IfFileExists $INSTDIR\Winamp3.exe CaseWinamp3
+ IfFileExists $INSTDIR\Studio.exe CaseWinamp3 ; legacy check
+ goto CaseImpossible
+
+ CaseWinamp2:
+ StrCpy $1 $INSTDIR\Plugins\MilkDrop2
+ ReadINIStr $8 $INSTDIR\winamp.ini Winamp VisDir
+ StrCmp $8 "" End
+ IfFileExists $8 0 End
+ StrCpy $1 $8 ; update dir
+ goto end
+
+ CaseWinamp3:
+ CaseImpossible:
+ StrCpy $1 $INSTDIR\Plugins\MilkDrop2
+ goto end
+
+ End:
+FunctionEnd
+
+
+; The stuff to install
+Section ""
+
+ CloseWinamp2:
+ ; make sure winamp is closed before we 1) try to install files
+ ; and 2) (later) edit winamp.ini. for 1), if they're running
+ ; (or were running) some other vms-based plugin using
+ ; vms_desktop.dll, then if winamp is still open, the installer
+ ; could have trouble overwriting vms_desktop.dll, or other files;
+ ; the user would get an abort/retry/ignore box, but it's easier
+ ; to just play it safe.
+ FindWindow $R0 "winamp v1.x"
+ StrCmp $R0 0 "" RequestCloseWinamp2
+ goto Winamp2Closed
+ RequestCloseWinamp2:
+ MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION "Winamp is currently running; please close it,$\rand then hit OK to continue..." \
+ IDCANCEL WarnWinampStillOpen
+ goto CloseWinamp2
+ WarnWinampStillOpen:
+ FindWindow $R0 "winamp v1.x"
+ StrCmp $R0 0 "" WarnWinampStillOpen2
+ goto Winamp2Closed
+ WarnWinampStillOpen2:
+ MessageBox MB_OK|MB_ICONEXCLAMATION "Warning: Winamp is still open; as a result, the installer$\rwill not be able to set ${PLUGIN_NAME} as the default plugin; you will$\rhave to do this yourself.$\r$\rTo do so, wait until the installation is finished. Then bring up $\rWinamp and hit CTRL+K. From there, you will be able to select$\r${PLUGIN_NAME} from the list of visualization plug-ins, and it will$\rbecome the new default."
+ goto Winamp2Closed
+ Winamp2Closed:
+
+ ; this function sets $1 to point to the 'winamp\plugins\milkdrop2' folder:
+ ; (see function definition above)
+ Call QueryWinampVisPath
+
+ ; -------------------- EDIT THIS SECTION [2/3] --------------------
+ ; -------------------- EDIT THIS SECTION [2/3] --------------------
+ ; -------------------- EDIT THIS SECTION [2/3] --------------------
+
+ ; LIST FILES TO INCLUDE WITH THE INSTALLER
+
+ ; For each file we want to install onto the destination system,
+ ; we first set the output directory (relative to $1, which is
+ ; the PLUGINS directory) and then list files. The paths for
+ ; the files will be local paths on your hard disk, but fear not -
+ ; the files will be placed in the current output directory
+ ; (as last set by SetOutPath) on the destination system.
+
+ ; So, first, we set the current output path (the folder to which
+ ; files will be decompressed on the user's system) to '$1',
+ ; which is the path to their winamp plugins folder.
+
+ SetOutPath $1
+ File "C:\program files\winamp\plugins\${PLUGIN_DLL}"
+
+ SetOutPath $1\Milkdrop2\config
+ File "C:\program files\winamp\plugins\milkdrop2\config\milk_msg.ini"
+ File "C:\program files\winamp\plugins\milkdrop2\config\milk_img.ini"
+ ;File "C:\program files\winamp\plugins\milkdrop2\config\milkdrop.ini" ;this one will be generated - do not install
+
+ SetOutPath $1\Milkdrop2\data
+ File "C:\program files\winamp\plugins\milkdrop2\data\vms_desktop.dll"
+ File "C:\program files\winamp\plugins\milkdrop2\data\comp_ps.fx"
+ File "C:\program files\winamp\plugins\milkdrop2\data\comp_vs.fx"
+ File "C:\program files\winamp\plugins\milkdrop2\data\warp_ps.fx"
+ File "C:\program files\winamp\plugins\milkdrop2\data\warp_vs.fx"
+ File "C:\program files\winamp\plugins\milkdrop2\data\include.fx"
+
+ SetOutPath $1\Milkdrop2\docs
+ File "C:\program files\winamp\plugins\milkdrop2\docs\milkdrop.html"
+ File "C:\program files\winamp\plugins\milkdrop2\docs\milkdrop_preset_authoring.html"
+ File "C:\program files\winamp\plugins\milkdrop2\docs\q_and_t_vars.gif"
+
+ SetOutPath $1\Milkdrop2\textures
+ File "C:\program files\winamp\plugins\milkdrop2\textures\*.*"
+
+ SetOutPath $1\Milkdrop2\presets
+ File "C:\program files\winamp\plugins\milkdrop2\presets\*.milk"
+
+ hmmm
+ SetOutPath $1\MilkDrop2\presets\3d
+ File "C:\program files\winamp\plugins\milkdrop2\presets\3d\*.milk"
+
+ hmmm
+ SetOutPath $1\MilkDrop2\presets\inverted
+ File "C:\program files\winamp\plugins\milkdrop2\presets\inverted\*.milk"
+
+ ; ----------------------- END SECTION [2/3] -----------------------
+ ; ----------------------- END SECTION [2/3] -----------------------
+ ; ----------------------- END SECTION [2/3] -----------------------
+
+
+ ; now time to create the Uninstaller:
+
+ IfFileExists $INSTDIR\Winamp.exe UninstWinamp2
+ IfFileExists $INSTDIR\Winamp3.exe UninstWinamp3
+ IfFileExists $INSTDIR\Studio.exe UninstWinamp3 ; legacy check
+ goto UninstDone
+
+ UninstWinamp3:
+ WriteRegStr HKLM SOFTWARE\${PLUGIN_DLL}Winamp3 "Install_Dir" "$INSTDIR"
+ WriteRegStr HKLM SOFTWARE\${PLUGIN_DLL}Winamp3 "Install_Plugins_Dir" $1
+ WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PLUGIN_DLL}Winamp3" "DisplayName" "${PLUGIN_NAME} for Winamp 3 (remove only)"
+ WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PLUGIN_DLL}Winamp3" "UninstallString" '"$INSTDIR\uninst-${PLUGIN_DLL}.exe"'
+ WriteUninstaller "$INSTDIR\uninst-${PLUGIN_DLL}.exe"
+ CreateDirectory "$SMPROGRAMS\Winamp3\Vis Plugin Uninstallers"
+ CreateShortCut "$SMPROGRAMS\Winamp3\Vis Plugin Uninstallers\Uninstall ${PLUGIN_NAME}.lnk" "$INSTDIR\uninst-${PLUGIN_DLL}.exe" "" "$INSTDIR\uninst-${PLUGIN_DLL}.exe" 0
+ goto UninstDone
+
+ UninstWinamp2:
+ WriteRegStr HKLM SOFTWARE\${PLUGIN_DLL}Winamp "Install_Dir" "$INSTDIR"
+ WriteRegStr HKLM SOFTWARE\${PLUGIN_DLL}Winamp "Install_Plugins_Dir" $1
+ WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PLUGIN_DLL}Winamp" "DisplayName" "${PLUGIN_NAME} for Winamp 2x (remove only)"
+ WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PLUGIN_DLL}Winamp" "UninstallString" '"$INSTDIR\uninst-${PLUGIN_DLL}.exe"'
+ WriteUninstaller "$INSTDIR\uninst-${PLUGIN_DLL}.exe"
+ CreateDirectory "$SMPROGRAMS\Winamp\Vis Plugin Uninstallers"
+ CreateShortCut "$SMPROGRAMS\Winamp\Vis Plugin Uninstallers\Uninstall ${PLUGIN_NAME}.lnk" "$INSTDIR\uninst-${PLUGIN_DLL}.exe" "" "$INSTDIR\uninst-${PLUGIN_DLL}.exe" 0
+ goto UninstDone
+
+ UninstDone:
+
+SectionEnd
+
+;----------------------------------------------------------------------
+
+UninstallText "This will uninstall the ${PLUGIN_NAME} plugin. Hit next to continue."
+ShowUninstDetails Show
+
+Section "Uninstall"
+
+ ; This section is the code that will be run when the user goes
+ ; to Uninstall the plugin.
+
+ IfFileExists $INSTDIR\Winamp.exe UninstStep1Winamp2
+ IfFileExists $INSTDIR\Winamp3.exe UninstStep1Winamp3
+ IfFileExists $INSTDIR\Studio.exe UninstStep1Winamp3 ; legacy check
+ goto UninstScriptDone
+
+ UninstStep1Winamp3:
+ ReadRegStr $1 HKLM SOFTWARE\${PLUGIN_DLL}Winamp3 "Install_Plugins_Dir"
+ goto UninstStep2
+ UninstStep1Winamp2:
+ ReadRegStr $1 HKLM SOFTWARE\${PLUGIN_DLL}Winamp "Install_Plugins_Dir"
+ goto UninstStep2
+
+ UninstStep2:
+
+ ; -------------------- EDIT THIS SECTION [3/3] --------------------
+ ; -------------------- EDIT THIS SECTION [3/3] --------------------
+ ; -------------------- EDIT THIS SECTION [3/3] --------------------
+
+ ; LIST OF FILES TO DELETE WHEN USER RUNS THE UNINSTALL
+
+ Delete "$1\${PLUGIN_DLL}"
+ ;Delete "$1\vms_desktop.dll" ** DO NOT DELETE! **
+ Delete "$1\milkdrop.html"
+ Delete "$1\milkdrop_preset_authoring.html"
+ Delete "$1\q_and_t_vars.gif"
+
+ MessageBox MB_YESNO|MB_ICONQUESTION \
+ "Clear your saved settings?:$\r $1\milkdrop_config.ini$\r $1\milk_msg.ini$\r $1\milk_img.ini" \
+ IDNO SaveSettings
+
+ Delete "$1\milkdrop_config.ini"
+ Delete "$1\milk_msg.ini"
+ Delete "$1\milk_img.ini"
+
+ SaveSettings:
+
+ MessageBox MB_YESNO|MB_ICONQUESTION \
+ "Delete all presets in these 3 directories?:$\r $1\milkdrop$\r $1\milkdrop\3d$\r $1\milkdrop\inverted" \
+ IDNO SavePresets
+
+ Delete "$1\milkdrop2\inverted\*.milk"
+ Delete "$1\milkdrop2\3d\*.milk"
+ Delete "$1\milkdrop2\*.milk"
+ RMDir "$1\milkdrop2\inverted"
+ RMDir "$1\milkdrop2\3d"
+ RMDir "$1\milkdrop2"
+
+ SavePresets:
+
+ ; ----------------------- END SECTION [3/3] -----------------------
+ ; ----------------------- END SECTION [3/3] -----------------------
+ ; ----------------------- END SECTION [3/3] -----------------------
+
+ IfFileExists $INSTDIR\Winamp.exe UninstStep3Winamp2
+ IfFileExists $INSTDIR\Winamp3.exe UninstStep3Winamp3
+ IfFileExists $INSTDIR\Studio.exe UninstStep3Winamp3 ; legacy check
+ goto UninstScriptDone
+
+ UninstStep3Winamp3:
+ DeleteRegKey HKLM SOFTWARE\${PLUGIN_DLL}Winamp3
+ DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PLUGIN_DLL}Winamp3"
+ Delete $INSTDIR\uninst-${PLUGIN_DLL}.exe
+ Delete "$SMPROGRAMS\Winamp3\Vis Plugin Uninstallers\Uninstall ${PLUGIN_NAME}.lnk"
+ RMDir "$SMPROGRAMS\Winamp3\Vis Plugin Uninstallers"
+ goto UninstScriptDone
+ UninstStep3Winamp2:
+ DeleteRegKey HKLM SOFTWARE\${PLUGIN_DLL}Winamp
+ DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PLUGIN_DLL}Winamp"
+ Delete $INSTDIR\uninst-${PLUGIN_DLL}.exe
+ Delete "$SMPROGRAMS\Winamp\Vis Plugin Uninstallers\Uninstall ${PLUGIN_NAME}.lnk"
+ RMDir "$SMPROGRAMS\Winamp\Vis Plugin Uninstallers"
+ goto UninstScriptDone
+
+ UninstScriptDone:
+SectionEnd
+
+;----------------------------------------------------------------------
+
+Function .onInstSuccess
+ IfFileExists $INSTDIR\Winamp.exe CaseWinamp2
+ IfFileExists $INSTDIR\Winamp3.exe CaseWinamp3
+ IfFileExists $INSTDIR\Studio.exe CaseWinamp3 ; legacy check
+ goto CaseImpossible
+
+ CaseWinamp3:
+ IfFileExists $INSTDIR\wacs\classicvis.wac ClassicVisOk
+ ; no classicvis -> give them instructions
+ MessageBox MB_YESNO|MB_ICONEXCLAMATION \
+ "IMPORTANT: You must download and install the Classic Visualization$\rComponent before ${PLUGIN_NAME} will work with Winamp 3.$\r$\rWould you like to download it now?" \
+ IDNO FailNoClassicVis
+ ExecShell "open" "http://www.winamp.com/components3/detail.jhtml?componentId=122130"
+ MessageBox MB_OK|MB_ICONINFORMATION \
+ "Your web browser will now open and allow you to download$\rthe Classic Visualization Component. Please download$\rand install it.$\r$\rOnce it is installed, open Winamp 3 and hit CTRL+P$\rto open the Preferences screen. Then, on the left,$\rscroll to 'Classic Visualizations' and select it. From there,$\ryou can easily select, configure and run any plugins$\rinstalled to Winamp 2 or 3."
+ goto end
+ FailNoClassicVis:
+ MessageBox MB_OK|MB_ICONSTOP "Installation failed."
+ goto end
+ ClassicVisOk:
+ FindWindow $R0 "STUDIO"
+ StrCmp $R0 0 "" DoneWinamp3
+ MessageBox MB_YESNO|MB_ICONQUESTION \
+ "${PLUGIN_NAME} was installed successfully.$\rWould you like to run Winamp 3 now?" \
+ IDNO DoneWinamp3
+ ; to do here: update 'oldvisname' string in the *xml* file winamp3\studio.xnf,
+ ; and set 'oldvisidx' to "0"
+ IfFileExists $INSTDIR\Winamp3.exe CaseWinamp3b
+ Exec '"$INSTDIR\studio.exe"'
+ goto DoneWinamp3
+ CaseWinamp3b:
+ Exec '"$INSTDIR\winamp3.exe"'
+ goto DoneWinamp3
+ DoneWinamp3:
+ MessageBox MB_OK "While in Winamp 3, press CTRL+P to bring up the$\rPreferences screen, then scroll down and select$\rthe 'Classic Visualizations' option. From there,$\ryou can select, configure, and run the ${PLUGIN_NAME} plugin."
+ goto end
+
+ CaseWinamp2:
+ ; note: winamp 2 should already be closed at this point.
+ WriteINIStr "$INSTDIR\Winamp.ini" "Winamp" "visplugin_name" ${PLUGIN_DLL}
+ WriteINIStr "$INSTDIR\Winamp.ini" "Winamp" "visplugin_num" "0"
+ MessageBox MB_YESNO|MB_ICONQUESTION \
+ "${PLUGIN_NAME} was installed successfully.$\r$\rWhile in Winamp, press ALT+K to configure it (optional);$\rpress CTRL+SHIFT+K to execute it.$\r$\rWould you like to run Winamp now?" \
+ IDNO end
+ Exec '"$INSTDIR\Winamp.exe"'
+ Goto end
+
+ CaseImpossible:
+ MessageBox MB_OK|MB_ICONEXCLAMATION "ERROR: unable to find winamp.exe (winamp2) or studio.exe/winamp3.exe (winamp3) in the install directory..."
+ Goto end
+
+ End:
+FunctionEnd
+
+; eof
+