home *** CD-ROM | disk | FTP | other *** search
/ CD-ROM Today (UK) 12 / cdromtoday12.bin / sonysmpl / setup / setup.bak < prev    next >
Text File  |  1994-08-23  |  15KB  |  432 lines

  1. '**************************************************************************
  2. '*                       Setup
  3. '**************************************************************************
  4.  
  5. '$DEFINE DEBUG  ''Define for script development/debugging
  6.  
  7. '$INCLUDE 'setupapi.inc'
  8. '$INCLUDE 'msdetect.inc'
  9.  
  10. ''Dialog ID's
  11. CONST WELCOME       = 100
  12. CONST ASKQUIT       = 200
  13. CONST DESTPATH      = 300
  14. CONST EXITFAILURE   = 400
  15. CONST EXITQUIT      = 600
  16. CONST EXITSUCCESS   = 700
  17. CONST OPTIONS       = 800
  18. CONST ADDHELP       = 900
  19. CONST QTNONE        = 1100
  20. CONST QTOLDER       = 1200
  21. CONST QTNEWER       = 1300
  22. CONST QTINCOMPLETE  = 1400
  23. CONST MODELESS      = 5000
  24. CONST TOOBIG        = 6300
  25. CONST BADPATH       = 6400
  26.  
  27. ''Bitmap ID
  28. 'CONST LOGO = 1
  29.  
  30. GLOBAL CUIDLL$
  31. GLOBAL WinDrive$        ''Drive letter Windows is installed.
  32. GLOBAL SrcDir$          ''Drive letter Windows is installed.
  33. GLOBAL QTWSrcDir$       ''Drive letter Windows is installed.
  34. GLOBAL DestDir$         ''Default destination directory for QT.
  35. GLOBAL FileCount%      
  36. GLOBAL AutoexecWasModified% 
  37. GLOBAL szSectionYear%
  38. GLOBAL szSectionMonth%
  39. GLOBAL szSectionDay%
  40.  
  41. DECLARE SUB      PromptQT (szType%)
  42. DECLARE SUB      CreateIcon
  43. DECLARE FUNCTION QTFilesOkay (szTemp$) AS INTEGER
  44. DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  45. DECLARE FUNCTION VerifyDate (szDate$) AS INTEGER
  46. DECLARE FUNCTION GetNewDestination ( szDir$ ) AS STRING
  47.  
  48. INIT:
  49.     SetTitle "Sony Sampler"
  50.     CUIDLL$ = "mscuistf.dll"            ''Custom user interface dll
  51.  
  52.     szInf$ = GetSymbolValue("STF_SRCINFPATH")
  53.     IF szInf$ = "" THEN
  54.         szInf$ = GetSymbolValue("STF_CWDDIR") + "SETUP.INF"
  55.     END IF
  56.     ReadInfFile szInf$
  57.  
  58.     WinDrive$ = MID$(GetWindowsDir, 1, 1)
  59.     IF IsDriveValid(WinDrive$) = 0 THEN
  60.         i% = DoMsgBox("Windows drive ('"+WinDrive$+"') is not a valid drive.", "DEBUG", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  61.         GOTO QUIT
  62.     END IF
  63.  
  64. WELCOME:
  65.     sz$ = UIStartDlg(CUIDLL$, WELCOME, "FInfoDlgProc", 0, "")
  66.     IF sz$ = "CONTINUE" THEN
  67.         UIPop 1
  68.     ELSE
  69.         GOSUB ASKQUIT
  70.         GOTO WELCOME
  71.     END IF
  72.  
  73.  
  74.     FileCount% = 12
  75.     SrcDir$ = GetSymbolValue("STF_SRCDIR")
  76.     QTWSrcDir = MakePath(SrcDir$,"QTW")
  77.     AutoexecWasModified% = 0
  78.     ClearCopyList
  79.  
  80.  
  81.     IF QTFilesOkay("") = 0 THEN
  82.         IF AutoexecWasModified% = 1 THEN
  83. PROMPT:
  84.                 sz$ = UIStartDlg(CUIDLL$, OPTIONS, "FRadioDlgProc", 0, "")
  85.                 IF sz$ = "CONTINUE" THEN
  86.                         UIPop 1
  87.                          PrependToPath "C:\AUTOEXEC.BAT", "C:\AUTOEXEC.QTW", DestDir$, cmoOverwrite
  88.                 ELSEIF sz$ = "REACTIVATE" THEN
  89.                         GOTO PROMPT
  90.                 ELSEIF sz$ = "EXIT" THEN
  91.                         GOSUB ASKQUIT
  92.                         GOTO PROMPT
  93.                 END IF
  94.  
  95.                 IF GetSymbolValue("ButtonChecked") = "1" THEN
  96.                         CopyFile "C:\AUTOEXEC.BAT", "C:\AUTOEXEC.BAK", cmoOverwrite, 0
  97.                         CopyFile "C:\AUTOEXEC.QTW", "C:\AUTOEXEC.BAT", cmoOverwrite, 0
  98.                           RemoveFile "C:\AUTOEXEC.QTW", cmoForce
  99.                 ENDIF
  100.         ENDIF
  101.         CopyFilesInCopyList
  102.     ENDIF
  103.  
  104.     CreateIcon
  105.  
  106.     IF AutoexecWasModified% = 1 THEN
  107. WARN:
  108.         sz$ = UIStartDlg(CUIDLL$, ADDHELP, "FInfoDlgProc", 0, "")
  109.         IF sz$ = "REACTIVATE" THEN
  110.                 GOTO WARN
  111.         ENDIF
  112.         UIPop 1
  113.     ENDIF
  114.  
  115.  
  116. QUIT:
  117.     ON ERROR GOTO ERRQUIT
  118.  
  119.     IF ERR = 0 THEN
  120.         dlg% = EXITSUCCESS
  121.     ELSEIF ERR = STFQUIT THEN
  122.         dlg% = EXITQUIT
  123.     ELSE
  124.         dlg% = EXITFAILURE
  125.     END IF
  126. QUITL1:
  127.     IF dlg% = EXITQUIT THEN
  128.         UIPop 1
  129.         END
  130.     ELSEIF dlg% = EXITFAILURE THEN
  131.         dlg% = EXITQUIT
  132.     END IF
  133.  
  134.     sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
  135.     IF sz$ = "REACTIVATE" THEN
  136.         GOTO QUITL1
  137.     END IF
  138.     UIPop 1
  139.     END
  140.  
  141. ERRQUIT:
  142.     i% = DoMsgBox("Setup sources were corrupted.", "Setup Message", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  143.     END
  144.  
  145.  
  146.  
  147. BADPATH:
  148.     sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
  149.     IF sz$ = "REACTIVATE" THEN
  150.         GOTO BADPATH
  151.     END IF
  152.     UIPop 1
  153.     RETURN
  154.  
  155. ASKQUIT:
  156.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  157.  
  158.     IF sz$ = "EXIT" THEN
  159.         UIPopAll
  160.         ERROR STFQUIT
  161.     ELSEIF sz$ = "REACTIVATE" THEN
  162.         GOTO ASKQUIT
  163.     ELSE
  164.         UIPop 1
  165.     END IF
  166.     RETURN
  167.  
  168.  
  169. '** Purpose:
  170. '**     Appends a file name to the end of a directory path,
  171. '**     inserting a backslash character as needed.
  172. '** Arguments:
  173. '**     szDir$  - full directory path (with optional ending "\")
  174. '**     szFile$ - filename to append to directory
  175. '** Returns:
  176. '**     Resulting fully qualified path name.
  177. '*************************************************************************
  178. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  179.     IF szDir$ = "" THEN
  180.         MakePath = szFile$
  181.     ELSEIF szFile$ = "" THEN
  182.         MakePath = szDir$
  183.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  184.         MakePath = szDir$ + szFile$
  185.     ELSE
  186.         MakePath = szDir$ + "\" + szFile$
  187.     END IF
  188. END FUNCTION
  189.  
  190. '**
  191. '** Purpose:
  192. '** Arguments:
  193. '** Returns:
  194. '*************************************************************************
  195. FUNCTION QTFilesOkay (szTemp$) STATIC AS INTEGER
  196.  
  197.         sz$ = UIStartDlg(CUIDLL$, MODELESS, "FModelessDlgProc", 0, "")
  198.         QTFilesOkay = 1
  199.         szFile$ = GetSectionKeyFilename("Quick Time", "QT 1")
  200.         szDir$ = FindFileUsingFileOpen(szFile$)
  201.         IF szDir$ = "" THEN                             '' FILE NOT FOUND 
  202.                 UIPop 1
  203.                 PromptQT QTNONE
  204.                 IF GetSymbolValue("ButtonChecked") = "1" THEN
  205.                         szDir$ = WinDrive$ + ":\QTW\BIN"
  206.                         szDir$ = GetNewDestination(szDir$)
  207.                         IF DoesDirExist(szDir$) = 0 THEN
  208.                                 CreateDir szDir$, cmoNone
  209.                         END IF
  210.                         AddSectionFilesToCopyList "Quick Time", QTWSrcDir$, szDir$
  211.                         DestDir$ = szDir$
  212.                         AutoexecWasModified% = 1
  213.                         QTFilesOkay = 0
  214.                 END IF
  215.         ELSE                                            '' FILE WAS FOUND
  216.                 szDate$ = GetDateOfFile(szDir$)
  217.                 szDir$ = MID$(szDir$, 1, (LEN(szDir$) - LEN(szFile$) - 1))
  218.                 szSectionDate$ = GetSectionKeyDate("Quick Time", "QT 1")
  219.                 szSectionYear% = GetYearFromDate(szSectionDate$)
  220.                 szSectionMonth% = GetMonthFromDate(szSectionDate$)
  221.                 szSectionDay% = GetDayFromDate(szSectionDate$)
  222.  
  223.                 tmpVal% = VerifyDate(szDate$)
  224.                 IF tmpVal% <> 0 THEN
  225.                         UIPop 1
  226.                         IF tmpVal% = 1 THEN
  227.                                 PromptQT QTOLDER
  228.                                 IF GetSymbolValue("ButtonChecked") = "1" THEN
  229.                                         szTmp$ = szDir$
  230.                                         szDir$ = GetNewDestination(szTmp$)
  231.                                         IF szDir$ <> szTmp$ THEN
  232.                                                 AutoexecWasModified% = 1
  233.                                                 IF DoesDirExist(szDir$) = 0 THEN
  234.                                                         CreateDir szDir$, cmoNone
  235.                                                 END IF
  236.                                         ENDIF
  237.                                         AddSectionFilesToCopyList "Quick Time", QTWSrcDir$, szDir$
  238.                                         QTFilesOkay = 0
  239.                                 ENDIF
  240.                         ELSE
  241.                                 PromptQT QTNEWER
  242.                                 IF GetSymbolValue("ButtonChecked") = "2" THEN
  243.                                         szTmp$ = szDir$
  244.                                         szDir$ = GetNewDestination(szTmp$)
  245.                                         IF szDir$ <> szTmp$ THEN
  246.