home *** CD-ROM | disk | FTP | other *** search
Text File | 1997-07-18 | 38.1 KB | 1,258 lines |
- '**************************************************************************
- '* MSSetup - Moja Firma 6.2
- '**************************************************************************
-
- '$DEFINE DEBUG ''Define for script development/debugging
-
- '$INCLUDE 'setupapi.inc'
- '$INCLUDE 'msdetect.inc'
-
- ''Wersja i wydanie
- CONST AWER$ = "6.2"
- CONST AWYD% = 40
-
- ''Dialog ID's
- CONST NETINSDLG = 100
- CONST ASKQUIT = 200
- CONST MYASKQUIT = 201
- CONST ASKUPGRADE = 202
- CONST ASKNEW = 203
- CONST DESTPATH = 300
- CONST EXCELPATH = 301
- CONST NETSRWPATH = 302
- CONST EXITFAILURE = 400
- CONST EXITQUIT = 600
- CONST EXITSUCCESS = 700
- CONST OPTIONS = 800
- CONST ADD_INS = 2500
-
- CONST APPHELP = 900
- CONST OPT1HELP = 901
- CONST OPT2HELP = 902
- CONST PATHHELP = 903
- CONST EXCELPATHHELP= 904
- CONST REGHELP = 905
- CONST UPGRHELP = 906
- CONST NEWHELP = 907
- CONST NETINSHELP = 908
- CONST NETPATHHELP = 909
-
- CONST CUSTINST = 6200
- CONST NETCUSTINST1 = 6201
- CONST NETCUSTINST2 = 6202
- CONST CUSTINST_UP = 6210
- CONST TOOBIG = 6301
- CONST BADPATH = 6400
- CONST BADEXPATH = 6401
- CONST NOEXPATH = 6402
- CONST BADNETPATH = 6403
- CONST NONETPATH = 6404
- CONST NOUPGRADE = 6407
- CONST UPGRADEONLY = 6408
- CONST CDGETNAMEORG = 7500
- CONST CDPERSON = 7600
- CONST NAMEALERT = 7700
- CONST EXCELALERT = 7701
- CONST FINDFILE = 7702
- CONST PERSONALERT = 7703
-
- CONST SCREEN1 = 8001
- CONST SCREEN2 = 8002
- CONST SCREEN3 = 8003
- CONST SCREEN4 = 8004
- CONST SCREEN5 = 8005
- CONST SCREEN6 = 8006
-
- ''Bitmap ID
- CONST LOGO = 1
-
- ''File Types
- CONST APPFILES = 1
- CONST OPTFILES1 = 2
- CONST OPTFILES2 = 3
-
- GLOBAL DEST$ ''Default destination directory.
- GLOBAL EXPATH$
- GLOBAL NETPATH$
- GLOBAL WINDRIVE$ ''Windows drive letter.
- GLOBAL NETDRIVELST$ ''Network drive list
- GLOBAL NETDRIVE$ ''Network drive letter.
- GLOBAL WINDIR$
- GLOBAL WINSYSDIR$
- GLOBAL NETOPT$ ''Rodzaj instalacji sieciowej
- GLOBAL OPT1OPT$ ''Option selection from OptFiles1 option dialog.
- GLOBAL OPT2OPT$ ''Option selection from OptFiles2 option dialog.
-
- GLOBAL UPGR$ ''Upgrade yes/no
- GLOBAL UPGRT% ''Upgrade type
- GLOBAL WER$ ''Wersja aktualna
- GLOBAL WYD% ''Wydanie aktualne
- GLOBAL UWYD% ''Wydanie poprzednie
- GLOBAL FIR$ ''Czy juº jest Firma
-
- ''CustInst list symbol names
- GLOBAL APPNEEDS$ ''Option list costs per drive
- GLOBAL OPT1NEEDS$
- GLOBAL OPT2NEEDS$
- GLOBAL EXTRACOSTS$ ''List of extra costs to add per drive
- GLOBAL BIGLIST$ ''List of option files cost calc results (boolean)
-
- ''Dialog list symbol names
- GLOBAL CHECKSTATES$
- GLOBAL STATUSTEXT$
- GLOBAL DRIVETEXT$
-
- GLOBAL in_CHECKSTATES$
- GLOBAL ou_CHECKSTATES$
- CONST Add_Ins_No = 4
-
-
- DECLARE SUB AddOptFilesToCopyList (ftype%)
- DECLARE SUB RecalcOptFiles (ftype%)
- DECLARE SUB RecalcPath
- DECLARE SUB SetDriveStatus
- DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
-
-
- '*** Romek
-
- CONST WS_VISIBLE = &H10000000
- CONST WS_BORDER = &H00800000
- CONST WS_CLIPCHILDREN = &H02000000
- CONST GWL_STYLE = -16
- CONST SW_SHOWMAXIMIZED = 3
-
- GLOBAL USERNAME$ ''User name
- GLOBAL COMPANY$ ''Company
- GLOBAL PERSON$ ''Osoba
- GLOBAL hWnd1%
-
- DECLARE FUNCTION ShowWindow LIB "user.exe" (hWnd%, iShow%) AS INTEGER
- DECLARE FUNCTION SetWindowLong LIB "user.exe" (hWnd%, offset%, style&) AS LONG
- DECLARE FUNCTION GetDialogBaseUnits LIB "user.exe" AS LONG
- DECLARE FUNCTION WinHelp LIB "user.exe" (hWnd%, szPlik$, iCmd%, temat&) AS INTEGER
-
-
- DECLARE FUNCTION LoadLibrary LIB "kernel" (szMod$) AS INTEGER
- DECLARE SUB FreeLibrary LIB "kernel" (hinst%)
- DECLARE SUB SetErrorMode LIB "krnl386.exe" (fuerrormode%)
-
- '***
-
-
-
- INIT:
- WER$=AWER$
- WYD%=AWYD%
- UPGR$ = "NIE"
- UPGRT% = 0
- SetErrorMode(32768)
- hinst1% = LoadLibrary("BWCC.DLL")
-
- CUIDLL$ = "mscuistf.dll" ''custom user interface dll
- HELPPROC$ = "FHelpDlgProc" ''Help dialog procedure
-
- '*** Romek
- hWnd1% = HwndFrame()
- k& = SetWindowLong(hWnd1%, GWL_STYLE, WS_VISIBLE+WS_BORDER+WS_CLIPCHILDREN)
- j% = ShowWindow(hWnd1%,SW_SHOWMAXIMIZED)
- WINSYSDIR$ = GetWindowsSysDir()
- WINDIR$ = GetWindowsDir()
- '***
-
- SetBitmap CUIDLL$, LOGO
- SetTitle "Program Instalacyjny"
-
- szInf$ = GetSymbolValue("STF_SRCINFPATH")
- IF szInf$ = "" THEN
- szInf$ = GetSymbolValue("STF_CWDDIR") + "MF6.INF"
- END IF
- ReadInfFile szInf$
-
- ''CustInst list symbols
- CHECKSTATES$ = "CheckItemsState"
- STATUSTEXT$ = "StatusItemsText"
- DRIVETEXT$ = "DriveStatusText"
- FOR i% = 1 TO 3 STEP 1
- AddListItem CHECKSTATES$, "ON"
- NEXT i%
- FOR i% = 1 TO 3 STEP 1
- AddListItem STATUSTEXT$, ""
- NEXT i%
-
- FOR i% = 1 TO 7 STEP 1
- AddListItem DRIVETEXT$, ""
- NEXT i%
-
- ''Disk cost list symbols
- APPNEEDS$ = "AppNeeds"
- OPT1NEEDS$ = "Opt1Needs"
- OPT2NEEDS$ = "Opt2Needs"
- EXTRACOSTS$ = "ExtraCosts"
- BIGLIST$ = "BigList"
- FOR i% = 1 TO 3 STEP 1
- AddListItem BIGLIST$, ""
- NEXT i%
- FOR i% = 1 TO 26 STEP 1
- AddListItem EXTRACOSTS$, "0"
- NEXT i%
-
- ''Rodzaj instalacji sieciowej
- NETOPT$ = "1"
-
- ''File Option Variables
- OPT1OPT$ = "1"
- OPT2OPT$ = "1"
-
-
- in_CHECKSTATES$ = "CheckItemsIn"
- ou_CHECKSTATES$ = "CheckItemsOut"
-
- FOR i% = 1 TO Add_Ins_No STEP 1
- AddListItem in_CHECKSTATES$, "ON"
- NEXT i%
- ReplaceListItem in_CHECKSTATES$, 4, "OFF"
-
- FOR i% = 1 TO Add_Ins_No STEP 1
- AddListItem ou_CHECKSTATES$, "ON"
- NEXT i%
- ReplaceListItem ou_CHECKSTATES$, 4, "OFF"
-
- 'rejestracja
- USERNAME$ = ""
- COMPANY$ = ""
- SetSymbolValue "NameIn", USERNAME$
- SetSymbolValue "OrgIn", COMPANY$
-
- ini$ = MakePath(GetSymbolValue("STF_SRCDIR"), "SETUP.INI")
- ' i% = DoMsgBox("Ini: "+ini$, "Setup Message", MB_OK+MB_TASKMODAL+MB_ICONHAND)
- IF ((DoesFileExist(ini$, femExists) = 1) AND (DoesIniSectionExist(ini$, "Program") = 1)) THEN
- USERNAME$ = GetIniKeyString(ini$, "Program", "Nazwisko")
- END IF
- IF ((DoesFileExist(ini$, femExists) = 1) AND (DoesIniSectionExist(ini$, "Program") = 1)) THEN
- COMPANY$ = GetIniKeyString(ini$, "Program", "Firma")
- END IF
- IF ((COMPANY$ = "") OR (USERNAME$ = "")) THEN
- GOSUB REGISTRATION
- CreateIniKeyValue ini$, "Program", "Firma", COMPANY$ , cmoNone
- CreateIniKeyValue ini$, "Program", "Nazwisko", USERNAME$ , cmoNone
- END IF
-
- ''Scie╛ka sieciowa
- NETPATH$=""
- ''Rodzaj instalacji sieciowej
- NETOPT$ = "0"
-
- ''Upgrade PIT5
- ''===================================================================
- PLUS% = 0
-
- ''Instalowanie w sieci
- ''===================================================================
- GOTO SEARCH
-
- sz$ = GetSymbolValue("STF_MODE")
- IF sz$ = "NETWORK" THEN
-
- NETDRIVE$=""
- NETDRIVELST$ = "NDriveList"
- FOR i% = 1 TO 5 STEP 1
- AddListItem NETDRIVELST$, ""
- NEXT i%
-
- GetNetworkDrivesList(NETDRIVELST$)
- IF GetListItem(NETDRIVELST$, 1) <> "" THEN
- NETDRIVE$=GetListItem(NETDRIVELST$, 1)
- ELSE
- NETDRIVE$=WINDRIVE$
- END IF
-
- NETOPT$ = "1"
- NETINS:
- SetSymbolValue "RadioDefault", NETOPT$
- NETINS1:
- sz$ = UIStartDlg(CUIDLL$, NETINSDLG, "FRadioDlgProc", NETINSHELP, HELPPROC$)
- newopt$ = GetSymbolValue("ButtonChecked")
-
- IF sz$ = "CONTINUE" THEN
- UIPop 1
- IF newopt$ <> NETOPT$ THEN
- NETOPT$ = newopt$
- END IF
- newopt$ = ""
- ELSEIF sz$ = "REACTIVATE" THEN
- GOTO NETINS1
- ELSEIF sz$ = "EXIT" THEN
- GOSUB ASKQUIT
- GOTO NETINS1
- ELSE
- UIPop 1
- newopt$ = ""
- END IF
- END IF
- ''===================================================================
-
- SEARCH:
- 'wy£wietlam okno z szukaniem
- sz$ = UIStartDlg(CUIDLL$, FINDFILE, "FModelessDlgProc", 0, "")
-
- WINDRIVE$ = UCASE$(MID$(GetWindowsDir, 1, 1))
-
- '** Szukam MF - _stub.xlm
- '===========================================
- DEST$ = FindFileInTree("_STUB.XLM","C:\FIRMA97")
- IF DEST$="" THEN 'Nie ma Mojej Firmy
- DEST$ = WINDRIVE$+":\FIRMA97"
- FIR$ = "NIE"
- ELSE
- DEST$ = MID$(DEST$, 1, LEN(DEST$)-10) 'Jest Moja Firma
- FIR$ = "TAK"
- END IF
-
- '** Szukam MF na serwerze - _stub.xlm
- '===========================================
- IF NETOPT$="2" THEN
- NETPATH$ = FindFileInTree("_STUB.XLM",NETDRIVE$+":\")
- IF NETPATH$="" THEN 'Nie ma Mojej Firmy97
- NETPATH$ = NETDRIVE$+":\FIRMA97"
- ELSE
- NETPATH1$ = MID$(NETPATH$, 1, LEN(NETPATH$)-10)
- NETPATH$ = FindFileInTree("FIR_PROG.XLM",NETPATH1$)
- IF NETPATH$="" THEN
- NETPATH$ = NETPATH1$
- ELSE
- NETPATH$ = MID$(NETPATH$, 1, LEN(NETPATH$)-10)
- END IF
- END IF
- END IF
-
- '** Szukam Excela
- '================
- EXPATH$ = FindFileInTree("EXCEL.EXE",WINDRIVE$+":\")
- IF EXPATH$="" THEN
- ' GOSUB NOEXCEL
- ' EXPATH$ = ""
- ELSE
- EXPATH$ = MID$(EXPATH$, 1, LEN(EXPATH$)-10)
- END IF
-
- RecalcPath
- SetDriveStatus
-
- '$IFDEF DEBUG
- i% = SetSizeCheckMode(scmOnIgnore) '' could use scmOff; def = scmOnFatal
- '$ENDIF ''DEBUG
-
- UIPop 1 'Ko±czΩ przeszukiwanie dysku
-
- AddListItem STATUSTEXT$, EXPATH$ 'dodajΩ £cie┐kΩ do Excela (nr 544 w oknie 6200)
- AddListItem STATUSTEXT$, "" 'dodajΩ dodatkowy tekst nr 545 w oknie 202 i 203 (do upgrade)
- AddListItem STATUSTEXT$, NETPATH$ 'dodajΩ dodatkowy tekst nr 546 w oknie 6201)
- ReplaceListItem DRIVETEXT$, 7, DEST$
-
- GOSUB GET_UPGRADE_TYPE
-
- RecalcPath
- SetDriveStatus
-
- CUSTINST:
- '================= CUSTINST starts =====================
- IF ((UPGRT%=2) OR (UPGRT%=1) OR (UPGRT%=4)) THEN
- cdlg_up=10 'dialog tylko dla nowych szablonów
- ELSE
- cdlg_up=0 'normalny dialog z szablonami
- END IF
-
- cdlg =VAL(NETOPT$)
-
- sz$ = UIStartDlg(CUIDLL$, CUSTINST+cdlg+cdlg_up, "FCustInstDlgProc", APPHELP, HELPPROC$)
-
- IF sz$ = "CONTINUE" THEN
- IF EXPATH$="" THEN
- GOSUB NOEXPATH 'Nie ma Excela
- GOTO CUSTINST
- END IF
- IF (NOT (DoesFileExist(MakePath(EXPATH$, "excel.exe"),femExists) = 1)) THEN
- GOSUB BADEXPATH 'Z│y katalog Excela
- GOTO CUSTINST
- END IF
-
- IF NETOPT$ = "2" THEN
- IF NETPATH$="" THEN
- GOSUB NONETPATH 'Nie ma Firmy na serwerze
- GOTO CUSTINST
- END IF
- IF (NOT (DoesFileExist(MakePath(NETPATH$, "_STUB.XLM"),femExists) = 1)) THEN
- GOSUB BADNETPATH 'Z│y katalog Firmy na serwerze
- GOTO CUSTINST
- ELSEIF (NOT (DoesFileExist(MakePath(NETPATH$, "FIR_PROG.XLM"),femExists) = 1)) THEN
- GOSUB BADNETPATH 'Z│y katalog Firmy na serwerze
- GOTO CUSTINST
- END IF
- END IF
-
- FOR i% = 1 TO 3 STEP 1
- IF GetListItem(BIGLIST$, i%) <> "" THEN
- GOSUB TOOBIG 'Install only if it will fit.
- GOTO CUSTINST
- END IF
- NEXT i%
-
- IF (FIR$ = "TAK") THEN 'jest Firma - wtedy upgrade
- chk1$=GetListItem(CHECKSTATES$, 1) 'odczytujæ stan okna
- IF NETOPT$ <> "2" THEN
- chk2$=GetListItem(CHECKSTATES$, 2)
- chk3$=GetListItem(CHECKSTATES$, 3)
- END IF
- GOSUB UPGRADE
- AddListItem CHECKSTATES$, chk1$ 'odtwarzam stan okna
- IF NETOPT$ <> "2" THEN
- AddListItem CHECKSTATES$, chk2$
- AddListItem CHECKSTATES$, chk3$
- END IF
- IF (UPGR$ = "NIE") THEN
- GOTO CUSTINST
- END IF
- END IF
-
- 'dodatek do upgradu starts =====================================================
- IF ((PLUS%=1) and (FIR$ = "NIE")) THEN
- GOSUB UPGRADEONLY
- GOTO CUSTINST
- END IF
- 'dodatek do upgradu ends =======================================================
-
- UIPop 1
- GOTO INSTALL 'no... mogΩ instalowaµ
-
- ELSEIF sz$ = "PATH" THEN 'zmieniam katalog programu
- GOTO GETPATH
- ELSEIF sz$ = "CHK1" THEN 'zaznaczam program
- RecalcOptFiles APPFILES
- SetDriveStatus
- GOTO CUSTINST
- ELSEIF sz$ = "CHK2" THEN 'zaznaczam dodatki
- RecalcOptFiles OPTFILES1
- SetDriveStatus
- GOTO CUSTINST
- ELSEIF sz$ = "CHK3" THEN 'zaznaczam szablony
- RecalcOptFiles OPTFILES2
- SetDriveStatus
- GOTO CUSTINST
- ELSEIF sz$ = "BTN2" THEN 'dialog dodatki
- GOTO OPTFILES1
- ELSEIF sz$ = "BTN3" THEN 'dialog szablony
- GOTO OPTFILES2
- ELSEIF sz$ = "BTN4" THEN 'zmieniam katalog Excela
- GOTO GETEXPATH
- ELSEIF sz$ = "BTN6" THEN 'zmieniam katalog Firmy na serwerze
- GOTO GETNETPATH
- ELSEIF sz$ = "BTN8" THEN 'pomoc
-
- 'pamiΩtaj ============================================================
- ' j%=Winhelp(hWnd1%,"setup.hlp",3,0) 'help index
- ' j%=Winhelp(hWnd1%,"setup.hlp",2,0) 'quit help
- ' j%=Winhelp(hWnd1%,"setup.hlp>gloss",1,nr) 'temat nr
- '=====================================================================
-
- IF NETOPT$ = "0" THEN
- j% = Winhelp(hWnd1%,"setup.hlp>gloss",1,1) 'temat 1
- ELSE
- j% = Winhelp(hWnd1%,"setup.hlp>gloss",1,6) 'temat 6
- END IF
- GOTO CUSTINST
-
- ELSEIF sz$ = "REACTIVATE" THEN
- RecalcPath
- SetDriveStatus
- GOTO CUSTINST
- ELSE
- GOSUB ASKQUIT
- GOTO CUSTINST
- END IF
- '================= CUSTINST ends ======================
-
- INSTALL:
- '================= Install starts ======================
- ClearCopyList
- AddOptFilesToCopyList APPFILES
-
- IF NETOPT$ <> "2" THEN
- AddOptFilesToCopyList OPTFILES1
- AddOptFilesToCopyList OPTFILES2
- DESTARK$ = MakePath(DEST$,"ARKUSZE")
- DESTSZA$ = MakePath(DEST$,"SZABLONY")
- DESTTRN$ = MakePath(DEST$,"TRN")
- DESTINN$ = MakePath(DEST$,"INNE")
- ELSE
- DESTARK$ = MakePath(NETPATH$,"ARKUSZE")
- DESTSZA$ = MakePath(NETPATH$,"SZABLONY")
- DESTTRN$ = MakePath(NETPATH$,"TRN")
- END IF
-
- DESTBRI$ = UCASE$(WINDIR$)
- IF MID$(DESTBRI$, LEN(DESTBRI$), 1) = "\" THEN
- DESTBRI$ = MID$(DESTBRI$, 1, LEN(DESTBRI$)-1)
- END IF
-
- CreateDir DEST$, cmoNone
- IF NETOPT$ <> "2" THEN
- CreateDir DESTARK$, cmoNone
- CreateDir DESTSZA$, cmoNone
- CreateDir DESTTRN$, cmoNone
- CreateDir DESTINN$, cmoNone
- IF UPGRT%=2 THEN
- CreateDir MakePath(DESTSZA$,"SZABLONY.SAV"), cmoNone
- IF (DoesFileExist(MakePath(DESTSZA$, "DSBR_00.XLS"), femExists) = 1) THEN
- RenameFile MakePath(DESTSZA$,"DSBR_00.XLS"), "SZABLONY.SAV\DSBR_40.XLS"
- END IF
- IF (DoesFileExist(MakePath(DESTSZA$, "DKFA_N0.XLS"), femExists) = 1) THEN
- RenameFile MakePath(DESTSZA$,"DKFA_N0.XLS"), "SZABLONY.SAV\DKFA_N4.XLS"
- END IF
- IF (DoesFileExist(MakePath(DESTSZA$, "DKFA_B0.XLS"), femExists) = 1) THEN
- RenameFile MakePath(DESTSZA$,"DKFA_B0.XLS"), "SZABLONY.SAV\DKFA_B4.XLS"
- END IF
- IF (DoesFileExist(MakePath(DESTSZA$, "DKRA_N0.XLS"), femExists) = 1) THEN
- RenameFile MakePath(DESTSZA$,"DKRA_N0.XLS"), "SZABLONY.SAV\DKRA_N4.XLS"
- END IF
- IF (DoesFileExist(MakePath(DESTSZA$, "DKRA_B0.XLS"), femExists) = 1) THEN
- RenameFile MakePath(DESTSZA$,"DKRA_B0.XLS"), "SZABLONY.SAV\DKRA_B4.XLS"
- END IF
- END IF
- 'Zmieniam nazwe zestawienia podatku i usuwam stare deklaracje ------------
- IF ((UPGRT%=1) or (UPGRT%=2) or (UPGRT%=4)) THEN
- CreateDir MakePath(DESTSZA$,"SZABLONY.SAV"), cmoNone
- IF (DoesFileExist(MakePath(DESTSZA$, "LPL_00.XLS"), femExists) = 1) THEN
- RenameFile MakePath(DESTSZA$,"LPL_00.XLS"), "SZABLONY.SAV\LPL_61.XLS"
- END IF
- FOR i% = 1 TO 9 STEP 1
- nr$=MID$(str$(i%),2,LEN(str$(i%))-1)
- RemoveFile MakePath(DESTARK$,"PIT5_0"+nr$+"_.XLS"), cmoNone
- IF (DoesFileExist(MakePath(DESTARK$, "ZEST_P0"+nr$+".XLS"), femExists) = 1) THEN
- RenameFile MakePath(DESTARK$,"ZEST_P0"+nr$+".XLS"), "ZEST_X0"+nr$+".XLS"
- END IF
- IF (DoesFileExist(MakePath(DESTARK$, "ZEST_R0"+nr$+".XLS"), femExists) = 1) THEN
- RenameFile MakePath(DESTARK$,"ZEST_R0"+nr$+".XLS"), "ZEST_Y0"+nr$+".XLS"
- END IF
- NEXT i%
- RemoveFile MakePath(DESTARK$,"PIT5_10_.XLS"), cmoNone
- IF (DoesFileExist(MakePath(DESTARK$, "ZEST_P10.XLS"), femExists) = 1) THEN
- RenameFile MakePath(DESTARK$,"ZEST_P10.XLS"), "ZEST_X10.XLS"
- END IF
- END IF
- '-------------------------------------------------------------------------
-
- END IF
-
- ClearBillboardList
- IF NETOPT$ <> "2" THEN
- AddToBillboardList CUIDLL$, SCREEN1, "FModelessDlgProc", 1
- AddToBillboardList CUIDLL$, SCREEN2, "FModelessDlgProc", 1
- AddToBillboardList CUIDLL$, SCREEN3, "FModelessDlgProc", 1
- AddToBillboardList CUIDLL$, SCREEN4, "FModelessDlgProc", 1
- AddToBillboardList CUIDLL$, SCREEN5, "FModelessDlgProc", 1
- END IF
- AddToBillboardList CUIDLL$, SCREEN6, "FModelessDlgProc", 1
-
- ht% = GetScreenHeight()
- htunit% = ((GetDialogBaseUnits() AND &HFFFF0000))/&HFFFF
- SetCopyGaugePosition -1, (8*((ht*3)/4))/htunit
-
- CopyFilesInCopyList
-
- GOSUB PERSONALIZE
-
- IF GetListItem(CHECKSTATES$, APPFILES) = "ON" THEN
-
- ini$ = MakePath(DEST$, "FIR.INI")
- CreateIniKeyValue ini$, "Excel", "Sciezka", EXPATH$ , cmoOverwrite
- CreateIniKeyValue ini$, "Program", "Wersja", WER$ , cmoOverwrite
- CreateIniKeyValue ini$, "Program", "Wydanie", STR$(WYD%) , cmoOverwrite
- CreateIniKeyValue ini$, "Program", "BRIT_LIB", DESTBRI$ , cmoOverwrite
- CreateIniKeyValue ini$, "Program", "Firma", PERSON$ , cmoOverwrite
-
- IF UPGRT%=2 THEN
- CreateIniKeyValue ini$, "Program", "Upgrade41", "Tak" , cmoOverwrite
- ELSE
- CreateIniKeyValue ini$, "Program", "Upgrade41", "" , cmoOverwrite
- END IF
-
- IF NETOPT$ <> "2" THEN
- CreateIniKeyValue ini$, "Program", "Program", DEST$ , cmoOverwrite
- CreateIniKeyValue ini$, "Program", "Arkusze", DESTARK$ , cmoOverwrite
- CreateIniKeyValue ini$, "Program", "Szablony", DESTSZA$ , cmoOverwrite
- CreateIniKeyValue ini$, "Program", "Transakcje", DESTTRN$ , cmoOverwrite
- CreateIniKeyValue ini$, "Program", "UpgradePlus", "" , cmoOverwrite
- ELSE
- CreateIniKeyValue ini$, "Program", "Program", NETPATH$ , cmoOverwrite
- CreateIniKeyValue ini$, "Program", "Arkusze", DESTARK$ , cmoOverwrite
- CreateIniKeyValue ini$, "Program", "Szablony", DESTSZA$ , cmoOverwrite
- CreateIniKeyValue ini$, "Program", "Transakcje", DESTTRN$ , cmoOverwrite
- END IF
-
- IF NETOPT$ <> "0" THEN
- CreateIniKeyValue ini$, "Program", "Siec", "Tak" , cmoOverwrite
- ELSE
- RemoveIniKey ini$, "Program", "Siec", cmoAll
- END IF
-
- RemoveIniKey ini$, "Program", "Nazwisko", cmoAll
- RemoveIniKey ini$, "Program", "Produkcja", cmoAll
- RemoveIniKey ini$, "Program", "Apteka", cmoAll
- RemoveIniKey ini$, "Program", "Faktura eksportowa", cmoAll
-
- CreateProgmanGroup "Moja Firma 97", "", cmoNone
- ShowProgmanGroup "Moja Firma 97", 1, cmoNone
- CreateProgmanItem "Moja Firma 97", "MF97 Program", MakePath(DEST$,"MF6.EXE"), "", cmoOverwrite
-
- IF NETOPT$ <> "2" THEN
- CreateProgmanItem "Moja Firma 97", "PodrΩczna pomoc ", "winhelp.exe "+MakePath(DEST$,"fir.hlp"), "", cmoOverwrite
- CreateProgmanItem "Moja Firma 97", "Pomoc prawna", "winhelp.exe "+MakePath(DEST$,"ppr.hlp"), "", cmoOverwrite
- END IF
-
- END IF
- '================= Install ends ======================
-
- QUIT:
- ON ERROR GOTO ERRQUIT
-
- IF ERR = 0 THEN
- dlg% = EXITSUCCESS
- RemoveFile MakePath(DEST$,"fir_ip.ico"), cmoNone
- RemoveFile MakePath(DEST$,"fir_ih.ico"), cmoNone
- RemoveFile MakePath(DEST$,"fir_lgot.xls"), cmoNone
- RemoveFile MakePath(DEST$,"fir_lgov.xls"), cmoNone
- RemoveFile MakePath(DEST$,"mf4.bmp"), cmoNone
- RemoveFile MakePath(DEST$,"mf4a.bmp"), cmoNone
- RemoveFile MakePath(DEST$,"mf4.exe"), cmoNone
- RemoveFile MakePath(DEST$,"fir_upgr.xlm"), cmoNone
- RemoveFile MakePath(DEST$,"upgr_1.xls"), cmoNone
- RemoveFile MakePath(DEST$,"upgr_1.xlm"), cmoNone
- IF NETOPT$ <> "2" THEN
- END IF
- 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
- j% = Winhelp(hWnd1%,"setup.hlp",2,0) 'quit help
- FreeLibrary (hinst1%)
- END
-
- ERRQUIT:
- i% = DoMsgBox("Setup sources were corrupted, call 555-1212!", "Setup Message", MB_OK+MB_TASKMODAL+MB_ICONHAND)
- END
-
- ''Koniec instalowania ======================================================
-
- GETPATH:
- SetSymbolValue "EditTextIn", DEST$
- SetSymbolValue "EditFocus", "END"
- GETPATHL1:
- sz$ = UIStartDlg(CUIDLL$, DESTPATH, "FEditDlgProc", PATHHELP, HELPPROC$)
-
- IF sz$ = "CONTINUE" THEN
- olddest$ = DEST$
- DEST$ = GetSymbolValue("EditTextOut")
-
- ''Validate new path.
- IF IsDirWritable(DEST$) = 0 THEN
- GOSUB BADPATH
- GOTO GETPATHL1
- END IF
- UIPop 1
-
- destf$ = FindFileInTree("_STUB.XLM",DEST$)
- IF destf$="" THEN 'Nie ma Mojej Firmy
- FIR$ = "NIE"
- ELSE
- FIR$ = "TAK"
- END IF
-
- GOSUB GET_UPGRADE_TYPE
-
- ''Truncate display if too long.
- IF LEN(DEST$) > 23 THEN
- ReplaceListItem DRIVETEXT$, 7, MID$(DEST$, 1, 23)+"..."
- ELSE
- ReplaceListItem DRIVETEXT$, 7, DEST$
- END IF
-
- ''Recalc if path changed.
- IF (olddest$ <> DEST$) AND (olddest$ <> DEST$+"\") AND (olddest$+"\" <> DEST$) THEN
- RecalcPath
- SetDriveStatus
- END IF
-
- olddest$ = ""
- GOTO CUSTINST
- ELSEIF sz$ = "REACTIVATE" THEN
- RecalcPath
- SetDriveStatus
- GOTO GETPATHL1
- ELSEIF sz$ = "EXIT" THEN
- GOSUB ASKQUIT
- GOTO GETPATHL1
- ELSE
- UIPop 1
- GOTO CUSTINST
- END IF
- '============ GETPATH: ends ===============
-
- GETEXPATH:
- SetSymbolValue "EditTextIn", EXPATH$
- SetSymbolValue "EditFocus", "END"
- GETEXPATHL1:
- sz$ = UIStartDlg(CUIDLL$, EXCELPATH, "FEditDlgProc", EXCELPATHHELP, HELPPROC$)
-
- IF sz$ = "CONTINUE" THEN
- EXPATH$ = GetSymbolValue("EditTextOut")
-
- ''Validate new path.
- IF IsDirWritable(EXPATH$) = 0 THEN
- GOSUB BADPATH
- GOTO GETEXPATHL1
- END IF
- IF (NOT (DoesFileExist(MakePath(EXPATH$, "excel.exe"),femExists) = 1)) THEN
- GOSUB BADEXPATH
- GOTO GETEXPATHL1
- END IF
- UIPop 1
-
- ''Truncate display if too long.
- IF LEN(EXPATH$) > 23 THEN
- ReplaceListItem STATUSTEXT$, 4, MID$(EXPATH$, 1, 23)+"..."
- ELSE
- ReplaceListItem STATUSTEXT$, 4, EXPATH$
- END IF
- GOTO CUSTINST
- ELSEIF sz$ = "REACTIVATE" THEN
- GOTO GETEXPATHL1
- ELSEIF sz$ = "EXIT" THEN
- GOSUB ASKQUIT
- GOTO GETPATHL1
- ELSE
- UIPop 1
- GOTO CUSTINST
- END IF
- '======= GETEXPATH: ends =============
-
- GETNETPATH:
- SetSymbolValue "EditTextIn", NETPATH$
- SetSymbolValue "EditFocus", "END"
- GETNETPATHL1:
- sz$ = UIStartDlg(CUIDLL$, NETSRWPATH, "FEditDlgProc", NETPATHHELP, HELPPROC$)
-
- IF sz$ = "CONTINUE" THEN
- NETPATH$ = GetSymbolValue("EditTextOut")
-
- ''Validate new path.
- IF IsDirWritable(NETPATH$) = 0 THEN
- GOSUB BADPATH
- GOTO GETNETPATHL1
- END IF
- IF (NOT (DoesFileExist(MakePath(NETPATH$, "_STUB.XLM"),femExists) = 1)) THEN
- GOSUB BADNETPATH
- GOTO GETNETPATHL1
- ELSEIF (NOT (DoesFileExist(MakePath(NETPATH$, "FIR_PROG.XLM"),femExists) = 1)) THEN
- GOSUB BADNETPATH
- GOTO GETNETPATHL1
- END IF
- UIPop 1
-
- ''Truncate display if too long.
- IF LEN(NETPATH$) > 23 THEN
- ReplaceListItem STATUSTEXT$, 6, MID$(NETPATH$, 1, 23)+"..."
- ELSE
- ReplaceListItem STATUSTEXT$, 6, NETPATH$
- END IF
- GOTO CUSTINST
- ELSEIF sz$ = "REACTIVATE" THEN
- GOTO GETNETPATHL1
- ELSEIF sz$ = "EXIT" THEN
- GOSUB ASKQUIT
- GOTO GETNETPATHL1
- ELSE
- UIPop 1
- GOTO CUSTINST
- END IF
- '======== GETNETPATH: ends ===========
-
- OPTFILES1:
- OPT1L1:
- sz$ = UIStartDlg(CUIDLL$, ADD_INS, "FCheckDlgProc", OPT1HELP, HELPPROC$)
-
- IF sz$ = "CONTINUE" THEN
- FOR i% = 1 TO Add_Ins_No STEP 1
- ReplaceListItem in_CHECKSTATES$, i%, GetListItem(ou_CHECKSTATES$,i%)
- NEXT i%
- UIPop 1
- RecalcOptFiles OPTFILES1
- SetDriveStatus
- GOTO CUSTINST
- ELSEIF sz$ = "REACTIVATE" THEN
- RecalcPath
- SetDriveStatus
- GOTO OPT1L1
- ELSEIF sz$ = "EXIT" THEN
- GOSUB ASKQUIT
- GOTO OPT1L1
- ELSE
- UIPop 1
- newopt$ = ""
- GOTO CUSTINST
- END IF
- '============ OPTFILES1: ends =============
-
- OPTFILES2:
- SetSymbolValue "RadioDefault", OPT2OPT$
- OPT2L1:
- sz$ = UIStartDlg(CUIDLL$, OPTIONS, "FRadioDlgProc", OPT2HELP, HELPPROC$)
- newopt$ = GetSymbolValue("ButtonChecked")
-
- IF sz$ = "CONTINUE" THEN
- UIPop 1
- IF newopt$ <> OPT2OPT$ THEN
- OPT2OPT$ = newopt$
- RecalcOptFiles OPTFILES2
- SetDriveStatus
- END IF
- newopt$ = ""
- GOTO CUSTINST
- ELSEIF sz$ = "REACTIVATE" THEN
- RecalcPath
- SetDriveStatus
- GOTO OPT2L1
- ELSEIF sz$ = "EXIT" THEN
- GOSUB ASKQUIT
- GOTO OPT2L1
- ELSE
- UIPop 1
- newopt$ = ""
- GOTO CUSTINST
- END IF
- '=============== OPTFILES2: ends ==============
-
- TOOBIG:
- sz$ = UIStartDlg(CUIDLL$, TOOBIG, "FInfo0DlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- RecalcPath
- SetDriveStatus
- GOTO TOOBIG
- END IF
- UIPop 1
- RETURN 'TOOBIG: ===================
-
- BADPATH:
- sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- RecalcPath
- SetDriveStatus
- GOTO BADPATH
- END IF
- UIPop 1
- RETURN 'BADPATH: ===================
-
- BADEXPATH:
- sz$ = UIStartDlg(CUIDLL$, BADEXPATH, "FInfo0DlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- GOTO BADEXPATH
- END IF
- UIPop 1
- RETURN 'BADEXPATH: ===================
-
- NOEXPATH:
- sz$ = UIStartDlg(CUIDLL$, NOEXPATH, "FInfo0DlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- GOTO NOEXPATH
- END IF
- UIPop 1
- RETURN 'NOEXPATH: ===================
-
- NONETPATH:
- sz$ = UIStartDlg(CUIDLL$, NONETPATH, "FInfo0DlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- GOTO NONETPATH
- END IF
- UIPop 1
- RETURN 'NONETPATH: ===================
-
- BADNETPATH:
- sz$ = UIStartDlg(CUIDLL$, BADNETPATH, "FInfo0DlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- GOTO BADNETPATH
- END IF
- UIPop 1
- RETURN 'BADNETPATH: ===================
-
- ASKQUIT:
- sz$ = UIStartDlg(CUIDLL$, MYASKQUIT, "FCustInstDlgProc", 0,"")
-
- IF sz$ = "BTN10" THEN
- UIPopAll
- ERROR STFQUIT
- ELSEIF sz$ = "REACTIVATE" THEN
- GOTO ASKQUIT
- ELSE
- UIPop 1
- END IF
- RETURN 'ASKQUIT: ===================
-
- NONAME:
- sz$ = UIStartDlg(CUIDLL$, NAMEALERT, "FInfo0DlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- GOTO NONAME
- END IF
- UIPop 1
- RETURN 'NONAME: ===================
-
- NOPERSON:
- sz$ = UIStartDlg(CUIDLL$, PERSONALERT, "FInfo0DlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- GOTO NOPERSON
- END IF
- UIPop 1
- RETURN 'NOPERSON: ===================
-
- NOEXCEL:
- sz$ = UIStartDlg(CUIDLL$, EXCELALERT, "FInfo0DlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- GOTO NOEXCEL
- END IF
- UIPop 1
- RETURN 'NOEXCEL: ===================
-
- REGISTRATION:
- sz$ = UIStartDlg(CUIDLL$, CDGETNAMEORG, "FNameOrgDlgProc", REGHELP, HELPPROC$)
- USERNAME$ = GetSymbolValue("NameOut")
- COMPANY$ = GetSymbolValue("OrgOut")
-
- IF sz$ = "CONTINUE" THEN
- IF ((USERNAME$ = "") OR (COMPANY$ = "")) THEN
- GOSUB NONAME
- GOTO REGISTRATION
- END IF
- ELSE ''User chose EXIT option
- GOSUB ASKQUIT
- GOTO REGISTRATION
- END IF
- UIPop 1
- RETURN 'REGISTRATION: ===================
-
- PERSONALIZE:
- sz$ = UIStartDlg(CUIDLL$, CDPERSON, "FNameOrgDlgProc", REGHELP, HELPPROC$)
- PERSON$ = GetSymbolValue("NameOut")
-
- IF sz$ = "CONTINUE" THEN
- IF PERSON$ = "" THEN
- GOSUB NOPERSON
- GOTO PERSONALIZE
- END IF
- ELSE ''User chose EXIT option
- GOSUB ASKQUIT
- GOTO PERSONALIZE
- END IF
- UIPop 1
- RETURN 'PERSONALIZE: ===================
-
-
- UPGRADE:
- GOSUB GET_UPGRADE_TYPE
- ReplaceListItem STATUSTEXT$, 5, "wersja "+we$+", wyd. "+wy$
-
- UPGRADE1:
- IF WYD%>UWYD% THEN
- IF UWYD%<32 THEN 'Nie ma upgrade'u do wydaΣ <32 (MF 4.1)
- GOSUB NOUPGRADE
- ELSE
- sz$ = UIStartDlg(CUIDLL$, ASKUPGRADE, "FCustInstDlgProc", UPGRHELP,HELPPROC$)
- END IF
- ELSE
- sz$ = UIStartDlg(CUIDLL$, ASKNEW, "FCustInstDlgProc", NEWHELP,HELPPROC$)
- END IF
-
- IF sz$ = "BTN9" THEN
- UIPop 1
- UPGR$="TAK"
- ELSEIF sz$ = "REACTIVATE" THEN
- GOTO UPGRADE1
- ELSEIF sz$ = "BTN8" THEN
- IF WYD%>UWYD% THEN
- j% = Winhelp(hWnd1%,"setup.hlp>gloss",1,3) 'temat 3
- GOTO UPGRADE1
- ELSE
- j% = Winhelp(hWnd1%,"setup.hlp>gloss",1,2) 'temat 2
- GOTO UPGRADE1
- END IF
- ELSE
- UIPop 1
- UPGR$="NIE"
- UPGRT%=0
- END IF
- RETURN 'Upgrade ===================
-
- GET_UPGRADE_TYPE:
-
- IF ((DoesFileExist(MakePath(DEST$, "FIR.INI"), femExists) = 1) AND (DoesIniSectionExist(MakePath(DEST$,"FIR.INI"), "Program") = 1)) THEN
- we$ = GetIniKeyString(MakePath(DEST$,"FIR.INI"), "Program", "Wersja")
- ELSE
- we$="0"
- END IF
- IF ((DoesFileExist(MakePath(DEST$, "FIR.INI"), femExists) = 1) AND (DoesIniSectionExist(MakePath(DEST$,"FIR.INI"), "Program") = 1)) THEN
- wy$ = GetIniKeyString(MakePath(DEST$,"FIR.INI"), "Program", "Wydanie")
- ELSE
- wy$="0"
- END IF
-
- UWYD%=VAL(wy$)
-
- destf$ = FindFileInTree("_STUB.XLM",DEST$)
- IF destf$="" THEN 'Nie ma Mojej Firmy
- FIR$ = "NIE"
- UPGRT% = 0
- ELSE
- FIR$ = "TAK"
- IF (WYD%>UWYD%) THEN
- IF UWYD%<32 THEN
- UPGRT%=3 'Upgrade ze starszych wersji (nie ma!!!)
- ELSEIF UWYD%<33 THEN
- UPGRT%=2 'Upgrade wersji 4.1.32 (nowe szablony)
- ELSEIF UWYD%<37 THEN
- UPGRT%=1 'Upgrade wersji 6.0.33 (fix i Office97)
- ELSEIF UWYD%<39 THEN
- UPGRT%=4 'Upgrade wersji 6.1.37 (nowy PIT)
- ELSE
- UPGRT%=5 'Upgrade wersji 6.2.39 (na razie na zapas)
- END IF
- ELSE
- UPGRT%=0 'Ponowna instalacja
- END IF
- END IF
-
- RETURN 'GET_UPGRADE_TYPE ==========================
-
- NOUPGRADE:
- sz$ = UIStartDlg(CUIDLL$, NOUPGRADE, "FInfo0DlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- GOTO NOUPGRADE
- END IF
- UIPop 1
- RETURN 'NoUpgrade =====================
-
- UPGRADEONLY:
- sz$ = UIStartDlg(CUIDLL$, UPGRADEONLY, "FInfo0DlgProc", 0, "")
- IF sz$ = "REACTIVATE" THEN
- GOTO UPGRADEONLY
- END IF
- UIPop 1
- RETURN 'Upgradeolny ===================
-
- '**
- '** 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%) STATIC
-
- IF NETOPT$ <> "2" THEN
- IF GetListItem(CHECKSTATES$, ftype%) = "ON" THEN
- SrcDir$ = GetSymbolValue("STF_SRCDIR")
-
- IF ftype% = APPFILES THEN
- AddSectionFilesToCopyList "Net", SrcDir$, DEST$
- AddSectionFilesToCopyList "System", SrcDir$, WINSYSDIR$
- AddSectionFilesToCopyList "Windows", SrcDir$, WINDIR$
- AddSectionFilesToCopyList "Program", SrcDir$, DEST$
-
- ELSEIF ftype% = OPTFILES1 THEN
-
- IF GetListItem(ou_CHECKSTATES$,1)="ON" THEN
- AddSectionKeyFileToCopyList "Dodatki", "1", SrcDir$, DEST$
- END IF
-
- IF GetListItem(ou_CHECKSTATES$,2)="ON" THEN
- AddSectionKeyFileToCopyList "Dodatki", "2", SrcDir$, DEST$
- END IF
-
- IF GetListItem(ou_CHECKSTATES$,3)="ON" THEN
- AddSectionKeyFileToCopyList "Dodatki", "3", SrcDir$, DEST$
- END IF
-
- ELSEIF ftype% = OPTFILES2 THEN
-
- IF (UPGRT%=0) THEN '' nowy program
- AddSectionFilesToCopyList "Szablony", SrcDir$, DEST$
- AddSectionFilesToCopyList "SzablonyFix", SrcDir$, DEST$
- AddSectionFilesToCopyList "NoweSzablony", SrcDir$, DEST$
- AddSectionFilesToCopyList "SzablonyPit", SrcDir$, DEST$
- ELSEIF (UPGRT%=2) THEN '' akt do 32
- AddSectionFilesToCopyList "SzablonyFix", SrcDir$, DEST$
- AddSectionFilesToCopyList "NoweSzablony", SrcDir$, DEST$
- AddSectionFilesToCopyList "SzablonyPit", SrcDir$, DEST$
- ELSEIF (UPGRT%=1) THEN '' akt do 33,34,35,36
- AddSectionFilesToCopyList "SzablonyFix", SrcDir$, DEST$
- AddSectionFilesToCopyList "SzablonyPit", SrcDir$, DEST$
- ELSEIF (UPGRT%=4) THEN '' akt do 37,38
- AddSectionFilesToCopyList "SzablonyPit", SrcDir$, DEST$
- ENDIF
-
- END IF
- SrcDir$ = ""
- END IF
- ELSE
- SrcDir$ = GetSymbolValue("STF_SRCDIR")
- IF ((ftype% = APPFILES) AND (GetListItem(CHECKSTATES$, APPFILES) = "ON")) THEN
- AddSectionFilesToCopyList "Net", SrcDir$, DEST$
- AddSectionFilesToCopyList "System", SrcDir$, WINSYSDIR$
- AddSectionFilesToCopyList "Windows", SrcDir$, WINDIR$
- END IF
- SrcDir$ = ""
- END IF
- END SUB 'AddOptFilesToCopyList =================
-
-
- '**
- '** 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:
- '** APPFILES, OPTFILES1, OPTFILES2
- '** Returns:
- '** none.
- '*************************************************************************
- SUB RecalcOptFiles (ftype%) STATIC
- CursorSave% = ShowWaitCursor()
- ClearCopyList
- AddOptFilesToCopyList ftype%
-
- fExtra% = 0
- IF ftype% = APPFILES THEN
- ListSym$ = APPNEEDS$
- IF GetListItem(CHECKSTATES$, APPFILES) = "ON" THEN
- ''Add extra cost to Windows drive for ini/progman, etc.
- ndrive% = ASC(ucase$(WINDRIVE$)) - ASC("A") + 1
- ReplaceListItem EXTRACOSTS$, ndrive%, "1024"
- fExtra% = 1
- END IF
- ELSEIF ftype% = OPTFILES1 THEN
- ListSym$ = OPT1NEEDS$
- ELSEIF ftype% = OPTFILES2 THEN
- ListSym$ = OPT2NEEDS$
- END IF
-
- StillNeed& = GetCopyListCost(EXTRACOSTS$, ListSym$, "")
-
- cost& = 0
- FOR i% = 1 TO 26 STEP 1
- cost& = cost& + VAL(GetListItem(ListSym$, i%))
- NEXT i%
- ReplaceListItem STATUSTEXT$, ftype%, STR$(cost& / 1024) + " K"
-
- IF StillNeed& > 0 THEN
- ReplaceListItem BIGLIST$, ftype%, "YES"
- ELSE
- ReplaceListItem BIGLIST$, ftype%, ""
- END IF
-
- IF fExtra% THEN
- ReplaceListItem EXTRACOSTS$, ndrive%, "0"
- END IF
- 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 APPFILES
- RecalcOptFiles OPTFILES1
- RecalcOptFiles OPTFILES2
-
- 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(APPNEEDS$, ndrive%)) + VAL(GetListItem(OPT1NEEDS$, ndrive%)) + VAL(GetListItem(OPT2NEEDS$, ndrive%))
- free& = GetFreeSpaceForDrive(drive$)
- ReplaceListItem DRIVETEXT$, 1, drive$ + ":"
- ReplaceListItem DRIVETEXT$, 2, STR$(cost& / 1024) + " K"
- ReplaceListItem DRIVETEXT$, 3, STR$(free& / 1024) + " K"
-
- IF drive$ = WINDRIVE$ THEN
- ReplaceListItem DRIVETEXT$, 4, ""
- ReplaceListItem DRIVETEXT$, 5, ""
- ReplaceListItem DRIVETEXT$, 6, ""
- ELSE
- ndrive% = ASC(ucase$(WINDRIVE$)) - ASC("A") + 1
- cost& = VAL(GetListItem(APPNEEDS$, ndrive%)) + VAL(GetListItem(OPT1NEEDS$, ndrive%)) + VAL(GetListItem(OPT2NEEDS$, ndrive%))
- IF cost& = 0 THEN
- ReplaceListItem DRIVETEXT$, 4, ""
- ReplaceListItem DRIVETEXT$, 5, ""
- ReplaceListItem DRIVETEXT$, 6, ""
- ELSE
- free& = GetFreeSpaceForDrive(WINDRIVE$)
- ReplaceListItem DRIVETEXT$, 4, WINDRIVE$ + ":"
- ReplaceListItem DRIVETEXT$, 5, STR$(cost& / 1024) + " K"
- ReplaceListItem DRIVETEXT$, 6, STR$(free& / 1024) + " K"
- END IF
- 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
-
-