home *** CD-ROM | disk | FTP | other *** search
/ Sound Clips 2: MIDI / SC2Midi.iso / SETUP.MST < prev    next >
Text File  |  1995-11-02  |  6KB  |  218 lines

  1. '**************************************************************************
  2. '*                MIDI Master Collection setup script
  3. '*                11/02/95 CD Titles, Inc  
  4. '*                Sergei Nemirovsky        
  5. '**************************************************************************
  6. '$DEFINE DEBUG   
  7.  
  8.  
  9. '$INCLUDE 'setupapi.inc'
  10. '$INCLUDE 'msdetect.inc'
  11.  
  12. ''Dialog ID's
  13. CONST WELCOME       = 100
  14. CONST ASKQUIT       = 200
  15. CONST DESTPATH      = 300
  16. CONST EXITFAILURE   = 400
  17. CONST EXITQUIT      = 600
  18. CONST EXITSUCCESS   = 700
  19. CONST OPTIONS       = 800
  20. CONST APPHELP       = 900
  21. CONST BADPATH       = 6400
  22.  
  23. ''Bitmap ID
  24. CONST LOGO = 1
  25.  
  26. GLOBAL DEST$        ''Default destination directory.
  27. GLOBAL OPTCUR$      ''Option selection from option dialog.
  28.  
  29. DECLARE SUB Install
  30. DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  31.  
  32.  
  33. INIT:
  34.     CUIDLL$ = "mscuistf.dll"            ''Custom user interface dll
  35.     HELPPROC$ = "FHelpDlgProc"          ''Help dialog procedure
  36.  
  37.     SetBitmap CUIDLL$, LOGO 
  38.     ' note:if title change so must the video for windows setup program 
  39.     ' as it uses the class:window to detect that this setup up is complete 
  40.     ' NOTE#1
  41.     SetTitle "CD Titles"
  42.  
  43.     szInf$ = GetSymbolValue("STF_SRCINFPATH")
  44.     IF szInf$ = "" THEN    
  45.        szInf$ = GetSymbolValue("STF_CWDDIR") + "SETUP.INF"
  46.     END IF        
  47.     
  48.     ReadInfFile szInf$
  49.  
  50.     OPTCUR$ = "1"
  51. ' default drive for installation 
  52. '    DEST$ = "C:\MIDI_COL"
  53.  
  54. '$IFDEF DEBUG
  55.     i% = SetSizeCheckMode(scmOnIgnore)    '' could use scmOff; def = scmOnFatal
  56.     WinDrive$ = MID$(GetWindowsDir, 1, 1)
  57.     IF IsDriveValid(WinDrive$) = 0 THEN
  58.         i% = DoMsgBox("Windows drive ('"+WinDrive$+"') is not a valid drive.", "DEBUG", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  59.         GOTO QUIT
  60.     END IF
  61. '$ENDIF ''DEBUG
  62.  
  63.  
  64. WELCOME:
  65.     sz$ = UIStartDlg(CUIDLL$, WELCOME, "FInfoDlgProc", APPHELP, HELPPROC$)
  66.     IF sz$ = "CONTINUE" THEN
  67.         UIPop 1
  68.     ELSE
  69.         GOSUB ASKQUIT
  70.         GOTO WELCOME
  71.     END IF
  72.  
  73.  
  74. OPTION:
  75.  
  76.  
  77. 'GETPATH:
  78. '    SetSymbolValue "EditTextIn", DEST$
  79. '    SetSymbolValue "EditFocus", "END"
  80. 'GETPATHL1:
  81. '    sz$ = UIStartDlg(CUIDLL$, DESTPATH, "FEditDlgProc", APPHELP, HELPPROC$)
  82. '    DEST$ = GetSymbolValue("EditTextOut")
  83. '  
  84. '    IF sz$ = "CONTINUE" THEN
  85. '        IF IsDirWritable(DEST$) = 0 THEN
  86. '            GOSUB BADPATH
  87. '            GOTO GETPATHL1
  88. '        END IF
  89. '        UIPop 1
  90. '    ELSEIF sz$ = "REACTIVATE" THEN
  91. '        GOTO GETPATHL1
  92. '    ELSEIF sz$ = "BACK" THEN
  93. '        UIPop 1
  94. '        GOTO OPTION
  95. '    ELSE
  96. '        GOSUB ASKQUIT
  97. '        GOTO GETPATH
  98. '    END IF
  99.  
  100.  
  101.     Install
  102.  
  103. QUIT:
  104.     ON ERROR GOTO ERRQUIT
  105.  
  106.     IF ERR = 0 THEN
  107.         dlg% = EXITSUCCESS
  108.     ELSEIF ERR = STFQUIT THEN
  109.         dlg% = EXITQUIT
  110.     ELSE
  111.         dlg% = EXITFAILURE
  112.     END IF
  113. QUITL1:
  114.     sz$ = UIStartDlg(CUIDLL$, dlg%,"FInfo0DlgProc", 0, "")
  115.     IF sz$ = "REACTIVATE" THEN
  116.         GOTO QUITL1
  117.     END IF
  118.     UIPop 1
  119.  
  120.     END
  121.  
  122. ERRQUIT:
  123.     i% = DoMsgBox("Setup sources were corrupted, call 617-577-7553!", "Setup Message", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  124.     END
  125.  
  126.  
  127. BADPATH:
  128.     sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
  129.     IF sz$ = "REACTIVATE" THEN
  130.         GOTO BADPATH
  131.     END IF
  132.     UIPop 1
  133.     RETURN
  134.  
  135.  
  136.  
  137. ASKQUIT:
  138.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  139.  
  140.     IF sz$ = "EXIT" THEN
  141.         UIPopAll
  142.         ERROR STFQUIT
  143.     ELSEIF sz$ = "REACTIVATE" THEN
  144.         GOTO ASKQUIT
  145.     ELSE
  146.         UIPop 1
  147.     END IF
  148.     RETURN
  149.  
  150.  
  151. '**
  152. '** Purpose:
  153. '**     Builds the copy list and performs all installation operations.
  154. '** Arguments:
  155. '**     none.
  156. '** Returns:
  157. '**     none.
  158. '*************************************************************************
  159. SUB Install STATIC
  160.  
  161.     SrcDir$ = GetSymbolValue("STF_SRCDIR")
  162. '    CreateDir DEST$, cmoNone
  163.  
  164.  
  165.  
  166. '   AddSectionFilesToCopyList "Files", SrcDir$, DEST$  
  167. '   CopyFilesInCopyList      
  168. '   ClearCopyList 
  169.  
  170.    WinSysDir$ = GetWindowsSysDir
  171.    AddSectionFilesToCopyList "WinSys", SrcDir$, WinSysDir$
  172.    CopyFilesInCopyList
  173.  
  174.    cr$=chr$(13)+chr$(10)
  175.    cption$= "Other Titles:"+chr$(13)+chr$(10)
  176.    
  177.    ProgmanName$ = "MIDI Master Collection 2"
  178.  
  179.    CreateProgmanGroup ProgmanName$, "", cmoNone
  180.    ShowProgmanGroup  ProgmanName$, 1,   cmoNone
  181.   
  182.    IconSp=VAL(GetIniKeyString("win.ini","Desktop","IconSpacing"))
  183.     
  184.    CreateProgmanItem ProgmanName$, ProgmanName$, "mviewer2 "+MakePath(SrcDir$,"mmc2.mvb"),MakePath(SrcDir$,"mmc2.ico"), cmoOverwrite
  185.    CreateProgmanItem ProgmanName$, "Read Me", MakePath(DEST$,"readme.txt"), "",cmoOverwrite   
  186.                                                                                                                                         
  187. '   CreateProgmanItem ProgmanName$, cption$+"New Media", MakePath(DEST$,"mmplay.exe x:\promo\newmedia.avi New Media"),MakePath(SrcDir$,"cdtitles.ico"),cmoOverwrite 
  188. '   CreateProgmanItem ProgmanName$, cption$+"Video CD-ROM", MakePath(DEST$,"mmplay.exe x:\promo\videos.avi Videos on CD-ROM"),MakePath(SrcDir$,"cdtitles.ico"),cmoOverwrite  
  189. '   CreateProgmanItem ProgmanName$, cption$+"Shareware", MakePath(DEST$,"mmplay.exe x:\promo\sharware.avi Shareware"),MakePath(SrcDir$,"cdtitles.ico"),cmoOverwrite  
  190.   
  191.    
  192. END SUB
  193.  
  194.  
  195.  
  196. '**
  197. '** Purpose:
  198. '**     Appends a file name to the end of a directory path,
  199. '**     inserting a backslash character as needed.
  200. '** Arguments:
  201. '**     szDir$  - full directory path (with optional ending "\")
  202. '**     szFile$ - filename to append to directory
  203. '** Returns:
  204. '**     Resulting fully qualified path name.
  205. '*************************************************************************
  206. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  207.     IF szDir$ = "" THEN
  208.         MakePath = szFile$
  209.     ELSEIF szFile$ = "" THEN
  210.         MakePath = szDir$
  211.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  212.         MakePath = szDir$ + szFile$
  213.     ELSE
  214.         MakePath = szDir$ + "\" + szFile$
  215.     END IF
  216. END FUNCTION
  217.  
  218.