home *** CD-ROM | disk | FTP | other *** search
/ Sitting on the Farm / FARM.bin / sample1.mst < prev    next >
Text File  |  1994-03-03  |  5KB  |  158 lines

  1. '**************************************************************************
  2. '*                       SOTF 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 APPHELP       = 900
  19. CONST OPTIONS2        = 1000
  20. CONST BADPATH       = 6400
  21.  
  22. ''Bitmap ID
  23. CONST LOGO = 1
  24.  
  25. ''File Types
  26. CONST APPFILES     = 1
  27. CONST OPTFILES1    = 2
  28. CONST OPTFILES2    = 3
  29.  
  30. GLOBAL DEST$        ''Default destination directory.
  31.  
  32. DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  33.  
  34. INIT:
  35.     CUIDLL$ = "mscuistf.dll"            ''Custom user interface dll
  36.     HELPPROC$ = "FHelpDlgProc"          ''Help dialog procedure
  37.  
  38.     SetBitmap CUIDLL$, LOGO
  39.     SetTitle "Sitting on the Farm Setup"
  40.  
  41.     GOTO INSTALL
  42.  
  43. '$IFDEF DEBUG
  44.     i% = SetSizeCheckMode(scmOnIgnore)    '' could use scmOff; def = scmOnFatal
  45.     WinDrive$ = MID$(GetWindowsDir, 1, 1)
  46.     IF IsDriveValid(WinDrive$) = 0 THEN
  47.         i% = DoMsgBox("Windows drive ('"+WinDrive$+"') is not a valid drive.", "DEBUG", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  48.         GOTO QUIT
  49.     END IF
  50. '$ENDIF ''DEBUG
  51.  
  52.  
  53. WELCOME:
  54.     sz$ = UIStartDlg(CUIDLL$, WELCOME, "FInfoDlgProc", APPHELP, HELPPROC$)
  55.     IF sz$ = "CONTINUE" THEN
  56.         UIPop 1
  57.     ELSE
  58.         GOSUB ASKQUIT
  59.         GOTO WELCOME
  60.     END IF
  61.  
  62.  
  63. QUIT:
  64.     ON ERROR GOTO ERRQUIT
  65.  
  66.     IF ERR = 0 THEN
  67.         dlg% = EXITSUCCESS
  68.     ELSEIF ERR = STFQUIT THEN
  69.         dlg% = EXITQUIT
  70.     ELSE
  71.         dlg% = EXITFAILURE
  72.     END IF
  73. QUITL1:
  74.     sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
  75.     IF sz$ = "REACTIVATE" THEN
  76.         GOTO QUITL1
  77.     END IF
  78.     UIPop 1
  79.  
  80.     END
  81.  
  82. ERRQUIT:
  83.     i% = DoMsgBox("Installation Incomplete!", "Setup Message", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  84.     END
  85.  
  86. BADPATH:
  87.     sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
  88.     IF sz$ = "REACTIVATE" THEN
  89.         GOTO BADPATH
  90.     END IF
  91.     UIPop 1
  92.     RETURN
  93.  
  94.  
  95.  
  96. ASKQUIT:
  97.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  98.  
  99.     IF sz$ = "EXIT" THEN
  100.         UIPopAll
  101.         ERROR STFQUIT
  102.     ELSEIF sz$ = "REACTIVATE" THEN
  103.         GOTO ASKQUIT
  104.     ELSE
  105.         UIPop 1
  106.     END IF
  107.     RETURN
  108.  
  109.  
  110. INSTALL:
  111.  
  112.  
  113.     STARTUPDIR$ = GetSymbolValue("STF_SRCDIR")    
  114.  
  115.     ICONID$ = STARTUPDIR$ + "SOTF.ico, 0, 0, 0," + STARTUPDIR$
  116.     MOREFUN$ = STARTUPDIR$ + "MOREFUN.ico, 0, 0, 0," + STARTUPDIR$
  117.  
  118.     StartEPath$ = FindFileInTree ("SOTFE.EXE", STARTUPDIR$ + "English")
  119.     StartFPath$ = FindFileInTree ("SOTFF.EXE", STARTUPDIR$ + "French")
  120.     StartSPath$ = FindFileInTree ("SOTFS.EXE", STARTUPDIR$ + "Spanish")
  121.     StartXPath$ = FindFileInTree ("MOREFUN.EXE", STARTUPDIR$ + "External")
  122.  
  123.     '**********************************
  124.     'Create the Program Group and Items
  125.     '**********************************
  126.  
  127.     IF StartEPath$ <> "" AND StartFPath$ <> "" AND StartSPath <> "" AND StartXPath$ <> "" THEN
  128.     CreateProgmanGroup "I_Learn", "", cmoNone
  129.      ShowProgmanGroup  "I_Learn", 1, cmoNone
  130.     CreateProgmanItem "I_Learn", "Farm - English", StartEPath$, ICONID$, cmoOverwrite
  131.     CreateProgmanItem "I_Learn", "Farm - French", StartFPath$, ICONID$, cmoOverwrite
  132.     CreateProgmanItem "I_Learn", "Farm - Spanish", StartSPath$, ICONID$, cmoOverwrite
  133.         CreateProgmanItem "I_Learn", "More Fun", StartXPath$, MOREFUN$, cmoOverwrite
  134.  
  135.         '**********************************
  136.         'Copy .INI files to Windows.
  137.         '**********************************
  138.  
  139.         IniEPath$ = FindFileInTree ("SOTFE.INI", STARTUPDIR$ + "English")
  140.         IniFPath$ = FindFileInTree ("SOTFF.INI", STARTUPDIR$ + "French")
  141.         IniSPath$ = FindFileInTree ("SOTFS.INI", STARTUPDIR$ + "Spanish")
  142.  
  143.         WinDir$ = GetWindowsDir()
  144.         IF IniEPath$ <> "" AND IniFPath <> "" AND IniSPath <> "" THEN
  145.         CopyFile IniEPath$, WinDir$ + "SOTFE.INI", cmoOverwrite, 0
  146.         CopyFile IniFPath$, WinDir$ + "SOTFF.INI", cmoOverwrite, 0
  147.         CopyFile IniSPath$, WinDir$ + "SOTFS.INI", cmoOverwrite, 0
  148.         SOTFARM% = DoMsgBox ( "The installation process is complete.",  "Sitting on the Farm", MB_OK)
  149.         ELSE
  150.         SOTFARM% = DoMsgBox ( "Can't find file needed files",  "Install Error", MB_OK)
  151.         END IF
  152.     ELSE
  153.     SOTFARM% = DoMsgBox ( "Can't find Sitting on the Farm",  "Install Error", MB_OK)
  154.     END IF
  155.  
  156.  
  157.  
  158.