home *** CD-ROM | disk | FTP | other *** search
- ''=========================================================================
- '' SPEA SHOWTIME PLUS Setup
- ''=========================================================================
- ''ENGLISH VERSION
-
-
- '' ----------------- script procedure definition files -----------------
- '$INCLUDE 'setupapi.inc'
- '$INCLUDE 'msdetect.inc'
-
-
- '' -------- Dialog ID's (resource identification numbers) --------------
- CONST LOGO = 1
-
- WELCOME = 100
- ASKQUIT = 200
- DESTPATH = 300
- EXITFAILURE = 400
- EXITQUIT = 600
- EXITSUCCESS = 700
- OPTIONS = 800
- APPHELP = 900
- BADPATH = 6400
- STILLACTIVE = 9000
- BADENV = 9100
-
- SPEAV7Existed = 0
-
-
- '' ---------------- global string vars -------------------------------------
- GLOBAL dest$ ''Default destination directory
- GLOBAL option1$
- GLOBAL windir$
- GLOBAL winsysdir$
-
-
- '' -------------------- functions --------------------------------
- DECLARE SUB Install
- DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
- DECLARE FUNCTION VfWinIsLess11a LIB "SPECIAL.DLL" AS INTEGER
- DECLARE FUNCTION ExitWindowsRestart LIB "SPECIAL.DLL" AS INTEGER
- DECLARE FUNCTION DVA386_Included LIB "SPECIAL.DLL" AS INTEGER
-
-
- '' --------------------- before first popup ----------------------
- INIT:
- CUIDLL$ = "mscuistf.dll" ''Custom user interface dll
- HELPPROC$ = "FHelpDlgProc" ''Help dialog procedure
-
- SetBitmap CUIDLL$, LOGO
- SetTitle "SHOWTIME PLUS Software Installation" ''Rahmentext
-
- szInf$ = GetSymbolValue("STF_SRCINFPATH") ''Hole Symboltabellenwert
- IF szInf$ = "" THEN
- szInf$ = GetSymbolValue("STF_CWDDIR") + "SETUP.INF"
- END IF
- ReadInfFile szInf$ '';oeffne und lese INF Datei
-
- checkfile$ = "STMODE.EXE"
-
- '$IFDEF DEBUG
- i% = SetSizeCheckMode(scmOnIgnore) '' could use scmOff; def = scmOnFatal
- WinDrive$ = MID$(GetWindowsDir, 1, 1)
- IF IsDriveValid(WinDrive$) = 0 THEN
- i% = DoMsgBox("Windows drive ('"+WinDrive$+"') is not a valid drive.", "DEBUG", MB_TASKMODAL+MB_ICONHAND+MB_OK)
- GOTO QUIT
- END IF
- '$ENDIF ''DEBUG
-
- windir$ = GetWindowsDir()
- winsysdir$ = GetWindowsSysDir()
-
-
- '' ------------------------ information --------------------------
- ''WELCOME:
- '' sz$ = UIStartDlg(CUIDLL$, WELCOME, "FInfoDlgProc", APPHELP, HELPPROC$) ''Dialogbox oeffnen
- '' IF sz$ = "CONTINUE" THEN
- '' UIPop 1 ''Dialogbox schliessen
- '' ELSE
- '' GOSUB ASKQUIT
- '' GOTO WELCOME
- '' END IF
-
-
- '' ------- Get destination path by GDC environment variable -------------
- '' ------- If GDC is not correctly set, do msg and abort Setup ----------
- dest$ = GetEnvVariableValue("GDC")
-
- IF dest$ = "" THEN '' GDC Variable überhaupt gesetzt?
- GOSUB BADENV
- END IF
-
- IF IsDirWritable(DEST$) = 0 THEN '' Directory beschreibbar?
- GOSUB BADENV
- END IF
-
- sz$ = MakePath(dest$, checkfile$)
- IF DoesFileExist(sz$, femExists) THEN '' Das richtige GDC-Verzeichnis?
- ELSE
- GOSUB BADENV
- END IF
-
-
- '' ----------- check which Video for Windows version is installed ------------
- sz$ = MakePath(winsysdir$, "MSVIDEO.DLL")
-
- IF DoesFileExist(sz$, femExists) THEN
-
- IF VfWinIsLess11a() = 1 THEN
- option1$ = "onlyifless11a"
- '' sz$ = "less than 1.1a"
- ELSE
- option1$ = ""
- '' sz$ = "equal or greater 1.1a"
- END IF
- ELSE
- option1$ = "onlyifless11a"
- '' sz$ = "less than 1.1a(2)"
- END IF
-
- '$IFDEF DEBUG
- i% = DoMsgBox(sz$, "DEBUG", MB_TASKMODAL+MB_ICONHAND+MB_OK)
- '$ENDIF ''DEBUG
-
-
- '' ---- install selected files, modify INI files, create Progman groups ---
- Install
-
-
- '' -------------- announce and execute Windows restart ----------------
- '' Language dependent
- i% = DoMsgBox("Setup will now restart Windows.", "SHOWTIME PLUS Setup", MB_TASKMODAL+MB_OK)
-
- RESTART:
- i% = ExitWindowsRestart
- IF i% = 1 THEN
- sz$ = UIStartDlg(CUIDLL$, STILLACTIVE, "FInfoDlgProc", 0, "")
- UIPop 1
- IF sz$ = "EXIT" THEN
- GOSUB ASKQUIT
- END IF
- GOTO RESTART
- END IF
-
-
- '' ------------------- furthermore ------------------------------
- QUIT:
- ON ERROR GOTO ERRQUIT
-
- IF ERR = 0 THEN
- dlg% = EXITSUCCESS
- ELSEIF ERR = STFQUIT THEN
- dlg% = EXITQUIT
- ELSE
- dlg% = EXITFAILURE
- END IF
- QUITL1:
- sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- GOTO QUITL1
- END IF
- UIPop 1
-
- END
-
-
- ERRQUIT:
- i% = DoMsgBox("Setup sources were corrupted!", "Setup Message", MB_OK+MB_TASKMODAL+MB_ICONHAND)
- END ''Meldung ausgeben
-
-
- BADPATH:
- sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- GOTO BADPATH
- END IF
- UIPop 1
- RETURN
-
-
- ASKQUIT:
- sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
-
- IF sz$ = "EXIT" THEN
- UIPopAll ''alle Dialogboxen schliessen
- ERROR STFQUIT
- ELSEIF sz$ = "REACTIVATE" THEN
- GOTO ASKQUIT
- ELSE
- UIPop 1
- END IF
- RETURN
-
-
- BADENV:
- sz$ = UIStartDlg(CUIDLL$, BADENV, "FQuitDlgProc", 0, "")
-
- UIPopAll ''alle Dialogboxen schliessen
- ERROR STFQUIT
- RETURN
-
-
- '' -------------------------- install subroutine ----------------------------
- '' --------------------------------------------------------------------------
- SUB Install STATIC
-
- ClearCopyList
- SrcDir$ = GetSymbolValue("STF_SRCDIR")
- '' Muss schon existieren
- '' CreateDir dest$, cmoNone '' make destination path
-
-
- '' ------------------- select SHOWTIME PLUS files ----------------------
- AddSectionKeyFileToCopyList "app", "always", SrcDir$, dest$
-
- '' Language dependent
- AddSectionKeyFileToCopyList "appeng", "always", SrcDir$, dest$
-
- AddSectionKeyFileToCopyList "appsys", "always", SrcDir$, winsysdir$
- AddSectionKeyFileToCopyList "drvwin", "always", SrcDir$, windir$
- AddSectionKeyFileToCopyList "drvsys", "always", SrcDir$, winsysdir$
-
-
- '' ---------------- language files for V7SETUP and SPENERGY ----------
- '' Language dependent
- AddSectionKeyFileToCopyList "drvwineng", "always", SrcDir$, windir$
-
-
- '' ------------------- select VfW files ------------------------
- IF option1$ = "onlyifless11a" THEN
- AddSectionKeyFileToCopyList "vfwwin", option1$, SrcDir$, windir$
- AddSectionKeyFileToCopyList "vfwsys", option1$, SrcDir$, winsysdir$
- END IF
-
-
- '' ------------------- install selected files --------------------
- CopyFilesInCopyList '' Kopieren
-
-
- '' ------------------ modify INI files for SHOWTIME ---------------
- IF DVA386_Included() = 0 THEN
- CreateSysIniKeyValue windir$ + "system.ini", "386Enh", "device", "dva.386", cmoVital
- END IF
-
- CreateIniKeyValue windir$ + "system.ini", "Drivers", "msvideo", "stimecap.drv", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "Drivers", "DCI", "DCIVIPER", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "Drivers", "VIDS.DRAW", "UDH.DLL", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "Drivers", "DCIVIDC.CVID", "iccvid.drv", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "Drivers", "DCIVIDC.IV31", "indeov.drv", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "MCI", "MpegVideo", "mcispea.drv", cmoOverwrite
-
-
- '' ------------------ für V7SETUP --------------------------------
- '' Language dependent
- CreateIniKeyValue windir$ + "system.ini", "car1k.drv", "Lang", "eng", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "car1k.drv", "Refresh", "0", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "car1k.drv", "Video", "0", cmoOverwrite
-
- CreateIniKeyValue windir$ + "system.ini", "boot", "display.drv", "vga4ahtx.drv", cmoOverwrite
-
- CreateIniKeyValue windir$ + "system.ini", "Tseng", "resolution", "640x480", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "Tseng", "colordepth", "16", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "Tseng", "fontsize", "small", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "Tseng", "color16format", "2", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "boot.description", "display.drv", "SPEA BigWin 640x480 65535 colors", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "386Enh", "display", "vddtli4.386", cmoOverwrite
-
-
- '' ------------------ für MCI -------------------------------
- CreateIniKeyValue windir$ + "spea.ini", "STimeCap.drv", "Hue", "131", cmoOverwrite
- CreateIniKeyValue windir$ + "spea.ini", "STimeCap.drv", "Saturation", "96", cmoOverwrite
- CreateIniKeyValue windir$ + "spea.ini", "STimeCap.drv", "Brightness", "120", cmoOverwrite
- CreateIniKeyValue windir$ + "spea.ini", "STimeCap.drv", "Contrast", "124", cmoOverwrite
- CreateIniKeyValue windir$ + "spea.ini", "STimeCap.drv", "Sharpness", "127", cmoOverwrite
- CreateIniKeyValue windir$ + "spea.ini", "STimeCap.drv", "XDelay", "143", cmoOverwrite
- CreateIniKeyValue windir$ + "spea.ini", "STimeCap.drv", "YDelay", "14", cmoOverwrite
- CreateIniKeyValue windir$ + "spea.ini", "STimeCap.drv", "InputChannel", "0", cmoOverwrite
- CreateIniKeyValue windir$ + "spea.ini", "STimeCap.drv", "VideoStandard", "1", cmoOverwrite
- CreateIniKeyValue windir$ + "spea.ini", "STimeCap.drv", "VideoCable", "0", cmoOverwrite
- CreateIniKeyValue windir$ + "spea.ini", "STimeCap.drv", "Size40", "4", cmoOverwrite
- CreateIniKeyValue windir$ + "spea.ini", "STimeCap.drv", "VideoFormat", "1", cmoOverwrite
-
- CreateIniKeyValue windir$ + "spea.ini", "MediaStation", "EnaTimeLimit", "1", cmoOverwrite
- CreateIniKeyValue windir$ + "spea.ini", "MediaStation", "TimeLimit", "5", cmoOverwrite
-
- CreateIniKeyValue windir$ + "win.ini", "mci extensions", "mpg", "MpegVideo", cmoOverwrite
- CreateIniKeyValue windir$ + "win.ini", "mci extensions", "vpg", "MpegVideo", cmoOverwrite
- CreateIniKeyValue windir$ + "win.ini", "mci extensions", "dat", "MpegVideo", cmoOverwrite
- CreateIniKeyValue windir$ + "win.ini", "windows", "run", "v7setup", cmoOverwrite
-
- CreateIniKeyValue windir$ + "control.ini", "drivers.desc", "mcispea.drv", "[MCI] SPEA MPEG + VideoCD", cmoOverwrite
-
-
- ''----------------------- modify INI files for VfW --------------------------
- IF option1$ = "onlyifless11a" THEN
- CreateIniKeyValue windir$ + "system.ini", "Drivers", "VIDC.CVID", "iccvid.drv", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "Drivers", "VIDC.MSVC", "msvidc.drv", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "Drivers", "VIDC.IV31", "ir32.dll", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "Drivers", "VIDC.IV32", "ir32.dll", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "Drivers", "VIDC.MRLE", "MSRLE.drv", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "Drivers", "VIDC.RT21", "indeov.drv", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "Drivers", "VIDC.YVU9", "ir21_r.dll", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "Drivers", "WaveMapper", "msacm.drv", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "Drivers", "MSACM.msadpcm", "msadpcm.acm", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "Drivers", "MSACM.imaadpcm", "imaadpcm.acm", cmoOverwrite
- CreateIniKeyValue windir$ + "system.ini", "mci", "AVIVideo", "mciavi.drv", cmoOverwrite
-
- CreateIniKeyValue windir$ + "control.ini", "drivers.desc", "msacm.drv", "Microsoft Sound Mapper V2.00", cmoOverwrite
- CreateIniKeyValue windir$ + "control.ini", "drivers.desc", "msadpcm.acm", "Microsoft ADPCM Codec V2.00", cmoOverwrite
- CreateIniKeyValue windir$ + "control.ini", "drivers.desc", "imaadpcm.acm", "Microsoft IMA ADPCM Codec V2.00", cmoOverwrite
-
- CreateIniKeyValue windir$ + "win.ini", "mci extensions", "avi", "AVIVideo", cmoOverwrite
-
- END IF '' ------------- onlyifless11a -------------------------------------
-
-
- '' ----------- create and/or show SPEA Progman group -------------
- sz$ = MakePath(windir$, "SPEAV7.GRP")
- IF DoesFileExist(sz$, femExists) THEN
- SPEAV7Existed% = 1
- END IF
- CreateProgmanGroup "SPEA", sz$, cmoNone
- '' Wirkung:
- '' - Wenn SPEAV7.GRP bereits existiert:
- '' Gruppe "SPEA" wird als SPEA.GRP erzeugt
- '' - Wenn SPEAV7.GRP nicht existiert:
- '' Gruppe "SPEA" wird als SPEAV7.GRP erzeugt
-
-
- '' ------------------ create SPEA / SPEA/V7 Progman items ------------------
- path$ = MakePath(dest$, "mediasta.exe")
- CreateProgmanItem "SPEA", "MediaStation", path$, "", cmoOverwrite
-
- path$ = MakePath(windir$, "v7setup.exe")
- CreateProgmanItem "SPEA", "V7SETUP", path$, "", cmoOverwrite
-
- path$ = MakePath(windir$, "spenergy.exe")
- sz$ = MakePath(windir$, "SPEAV7.GRP")
- IF SPEAV7Existed% = 1 THEN
- CreateProgmanItem "SPEA/V7", "SPEAenergy", path$, "", cmoOverwrite
- ELSE
- CreateProgmanItem "SPEA", "SPEAenergy", path$, "", cmoOverwrite
- END IF
-
-
- END SUB '' ---- End of Install subroutine ---------
-
-
- '' ----------------------- MakePath function ----------------------------
- FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
- IF szDir$ = "" THEN
- MakePath = szFile$
- ELSEIF szFile$ = "" THEN
- MakePath = szDir$
- ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
- MakePath = szDir$ + szFile$
- ELSE
- MakePath = szDir$ + "\" + szFile$
- END IF
- END FUNCTION
-
- '' -------------- end-of-file -------------