home *** CD-ROM | disk | FTP | other *** search
/ Computer Buyer 1999 March / Dpcb0399.iso / MONEY / Capital / demorun.mst < prev    next >
Text File  |  1994-11-17  |  18KB  |  579 lines

  1. '' DEMORUN.MST
  2. '**************************************************************************
  3. '*                       DEMORUN Demo Product Setup
  4. '**************************************************************************
  5.  
  6. ''$DEFINE DEBUG     ''Define for script development/debugging
  7. ''$DEFINE DISKSIZE  ''Define if you want to check for disk space
  8.  
  9. '$INCLUDE 'defines.inc'
  10.  
  11. '$INCLUDE 'setupapi.inc'
  12. '$INCLUDE 'msdetect.inc'
  13.  
  14. ''Dialog ID's
  15. CONST WELCOME           = 100
  16. CONST ASKQUIT           = 200
  17. CONST DESTPATH          = 300
  18. CONST EXITFAILURE       = 400
  19. CONST EXITQUIT          = 600
  20. CONST EXITSUCCESS       = 700
  21. CONST OPTIONS           = 800
  22. CONST APPHELP           = 900
  23. CONST DRIVESELECT       = 1100
  24. CONST BADPATH           = 6400
  25.  
  26. ''Bitmap ID
  27. CONST LOGO = 1
  28.  
  29. GLOBAL DEST$            ''Default destination directory.
  30. GLOBAL OPTCUR$          ''Null for now
  31. GLOBAL WINDRIVE$        ''Used in size test
  32.  
  33. GLOBAL SrcDir$
  34. GLOBAL WinDir$
  35. GLOBAL WinSysDir$
  36. GLOBAL WINdirectory$
  37.  
  38. GLOBAL NEWDEST$
  39. GLOBAL PRODUCT$
  40. GLOBAL VFW%             ''=1 if VFW Run Time previous install
  41. GLOBAL PRO%
  42. GLOBAL OKWRITE%
  43. GLOBAL OKWRITE1%
  44. GLOBAL OKWRITE2%
  45. GLOBAL OKWRITE3%
  46. GLOBAL Install_VFW%
  47. GLOBAL WIN_Sys_Write%
  48.  
  49. GLOBAL WantedDiskSize&  ''Used for disk size test
  50. GLOBAL WantedDataSize&  ''Used for disk size test frin INC file
  51.  
  52. DECLARE SUB Install
  53. DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  54.  
  55. ''DECLARE FUNCTION DoProtect LIB "PROTECT.DLL" (szDisk$) AS INTEGER
  56.  
  57. INIT:
  58.     CUIDLL$   = "mscuistf.dll"              ''Custom user interface dll
  59.     HELPPROC$ = "FHelpDlgProc"      ''Help dialog procedure
  60.  
  61.     SrcDir$ = GetSymbolValue("STF_SRCDIR")
  62.     WinDir$ = GetWindowsDir()
  63.     WinSysDir$ = GetWindowsSysDir()
  64.     Install_VFW% = 1        ''default is to install VFW drivers
  65.     WIN_Sys_Write% = 1  ''default...can write to WIN SYS directory
  66.  
  67.     MajorVer% = GetWindowsMajorVersion()
  68.     MinorVer% = GetWindowsMinorVersion()
  69.  
  70.     IF  MajorVer% < 3 OR (MajorVer% = 3 AND MinorVer% < 10) THEN
  71.         i% = DoMsgBox("Microsoft Windows version 3.10 or greater is required for this software.  Please upgrade your version of Windows.", "Installation Problem", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  72.         END
  73.     END IF
  74.  
  75. '$IFDEF DEMOQUICK
  76.     PRODUCT$ = "DEMOQUICK"
  77. '$ELSEIFDEF VHELP
  78.     PRODUCT$ = "VHELP"
  79. '$ELSEIFDEF PRODDE
  80.     PRODUCT$ = "PRODDE"
  81. '$ELSEIFDEF CBIQUICK
  82.     PRODUCT$ = "CBIQUICK"
  83. '$ELSEIFDEF CBIPRO
  84.     PRODUCT$ = "CBIPRO"
  85. '$ELSE
  86.     i% = DoMsgBox("Product type not defined.", "Define product", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  87.     END
  88. '$ENDIF
  89.  
  90.     WinSysDir$ = GetWindowsSysDir()               ''Avoid the OnWindowsNT() call due to extra space
  91.     IF (WinSysDir$ = "SYSTEM32") OR (WinSysDir$ = "system32") THEN
  92.         Install_VFW% = 0
  93.     END IF
  94.  
  95.     SetBitmap CUIDLL$, LOGO
  96.  
  97.     IF (PRODUCT$="DEMOQUICK") OR (PRODUCT$="VHELP") OR (PRODUCT$="PRODDE") THEN
  98.         SetTitle "Demo/Tutorial Install ... Created with DEMOquick"
  99.     ELSE
  100.         SetTitle "Tutorial Install ... Created with CBIquick"
  101.     ENDIF
  102.  
  103.     szInf$ = GetSymbolValue("STF_SRCINFPATH")
  104.  
  105.     IF szInf$ = "" THEN
  106.         szInf$ = GetSymbolValue("STF_CWDDIR") + "DEMORUN.INF"
  107.     END IF
  108.  
  109.     ReadInfFile szInf$
  110.  
  111.     OPTCUR$ = "1"
  112.  
  113.     IF (PRODUCT$="DEMOQUICK") OR (PRODUCT$="VHELP") OR (PRODUCT$="PRODDE") THEN
  114.         DEST$ = "C:\DEMORUN"
  115.     ELSE
  116.         DEST$ = "C:\CBIRUN"
  117.     ENDIF
  118.  
  119. WELCOME:
  120.  
  121. GETPATH:
  122.     SetSymbolValue "EditTextIn", DEST$
  123.     SetSymbolValue "EditFocus", "END"
  124.  
  125. GETPATHL1:
  126.     sz$   = UIStartDlg(CUIDLL$, DESTPATH, "FEditDlgProc", APPHELP, HELPPROC$)
  127.     DEST$ = GetSymbolValue("EditTextOut")
  128.  
  129.     SetRestartDir DEST$
  130.  
  131.     IF sz$ = "CONTINUE" THEN
  132.  
  133.         IF IsDirWritable(DEST$) = 0 THEN
  134.             GOSUB BADPATH
  135.             GOTO GETPATHL1
  136.         END IF
  137.         UIPop 1
  138.  
  139.     ELSEIF sz$ = "REACTIVATE" THEN
  140.         GOTO GETPATHL1
  141.     ELSEIF sz$ = "BACK" THEN
  142.         UIPop 1
  143.         GOTO WELCOME
  144.     ELSE
  145.         GOSUB ASKQUIT
  146.         GOTO WELCOME
  147.     END IF
  148.  
  149.     ''------------------------------------------------------------------
  150.  
  151.     OKWRITE%  = IsDirWritable(WinDir$)
  152.     OKWRITE1% = IsDirWritable(WinSysDir$)
  153.     OKWRITE2% = IsFileWritable(MakePath(WinDir$, "SYSTEM.INI"))
  154.     OKWRITE3% = IsFileWritable(MakePath(WinDir$, "WIN.INI"))
  155.     IF ((OKWRITE% <> 1) OR (OKWRITE1% <> 1) OR (OKWRITE2% <> 1) OR (OKWRITE3% <> 1)) THEN
  156.         i% = DoMsgBox("Can't access WINDOWS directory...VFW Video drivers will not be installed.  Continuing the install.", "Setup Will Continue...", MB_OK+MB_TASKMODAL+MB_ICONINFORMATION)
  157.         i% = DoMsgBox("Your system administrator will need to load Microsoft Video-For-Windows 1.1a drivers if not already present.", "Video-For-Windows Drivers", MB_OK+MB_TASKMODAL+MB_ICONINFORMATION)
  158.         Install_VFW% = 0    ''Don't install drivers
  159.         WIN_Sys_Write% = 0
  160.     ENDIF
  161.  
  162.  
  163.     Install
  164.  
  165.     ''------------------------------------------------------------------
  166.  
  167. QUIT:
  168.     ON ERROR GOTO ERRQUIT
  169.  
  170.     IF ERR = 0 THEN
  171.         dlg% = EXITSUCCESS
  172.     ELSEIF ERR = STFQUIT THEN
  173.         dlg% = EXITQUIT
  174.     ELSE
  175.         dlg% = EXITFAILURE
  176.     END IF
  177. QUITL1:
  178.     sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
  179.     IF sz$ = "REACTIVATE" THEN
  180.     GOTO QUITL1
  181.     END IF
  182.     UIPop 1
  183.  
  184.     END
  185.  
  186. ERRQUIT:
  187.     i% = DoMsgBox("Problem with SEETUP files, call (508) 263-3030 !", "Setup Message", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  188.     END
  189.  
  190.  
  191.  
  192. BADPATH:
  193.     sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
  194.     IF sz$ = "REACTIVATE" THEN
  195.         GOTO BADPATH
  196.     END IF
  197.     UIPop 1
  198.     RETURN
  199.  
  200.  
  201.  
  202. ASKQUIT:
  203.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  204.  
  205.     IF sz$ = "EXIT" THEN
  206.     UIPopAll
  207.     ERROR STFQUIT
  208.     ELSEIF sz$ = "REACTIVATE" THEN
  209.     GOTO ASKQUIT
  210.     ELSE
  211.     UIPop 1
  212.     END IF
  213.     RETURN
  214.  
  215. '**********************************************************************
  216. '** Install
  217. '**
  218. '** Purpose:
  219. '**     Builds the copy list and performs all installation operations.
  220. '** Arguments:
  221. '**     none.
  222. '** Returns:
  223. '**     none.
  224. '*************************************************************************
  225. SUB Install STATIC
  226.  
  227.     ''Save a copy of previous menu (if present)------------------------
  228.     DEST_MNU$ = DEST$ + "\DEMORUN.MNU"
  229.     OLD_MNU$   = DEST$ + "\OLD.MNU"
  230.     i% = DoesFileExist(DEST_MNU$, femExists)
  231.  
  232.     IF i% = 1 THEN
  233.         CopyFile DEST_MNU$, OLD_MNU$, cmoNone, 0
  234.     END IF
  235.     
  236.     ''--------------------------------------------------------------------
  237.  
  238.     ''Check the disk space - TEST THIS ON NETWORK DRIVES-----------------
  239.     WINDRIVE$ = MID$(DEST$, 1, 1)
  240.     
  241.     ''Define a minimum default size
  242.     WantedDiskSize&=4000000
  243.  
  244.     ''Get the size from create disk
  245.     '$INCLUDE 'DEMOSIZE.INC'
  246.  
  247.     ''Add amount for software overhead
  248.     WantedDiskSize& = WantedDataSize& + 1600000
  249.  
  250.     DiskSize&=GetFreeSpaceForDrive(WINDRIVE$)
  251.  
  252.     IF WantedDiskSize& > DiskSize& THEN
  253.         i% = DoMsgBox("Not enough free disk space.  Please free some space and try again", "Insufficient Disk Space", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  254.         END
  255.     END IF
  256.     
  257.     ''-----------------------------------------------------------------------
  258.     
  259.     SrcDir$ = GetSymbolValue("STF_SRCDIR")
  260.     CreateDir DEST$, cmoNone
  261.  
  262.     OpenLogFile MakePath(DEST$, "LOGFILE.OUT"), 0
  263.     WriteToLogFile ""
  264.     WriteToLogFile "  User chose as destination directory: '" + DEST$ + "'"
  265.     WriteToLogFile "  Installing DISK 1 to: '" + DEST$ + "'"
  266.     WriteToLogFile ""
  267.  
  268.     AddSectionFilesToCopyList "Files1", SrcDir$, DEST$
  269.     CopyFilesInCopyList
  270.     ClearCopyList
  271.  
  272.  
  273.     ''Add Video-For-Windows Run-Time files------------------------------
  274.     ''See if we can install VFW on system
  275.  
  276.     IF Install_VFW% = 1 THEN
  277.         AddSectionFilesToCopyList "VFW Runtime", SrcDir$, WinSysDir$
  278.         AddSectionFilesToCopyList "AVICodecs", SrcDir$, WinSysDir$
  279.         AddSectionFilesToCopyList "ACM Drivers", SrcDir$, WinSysDir$
  280.         AddSectionFilesToCopyList "Profile", SrcDir$, WinSysDir$
  281.         IF OKWRITE% <> 1 THEN
  282.             i% = DoMsgBox("Can't access WINDOWS directory.  Drivers not installed.  Install continuing.", "Video-For-Windows Drivers", MB_OK+MB_TASKMODAL+MB_ICONINFORMATION)
  283.             ClearCopyList
  284.         ELSE
  285.             ''Check windrive diskspace
  286.             SizeReq& = GetCopyListCost ("","", "")
  287.  
  288.             IF SizeReq& <> 0 THEN
  289.                 i% = DoMsgBox("The WINDOWS directory does not have enough disk space.  VFW Drivers will need to be installed if not already present.", "Can't Install Video-For-Windows Drivers", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  290.                 ClearCopyList
  291.                 Install_VFW% = 0
  292.             ELSE
  293.                 CopyFilesInCopyList
  294.             ENDIF
  295.         ENDIF
  296.     ENDIF
  297.  
  298.     ''Update WIN.INI and SYSTEM.INI......................................
  299.     IF Install_VFW% = 1 THEN
  300.         CreateIniKeyValue WinDir$ + "system.ini", "Drivers", "VIDC.MSVC", "msvidc.drv", cmoOverwrite
  301.         CreateIniKeyValue WinDir$ + "system.ini", "Drivers", "VIDC.MRLE", "MSRLE.drv", cmoOverwrite
  302.         CreateIniKeyValue WinDir$ + "WIN.INI", "mci extensions", "avi", "AVIVideo", cmoOverwrite
  303.         CreateIniKeyValue WinDir$ + "system.ini", "mci", "AVIVideo", "mciavi.drv", cmoOverwrite
  304.         CreateIniKeyValue WinDir$ + "system.ini", "Drivers", "WaveMapper", "msacm.drv", cmoOverwrite
  305.         CreateIniKeyValue WinDir$ + "control.ini", "drivers.desc", "msacm.drv", "Microsoft Sound Mapper V2.00", cmoOverwrite
  306.         CreateIniKeyValue WinDir$ + "control.ini", "drivers.desc", "msadpcm.acm", "Microsoft ADPCM Codec V2.00", cmoOverwrite
  307.         PRO% = DoesFileExist(MakePath(WinSysDir$, "PROFDISP.EXE"), femExists)
  308.         IF (PRO% = 1)  THEN
  309.             Run ("profdisp")
  310.         ENDIF
  311.     ENDIF
  312.  
  313.  
  314.     ''Setup DDELINK.INI and DDELINK.EXE in Windows dir if needed ----------------------------------
  315.  
  316.     ''i% = DoMsgBox("Checking for \ ...DEST$ = "+ DEST$, "DDELINK.INI SETUP", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  317.     IF MID$(DEST$, LEN(DEST$), 1) = "\" THEN
  318.         NEWDEST$ = MID$(DEST$, 1, LEN(DEST$)-1)
  319.         ''i% = DoMsgBox("Found \...NEWDEST$ = "+ NEWDEST$ + "   DEST$ = "+ DEST$, "DDELINK.INI SETUP", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  320.     ELSE
  321.         NEWDEST$ = DEST$
  322.         ''i% = DoMsgBox("NO Found \...NEWDEST$ = "+ NEWDEST$ + "DEST$ = "+ DEST$, "DDELINK.INI SETUP", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  323.     ENDIF
  324.  
  325.  
  326.     WINdirectory$ = GetWindowsDir()
  327.     IF ((PRODUCT$ = "VHELP") OR (PRODUCT$ = "PRODDE")) THEN     ''Make .INI files with default path
  328.         CreateIniKeyValue MakePath(DEST$,"ddelink.ini"), "DDELINK", "PATH", NEWDEST$, cmoOverwrite
  329.         IF WIN_Sys_Write% = 1 THEN
  330.             CreateIniKeyValue MakePath(WINdirectory$,"ddelink.ini"), "DDELINK", "PATH", NEWDEST$, cmoOverwrite
  331.             CopyFile MakePath(DEST$,"ddelink.exe"), MakePath(WINdirectory$,"ddelink.exe"), cmoNone, 0
  332.         ENDIF
  333.     ELSEIF (PRODUCT$ = "CBIPRO") THEN
  334.         CreateIniKeyValue MakePath(DEST$,"cbilink.ini"), "CBILINK", "PATH", NEWDEST$, cmoOverwrite
  335.         IF WIN_Sys_Write% = 1 THEN
  336.             CreateIniKeyValue MakePath(WINdirectory$,"cbilink.ini"), "CBILINK", "PATH", NEWDEST$, cmoOverwrite
  337.             CopyFile MakePath(DEST$,"cbilink.exe"), MakePath(WINdirectory$,"cbilink.exe"), cmoNone, 0
  338.         ENDIF
  339.     ENDIF
  340.  
  341.  
  342.  
  343.     IF (PRODUCT$="DEMOQUICK") OR (PRODUCT$="VHELP") OR (PRODUCT$="PRODDE") THEN
  344.         CreateProgmanGroup "DEMOrun", WinDir$+"DEMORUN.GRP", cmoNone
  345.         ShowProgmanGroup  "DEMOrun", 1, cmoNone
  346.     ELSE
  347.         CreateProgmanGroup "CBIrun", WinDir$+"CBIRUN.GRP", cmoNone
  348.         ShowProgmanGroup  "CBIrun", 1, cmoNone
  349.     ENDIF   
  350.  
  351.     ''Append old .MNU menu to new
  352.     i% = DoesFileExist(OLD_MNU$, femExists)
  353.  
  354.     IF i% = 1 THEN
  355.     CopyFile OLD_MNU$, DEST_MNU$, cmoNone, 1
  356.     END IF
  357.  
  358.  
  359.     ''Get the icon label def created by DQ in Create Disk
  360.  
  361. '$IFDEF DEMOQUICK
  362.     '$INCLUDE 'DEMOLABL.INC'
  363. '$ELSEIFDEF VHELP
  364.     '$INCLUDE 'DM_LAB_D.INC'
  365. '$ELSEIFDEF PRODDE
  366.     '$INCLUDE 'DM_LAB_D.INC'
  367. '$ELSEIFDEF CBIQUICK
  368.     '$INCLUDE 'DEMOLABL.INC'
  369. '$ELSEIFDEF CBIPRO
  370.     '$INCLUDE 'DM_LAB_D.INC'
  371. '$ELSE
  372.     i% = DoMsgBox("Product type not defined.", "Define product", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  373.     END
  374. '$ENDIF
  375.  
  376.  
  377.     ''Initializing definitions for DISK1-DISK20, up to 20 install disks
  378.     DISK1$ = ""
  379.     DISK2$ = ""
  380.     DISK3$ = ""
  381.     DISK4$ = ""
  382.     DISK5$ = ""
  383.     DISK6$ = ""
  384.     DISK7$ = ""
  385.     DISK8$ = ""
  386.     DISK9$ = ""
  387.     DISK10$ = ""
  388.     DISK11$ = ""
  389.     DISK12$ = ""
  390.     DISK13$ = ""
  391.     DISK14$ = ""
  392.     DISK15$ = ""
  393.     DISK16$ = ""
  394.     DISK17$ = ""
  395.     DISK18$ = ""
  396.     DISK19$ = ""
  397.     DISK20$ = ""
  398.  
  399.     ''Now use the DISKn variables set by DQ Create Disk to flag disks used
  400.     ''in this course install.  Example  DISK3 = "1" to flag disk 1 used.
  401.  
  402.     '$INCLUDE 'DISKNUM.INC'
  403.  
  404.     IF DISK2$ = "1" THEN
  405.     i% = DoMsgBox("Insert Disk # 2 now...", "Load Next Disk", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  406.     ClearCopyList
  407.     AddSectionFilesToCopyList "Files2", SrcDir$, DEST$
  408.     CopyFilesInCopyList
  409.     END IF
  410.  
  411.     IF DISK3$ = "1" THEN
  412.     i% = DoMsgBox("Insert Disk # 3 now...", "Load Next Disk", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  413.     ClearCopyList
  414.     AddSectionFilesToCopyList "Files3", SrcDir$, DEST$
  415.     CopyFilesInCopyList
  416.     END IF
  417.  
  418.     IF DISK4$ = "1" THEN
  419.     i% = DoMsgBox("Insert Disk # 4 now...", "Load Next Disk", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  420.     ClearCopyList
  421.     AddSectionFilesToCopyList "Files4", SrcDir$, DEST$
  422.     CopyFilesInCopyList
  423.     END IF
  424.  
  425.     IF DISK5$ = "1" THEN
  426.     i% = DoMsgBox("Insert Disk # 5 now...", "Load Next Disk", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  427.     ClearCopyList
  428.     AddSectionFilesToCopyList "Files5", SrcDir$, DEST$
  429.     CopyFilesInCopyList
  430.     END IF
  431.  
  432.     IF DISK6$ = "1" THEN
  433.     i% = DoMsgBox("Insert Disk # 6 now...", "Load Next Disk", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  434.     ClearCopyList
  435.     AddSectionFilesToCopyList "Files6", SrcDir$, DEST$
  436.     CopyFilesInCopyList
  437.     END IF
  438.  
  439.     IF DISK7$ = "1" THEN
  440.     i% = DoMsgBox("Insert Disk # 7 now...", "Load Next Disk", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  441.     ClearCopyList
  442.     AddSectionFilesToCopyList "Files7", SrcDir$, DEST$
  443.     CopyFilesInCopyList
  444.     END IF
  445.  
  446.     IF DISK8$ = "1" THEN
  447.     i% = DoMsgBox("Insert Disk # 8 now...", "Load Next Disk", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  448.     ClearCopyList
  449.     AddSectionFilesToCopyList "Files8", SrcDir$, DEST$
  450.     CopyFilesInCopyList
  451.     END IF
  452.  
  453.     IF DISK9$ = "1" THEN
  454.     i% = DoMsgBox("Insert Disk # 9 now...", "Load Next Disk", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  455.     ClearCopyList
  456.     AddSectionFilesToCopyList "Files9", SrcDir$, DEST$
  457.     CopyFilesInCopyList
  458.     END IF
  459.  
  460.     IF DISK10$ = "1" THEN
  461.     i% = DoMsgBox("Insert Disk # 10 now...", "Load Next Disk", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  462.     ClearCopyList
  463.     AddSectionFilesToCopyList "Files10", SrcDir$, DEST$
  464.     CopyFilesInCopyList
  465.     END IF
  466.  
  467.     IF DISK11$ = "1" THEN
  468.     i% = DoMsgBox("Insert Disk # 11 now...", "Load Next Disk", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  469.     ClearCopyList
  470.     AddSectionFilesToCopyList "Files11", SrcDir$, DEST$
  471.     CopyFilesInCopyList
  472.     END IF
  473.  
  474.     IF DISK12$ = "1" THEN
  475.     i% = DoMsgBox("Insert Disk # 12 now...", "Load Next Disk", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  476.     ClearCopyList
  477.     AddSectionFilesToCopyList "Files12", SrcDir$, DEST$
  478.     CopyFilesInCopyList
  479.     END IF
  480.  
  481.     IF DISK13$ = "1" THEN
  482.     i% = DoMsgBox("Insert Disk # 13 now...", "Load Next Disk", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  483.     ClearCopyList
  484.     AddSectionFilesToCopyList "Files13", SrcDir$, DEST$
  485.     CopyFilesInCopyList
  486.     END IF
  487.  
  488.     IF DISK14$ = "1" THEN
  489.     i% = DoMsgBox("Insert Disk # 14 now...", "Load Next Disk", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  490.     ClearCopyList
  491.     AddSectionFilesToCopyList "Files14", SrcDir$, DEST$
  492.     CopyFilesInCopyList
  493.     END IF
  494.  
  495.     IF DISK15$ = "1" THEN
  496.     i% = DoMsgBox("Insert Disk # 15 now...", "Load Next Disk", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  497.     ClearCopyList
  498.     AddSectionFilesToCopyList "Files15", SrcDir$, DEST$
  499.     CopyFilesInCopyList
  500.     END IF
  501.  
  502.     IF DISK16$ = "1" THEN
  503.     i% = DoMsgBox("Insert Disk # 16 now...", "Load Next Disk", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  504.     ClearCopyList
  505.     AddSectionFilesToCopyList "Files16", SrcDir$, DEST$
  506.     CopyFilesInCopyList
  507.     END IF
  508.  
  509.     IF DISK17$ = "1" THEN
  510.     i% = DoMsgBox("Insert Disk # 17 now...", "Load Next Disk", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  511.     ClearCopyList
  512.     AddSectionFilesToCopyList "Files17", SrcDir$, DEST$
  513.     CopyFilesInCopyList
  514.     END IF
  515.  
  516.     IF DISK18$ = "1" THEN
  517.     i% = DoMsgBox("Insert Disk # 18 now...", "Load Next Disk", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  518.     ClearCopyList
  519.     AddSectionFilesToCopyList "Files18", SrcDir$, DEST$
  520.     CopyFilesInCopyList
  521.     END IF
  522.  
  523.     IF DISK19$ = "1" THEN
  524.     i% = DoMsgBox("Insert Disk # 19 now...", "Load Next Disk", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  525.     ClearCopyList
  526.     AddSectionFilesToCopyList "Files19", SrcDir$, DEST$
  527.     CopyFilesInCopyList
  528.     END IF
  529.  
  530.     IF DISK20$ = "1" THEN
  531.     i% = DoMsgBox("Insert Disk # 20 now...", "Load Next Disk", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  532.     ClearCopyList
  533.     AddSectionFilesToCopyList "Files20", SrcDir$, DEST$
  534.     CopyFilesInCopyList
  535.     END IF
  536.  
  537.     CloseLogFile
  538.  
  539.     ClearCopyList
  540.  
  541.     ''Do RESTART if needed--------------------------------------------
  542.     IF RestartListEmpty() = 0 THEN
  543.         i% = DoMsgBox("Windows will now be exited and restarted.", "Setup Complete", MB_OK+MB_ICONINFORMATION)
  544.     err:
  545.         i% = ExitExecRestart()
  546.         i% = DoMsgBox("Windows cannot be restarted because MS-DOS applications are active.  Close all MS-DOS applications and then click on OK.", "Setup Complete", MB_OK+MB_ICONSTOP)
  547.         goto err
  548.     ENDIF
  549.  
  550.  
  551. END SUB
  552.  
  553.  
  554. '************************************************************************
  555. '** MakePath
  556. '**
  557. '** Purpose:
  558. '**     Appends a file name to the end of a directory path,
  559. '**     inserting a backslash character as needed.
  560. '** Arguments:
  561. '**     szDir$  - full directory path (with optional ending "\")
  562. '**     szFile$ - filename to append to directory
  563. '** Returns:
  564. '**     Resulting fully qualified path name.
  565. '*************************************************************************
  566. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  567.     IF szDir$ = "" THEN
  568.     MakePath = szFile$
  569.     ELSEIF szFile$ = "" THEN
  570.     MakePath = szDir$
  571.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  572.     MakePath = szDir$ + szFile$
  573.     ELSE
  574.     MakePath = szDir$ + "\" + szFile$
  575.     END IF
  576. END FUNCTION
  577.  
  578.                                                                                                  
  579.