(svn r21146) -Fix [FS#4212]: make sure to be upgraded openttd is not running when installing (Win32)

This commit is contained in:
glx 2010-11-11 17:06:33 +00:00
parent 67d071d033
commit 6543339f91
1 changed files with 20 additions and 1 deletions

View File

@ -102,6 +102,9 @@ Page custom SelectCDEnter SelectCDExit ": TTD folder"
;--------------------------------------------------------------
; (Core) OpenTTD install section. Copies all internal game data
Section "!OpenTTD" Section1
; Make sure to be upgraded OpenTTD is not running
Call CheckOpenTTDRunning
; Overwrite files by default, but don't complain on failure
SetOverwrite try
@ -517,7 +520,6 @@ Abort:
Done:
FunctionEnd
;-------------------------------------------------------------------------------
; Check whether we're not running an installer for NT on 9x and vice versa
Function CheckWindowsVersion
@ -537,6 +539,23 @@ Abort:
Done:
FunctionEnd
;-------------------------------------------------------------------------------
; Check whether OpenTTD is running
Function CheckOpenTTDRunning
IfFileExists "$INSTDIR\openttd.exe" 0 Done
Retry:
FindProcDLL::FindProc "openttd.exe"
Pop $R0
IntCmp $R0 1 0 Done
ClearErrors
Delete "$INSTDIR\openttd.exe"
IfErrors 0 Done
ClearErrors
MessageBox MB_RETRYCANCEL|MB_ICONEXCLAMATION "OpenTTD is running. Please close it and retry." IDRETRY Retry
Abort
Done:
FunctionEnd
Var OLDVERSION
Var UninstallString