home *** CD-ROM | disk | FTP | other *** search
/ Visual Reality 2.0 / VR2.0_1.ISO / vreal / vreal.mst < prev    next >
Encoding:
Text File  |  1995-10-10  |  15.4 KB  |  482 lines

  1. '*                       Visual Reality Setup
  2. '**************************************************************************
  3.  
  4. '$DEFINE DEBUG  ''Define for script development/debugging
  5.  
  6. '$INCLUDE 'setupapi.inc'
  7. '$INCLUDE 'msdetect.inc'
  8.  
  9. ''Dialog ID's
  10. CONST WELCOME       = 100
  11. CONST ASKQUIT       = 200
  12. CONST DESTPATH      = 300
  13. CONST EXITFAILURE   = 400
  14. CONST EXITQUIT      = 600
  15. CONST EXITSUCCESS   = 700
  16. CONST OPTIONS       = 800
  17. CONST APPHELP       = 900
  18. CONST CUSTINST      = 6200
  19. CONST BADPATH       = 6400
  20.  
  21. CONST EYESFILES     = 1
  22. CONST TUTORFILES    = 2
  23. CONST PLAYBACKFILES = 3
  24. CONST IMAGEFILES    = 4
  25. CONST MODELFILES    = 5
  26. CONST FONTFILES     = 6
  27. CONST CATAFILES     = 7
  28. CONST VFWFILES        = 8
  29.  
  30. CONST RLIVEBB        = 6401
  31. CONST VFONTBB        = 6402
  32. CONST VIMAGEBB        = 6403
  33. CONST VMODELBB        = 6404
  34. CONST VCATABB        = 6405
  35. CONST ANIPLAY        = 6406
  36. CONST WELCOMEBB        = 6407
  37. CONST SSCENESBB        = 6408
  38.  
  39. ''Bitmap ID
  40. CONST LOGO = 1
  41.  
  42. GLOBAL DEST$        ''Default destination directory.
  43. GLOBAL DESTEYES$    ''Default destination directory.
  44. GLOBAL DESTIMAGE$   ''Default destination directory.
  45. GLOBAL DESTMODEL$   ''Default destination directory.
  46. GLOBAL DESTFONT$    ''Default destination directory.
  47. GLOBAL DESTCATA$    ''Default destination directory.
  48. GLOBAL WINDIR$      ''Default destination directory.
  49. GLOBAL WINSYSDIR$   ''Default destination directory.
  50. GLOBAL EXECOPT$     ''Option selection from OptFiles1 option dialog.
  51. GLOBAL TUTOROPT$    ''Option selection from OptFiles2 option dialog.
  52. GLOBAL DOEYES$      ''Option selection to install the executable and config files.
  53. GLOBAL DOTUTORIAL$  ''Option selection to install tutorials.
  54. GLOBAL DOPLAYBACK$  ''Option selection to install tutorials.
  55. GLOBAL DOIMAGE$     ''Option selection to install tutorials.
  56. GLOBAL DOMODEL$     ''Option selection to install tutorials.
  57. GLOBAL DOFONT$      ''Option selection to install Visual Font.
  58. GLOBAL DOCATA$      ''Option selection to install tutorials.
  59. GLOBAL CUIDLL$
  60.  
  61. ''Dialog list symbol names
  62. GLOBAL CHECKIN$
  63. GLOBAL CHECKOUT$
  64.  
  65. DECLARE SUB Install
  66. DECLARE SUB Cleanup(path$)
  67. DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  68. DECLARE FUNCTION OnWindowsNT LIB "INIUPD.DLL" AS INTEGER
  69. DECLARE FUNCTION VflatdPresent LIB "iniupd.DLL" AS INTEGER
  70. DECLARE FUNCTION FShowWindow LIB "mscuistf.dll" (arg1%) AS INTEGER
  71.  
  72. INIT:
  73.     Tmp% = FShowWindow( HwndFrame )
  74.     CUIDLL$ = "mscuistf.dll"            ''Custom user interface dll
  75.     HELPPROC$ = "FHelpDlgProc"          ''Help dialog procedure
  76.  
  77.     SetBitmap CUIDLL$, LOGO
  78.     SetTitle "Visual Reality Setup"
  79.  
  80.     szInf$ = GetSymbolValue("STF_SRCINFPATH")
  81.     IF szInf$ = "" THEN
  82.         szInf$ = GetSymbolValue("STF_CWDDIR") + "SETUP.INF"
  83.     END IF
  84.  
  85.     ReadInfFile szInf$
  86.  
  87.     DEST$ = "C:\VREAL20"
  88.  
  89. '$IFDEF DEBUG
  90.     i% = SetSizeCheckMode(scmOnIgnore)    '' could use scmOff; def = scmOnFatal
  91.     WinDrive$ = MID$(GetWindowsDir, 1, 1)
  92.     IF IsDriveValid(WinDrive$) = 0 THEN
  93.         i% = DoMsgBox("Windows drive ('"+WinDrive$+"') is not a valid drive.", "DEBUG", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  94.         GOTO QUIT
  95.     END IF
  96. '$ENDIF ''DEBUG
  97.  
  98.  
  99. WELCOME:
  100.     sz$ = UIStartDlg(CUIDLL$, WELCOME, "FInfoDlgProc", APPHELP, HELPPROC$)
  101.     IF sz$ = "CONTINUE" THEN
  102.         UIPop 1
  103.     ELSE
  104.         GOSUB ASKQUIT
  105.         GOTO WELCOME
  106.     END IF
  107.  
  108.     w% = GetScreenWidth
  109.     h% = GetScreenHeight
  110.  
  111. '    IF w% < 800 THEN
  112. '        i% = DoMsgBox("display driver must be running at a minimum 800 x 600 x 256 colors resolution. Run windows setup to change your display driver", "SETUP FATAL ERROR", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  113. '        ERROR STFERR
  114. '        GOTO QUIT
  115. '    ENDIF
  116. '    IF h% < 600 THEN
  117. '        i% = DoMsgBox("display driver must be running at a minimum 800 x 600 x 256 colors resolution. Run windows setup to change your display driver", "SETUP FATAL ERROR", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  118. '        ERROR STFERR
  119. '        GOTO QUIT
  120. '    ENDIF
  121.  
  122. '    i% = Has87MathChip
  123. '    IF i% = 0 THEN
  124. '        i% = DoMsgBox("Setup could not find a MATH COPROCESSOR", "SETUP FATAL ERROR", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  125. '        ERROR STFERR
  126. '        GOTO QUIT
  127. '    ENDIF
  128.  
  129.  
  130. GETPATH:
  131.     SetSymbolValue "EditTextIn", DEST$
  132.     SetSymbolValue "EditFocus", "END"
  133. GETPATHL1:
  134.     sz$ = UIStartDlg(CUIDLL$, DESTPATH, "FEditDlgProc", APPHELP, HELPPROC$)
  135.     DEST$ = GetSymbolValue("EditTextOut")
  136.  
  137.     IF sz$ = "CONTINUE" THEN
  138.         IF IsDirWritable(DEST$) = 0 THEN
  139.             GOSUB BADPATH
  140.             GOTO GETPATHL1
  141.         END IF
  142.         UIPop 1
  143.     ELSEIF sz$ = "REACTIVATE" THEN
  144.         GOTO GETPATHL1
  145.     ELSEIF sz$ = "BACK" THEN
  146.         UIPop 1
  147.         GOTO WELCOME
  148.     ELSE
  149.         GOSUB ASKQUIT
  150.         GOTO GETPATH
  151.     END IF
  152.  
  153.     DESTEYES$ =  DEST + "\EYES"
  154.     DESTIMAGE$=  DEST + "\VIMAGE"
  155.     DESTMODEL$=  DEST + "\VMODEL"
  156.     DESTFONT$ =  DEST + "\VFONT"
  157.     DESTCATA$ =  DEST + "\VCATA"
  158.  
  159.     ''CustInst list symbols
  160.     CHECKIN$ = "CheckItemsIn"
  161.     CHECKOUT$ = "CheckItemsOut"
  162.  
  163.     FOR i% = 1 TO 7 STEP 1
  164.         AddListItem CHECKIN$, "ON"
  165.     NEXT i%
  166.  
  167.     IF OnWindowsNT() THEN
  168.     ELSE
  169.         AddListItem CHECKIN$, "ON"
  170.     END IF
  171.  
  172. CUSTINST:
  173.     sz$ = UIStartDlg(CUIDLL$, OPTIONS, "FCheckDlgProc", APPHELP, HELPPROC$)
  174.  
  175.     IF sz$ = "CONTINUE" THEN
  176.         UIPop 1
  177.         GOTO CHECKOPTIONS
  178.     ELSEIF sz$ = "PATH" THEN
  179.         GOTO GETPATH
  180.     ELSEIF sz$ = "CHK1" THEN
  181. '        RecalcOptFiles APPFILES
  182. '        SetDriveStatus
  183.         GOTO CUSTINST
  184.     ELSEIF sz$ = "CHK2" THEN
  185. '        RecalcOptFiles OPTFILES1
  186. '        SetDriveStatus
  187.         GOTO CUSTINST
  188.     ELSEIF sz$ = "CHK3" THEN
  189. '        RecalcOptFiles OPTFILES2
  190. '        SetDriveStatus
  191.         GOTO CUSTINST
  192.     ELSE
  193.         GOSUB ASKQUIT
  194.         GOTO CUSTINST
  195.     END IF
  196.  
  197. CHECKOPTIONS:
  198.     DOEYES$     = "NO"
  199.     DOTUTORIAL$ = "NO"
  200.     DOPLAYBACK$ = "NO"
  201.     DOIMAGE$     = "NO"
  202.     DOMODEL$     = "NO"
  203.     DOFONT$     = "NO"
  204.     DOCATA$     = "NO"
  205.  
  206.  
  207.     op1$ = GetListItem ( CHECKOUT$, EYESFILES)
  208.     IF op1$ = "ON" THEN
  209.         DOEYES$ = "YES"
  210.     ENDIF
  211.     op2$ = GetListItem ( CHECKOUT$, TUTORFILES)
  212.     IF op2$ = "ON" THEN
  213.         DOTUTORIAL$ = "YES"
  214.     ENDIF
  215.     op3$ = GetListItem ( CHECKOUT$, PLAYBACKFILES)
  216.     IF op3$ = "ON" THEN
  217.         DOPLAYBACK$ = "YES"
  218.     ENDIF
  219.     op4$ = GetListItem ( CHECKOUT$, IMAGEFILES)
  220.     IF op4$ = "ON" THEN
  221.         DOIMAGE$ = "YES"
  222.     ENDIF
  223.     op5$ = GetListItem ( CHECKOUT$, MODELFILES)
  224.     IF op5$ = "ON" THEN
  225.         DOMODEL$ = "YES"
  226.     ENDIF
  227.     op6$ = GetListItem ( CHECKOUT$, FONTFILES)
  228.     IF op6$ = "ON" THEN
  229.         DOFONT$ = "YES"
  230.     ENDIF
  231.     op7$ = GetListItem ( CHECKOUT$, CATAFILES)
  232.     IF op7$ = "ON" THEN
  233.         DOCATA$ = "YES"
  234.     ENDIF
  235.  
  236. INSTALLIT:
  237.  
  238.     WINDIR$ = GetWindowsDir()
  239.     WINSYSDIR$ = GetWindowsSysDir()
  240.     IF DoesIniKeyExist(WINDIR$ + "system.ini", "386Enh" , "PageOverCommit") = 0 THEN
  241.         CreateSysIniKeyValue WINDIR$ + "system.ini" , "386Enh" , "PageOverCommit" , "20" , cmoOverwrite
  242.     ENDIF
  243.     IF DoesIniKeyExist(WINDIR$ + "system.ini", "386Enh" , "EMMExclude") = 0 THEN
  244.         CreateSysIniKeyValue WINDIR$ + "system.ini" , "386Enh" , "EMMExclude" , "a000-ffff" , cmoOverwrite
  245.     ENDIF
  246.  
  247.     Install
  248.  
  249.  
  250. QUIT:
  251.     ON ERROR GOTO ERRQUIT
  252.  
  253.     IF ERR = 0 THEN
  254.         dlg% = EXITSUCCESS
  255.     ELSEIF ERR = STFQUIT THEN
  256.         dlg% = EXITQUIT
  257.     ELSE
  258.         dlg% = EXITFAILURE
  259.     END IF
  260. QUITL1:
  261.  
  262.     Cleanup(DEST$)
  263.  
  264.     sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
  265.     IF sz$ = "REACTIVATE" THEN
  266.         GOTO QUITL1
  267.     END IF
  268.     UIPop 1
  269.  
  270.     END
  271.  
  272. ERRQUIT:
  273.     i% = DoMsgBox("Setup sources were corrupted, call 818 883-7900!", "Setup Message", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  274.     END
  275.  
  276.  
  277.  
  278. BADPATH:
  279.     sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
  280.     IF sz$ = "REACTIVATE" THEN
  281.         GOTO BADPATH
  282.     END IF
  283.     UIPop 1
  284.     RETURN
  285.  
  286.  
  287.  
  288. ASKQUIT:
  289.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  290.  
  291.     IF sz$ = "EXIT" THEN
  292.         UIPopAll
  293.         ERROR STFQUIT
  294.     ELSEIF sz$ = "REACTIVATE" THEN
  295.         GOTO ASKQUIT
  296.     ELSE
  297.         UIPop 1
  298.     END IF
  299.     RETURN
  300.  
  301.  
  302.  
  303. '**
  304. '** Purpose:
  305. '**     Builds the copy list and performs all installation operations.
  306. '** Arguments:
  307. '**     none.
  308. '** Returns:
  309. '**     none.
  310. '*************************************************************************
  311. SUB Install STATIC
  312.  
  313.     SrcDir$ = GetSymbolValue("STF_SRCDIR") + "VREAL"
  314.     CreateDir DEST$, cmoNone
  315.     IF DOEYES$ = "YES" THEN
  316.         CreateDir DESTEYES$, cmoNone
  317.         CreateDir DESTEYES$ + "\CONFIG", cmoNone
  318.     ENDIF
  319.     IF DOTUTORIAL$ = "YES" THEN
  320.         CreateDir DESTEYES$, cmoNone
  321.         CreateDir DESTEYES$ + "\TUTOR", cmoNone
  322.         CreateDir DESTEYES$ + "\TUTOR\TUTOR1", cmoNone
  323.     CreateDir DESTEYES$ + "\TUTOR\TUTOR3", cmoNone
  324.     CreateDir DESTEYES$ + "\TUTOR\TUTOR4", cmoNone
  325.     CreateDir DESTEYES$ + "\TUTOR\TUTOR5", cmoNone
  326.     CreateDir DESTEYES$ + "\TUTOR\TUTOR6", cmoNone
  327.     CreateDir DESTEYES$ + "\TUTOR\TUTOR7", cmoNone
  328.     CreateDir DESTEYES$ + "\TUTOR\TUTOR8", cmoNone
  329.     CreateDir DESTEYES$ + "\TUTOR\TUTOR9", cmoNone
  330.     CreateDir DESTEYES$ + "\TUTOR\TUTOR10", cmoNone
  331.     CreateDir DESTEYES$ + "\TUTOR\TUTOR11", cmoNone
  332.     CreateDir DESTEYES$ + "\TUTOR\TUTOR12", cmoNone
  333.     CreateDir DESTEYES$ + "\TUTOR\TUTOR13", cmoNone
  334.     CreateDir DESTEYES$ + "\TUTOR\TUTOR14", cmoNone
  335.     CreateDir DESTEYES$ + "\TUTOR\TUTOR15", cmoNone
  336.     ENDIF
  337.     IF DOPLAYBACK$ = "YES" THEN
  338.         CreateDir DESTEYES$, cmoNone
  339.         CreateDir DESTEYES$ + "\PLAYBACK", cmoNone
  340.     ENDIF
  341.     IF DOIMAGE$ = "YES" THEN
  342.         CreateDir DEST$ + "\VIMAGE", cmoNone
  343.         CreateDir DEST$ + "\VCATA", cmoNone
  344.     ENDIF
  345.     IF DOMODEL$ = "YES" THEN
  346.         CreateDir DEST$ + "\VMODEL", cmoNone
  347.         CreateDir DEST$ + "\VMODEL\CONFIG", cmoNone
  348.     ENDIF
  349.     IF DOFONT$ = "YES" THEN
  350.         CreateDir DEST$ + "\VFONT", cmoNone
  351.         CreateDir DEST$ + "\VFONT\CONFIG", cmoNone
  352.     ENDIF
  353.     IF DOCATA$ = "YES" THEN
  354.         CreateDir DEST$ + "\VCATA", cmoNone
  355.     ENDIF
  356.  
  357.     AddToBillboardList CUIDLL$, WELCOMEBB, "WelcomeDlgProc", 10
  358.     AddToBillboardList CUIDLL$, RLIVEBB, "WelcomeDlgProc", 13
  359.     AddToBillboardList CUIDLL$, VFONTBB, "WelcomeDlgProc", 13
  360.     AddToBillboardList CUIDLL$, VIMAGEBB,"WelcomeDlgProc", 13
  361.     AddToBillboardList CUIDLL$, VMODELBB,"WelcomeDlgProc", 13
  362.     AddToBillboardList CUIDLL$, VCATABB, "WelcomeDlgProc", 13
  363.     AddToBillboardList CUIDLL$, ANIPLAY, "WelcomeDlgProc", 13
  364.  
  365.     IF DOEYES$ = "YES" THEN
  366.         AddSectionFilesToCopyList "EYES", SrcDir$, DESTEYES$
  367.         AddSectionFilesToCopyList "CONFIG", SrcDir$, DESTEYES$ + "\CONFIG"
  368.     ENDIF
  369.  
  370.     IF DOTUTORIAL$ = "YES" THEN
  371.         AddSectionFilesToCopyList "TUTOR", SrcDir$, DESTEYES$ + "\TUTOR"
  372.         AddSectionFilesToCopyList "TUTOR0", SrcDir$, DESTEYES$ + "\TUTOR"
  373.         AddSectionFilesToCopyList "TUTOR1", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR1"
  374.         AddSectionFilesToCopyList "TUTOR3", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR3"
  375.         AddSectionFilesToCopyList "TUTOR4", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR4"
  376.         AddSectionFilesToCopyList "TUTOR5", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR5"
  377.         AddSectionFilesToCopyList "TUTOR6", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR6"
  378.         AddSectionFilesToCopyList "TUTOR7", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR7"
  379.         AddSectionFilesToCopyList "TUTOR9", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR9"
  380.         AddSectionFilesToCopyList "TUTOR8", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR8"
  381.         AddSectionFilesToCopyList "TUTOR10", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR10"
  382.         AddSectionFilesToCopyList "TUTOR11", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR11"
  383.         AddSectionFilesToCopyList "TUTOR12", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR12"
  384.         AddSectionFilesToCopyList "TUTOR13", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR13"
  385.         AddSectionFilesToCopyList "TUTOR14", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR14"
  386.         AddSectionFilesToCopyList "TUTOR15", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR15"
  387.     ENDIF
  388.  
  389.     IF DOIMAGE$ = "YES" THEN
  390.         AddSectionFilesToCopyList "VIMAGE", SrcDir$, DESTIMAGE$
  391.     ENDIF
  392.  
  393.     IF DOMODEL$ = "YES" THEN
  394.         AddSectionFilesToCopyList "VMODEL", SrcDir$, DESTMODEL$
  395.         AddSectionFilesToCopyList "VMCONFIG", SrcDir$, DESTMODEL$ + "\CONFIG"
  396.     ENDIF
  397.  
  398.     IF DOPLAYBACK$ = "YES" THEN
  399.         AddSectionFilesToCopyList "VPLAYER", SrcDir$, DESTEYES$ + "\PLAYBACK"
  400.         AddSectionFilesToCopyList "Animator", SrcDir$, DESTEYES$ + "\PLAYBACK"
  401.     ENDIF
  402.  
  403.     IF DOCATA$ = "YES" THEN
  404.         AddSectionFilesToCopyList "VC", SrcDir$, DESTCATA$
  405.     ENDIF
  406.  
  407.     IF DOFONT$ = "YES" THEN
  408.         AddSectionFilesToCopyList "VFONT", SrcDir$, DESTFONT$
  409.         AddSectionFilesToCopyList "VFCONFIG", SrcDir$, DESTFONT$ + "\CONFIG"
  410.     ENDIF
  411.  
  412.     CopyFilesInCopyList
  413.  
  414.     CreateProgmanGroup "Visual Reality 2.0", "", cmoNone
  415.     ShowProgmanGroup  "Visual Reality 2.0", 1, cmoNone
  416.     IF DOEYES$ = "YES" THEN
  417.         CreateProgmanItem "Visual Reality 2.0", "Renderize Live", DESTEYES$ + "\eyes.exe ", "", cmoOverwrite
  418.     CreateProgmanItem "Visual Reality 2.0", "QuickStart Help", WINDIR$ + "winhelp.exe " + DESTEYES$ + "\config\quick.hlp ", "", cmoOverwrite
  419.     ENDIF
  420.     IF DOMODEL$ = "YES" THEN
  421.         CreateProgmanItem "Visual Reality 2.0", "Visual Model", DESTMODEL$ + "\vmodel.exe ", "", cmoOverwrite
  422.     ENDIF
  423.     IF DOIMAGE$ = "YES" THEN
  424.         CreateProgmanItem "Visual Reality 2.0", "Visual Image", DESTIMAGE$ + "\vimage.exe ", "", cmoOverwrite
  425.     ENDIF
  426.     IF DOFONT$ = "YES" THEN
  427.         CreateProgmanItem "Visual Reality 2.0", "Visual Font", DESTFONT$ + "\vfont.exe ", "", cmoOverwrite
  428.     ENDIF
  429.     IF DOCATA$ = "YES" THEN
  430.         CreateProgmanItem "Visual Reality 2.0", "Visual Catalogue", DESTCATA$ + "\vc.exe ", "", cmoOverwrite
  431.     ENDIF
  432.     IF DOPLAYBACK$ = "YES" THEN
  433.         CreateProgmanItem "Visual Reality 2.0", "Visual Player", DESTEYES$ + "\playback\vplaynt.exe ", "", cmoOverwrite
  434.         CreateProgmanItem "Visual Reality 2.0", "Animator", DESTEYES$ + "\playback\aawin.exe ", "", cmoOverwrite
  435.     ENDIF
  436.  
  437. END SUB
  438.  
  439.  
  440.  
  441. '**
  442. '** Purpose:
  443. '**     Appends a file name to the end of a directory path,
  444. '**     inserting a backslash character as needed.
  445. '** Arguments:
  446. '**     szDir$  - full directory path (with optional ending "\")
  447. '**     szFile$ - filename to append to directory
  448. '** Returns:
  449. '**     Resulting fully qualified path name.
  450. '*************************************************************************
  451. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  452.     IF szDir$ = "" THEN
  453.         MakePath = szFile$
  454.     ELSEIF szFile$ = "" THEN
  455.         MakePath = szDir$
  456.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  457.         MakePath = szDir$ + szFile$
  458.     ELSE
  459.         MakePath = szDir$ + "\" + szFile$
  460.     END IF
  461. END FUNCTION
  462.  
  463.  
  464. SUB Cleanup (dest$) STATIC
  465.     RemoveFile dest$ + "\vreal.mst",    cmoNone
  466.     RemoveFile dest$ + "\setup.inf",    cmoNone
  467.     RemoveFile dest$ + "\setup.lst",    cmoNone
  468.     RemoveFile dest$ + "\setup.exe",    cmoNone
  469.     RemoveFile dest$ + "\setupapi.inc", cmoNone
  470.     RemoveFile dest$ + "\msdetect.inc", cmoNone
  471.     RemoveFile dest$ + "\mscomstf.dll", cmoNone
  472.     RemoveFile dest$ + "\msinsstf.dll", cmoNone
  473.     RemoveFile dest$ + "\msuilstf.dll", cmoNone
  474.     RemoveFile dest$ + "\msshlstf.dll", cmoNone
  475.     RemoveFile dest$ + "\mscuistf.dll", cmoNone
  476.     RemoveFile dest$ + "\msdetstf.dll", cmoNone
  477.     RemoveFile dest$ + "\iniupd.dll",    cmoNone
  478.     RemoveFile dest$ + "\_mstest.exe",  cmoNone
  479.     RemoveFile dest$ + "\_mssetup.exe", cmoNone
  480. END SUB
  481.  
  482.