home *** CD-ROM | disk | FTP | other *** search
- ''
- '' ┌──────────────────────────────────────────────────────────────┐
- '' │ Corel CD Creator Setup (.mst) │
- '' ├──────────────────────────────────────────────────────────────┤
- '' │ SETUP (.mst) Script File Configuration file for: │
- '' │ │
- '' │ - OEM Customer: Corel Retail Version │
- '' │ - Script Type: 'Full' CD Creator Version │
- '' │ - Script Version: 1.02 - Build 62 │
- '' │ - Language Type: 'English' │
- '' │ - Date Created: June 01, 1994. │
- '' │ - Date Modified: November 07, 1995. by S. Racicot │
- '' ├──────────────────────────────────────────────────────────────┤
- '' │ Copyright (C) 1995. Corel Corporation All Rights Reserved │
- '' └──────────────────────────────────────────────────────────────┘
- ''
-
- ''$DEFINE DEBUG ''Define for script development/debugging
-
- '$INCLUDE 'setupapi.inc'
- '$INCLUDE 'msdetect.inc'
-
- ''Make SetUp full screen:
-
- CONST WS_VISIBLE =&H10000000
- CONST WS_BORDER =&H00800000
- CONST WSCLIPCHILDREN =&H02000000
- CONST GWL_STYLE =-16
- CONST SW_SHOWMAXIMIZED =3
-
- DECLARE FUNCTION ShowWindow LIB "user.exe" (hWnd%, iShow%) AS INTEGER
- DECLARE FUNCTION SetWindowLong LIB "user.exe" (hWnd%, offset%, style&) AS LONG
-
- hWnd%=HwndFrame()
-
- sti%=SetWindowLong(hWnd%, GWL_STYLE, WS_VISIBLE + WS_BORDER + WS_CLIPCHILDREN)
- stj%=ShowWindow(hWnd%, SW_SHOWMAXIMIZED)
-
- ''Dialog ID's
- CONST WELCOME = 100
- CONST ASKQUIT = 101
- CONST EXITFAILURE = 102
- CONST UPDATEASK = 103
- CONST EXITQUIT = 104
- CONST RESTARTWINDOWS = 105
- CONST NOWINRESTART = 106
- CONST SAMEPATH = 107
- CONST NOSPACE = 108
- CONST BADPATH = 109
- CONST MANUALUPDATE = 110
- CONST AUTOUPDATE = 111
- CONST DESTPATHDRIVE = 112
- CONST WINEXECFAIL = 113
- CONST PATHEDIT = 114
- CONST FLOPPYDRIVEEDIT = 115
- CONST INVALIDDRIVE = 116
- CONST SCSIPROMPT = 117
-
- CONST APPHELP = 210
- CONST UPDATEHELP = 211
- CONST DESTPATHHELP = 212
-
-
- ''Billboards
- CONST REGISTER = 300
- CONST SPLASHBB = 301
- CONST DRIVERMODELESS = 302
-
- ''Bitmap ID
- CONST LOGO = 1
-
- CONST FILES = 1
- CONST WINDOWS_FILES = 2
- CONST SYSTEM_FILES = 3
- CONST OLE_DLL_FILES = 4
- CONST STDOLE_FILES = 5
- CONST OLEREG_FILES = 6
- CONST VSHARE_FILES = 7
- CONST IOSUBSYS_FILES = 8
-
- GLOBAL DEST$ ''Default destination directory.
- GLOBAL STATUSTEXT$
- GLOBAL DRIVETEXT$
- GLOBAL DRIVELIST$
- GLOBAL LOCALDRIVELIST$
- GLOBAL EXTRACOSTS$
- GLOBAL NUMBEROFDRIVES$
-
- GLOBAL UPDATEMODE% ''=0 for manual update, =1 for automated update
- GLOBAL SECONDUPDATE% ''set to 1 if update selected on second chance
-
- GLOBAL FILESNEED$
- GLOBAL WINDOWSFILESNEED$
- GLOBAL SYSTEMFILESNEED$
- GLOBAL OLEDLLFILESNEED$
- GLOBAL STDOLEFILESNEED$
- GLOBAL OLEREGFILESNEED$
- GLOBAL VSHAREFILESNEED$
- GLOBAL IOSUBSYSFILESNEED$
-
- DECLARE SUB Install
- DECLARE SUB DriversInstall
- DECLARE SUB SetDriveStatus
- DECLARE SUB RecalcPath
- DECLARE SUB AddOptFilesToCopyList (ftype%, SrcDir$) ''J.B.
- DECLARE SUB RecalcOptFiles (ftype%)
- DECLARE SUB DoBackGround
-
-
- DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
- DECLARE FUNCTION FileDate (szDateOfSource$, szDateOfDest$) AS STRING
- DECLARE FUNCTION FileName (szUncompName$, szCompName$) AS STRING
- DECLARE FUNCTION UTLSysIniKeyValueExist LIB "cdw_cust.dll" (FILENAME$, SECTION$, KEY$, VALUE$) AS INTEGER
- DECLARE FUNCTION WinExec LIB "krnl386.exe" (CMDLINE$, CMDSHOW%) AS INTEGER
-
- ''------------------------------------------------------------------------------------
- '' Chicago
-
- GLOBAL WinVer%
- GLOBAL Win95%
-
- WinVer% = GetWindowsMajorVersion()*100 + GetWindowsMinorVersion()
- Win95% = (WinVer% >= 395)
-
- ''
- ''------------------------------------------------------------------------------------
-
-
- INIT:
- CUIDLL$ = "cdw_cust.dll" ''Custom user interface dll
- HELPPROC$ = "FHelpDlgProc" ''Help dialog procedure
-
- SetBitmap CUIDLL$, LOGO
- SetTitle "Corel CD Creator Setup"
-
- szInf$ = GetSymbolValue("STF_SRCINFPATH")
- IF szInf$ = "" THEN
- szInf$ = GetSymbolValue("STF_CWDDIR") + "SETUP.INF"
- END IF
- ReadInfFile szInf$
-
- OPTCUR$ = "1"
-
- IniFile$ = "win.ini"
- IF (DoesIniKeyExist(IniFile$, "CDCreator", "installed") = 0 ) THEN
- DEST$ = "C:\CDCREATR"
- ELSE
- DEST$ = GetIniKeyString(IniFile$, "CDCreator", "installed")
- IF DEST$="" THEN
- DEST$ = "C:\CDCREATR" ''JanB
- END IF
- END IF
-
-
- FILESNEED$ = "Files"
- WINDOWSFILESNEED$ = "Windows_Files"
- SYSTEMFILESNEED$ = "System_Files"
- OLEDLLFILESNEED$ = "OLE_DLL_Files"
- STDOLEFILESNEED$ = "StdOLE_Files"
- OLEREGFILESNEED$ = "OLEReg_Files"
- VSHAREFILESNEED$ = "VSHARE_Files"
- IOSUBSYSFILESNEED$ = "IOSUBSYS_Files"
-
- STATUSTEXT$ = "StatusItemsText"
- DRIVETEXT$ = "DriveStatusText"
- DRIVELIST$ = "Drives"
- LOCALDRIVELIST$ = "LocalDrives"
- EXTRACOSTS$ = "ExtraCosts"
- NUMBEROFDRIVES$ = "NumDrives"
-
- FOR i% = 1 TO 11 STEP 1
- AddListItem STATUSTEXT$, ""
- NEXT i%
-
- FOR i% = 1 TO 7 STEP 1
- AddListItem DRIVETEXT$,""
- NEXT i%
-
- FOR i% = 1 TO 26 STEP 1
- AddListItem DRIVELIST$,""
- NEXT i%
-
- FOR i% = 1 TO 4 STEP 1
- AddListItem LOCALDRIVELIST$,"-"
- NEXT i%
-
- FOR i% = 1 TO 26 STEP 1
- AddListItem EXTRACOSTS$, "0"
- NEXT i%
-
- FOR i% = 1 TO 2 STEP 1
- AddListItem NUMBEROFDRIVES$, "1"
- NEXT i%
-
- drive$ = MID$(DEST$, 1, 1)
- free& = GetFreeSpaceForDrive(drive$)
- ReplaceListItem DRIVETEXT$, 1, DEST$
- ReplaceListItem DRIVETEXT$, 3, STR$(free& / 1024) + " K"
-
- i% = SetSizeCheckMode(scmOff) ''turn off file size checking error
-
- AddToBillboardList CUIDLL$, REGISTER, "FModelessBillBoardDlgProc", 1
-
-
- '$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
-
-
- WELCOME:
- DoBackGround
- WELCOME1:
- sz$ = UIStartDlg(CUIDLL$, WELCOME, "FEditDlgProc", APPHELP, HELPPROC$)
- IF sz$ = "CONTINUE" THEN
- UIPop 1
- ELSEIF sz$ = "REACTIVATE" THEN
- GOTO WELCOME1
- ELSE
- GOSUB ASKQUIT
- GOTO WELCOME1
- END IF
-
- GETPATH:
- DEST$ = GetListItem(DRIVETEXT$, 1)
- cost& = 0
- RecalcPath
- SetDriveStatus
- GetLocalHardDrivesList DRIVELIST$
- ListLength% = GetListLength(DRIVELIST$)
- IF ListLength% = 1 THEN
- HardDrive$ = GetListItem(DRIVELIST$, 1)
- freedrivespace& = GetFreeSpaceForDrive(HardDrive$)
- ReplaceListItem LOCALDRIVELIST$, 1, HardDrive$ + ":" + STR$(freedrivespace& / 1024) + " K"
- ReplaceListItem LOCALDRIVELIST$, 1 + 2, STR$(freedrivespace& / 1024) + " K"
- ELSEIF ListLength% >= 2 THEN
- ReplaceListItem NUMBEROFDRIVES$, 1, "2"
- FOR i% = 1 TO 2 STEP 1
- HardDrive$ = GetListItem(DRIVELIST$, i%)
- freedrivespace& = GetFreeSpaceForDrive(HardDrive$)
- ReplaceListItem LOCALDRIVELIST$, i%, HardDrive$ + ":" + STR$(freedrivespace& / 1024) + " K"
- ReplaceListItem LOCALDRIVELIST$, i% + 2, STR$(freedrivespace& / 1024) + " K"
- NEXT i%
- END IF
- GETPATH1:
- sz$ = UIStartDlg(CUIDLL$, DESTPATHDRIVE, "FPathDlgBoxProc", DESTPATHHELP, HELPPROC$)
- DEST$ = GetListItem(DRIVETEXT$, 1)
-
- IF sz$ = "CONTINUE" THEN
- szFileCheck$ = DEST$ + "\cdcreatr.exe"
- IF DoesFileExist(szFileCheck$, femExists) = 1 THEN
- UIPop 1
- GOTO SAMEPATHWARNING
- END IF
- UIPop 1
- ELSEIF sz$ = "REACTIVATE" THEN
- GOTO GETPATH1
- ELSEIF sz$ = "PATH EDIT" THEN
- UIPop 1
- GOTO EDITPATH
- GOTO GETPATH
- ELSE
- GOSUB ASKQUIT
- GOTO GETPATH1
- END IF
-
-
- CHECKDISK:
- cost& = 0
- RecalcPath
- SetDriveStatus
- cost& = VAL(GetListItem(DRIVETEXT$, 2))
- free& = VAL(GetListItem(DRIVETEXT$, 3))
-
- IF ( cost& > free& ) THEN
- GOSUB INSUFFICIENTSPACE
- ENDIF
-
-
- UPDATEPROMPT:
- sz$ = UIStartDlg(CUIDLL$, UPDATEASK, "FEditDlgProc", UPDATEHELP, HELPPROC$)
- IF sz$ = "CONTINUE" THEN
- UPDATEMODE% = 1 '' automated update
- UIPop 1
- ELSEIF sz$ = "REACTIVATE" THEN
- GOTO UPDATEPROMPT
- ELSE
- UPDATEMODE% = 0 '' manual update
- UIPop 1
- END IF
-
-
- Install
-
-
- REGISTEROLE:
- windows$ = GetWindowsDir()
- winsystem$ = windows$ + "SYSTEM"
- winDrive$ = MID$(windows$, 1, 1)
- IF GetWindowsMajorVersion() = 3 THEN
-
- '' JanB:
- szRegload$ = GetSymbolValue("STF_CWDDIR") + "REGLOAD.EXE /S " + winsystem$ + "\OLE2.REG"
- '' was:
- '' szFile$ = winDrive$ + ":\corelcdc.tmp\REGLOAD.EXE"
- '' IF DoesFileExist(szFile$, femExists) = 1 THEN
- '' szRegload$ = winDrive$ + ":\corelcdc.tmp\REGLOAD.EXE /S " + winsystem$ + "\OLE2.REG"
- '' ELSE
- '' szRegload$ = winDrive$ + ":\windows\corelcdc.tmp\regload.exe /S " + winsystem$ + "\OLE2.REG"
- '' END IF
-
- i%=WinExec(szRegload$, 8) ''8 is sw_showna
- IF i% < 32 THEN
- sz$ = UIStartDlg(CUIDLL$, WINEXECFAIL, "FInfo0DlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- GOTO REGISTEROLE
- ELSEIF sz$ = "CONTINUE" THEN
- UIPop 1
- END IF
- ERR = 1
- END IF
- END IF
-
-
-
- RECORDERDRIVERS:
- SrcDir$ = GetSymbolValue("STF_SRCDIR")
- szOemFileCheck$ = SrcDir$ + "cdrdrvs.inf"
- ReplaceListItem DRIVETEXT$, 5, szOemFileCheck$
- ReplaceListItem DRIVETEXT$, 6, szOemFileCheck$
- ReplaceListItem DRIVETEXT$, 7, SrcDir$
- ''i% = DoMsgBox(szOemFileCheck$, "Debug Message", MB_OK)
- IF DoesFileExist(szOemFileCheck$, femExists) = 0 THEN
- sz$ = UIStartDlg(CUIDLL$, FLOPPYDRIVEEDIT, "FEditDriveDlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- GOTO RECORDERDRIVERS
- ELSEIF sz$ = "CONTINUE" THEN
- IF GetListItem(DRIVETEXT$, 5) = "" THEN
- UIPop 1
- GOSUB INVALIDDRIVE
- GOTO RECORDERDRIVERS
- END IF
- UIPop 1
- END IF
- END IF
-
-
- DriversInstall
-
-
- QUIT:
- ON ERROR GOTO ERRQUIT
- UIPopAll
- DoBackGround
-
- bDlg = 0
- SECONDUPDATE% = 0
- IF ERR = 0 THEN
- bDlg = 1
- IF UPDATEMODE% = 0 THEN
- GOSUB UPDATECHANCE2
- ELSE
- dlg% = AUTOUPDATE
- END IF
- ELSEIF ERR = STFQUIT THEN
- dlg% = EXITQUIT
- ELSE
- dlg% = EXITFAILURE
- END IF
- QUIT1:
- IF SECONDUPDATE% = 0 THEN
- sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- GOTO QUIT1
- END IF
- UIPop 1
- END IF
- QUIT2:
- IF bDlg = 1 THEN
- IF ERR = 0 THEN
- sz$ = UIStartDlg(CUIDLL$, SCSIPROMPT, "FEditDlgProc", APPHELP, HELPPROC$)
- IF sz$ = "CONTINUE" THEN
- UIPop 1
- ELSEIF sz$ = "REACTIVATE" THEN
- GOTO QUIT2
- END IF
- END IF
- QUIT3:
- IF UPDATEMODE% = 0 THEN
- sz$ = UIStartDlg(CUIDLL$, NOWINRESTART, "FEditDlgProc", APPHELP, HELPPROC$)
- IF sz$ = "CONTINUE" THEN
- UIPop 1
- ELSE
- GOTO QUIT3
- END IF
- ELSE
- SrcDir$ = GetSymbolValue("STF_SRCDIR")
- szPathsome$ = SrcDir$ + "CDW_REBT.EXE /DOBOOT"
- sz$ = UIStartDlg(CUIDLL$, RESTARTWINDOWS, "FInfo1DlgProc", 0, "")
- IF sz$ = "RESTART WINDOWS" THEN
- i%=WinExec(szPathsome$, 8) ''8 is sw_showna
- UIPop 1
- ELSEIF sz$ = "RETURN TO WINDOWS" THEN
- UIPop 1
- END IF
- END IF
- END IF
-
- END
-
-
-
- INSUFFICIENTSPACE:
- freespace$ = GetListItem(DRIVETEXT$, 3)
- sz$ = UIStartDlg(CUIDLL$, NOSPACE, "FCustInstDlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- GOTO INSUFFICIENTSPACE
- ELSEIF sz$ = "BACK" THEN
- UIPop 1
- GOTO GETPATH
- ELSEIF sz$ = "EXIT" THEN
- GOSUB ASKQUIT
- GOTO INSUFFICIENTSPACE
- END IF
- RETURN
-
-
- EDITPATH:
- SetSymbolValue "EditTextIn", DEST$
- SetSymbolValue "EditFocus", "END"
- sz$ = UIStartDlg(CUIDLL$, PATHEDIT, "FEditPathDlgProc", 0, "")
- DEST$ = GetSymbolValue("EditTextOut")
- IF sz$ = "REACTIVATE" THEN
- GOTO EDITPATH
- ELSE
- TempDrive$ = MID$(DEST$, 1, 1)
- IF IsDriveValid(TempDrive$) = 0 THEN
- GOSUB BADPATH
- GOTO EDITPATH
- END IF
- IF IsDirWritable(DEST$) = 0 THEN
- GOSUB BADPATH
- GOTO EDITPATH
- END IF
- UIPop 1
- GOTO GETPATH
- END IF
-
-
-
- SAMEPATHWARNING:
- sz$ = UIStartDlg(CUIDLL$, SAMEPATH, "FInfo1DlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- GOTO SAMEPATHWARNING
- ELSEIF sz$ = "BACK" THEN
- UIPop 1
- GOTO GETPATH
- ELSEIF sz$ = "CONTINUE" THEN
- UIPop 1
- GOTO CHECKDISK
- END IF
- RETURN
-
-
- UPDATECHANCE2:
- sz$ = UIStartDlg(CUIDLL$, MANUALUPDATE, "FUpdateDlgProc", 0, "")
- IF sz$ = "CONTINUE" THEN
- UIPop 1
- UPDATEMODE% = 0
- SECONDUPDATE% = 1
- ELSEIF sz$ = "REACTIVATE" THEN
- GOTO UPDATECHANCE2
- ELSEIF sz$ = "UPDATE" THEN
- systemini$ = GetWindowsDir() + "SYSTEM.INI"
- RemoveFile MakePath(DEST$, "system.new"), cmoForce
- CopyFile MakePath(windows$, "system.ini"), MakePath(DEST$, "system.old"), cmoOverwrite, 0
- IF (UTLSysIniKeyValueExist(systemini$, "386Enh", "device", "corelcdw.386") = 0) THEN
- CreateSysIniKeyValue systemini$, "386Enh", "device", "corelcdw.386", cmoOverwrite
- END IF
- IF (UTLSysIniKeyValueExist(systemini$, "386Enh", "device", "vshare.386") = 0) THEN
- CreateSysIniKeyValue systemini$, "386Enh", "device", "vshare.386", cmoOverwrite
- END IF
- UIPop 1
- UPDATEMODE% = 1
- SECONDUPDATE% = 0
- dlg% = AUTOUPDATE
- END IF
- RETURN
-
-
-
- ERRQUIT:
- i% = DoMsgBox("Setup sources were corrupted, Call CorelSCSI Technical Support 613-728-1010!", "Setup Message", MB_OK+MB_TASKMODAL+MB_ICONHAND)
- END
-
-
-
- BADPATH:
- sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- GOTO BADPATH
- END IF
- UIPop 1
- RETURN
-
-
-
- INVALIDDRIVE:
- sz$ = UIStartDlg(CUIDLL$, INVALIDDRIVE, "FInfo0DlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- GOTO INVALIDDRIVE
- END IF
- UIPop 1
- RETURN
-
-
-
- ASKQUIT:
- sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
-
- IF sz$ = "EXIT" THEN
- UIPopAll
- DoBackGround
- ERROR STFQUIT
- ELSEIF sz$ = "REACTIVATE" THEN
- GOTO ASKQUIT
- ELSE
- UIPop 1
- END IF
- RETURN
-
-
-
-
- '**
- '** Purpose:
- '** Builds the copy list and performs all installation operations.
- '** Arguments:
- '** none.
- '** Returns:
- '** none.
- '*************************************************************************
- SUB Install STATIC
-
- UIPopAll
- ClearCopyList
-
- SrcDir$ = GetSymbolValue("STF_SRCDIR")
- CreateDir DEST$, cmoNone
- windows$ = GetWindowsDir()
- winsystem$ = windows$ + "SYSTEM"
-
- AddOptFilesToCopyList FILES, SrcDir$ ''J.B.
- AddOptFilesToCopyList WINDOWS_FILES, SrcDir$ ''J.B.
- AddOptFilesToCopyList SYSTEM_FILES, SrcDir$ ''J.B.
- IF GetWindowsMajorVersion() = 3 THEN
- AddOptFilesToCopyList OLE_DLL_FILES, SrcDir$ ''J.B.
- AddOptFilesToCopyList STDOLE_FILES, SrcDir$ ''J.B.
- AddOptFilesToCopyList OLEREG_FILES, SrcDir$ ''J.B.
- END IF
- AddOptFilesToCopyList VSHARE_FILES, SrcDir$ ''J.B.
- IF Win95% THEN
- AddOptFilesToCopyList IOSUBSYS_FILES, SrcDir$ ''J.B.
- END IF
-
- CursorSave% = ShowWaitCursor()
- CopyFilesInCopyList
- RestoreCursor CursorSave%
-
- groupname$ = "Corel Multimedia"
-
- CreateProgmanGroup groupname$, "", cmoVital
- ShowProgmanGroup groupname$, 1, cmoVital
-
- CreateProgmanItem groupname$, "Corel CD Creator", DEST$+"\CDCreatr.exe", "", cmoOverwrite
-
- CreateProgmanItem groupname$, "PCD Creator", DEST$+"\PCDCrtr.exe", "", cmoOverwrite
-
- '' CreateProgmanItem groupname$, "Session Changer ", DEST$+"\ChgSesn.exe", "", cmoOverwrite
-
- CreateProgmanItem groupname$, "CDBrowser", DEST$+"\cdbrowse.exe", "", cmoOverwrite
-
- CreateProgmanItem groupname$, "Wave Edit", DEST$+"\windat.exe", "", cmoOverwrite
-
- systemini$ = GetWindowsDir() + "SYSTEM.INI"
-
- IF (UPDATEMODE% = 0) THEN
- CopyFile MakePath(windows$, "system.ini"), MakePath(DEST$, "system.new"), cmoOverwrite, 0
- systemini$ = MakePath(DEST$, "system.new")
- IF (UTLSysIniKeyValueExist(systemini$, "386Enh", "device", "corelcdw.386") = 0) THEN
- CreateSysIniKeyValue systemini$, "386Enh", "device", "corelcdw.386 ;added by Corel CD Creator", cmoOverwrite
- END IF
- IF (UTLSysIniKeyValueExist(systemini$, "386Enh", "device", "vshare.386") = 0) THEN
- CreateSysIniKeyValue systemini$, "386Enh", "device", "vshare.386", cmoOverwrite
- END IF
- ELSE
- CopyFile MakePath(windows$, "system.ini"), MakePath(DEST$, "system.old"), cmoOverwrite, 0
- IF (UTLSysIniKeyValueExist(systemini$, "386Enh", "device", "corelcdw.386") = 0) THEN
- CreateSysIniKeyValue systemini$, "386Enh", "device", "corelcdw.386 ;added by Corel CD Creator", cmoOverwrite
- END IF
- IF (UTLSysIniKeyValueExist(systemini$, "386Enh", "device", "vshare.386") = 0) THEN
- CreateSysIniKeyValue systemini$, "386Enh", "device", "vshare.386", cmoOverwrite
- END IF
- END IF
-
- CopyFile MakePath(windows$, "win.ini"), MakePath(DEST$, "win.old"), cmoOverwrite, 0
- CreateIniKeyValue "win.ini", "CDCreator", "installed", DEST$, cmoOverwrite
-
- END SUB
-
-
-
- '**
- '** Purpose: Copy the CD Recorded Device Drivers to the install Dir.
- '** Builds the copy list and performs all installation operations.
- '** Arguments:
- '** none.
- '** Returns:
- '** none.
- '*************************************************************************
- SUB DriversInstall STATIC
-
- UIPopAll
- ClearCopyList
-
- szInf$ = GetListItem(DRIVETEXT$, 5)
- ReadInfFile szInf$
-
- IF DoesFileExist(GetListItem(DRIVETEXT$, 6), femExists) = 0 THEN
- SrcDir$ = ""
- SrcDir$ = MID$(GetListItem(DRIVETEXT$, 5), 1, 1) + ":\"
- ELSE
- SrcDir$ = GetListItem(DRIVETEXT$, 7)
- END IF
-
- AddSectionFilesToCopyList "Drivers", SrcDir$, DEST$
-
- '' OldIni$ = MakePath(GetWindowsDir(),"cdcreatr.ini")
- '' Backup$ = MakePath(DEST$,"cdcr_ini.old")
-
- '' IF DoesFileExist(OldIni$,femExists) THEN
- '' CopyFile OldIni$,Backup$,cmoAll,0
- '' RemoveFile OldIni$,cmoForce
- '' END IF
-
- AddSectionFilesToCopyList "INI_File", SrcDir$, GetWindowsDir()
- AddOptFilesToCopyList SYSTEM_FILES, SrcDir$ ''J.B.
-
- IF Win95% THEN
- AddSectionFilesToCopyList "IOSUBSYS_Files", SrcDir$, GetWindowsSysDir() + "IOSUBSYS" ''S.R.
- END IF
-
- CursorSave% = ShowWaitCursor()
- CopyFilesInCopyList
- RestoreCursor CursorSave%
-
- IF DoesFileExist(DEST$ + "\readme.txt", femExists) = 1 THEN
- groupname$ = "Corel Multimedia"
- CreateProgmanItem groupname$, "CD Creator ReadMe", DEST$+"\readme.txt", "", cmoOverwrite
- END IF
-
- IF Win95% THEN
- IF DoesFileExist(DEST$ + "\readme95.txt", femExists) = 1 THEN
- groupname$ = "Corel Multimedia"
- CreateProgmanItem groupname$, "CD Creator Win95 ReadMe", DEST$+"\readme95.txt", "", cmoOverwrite
- END IF
- END IF
-
-
-
-
- END SUB
-
-
-
- '**
- '** Purpose:
- '** Adds the specified option files to the copy list.
- '** Arguments:
- '** ftype% - type of files to add, one of the following:
- '** APPFILES, OPTFILES1, OPTFILES2
- '** Returns:
- '** none.
- '*************************************************************************
- SUB AddOptFilesToCopyList (ftype%, SrcDir$) STATIC ''J.B.
-
- windows$ = GetWindowsDir()
- winsystem$ = windows$ + "SYSTEM"
- ''J.B. SrcDir$ = GetSymbolValue("STF_SRCDIR")
-
- IF ftype% = FILES THEN
- AddSectionFilesToCopyList "Files", SrcDir$, DEST$
- ''J.B. SrcDir$ = ""
- ELSEIF ftype% = WINDOWS_FILES THEN
- AddSectionFilesToCopyList "Windows_Files", SrcDir$, windows$
- ''J.B. SrcDir$ = ""
- ELSEIF ftype% = OLE_DLL_FILES THEN
- AddSectionFilesToCopyList "OLE_DLL_Files", SrcDir$, winsystem$
- ''J.B. SrcDir$ = ""
- ELSEIF ftype% = SYSTEM_FILES THEN ''J.B. block changed
-
- szSource$ = FileName(SrcDir$+"cdcreatr\corelcdw.386",SrcDir$+"cdcreatr\corelcdw.38_")
- IF 0=DoesFileExist(SrcDir$+"cdcreatr\corelcdw.386",femExists) THEN
- szSource$ = FileName(SrcDir$ + "corelcdw.386", SrcDir$ + "corelcdw.38_")
- ENDIF
-
- szDest$ = winsystem$ + "\corelcdw.386"
- exist% = DoesFileExist(szDest$, femExists)
- IF exist% = 0 THEN
- AddSectionFilesToCopyList "System_Files", SrcDir$, winsystem$
- ELSEIF exist% = 1 THEN
- DateCheck$ = FileDate (szSource$, szDest$)
- IF DateCheck$ = "Source" THEN
- AddSectionFilesToCopyList "System_Files", SrcDir$, winsystem$
- END IF
- ENDIF
-
- ''J.B. SrcDir$ = ""
- ELSEIF ftype% = STDOLE_FILES THEN
- IF DoesFileExist(SrcDir$ + "ole\stdole.tlb", femExists) = 1 THEN
- szSource$ = FileName(SrcDir$ + "ole\stdole.tlb", SrcDir$ + "ole\stdole.tl_")
- ELSE
- szSource$ = FileName(SrcDir$ + "stdole.tlb", SrcDir$ + "stdole.tl_")
- ENDIF
- szDest$ = winsystem$ + "\stdole.tlb"
- exist% = DoesFileExist(szDest$, femExists)
- IF exist% = 0 THEN
- AddSectionFilesToCopyList "StdOLE_Files", SrcDir$, winsystem$
- ELSEIF exist% = 1 THEN
- DateCheck$ = FileDate (szSource$, szDest$)
- IF DateCheck$ = "Source" THEN
- AddSectionFilesToCopyList "StdOLE_Files", SrcDir$, winsystem$
- END IF
- END IF
- ''J.B. SrcDir$ = ""
- ELSEIF ftype% = OLEREG_FILES THEN
- IF DoesFileExist(SrcDir$ + "ole\ole2.reg", femExists) = 1 THEN
- szSource$ = FileName(SrcDir$ + "ole\ole2.reg", SrcDir$ + "ole\ole2.re_")
- ELSE
- szSource$ = FileName(SrcDir$ + "ole2.reg", SrcDir$ + "ole2.re_")
- ENDIF
- szDest$ = winsystem$ + "\ole2.reg"
- exist% = DoesFileExist(szDest$, femExists)
- IF exist% = 0 THEN
- AddSectionFilesToCopyList "OLEReg_Files", SrcDir$, winsystem$
- ELSEIF exist% = 1 THEN
- DateCheck$ = FileDate (szSource$, szDest$)
- IF DateCheck$ = "Source" THEN
- AddSectionFilesToCopyList "OLEReg_Files", SrcDir$, winsystem$
- END IF
- END IF
- ''J.B. SrcDir$ = ""
- ELSEIF ftype% = VSHARE_FILES THEN
- IF DoesFileExist(SrcDir$ + "cdcreatr\vshare.386", femExists) = 1 THEN
- szSource$ = FileName(SrcDir$ + "cdcreatr\vshare.386", SrcDir$ + "cdcreatr\vshare.38_")
- ELSE
- szSource$ = FileName(SrcDir$ + "vshare.386", SrcDir$ + "vshare.38_")
- ENDIF
- szDest$ = winsystem$ + "\vshare.386"
- exist% = DoesFileExist(szDest$, femExists)
- IF exist% = 0 THEN
- AddSectionFilesToCopyList "VSHARE_Files", SrcDir$, winsystem$
- ELSEIF exist% = 1 THEN
- DateCheck$ = FileDate (szSource$, szDest$)
- IF DateCheck$ = "Source" THEN
- AddSectionFilesToCopyList "VSHARE_Files", SrcDir$, winsystem$
- END IF
- END IF
- ''J.B. SrcDir$ = ""
- ELSEIF ftype% = IOSUBSYS_FILES THEN
- IF DoesFileExist(SrcDir$ + "cdcreatr\vxdaspi.vxd", femExists) = 1 THEN
- szSource$ = FileName(SrcDir$ + "cdcreatr\vxdaspi.vxd", SrcDir$ + "cdcreatr\vxdaspi.vx_")
- ELSE
- szSource$ = FileName(SrcDir$ + "vxdaspi.vxd", SrcDir$ + "vxdaspi.vx_")
- ENDIF
- szDest$ = winsystem$ + "\IOSUBSYS\vxdaspi.vxd"
- exist% = DoesFileExist(szDest$, femExists)
- IF exist% = 0 THEN
- AddSectionFilesToCopyList "IOSUBSYS_Files", SrcDir$, winsystem$+"\IOSUBSYS"
- ELSEIF exist% = 1 THEN
- DateCheck$ = FileDate (szSource$, szDest$)
- IF DateCheck$ = "Source" THEN
- AddSectionFilesToCopyList "IOSUBSYS_Files", SrcDir$, winsystem$+"\IOSUBSYS"
- END IF
- END IF
- ''J.B. SrcDir$ = ""
- END IF
-
- END SUB
-
-
- '**
- '** Purpose:
- '** Appends a file name to the end of a directory path,
- '** inserting a backslash character as needed.
- '** Arguments:
- '** szDir$ - full directory path (with optional ending "\")
- '** szFile$ - filename to append to directory
- '** Returns:
- '** Resulting fully qualified path name.
- '*************************************************************************
- 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
-
-
- '**
- '** Purpose:
- '** Recalculates disk space for the given option files and sets
- '** the status info symbol "StatusItemsText".
- '** Arguments:
- '** ftype% - type of files to add, one of the following:
- '** UNIFILES, CDFILES etc
- '** Returns:
- '** none.
- '*************************************************************************
- SUB RecalcOptFiles (ftype%) STATIC
-
- CursorSave% = ShowWaitCursor()
-
- ClearCopyList
- SrcDir$ = GetSymbolValue("STF_SRCDIR") ''J.B.
- AddOptFilesToCopyList ftype%, SrcDir$ ''J.B.
-
- IF ftype% = FILES THEN
- ListSym$ = FILESNEED$
- ELSEIF ftype% = WINDOWS_FILES THEN
- ListSym$ = WINDOWSFILESNEED$
- ELSEIF ftype% = SYSTEM_FILES THEN
- ListSym$ = SYSTEMFILESNEED$
- ELSEIF ftype% = OLE_DLL_FILES THEN
- ListSym$ = OLEDLLFILESNEED$
- ELSEIF ftype% = STDOLE_FILES THEN
- ListSym$ = STDOLEFILESNEED$
- ELSEIF ftype% = OLEREG_FILES THEN
- ListSym$ = OLEREGFILESNEED$
- ELSEIF ftype% = VSHARE_FILES THEN
- ListSym$ = VSHAREFILESNEED$
- ELSEIF ftype% = IOSUBSYS_FILES THEN
- ListSym$ = IOSUBSYSFILESNEED$
- END IF
-
- StillNeed& = GetCopyListCost(EXTRACOSTS$, ListSym$, "")
-
- FOR i% = 1 TO 26 STEP 1
- cost& = cost& + VAL(GetListItem(ListSym$, i%))
- NEXT i%
- ReplaceListItem STATUSTEXT$, ftype%, STR$(cost& / 1024) + " K"
-
- RestoreCursor CursorSave%
- ListSym$ = ""
- END SUB
-
-
-
- '**
- '** Purpose:
- '** Recalculates disk space and sets option status info according
- '** to the current destination path.
- '** Arguments:
- '** none.
- '** Returns:
- '** none.
- '*************************************************************************
- SUB RecalcPath STATIC
-
- CursorSave% = ShowWaitCursor()
-
- RecalcOptFiles FILES
- RecalcOptFiles WINDOWS_FILES
- RecalcOptFiles SYSTEM_FILES
- RecalcOptFiles OLE_DLL_FILES
- RecalcOptFiles STDOLE_FILES
- RecalcOptFiles OLEREG_FILES
- RecalcOptFiles VSHARE_FILES
- IF Win95% THEN
- RecalcOptFiles IOSUBSYS_FILES
- END IF
-
- RestoreCursor CursorSave%
- END SUB
-
-
-
- '**
- '** Purpose:
- '** Sets drive status info according to latest disk space calcs.
- '** Arguments:
- '** none.
- '** Returns:
- '** none.
- '*************************************************************************
- SUB SetDriveStatus STATIC
-
- drive$ = MID$(DEST$, 1, 1)
- ndrive% = ASC(ucase$(drive$)) - ASC("A") + 1
- cost& = VAL(GetListItem(FILESNEED$, ndrive%)) + VAL(GetListItem(WINDOWSFILESNEED$,ndrive%)) + VAL(GetListItem(SYSTEMFILESNEED$,ndrive%)) + 1024000
-
- IF cost& < 0 THEN
- cost& = 0
- END IF
-
- free& = GetFreeSpaceForDrive(drive$)
- cost& = cost&
- ReplaceListItem DRIVETEXT$, 1, DEST$
- ReplaceListItem DRIVETEXT$, 2, STR$(cost& / 1024) + " K"
- ReplaceListItem DRIVETEXT$, 3, STR$(free& / 1024) + " K"
- ReplaceListItem DRIVETEXT$, 4, drive$ + ":"
-
- END SUB
-
-
-
- '**
- '** Purpose:
- '** Display a background bitmap
- '*************************************************************************
- SUB DoBackGround STATIC
- DLL$ = "cdw_cust.dll"
- stm$ = UIStartDlg(DLL$, SPLASHBB, "FModelessDlgProc", 0, "")
- END SUB
-
-
-
- '**
- '** Purpose:
- '** Compares dates of 2 files
- '** Arguments:
- '** szSource$ - date of file to be installed
- '** szDest$ - date of file already installed
- '** Returns:
- '** Filename with most recent date
- '*************************************************************************
- FUNCTION FileDate (szSource$, szDest$) STATIC AS STRING
-
- szSourceDate$ = GetDateOfFile(szSource$)
- szDestDate$ = GetDateOfFile(szDest$)
- szSourceDate$ = MID$(szSourceDate$,1,4) + MID$(szSourceDate$,6,2) + MID$(szSourceDate$,9,2)
- szSourceDate$ = szSourceDate$ + MID$(szSourceDate$, 12, 2) + MID$(szSourceDate$, 15, 2) + MID$(szSourceDate$, 18, 2)
- szDestDate$ = MID$(szDestDate$,1,4) + MID$(szDestDate$,6,2) + MID$(szDestDate$,9,2)
- szDestDate$ = szDestDate$ + MID$(szDestDate$, 12, 2) + MID$(szDestDate$, 15, 2) + MID$(szDestDate$, 18, 2)
-
- '' i% = DoMsgBox("In FileDate: SourceDate= "+szSourceDate$+" : DestDate= "+szDestDate$, "Debug Message", MB_OK)
- IF VAL(szSourceDate$) > VAL(szDestDate$) THEN
- FileDate = "Source"
- ELSEIF VAL(szSourceDate$) <= VAL(szDestDate$) THEN
- FileDate = "Dest"
- END IF
-
- END FUNCTION
-
-
-
- '**
- '** Purpose:
- '** Checks source file format (compressed or uncompressed)
- '** Arguments:
- '** szUncompName$ - Uncompressed file name
- '** szCompName$ - Compressed file name
- '** Returns:
- '** Name of existing source file
- '*************************************************************************
- FUNCTION FileName (szUncompName$, szCompName$) STATIC AS STRING
-
- fexist% = DoesFileExist(szUncompName$, femExists)
- IF fexist% = 1 THEN
- FileName = szUncompName$
- ELSE
- FileName = szCompName$
- END IF
-
- END FUNCTION
-