home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Anne Hooper's Ultimate Sex Guide
/
DKMMTUSG.iso
/
dksetup
/
dksetup.bak
< prev
next >
Wrap
Text File
|
1995-08-18
|
21KB
|
578 lines
''$DEFINE DEBUG
'^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
' TUSG (UK)
'
' uses VforW & Wing
'
' 18/08/95 rc and this have no min install. Changed dlg boxes custom,
' custom help and speed
'^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
'18/08/95 Register notes most recent lang used
'11/08/95 Register created using inf file
'26/07/95 Uninstall code added
'07/07/95 Correct dkgen.inc so unregisters use of ctl3d
'04/07/95 Make sure files in bin section of inf file 'always' overwrite
'28/07/95 Ini file not created for minimum install, uses file provided in dkcode
'27/06/95 Test for directory names max 8 chars
'26/06/95 For minimum install, ini file is now not installed
'19/06/95 Moved test for cirrus drivers to mst file as only applies to sampler
'05/06/95 Fonts installed on users machine
'01/06/95 No choice about adding icon to prog man, altered dkgen.inc & rc file
' (custom, customhelp & speed dlg boxes need changing)
'22/05/95 Code for bundling with sampler
'22/05/95 Large readme need Write (will need to change dlg box in rc file)
'15/05/95 No warning that directory does not exist
'03/05/95 Ini file put in executable directory rather than Windows dir to stop
' clash with foreign products with same name files
'$INCLUDE 'dkgen.inc'
'IF WITH SAMPLER ( add to .inf & dkcode ) + see add to prog man below
'CONST SAMPLER_PATH = "SAMPLER"
'CONST APPLICATION_MENU_FILE = "custmenu.exe"
'CONST APPLICATION_EXE2_FILE = "dksd2pc.exe"
'DECLARE FUNCTION TestForCirrus LIB "dkutils.dll" () As INTEGER
'IF USING SPECIFIC FONTS
'DECLARE FUNCTION InstallFont LIB "dkutils.dll" (szFont$) AS INTEGER
'DECLARE SUB UpdateFonts()
' Uninstall icon
CONST STR_UNINSTALL = "DKMM Uninstall"
CONST LANG_DLL = "Unlang.eng" 'will use as default if can't find dll to match window lang
' Paths and INI stuff
CONST APPLICATION_INI_FILE = "tusg.ini"
CONST APPLICATION_EXE_FILE = "tusg.exe"
CONST APPLICATION_PENGE_FILE = "tusg.png"
CONST INI_FILE_SOURCE = "AppPath" ' OR "WinPath"
CONST EDITOR_EXE = "write.exe " 'OR "notepad.exe "
' Language dependant strings
CONST APPLICATION_README_FILE = "readme.wri"
CONST STR_README = "The Ultimate Sex Guide Read Me"
CONST STR_MSGCAPTION = "The Ultimate Sex Guide Setup"
CONST STR_PRODUCTNAME = "The Ultimate Sex Guide"
CONST DEFAULT_INSTALL_PATH = "\DKMM\TUSG"
DECLARE SUB CreateReg()
DECLARE SUB Install()
DECLARE SUB AddFilesToCopyList(szInstallType$)
DECLARE FUNCTION IsCDROMDrive LIB "dkutils.dll" (wDrive%) As INTEGER
DECLARE FUNCTION DeleteFiles LIB "dkutils.dll" (szDiffPath$, szProdName$, szDKREgIni$) AS INTEGER
DECLARE FUNCTION DeleteDir LIB "dkutils.dll" (szDiffPath$) AS INTEGER
DECLARE FUNCTION DeleteSection LIB "dkutils.dll" (szProdName$, szDKREgIni$) AS INTEGER
Init:
Initialise STR_PRODUCTNAME, DEFAULT_INSTALL_PATH, STR_MSGCAPTION
WelcomeDlg:
if Welcome() = NAV_BACK then
' Don nothing - cant go back
end if
if TestSystem() = NAV_BACK then
goto WelcomeDlg
end if
' dButton = DoMsgBox( "Minimum install disabled", STR_MSGCAPTION, MB_OK)
'IF WITH SAMPLER
'TestCirrus:
' if TestForCirrus() = 1 then
' dButton = DoMsgBox(STR_CIRRUS, szMsgCaption$, MB_OK+MB_TASKMODAL+MB_ICONINFORMATION)
' end if
'IF EARLIER PRODS WITH NO SAMPLER
' UpdateADPCMDrivers
ExpressCustomDlg:
' defaults to Express
'if szExpressCustomChoice = "EXPRESS" then
' SetSymbolValue "RadioDefault", "1"
'else
' SetSymbolValue "RadioDefault", "1"
'end if
ECDlgLoop:
szButton = UIStartDlg(CUIDLL_FILENAME, IDD_SPEED, "FRadioDlgProc", IDD_WHIZZHELP, PROC_HELP)
select case szButton
case "REACTIVATE"
goto ECDlgLoop
case "BACK"
UIPop 1
goto WelcomeDlg
case "CONTINUE" ' Install
UIPop 1
if GetSymbolValue("ButtonChecked") = "1" then
szExpressCustomChoice = "EXPRESS"
goto ExpressInstallLoop
else
szExpressCustomChoice = "CUSTOM"
goto CustomInstallLoop
end if
case "EXIT"
AskQuit
goto ECDlgLoop
end select
CustomInstallLoop:
GetPathDlg:
SetSymbolValue "EditTextIn", szDestPath
szOldDestPath = szDestPath
SetSymbolValue "EditFocus", "ALL"
GetPathDlgLoop:
szButton = UIStartDlg(CUIDLL_FILENAME, IDD_DESTPATH, "FEditDlgProc", IDD_PATHHELP, PROC_HELP)
select case szButton
case "REACTIVATE"
goto GetPathDlgLoop
case "BACK"
UIPop 1
szDestPath = szOldDestPath
goto ECDlgLoop
case "CONTINUE"
UIPop 1
szDestPath = GetSymbolValue("EditTextOut")
if mid$(szDestPath, 2, 1) = ":" and mid$(szDestPath, 3, 1) <> "\" then
szTemp$ = mid$(szDestPath, 1, 2) + "\" + mid$(szDestPath, 3, len(szDestPath)-2)
szDestPath = szTemp
end if
if mid$(szDestPath, 2, 1) <> ":" then
if mid$(szDestPath, 1,1) <> "\" then
szDestPath = mid$(szWinPath, 1,1) + ":\" + szDestPath
else
szDestPath = mid$(szWinPath, 1,1) + ":" + szDestPath
end if
elseif IsDriveValid(mid$(szDestPath, 1,1)) = 0 then
szDestPath = szOldDestPath
UIPop 1
BadPath
goto GetPathDlg
end if
' check for "foreign" chars in path
slength% = len(szDestPath)
found% = 0
for i% = 1 to slength%
if asc(mid$(szDestPath, i%, 1)) > 126 then
found% = 1
end if
next i%
if found% = 1 then
szDestPath = szOldDestPath
UIPop 1
BadPath
goto GetPathDlg
end if
wDrive% = asc(mid$(szDestPath, 1,1)) - asc("A")
if IsCDROMDrive(wDrive%) > 0 then
szDestPath = szOldDestPath
UIPop 1
BadPath
goto GetPathDlg
end if
if IsDriveNetwork(mid$(szDestPath,1,1)) = 1 then
szDestPath = szOldDestPath
UIPop 1
NetworkDrive
goto GetPathDlg
end if
if IsDirWritable(szDestPath) = 0 then
szDestPath = szOldDestPath
UIPop 1
BadPath
goto GetPathDlg
end if
'check dir names not > 8 chars
dirlength% = 0
i% = 3
while i% <> slength%
i% =i%+1
dirlength% = dirlength% +1
if mid$(szDestPath, i%, 1)="\" then
if dirlength% > 9 then
szDestPath = szOldDestPath
dButton = DoMsgBox( STR_DIRTOOLONG, STR_MSGCAPTION, MB_OK+MB_TASKMODAL+MB_ICONHAND)
goto GetPathDlg
else
dirlength% = 0
endif
end if
wend
if dirlength% > 8 then
szDestPath = szOldDestPath
dButton = DoMsgBox( STR_DIRTOOLONG, STR_MSGCAPTION, MB_OK+MB_TASKMODAL+MB_ICONHAND)
goto GetPathDlg
endif
' if DoesDirExist(szDestPath) = 0 then
' dButton = DoMsgBox( STR_DIRNOTEXIST, STR_MSGCAPTION, MB_OK+MB_TASKMODAL+MB_ICONHAND)
' if dButton = 7 then
' goto GetPathDlg
' end if
' end if
UIPop 1
case "EXIT"
AskQuit
goto GetPathDlg
end select
GetCustomChoicesDlg:
SetSymbolValue "CheckItemsState", ""
' AddListItem "CheckItemsState", szMinimalInstall
' AddListItem "CheckItemsState", szAddPMItem
GetCustomChoicesLoop:
ClearCopyList
' if szMinimalInstall = "OFF" then
AddFilesToCopyList "FULL"
' else
' AddFilesToCopyList "MINIMAL"
' end if
dDestDrive = asc(mid$(szDestPath, 1,1)) - asc("A")+1
dWinDrive = asc(mid$(szWinPath, 1,1)) - asc("A")+1
SetSymbolValue "DriveStatus