home *** CD-ROM | disk | FTP | other *** search
/ Current Shareware 1994 January / SHAR194.ISO / demos / gatordem.zip / GATOR.MST < prev    next >
Text File  |  1993-09-30  |  5KB  |  209 lines

  1. '* Copyright 1993 Advanced Resource Development (ARD) Corporation.
  2. '*
  3. '* Author:  Amen Zwa, ARD Corp.
  4.  
  5.  
  6.  
  7. '*static char* sccsid = "Propagator:  %W%\t%G%\tAmen Zwa, ARD Corp.";
  8.  
  9.  
  10.  
  11. '$INCLUDE 'setupapi.inc'
  12. '$INCLUDE 'msdetect.inc'
  13.  
  14. ''Dialog ID's
  15. CONST WELCOME_DEMO  = 1200
  16. CONST ASKQUIT       = 200
  17. CONST DESTPATH      = 300
  18. CONST EXITFAILURE   = 400
  19. CONST EXITQUIT      = 600
  20. CONST EXITSUCCESS   = 700
  21. CONST APPHELP       = 900
  22. CONST BADPATH       = 6400
  23.  
  24. ''Bitmap ID
  25. CONST LOGO = 1
  26.  
  27. GLOBAL DEST$                            ''Default destination directory.
  28.  
  29. DECLARE SUB Install
  30. DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  31.  
  32.  
  33.  
  34. INIT:
  35.     CUIDLL$ = "mscuistf.dll"            ''Custom user interface dll
  36.     HELPPROC$ = "FHelpDlgProc"          ''Help dialog procedure
  37.  
  38.     SetBitmap CUIDLL$, LOGO
  39.     SetTitle "Propagator Setup"
  40.  
  41.     szInf$ = GetSymbolValue("STF_SRCINFPATH")
  42.     IF szInf$ = "" THEN
  43.         szInf$ = GetSymbolValue("STF_CWDDIR") + "GATOR.INF"
  44.     END IF
  45.     ReadInfFile szInf$
  46.  
  47.     DEST$ = "C:\GATORDEM"
  48.  
  49.  
  50.  
  51. WELCOME_DEMO:
  52.     sz$ = UIStartDlg(CUIDLL$, WELCOME_DEMO, "FInfoDlgProc", APPHELP, HELPPROC$)
  53.     IF sz$ = "CONTINUE" THEN
  54.         UIPop 1
  55.     ELSE
  56.         GOSUB ASKQUIT
  57.         GOTO WELCOME_DEMO
  58.     END IF
  59.  
  60.  
  61.  
  62. GETPATH:
  63.     SetSymbolValue "EditTextIn", DEST$
  64.     SetSymbolValue "EditFocus", "END"
  65. GETPATHL1:
  66.     sz$ = UIStartDlg(CUIDLL$, DESTPATH, "FEditDlgProc", APPHELP, HELPPROC$)
  67.     DEST$ = GetSymbolValue("EditTextOut")
  68.  
  69.     IF sz$ = "CONTINUE" THEN
  70.         IF IsDirWritable(DEST$) = 0 THEN
  71.             GOSUB BADPATH
  72.             GOTO GETPATHL1
  73.         END IF
  74.         UIPop 1
  75.     ELSEIF sz$ = "REACTIVATE" THEN
  76.         GOTO GETPATHL1
  77.     ELSEIF sz$ = "EXIT" THEN
  78.         GOSUB ASKQUIT
  79.         GOTO GETPATH
  80.     END IF
  81.  
  82.     Install
  83.  
  84.  
  85.  
  86. QUIT:
  87.     ON ERROR GOTO ERRQUIT
  88.     IF ERR = 0 THEN
  89.         dlg% = EXITSUCCESS
  90.     ELSEIF ERR = STFQUIT THEN
  91.         dlg% = EXITQUIT
  92.     ELSE
  93.         dlg% = EXITFAILURE
  94.     END IF
  95. QUITL1:
  96.     sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
  97.     IF sz$ = "REACTIVATE" THEN
  98.         GOTO QUITL1
  99.     END IF
  100.     UIPop 1
  101.     END
  102. ERRQUIT:
  103.     i% = DoMsgBox("Setup sources were corrupted; please contact ARD Corporation.", "Error", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  104.     END
  105.  
  106.  
  107.  
  108. BADPATH:
  109.     sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
  110.     IF sz$ = "REACTIVATE" THEN
  111.         GOTO BADPATH
  112.     END IF
  113.     UIPop 1
  114.     RETURN
  115.  
  116.  
  117.  
  118. ASKQUIT:
  119.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  120.  
  121.     IF sz$ = "EXIT" THEN
  122.         UIPopAll
  123.         ERROR STFQUIT
  124.     ELSEIF sz$ = "REACTIVATE" THEN
  125.         GOTO ASKQUIT
  126.     ELSE
  127.         UIPop 1
  128.     END IF
  129.     RETURN
  130.  
  131.  
  132.  
  133. '**
  134. '** Purpose:
  135. '**     Builds the copy list and performs all installation operations.
  136. '** Arguments:
  137. '**     none.
  138. '** Returns:
  139. '**     none.
  140. '*************************************************************************
  141. SUB Install STATIC
  142.  
  143.     SrcDir$ = GetSymbolValue("STF_SRCDIR")
  144.     CreateDir DEST$, cmoNone
  145.  
  146.     OpenLogFile MakePath(DEST$, "gator.out"), 0
  147.     WriteToLogFile ""
  148.     WriteToLogFile "  User chose as destination directory: '" + DEST$ + "'"
  149.     WriteToLogFile ""
  150.     WriteToLogFile "May have had to create the directory: " + DEST$
  151.     WriteToLogFile ""
  152.  
  153.     AddSectionFilesToCopyList "Files", SrcDir$, DEST$
  154.     CopyFilesInCopyList
  155.  
  156.     CreateDir MakePath(DEST$,"ENCODER"), cmoNone
  157.     srcnam$ = MakePath(DEST$,"ENCODER.TRN")
  158.     CopyFile srcnam$, MakePath(DEST$,"ENCODER\ENCODER.TRN"), cmoNone, 0
  159.     RemoveFile srcnam$, cmoNone
  160.     srcnam$ = MakePath(DEST$,"ENCODER.VLD")
  161.     CopyFile srcnam$, MakePath(DEST$,"ENCODER\ENCODER.VLD"), cmoNone, 0
  162.     RemoveFile srcnam$, cmoNone
  163.     CreateDir MakePath(DEST$,"XOR"), cmoNone
  164.     srcnam$ = MakePath(DEST$,"XOR.TRN")
  165.     CopyFile srcnam$, MakePath(DEST$,"XOR\XOR.TRN"), cmoNone, 0
  166.     RemoveFile srcnam$, cmoNone
  167.     srcnam$ = MakePath(DEST$,"XOR.VLD")
  168.     CopyFile srcnam$, MakePath(DEST$,"XOR\XOR.VLD"), cmoNone, 0
  169.     RemoveFile srcnam$, cmoNone
  170.     srcnam$ = MakePath(DEST$,"XOR.TST")
  171.     CopyFile srcnam$, MakePath(DEST$,"XOR\XOR.TST"), cmoNone, 0
  172.     RemoveFile srcnam$, cmoNone
  173.  
  174.     CreateProgmanGroup "Propagator Demo", "", cmoNone
  175.     ShowProgmanGroup  "Propagator Demo", 1, cmoNone
  176.     CreateProgmanItem "Propagator Demo", "Gator Demo", MakePath(DEST$,"gator.exe"), "", cmoOverwrite
  177.     CreateProgmanItem "Propagator Demo", "Scale", MakePath(DEST$,"scale.exe"), "", cmoOverwrite
  178.  
  179.     CloseLogFile
  180.  
  181.     CreateIniKeyValue "WIN.INI", "Gator", "PROPAGATOR", dest$, cmoOverwrite
  182.  
  183. END SUB
  184.  
  185.  
  186.  
  187. '**
  188. '** Purpose:
  189. '**     Appends a file name to the end of a directory path,
  190. '**     inserting a backslash character as needed.
  191. '** Arguments:
  192. '**     szDir$  - full directory path (with optional ending "\")
  193. '**     szFile$ - filename to append to directory
  194. '** Returns:
  195. '**     Resulting fully qualified path name.
  196. '*************************************************************************
  197. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  198.     IF szDir$ = "" THEN
  199.         MakePath = szFile$
  200.     ELSEIF szFile$ = "" THEN
  201.         MakePath = szDir$
  202.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  203.         MakePath = szDir$ + szFile$
  204.     ELSE
  205.         MakePath = szDir$ + "\" + szFile$
  206.     END IF
  207. END FUNCTION
  208.  
  209.