home *** CD-ROM | disk | FTP | other *** search
/ Computer Buyer 1997 July / dpcb0797.iso / simply / simply3d / SIMPLY3D.MST < prev    next >
Text File  |  1995-08-10  |  17KB  |  510 lines

  1. '*                       Simply3D 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 BLOBFILES         = 3
  24. CONST PLAYBACKFILES     = 4
  25. CONST FONTFILES     = 5
  26. CONST CATAFILES         = 6
  27. CONST DEMOFILES     = 7
  28. CONST VFWFILES         = 8
  29.  
  30. CONST RLIVEBB            = 6401
  31. CONST VFONTBB            = 6402
  32. CONST VCATABB            = 6405
  33. CONST ANIPLAY            = 6406
  34. CONST WELCOMEBB            = 6407
  35. CONST SSCENESBB            = 6408
  36. CONST WINBLOBBB            = 6409
  37.  
  38. ''Bitmap ID
  39. CONST LOGO = 1
  40.  
  41. GLOBAL SRCDRIVE$   ''Default source drive.
  42. GLOBAL DEST$        ''Default destination directory.
  43. GLOBAL DESTEYES$    ''Default destination directory.
  44. GLOBAL DESTCATA$    ''Default destination directory.
  45. GLOBAL DESTFONT$    ''Default destination directory.
  46. GLOBAL DESTBLOB$    ''Default destination directory.
  47. GLOBAL WINDIR$      ''Default destination directory.
  48. GLOBAL WINSYSDIR$   ''Default destination directory.
  49. GLOBAL EXECOPT$     ''Option selection from OptFiles1 option dialog.
  50. GLOBAL TUTOROPT$    ''Option selection from OptFiles2 option dialog.
  51. GLOBAL DOEYES$      ''Option selection to install the executable and config files.
  52. GLOBAL DOTUTORIAL$  ''Option selection to install tutorials.
  53. GLOBAL DOPLAYBACK$  ''Option selection to install playbacks.
  54. GLOBAL DOFONT$      ''Option selection to install Visual Font.
  55. GLOBAL DOCATA$      ''Option selection to install Visual Catalogue.
  56. GLOBAL DODEMO$      ''Option selection to install demos.
  57. GLOBAL DOBLOB$      ''Option selection to install WinBlob.
  58. GLOBAL DOVFW$       ''Option selection to install Video for Windows.
  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 "Simply 3D SuperPack CD-ROM 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:\SIMPLY3D"
  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 OnWindowsNT() THEN
  112.         i% = DoMsgBox("This setup of Simply 3D cannot run on Windows NT.", "Installation Problem", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  113.     ERROR STFERR       
  114.     GOTO QUIT
  115.     END IF
  116.  
  117.     IF w% < 800 THEN
  118.         i% = DoMsgBox("display driver must be running at a minimum 800 x 600 resolution", "SETUP FATAL ERROR", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  119.         ERROR STFERR
  120.         GOTO QUIT
  121.     ENDIF
  122.     IF h% < 600 THEN
  123.         i% = DoMsgBox("display driver must be running at a minimum 800 x 600 resolution", "SETUP FATAL ERROR", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  124.         ERROR STFERR
  125.         GOTO QUIT
  126.     ENDIF
  127.  
  128.     i% = Has87MathChip
  129.     IF i% = 0 THEN
  130.         i% = DoMsgBox("Setup could not find a MATH COPROCESSOR", "SETUP FATAL ERROR", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  131.         ERROR STFERR
  132.         GOTO QUIT
  133.     ENDIF
  134.  
  135. GETPATH:
  136.     SetSymbolValue "EditTextIn", DEST$
  137.     SetSymbolValue "EditFocus", "END"
  138. GETPATHL1:
  139.     sz$ = UIStartDlg(CUIDLL$, DESTPATH, "FEditDlgProc", APPHELP, HELPPROC$)
  140.     DEST$ = GetSymbolValue("EditTextOut")
  141.  
  142.     IF sz$ = "CONTINUE" THEN
  143.         IF IsDirWritable(DEST$) = 0 THEN
  144.             GOSUB BADPATH
  145.             GOTO GETPATHL1
  146.         END IF
  147.         UIPop 1
  148.     ELSEIF sz$ = "REACTIVATE" THEN
  149.         GOTO GETPATHL1
  150.     ELSEIF sz$ = "BACK" THEN
  151.         UIPop 1
  152.         GOTO WELCOME
  153.     ELSE
  154.         GOSUB ASKQUIT
  155.         GOTO GETPATH
  156.     END IF
  157.  
  158.     DESTEYES$ = DEST$ + "\EYESEZ"
  159.     DESTFONT$ = DEST$ + "\VFONT"
  160.     DESTCATA$ = DEST$ + "\VCATA"
  161.     DESTBLOB$ = DEST$ + "\WINBLOB"
  162.  
  163.     ''CustInst list symbols
  164.     CHECKIN$  = "CheckItemsIn"
  165.     CHECKOUT$ = "CheckItemsOut"
  166.  
  167.     FOR i% = 1 TO 7 STEP 1
  168.         AddListItem CHECKIN$, "ON"
  169.     NEXT i%
  170.  
  171. CUSTINST:
  172.     sz$ = UIStartDlg(CUIDLL$, OPTIONS, "FCheckDlgProc", APPHELP, HELPPROC$)
  173.  
  174.     IF sz$ = "CONTINUE" THEN
  175.         UIPop 1
  176.         GOTO CHECKOPTIONS
  177.     ELSEIF sz$ = "PATH" THEN
  178.         GOTO GETPATH
  179.     ELSEIF sz$ = "CHK1" THEN
  180. '        RecalcOptFiles APPFILES
  181. '        SetDriveStatus
  182.         GOTO CUSTINST
  183.     ELSEIF sz$ = "CHK2" THEN
  184. '        RecalcOptFiles OPTFILES1
  185. '        SetDriveStatus
  186.         GOTO CUSTINST
  187.     ELSEIF sz$ = "CHK3" THEN
  188. '        RecalcOptFiles OPTFILES2
  189. '        SetDriveStatus
  190.         GOTO CUSTINST
  191.     ELSE
  192.         GOSUB ASKQUIT
  193.         GOTO CUSTINST
  194.     END IF
  195.  
  196. CHECKOPTIONS:
  197.     DOEYES$     = "NO"
  198.     DOTUTORIAL$ = "NO"
  199.     DOPLAYBACK$ = "NO"
  200.     DOFONT$     = "NO"
  201.     DOCATA$     = "NO"
  202.     DODEMO$     = "NO"
  203.     DOBLOB$      = "NO"
  204.     DOVFW$      = "NO"
  205.  
  206.     op1$ = GetListItem ( CHECKOUT$, EYESFILES)
  207.     IF op1$ = "ON" THEN
  208.         DOEYES$ = "YES"
  209.     ENDIF
  210.     op2$ = GetListItem ( CHECKOUT$, TUTORFILES)
  211.     IF op2$ = "ON" THEN
  212.         DOTUTORIAL$ = "YES"
  213.     ENDIF
  214.     op3$ = GetListItem ( CHECKOUT$, BLOBFILES)
  215.     IF op3$ = "ON" THEN
  216.        DOBLOB$ = "YES"
  217.     ENDIF
  218.     op4$ = GetListItem ( CHECKOUT$, PLAYBACKFILES)
  219.     IF op4$ = "ON" THEN
  220.         DOPLAYBACK$ = "YES"
  221.     ENDIF
  222.     op5$ = GetListItem ( CHECKOUT$, FONTFILES)
  223.     IF op5$ = "ON" THEN
  224.         DOFONT$ = "YES"
  225.     ENDIF
  226.     op6$ = GetListItem ( CHECKOUT$, CATAFILES)
  227.     IF op6$ = "ON" THEN
  228.        DOCATA$ = "YES"
  229.     ENDIF
  230.     op7$ = GetListItem ( CHECKOUT$, DEMOFILES)
  231.     IF op7$ = "ON" THEN
  232.        DODEMO$ = "YES"
  233.     ENDIF
  234.     op8$ = GetListItem ( CHECKOUT$, VFWFILES)
  235.     IF op8$ = "ON" THEN
  236.        DOVFW$ = "YES"
  237.     ENDIF
  238.  
  239. INSTALLIT:
  240.  
  241.     WINDIR$ = GetWindowsDir()
  242.     WINSYSDIR$ = GetWindowsSysDir()
  243.     CreateSysIniKeyValue WINDIR$ + "system.ini" , "386Enh" , "PageOverCommit" , "20" , cmoOverwrite
  244.  
  245.     Install
  246.  
  247.  
  248. QUIT:
  249.     ON ERROR GOTO ERRQUIT
  250.  
  251.     IF ERR = 0 THEN
  252.         dlg% = EXITSUCCESS
  253.     ELSEIF ERR = STFQUIT THEN
  254.         dlg% = EXITQUIT
  255.     ELSE
  256.         dlg% = EXITFAILURE
  257.     END IF
  258. QUITL1:
  259.  
  260.     Cleanup(DEST$)
  261.  
  262.     sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
  263.     IF sz$ = "REACTIVATE" THEN
  264.         GOTO QUITL1
  265.     END IF
  266.     UIPop 1
  267.  
  268.     END
  269.  
  270. ERRQUIT:
  271.     i% = DoMsgBox("Setup sources were corrupted, call 818 883-7900!", "Setup Message", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  272.     END
  273.  
  274.  
  275.  
  276. BADPATH:
  277.     sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
  278.     IF sz$ = "REACTIVATE" THEN
  279.         GOTO BADPATH
  280.     END IF
  281.     UIPop 1
  282.     RETURN
  283.  
  284.  
  285.  
  286. ASKQUIT:
  287.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  288.  
  289.     IF sz$ = "EXIT" THEN
  290.         UIPopAll
  291.         ERROR STFQUIT
  292.     ELSEIF sz$ = "REACTIVATE" THEN
  293.         GOTO ASKQUIT
  294.     ELSE
  295.         UIPop 1
  296.     END IF
  297.     RETURN
  298.  
  299.  
  300.  
  301. '**
  302. '** Purpose:
  303. '**     Builds the copy list and performs all installation operations.
  304. '** Arguments:
  305. '**     none.
  306. '** Returns:
  307. '**     none.
  308. '*************************************************************************
  309. SUB Install STATIC
  310.  
  311.     SRCDRIVE$ = GetSymbolValue("STF_SRCDIR")
  312.     SrcDir$ = GetSymbolValue("STF_SRCDIR") + "SIMPLY3D"
  313.     CreateDir DEST$, cmoNone
  314.     IF DOEYES$ = "YES" THEN
  315.         CreateDir DESTEYES$, cmoNone
  316.         CreateDir DESTEYES$ + "\CONFIG", cmoNone
  317.     ENDIF
  318.  
  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.     ENDIF
  331.  
  332.     IF DOPLAYBACK$ = "YES" THEN
  333.         CreateDir DESTEYES$, cmoNone
  334.         CreateDir DESTEYES$ + "\PLAYBACK", cmoNone
  335.     ENDIF
  336.  
  337.     IF DOFONTS$ = "YES" THEN
  338.         CreateDir DEST$ + "\VFONT", cmoNone
  339.     ENDIF
  340.  
  341.     IF DOCATA$ = "YES" THEN
  342.         CreateDir DEST$ + "\VCATA", cmoNone
  343.     ENDIF
  344.  
  345.     IF DOBLOB$ = "YES" THEN
  346.         CreateDir DEST$ + "\WINBLOB", cmoNone
  347.     ENDIF
  348.  
  349.     AddToBillboardList CUIDLL$, WELCOMEBB, "WelcomeDlgProc", 6
  350.     AddToBillboardList CUIDLL$, RLIVEBB, "WelcomeDlgProc", 11
  351.     AddToBillboardList CUIDLL$, WINBLOBBB,"WelcomeDlgProc",11
  352.     AddToBillboardList CUIDLL$, VFONTBB, "WelcomeDlgProc", 11
  353.     AddToBillboardList CUIDLL$, VCATABB, "WelcomeDlgProc", 11
  354.     AddToBillboardList CUIDLL$, ANIPLAY, "WelcomeDlgProc", 11
  355.     AddToBillboardList CUIDLL$, SSCENESBB,"WelcomeDlgProc",11
  356.  
  357.     IF DOEYES$ = "YES" THEN
  358.         AddSectionFilesToCopyList "EYES", SrcDir$, DESTEYES$
  359.         AddSectionFilesToCopyList "CONFIG", SrcDir$, DESTEYES$ + "\CONFIG"
  360.     ENDIF
  361.  
  362.     IF DOVFW$ = "YES" THEN
  363.         AddSectionFilesToCopyList "AVI Codecs", SrcDir$, WINSYSDIR$
  364.         AddSectionFilesToCopyList "OLE2", SrcDir$, WINSYSDIR$
  365.         AddSectionFilesToCopyList "VFW Runtime", SrcDir$, WINSYSDIR$
  366.         AddSectionFilesToCopyList "ACM Drivers", SrcDir$, WINSYSDIR$
  367.     ENDIF
  368.  
  369.     IF DOTUTORIAL$ = "YES" THEN
  370.         AddSectionFilesToCopyList "TUTOR", SrcDir$, DESTEYES$ + "\TUTOR"
  371.         AddSectionFilesToCopyList "TUTOR1", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR1"
  372.         AddSectionFilesToCopyList "TUTOR3", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR3"
  373.         AddSectionFilesToCopyList "TUTOR4", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR4"
  374.         AddSectionFilesToCopyList "TUTOR5", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR5"
  375.         AddSectionFilesToCopyList "TUTOR6", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR6"
  376.         AddSectionFilesToCopyList "TUTOR7", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR7"
  377.         AddSectionFilesToCopyList "TUTOR8", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR8"
  378.         AddSectionFilesToCopyList "TUTOR9", SrcDir$, DESTEYES$ + "\TUTOR\TUTOR9"
  379.     ENDIF
  380.  
  381.     IF DOFONT$ = "YES" THEN
  382.         AddSectionFilesToCopyList "VFONT", SrcDir$, DESTFONT$
  383.     ENDIF
  384.  
  385.     IF DOCATA$ = "YES" THEN
  386.         AddSectionFilesToCopyList "VC", SrcDir$, DESTCATA$
  387.     ENDIF
  388.  
  389.     IF DOBLOB$ = "YES" THEN
  390.         AddSectionFilesToCopyList "BLOB", SrcDir$, DESTBLOB$
  391.     ENDIF
  392.  
  393.     IF DOPLAYBACK$ = "YES" THEN
  394.         AddSectionFilesToCopyList "VPLAYER", SrcDir$, DESTEYES$ + "\PLAYBACK"
  395.         AddSectionFilesToCopyList "Animator", SrcDir$, DESTEYES$ + "\PLAYBACK"
  396.         AddSectionFilesToCopyList "MPlayer", SrcDir$, WinDir$
  397.     ENDIF
  398.  
  399.     CopyFilesInCopyList
  400.  
  401.     IF DOVFW$ = "YES" THEN
  402.     SetRestartDir WINDIR$
  403.     
  404.     IF VflatdPresent() = 0 THEN
  405.               CreateSysIniKeyValue WINDIR$ + "system.ini", "386Enh", "device", "dva.386", cmoOverwrite
  406.     END IF
  407.  
  408.     CreateIniKeyValue WINDIR$ + "system.ini", "Drivers", "VIDC.CVID", "iccvid.drv", cmoOverwrite
  409.         CreateIniKeyValue WINDIR$ + "system.ini", "Drivers", "VIDC.MSVC", "msvidc.drv", cmoOverwrite
  410.     CreateIniKeyValue WINDIR$ + "system.ini", "Drivers", "VIDC.IV31", "indeov.drv", cmoOverwrite
  411.     CreateIniKeyValue WINDIR$ + "system.ini", "Drivers", "VIDC.MRLE", "MSRLE.drv", cmoOverwrite
  412.  
  413.     I% = DoesIniKeyExist (WINDIR$ + "system.ini", "Drivers", "VIDC.RT21")
  414.     IF I% = 0  THEN
  415.               CreateIniKeyValue WINDIR$ + "system.ini", "Drivers", "VIDC.RT21", "indeov.drv", cmoOverwrite
  416.     END IF
  417.  
  418.     CreateIniKeyValue WINDIR$ + "system.ini", "Drivers", "VIDC.YVU9", "indeov.drv", cmoOverwrite
  419.     CreateIniKeyValue WINDIR$ + "WIN.INI", "mci extensions", "avi", "AVIVideo", cmoOverwrite
  420.     CreateIniKeyValue WINDIR$ + "system.ini", "mci", "AVIVideo", "mciavi.drv", cmoOverwrite
  421.     CreateIniKeyValue WINDIR$ + "system.ini", "Drivers", "WaveMapper", "msacm.drv", cmoOverwrite
  422.     CreateIniKeyValue WINDIR$ + "system.ini", "Drivers", "MSACM.msadpcm", "msadpcm.acm", cmoOverwrite
  423.     CreateIniKeyValue WINDIR$ + "system.ini", "Drivers", "MSACM.imaadpcm", "imaadpcm.acm", cmoOverwrite
  424.     CreateIniKeyValue WINDIR$ + "control.ini", "drivers.desc", "msacm.drv", "Microsoft Sound Mapper V2.00", cmoOverwrite
  425.     CreateIniKeyValue WINDIR$ + "control.ini", "drivers.desc", "msadpcm.acm", "Microsoft ADPCM Codec V2.00", cmoOverwrite
  426.     CreateIniKeyValue WINDIR$ + "control.ini", "drivers.desc", "imaadpcm.acm", "Microsoft IMA ADPCM Codec V2.00", cmoOverwrite
  427.  
  428.     IF DOPLAYBACK$ = "YES" THEN
  429.     Run ("regedit.exe /s " + MakePath(WINDIR$, "mplayer.reg"))
  430.     END IF
  431.  
  432.     Run ("regedit.exe /s " + MakePath(WinSysDir$, "OLE2.reg"))
  433.     Run ("regedit.exe /s " + MakePath(WinSysDir$, "cleanup.reg"))
  434.     ENDIF
  435.  
  436.     CreateProgmanGroup "Simply 3D SuperPack", "", cmoNone
  437.     ShowProgmanGroup  "Simply 3D SuperPack", 1, cmoNone
  438.     CreateProgmanItem "Simply 3D SuperPack", "User's Guide", DESTEYES$ + "\config\s3ddocs.exe ", DESTEYES$ + "\config\target.ico", cmoOverwrite
  439.  
  440.     IF DOEYES$ = "YES" THEN
  441.     CreateProgmanItem "Simply 3D SuperPack", "Renderize Live EZ", DESTEYES$ + "\eyesez.exe ", "", cmoOverwrite
  442.     ENDIF
  443.     IF DOBLOB$ = "YES" THEN
  444.         CreateProgmanItem "Simply 3D SuperPack", "WinBlobs for Windows 2.0", DESTBLOB$ + "\blobs.exe ", "", cmoOverwrite
  445.     ENDIF
  446.     IF DOFONT$ = "YES" THEN
  447.         CreateProgmanItem "Simply 3D SuperPack", "Visual Font", DESTFONT$ + "\vfont.exe ", "", cmoOverwrite
  448.     ENDIF
  449.     IF DOCATA$ = "YES" THEN
  450.         CreateProgmanItem "Simply 3D SuperPack", "Visual Catalogue", DESTCATA$ + "\vc.exe ", "", cmoOverwrite
  451.     ENDIF
  452.     IF DOPLAYBACK$ = "YES" THEN
  453.         CreateProgmanItem "Simply 3D SuperPack", "Visual Player", DESTEYES$ + "\playback\vplayer.exe ", "", cmoOverwrite
  454.         CreateProgmanItem "Simply 3D SuperPack", "Media Player", WINDIR + "mplayer.exe ", "", cmoOverwrite
  455.         CreateProgmanItem "Simply 3D SuperPack", "Animator", DESTEYES$ + "\playback\aawin.exe ", "", cmoOverwrite
  456.     ENDIF
  457.     IF DODEMO$ = "YES" THEN
  458.         CreateProgmanItem "Simply 3D SuperPack", "3D Demo   Hard Disk", SRCDRIVE$ + "simply3d\mmdemo\simphd.exe ", "", cmoOverwrite
  459.         CreateProgmanItem "Simply 3D SuperPack", "3D Demo   CD-Rom", SRCDRIVE$ + "simply3d\mmdemo\simpcd.exe ", "", cmoOverwrite
  460.         CreateProgmanItem "Simply 3D SuperPack", "3D Demo   Loop", SRCDRIVE$ + "simply3d\mmdemo\simplp.exe ", "", cmoOverwrite
  461.     ENDIF
  462.  
  463. END SUB
  464.  
  465.  
  466.  
  467. '**
  468. '** Purpose:
  469. '**     Appends a file name to the end of a directory path,
  470. '**     inserting a backslash character as needed.
  471. '** Arguments:
  472. '**     szDir$  - full directory path (with optional ending "\")
  473. '**     szFile$ - filename to append to directory
  474. '** Returns:
  475. '**     Resulting fully qualified path name.
  476. '*************************************************************************
  477. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  478.     IF szDir$ = "" THEN
  479.         MakePath = szFile$
  480.     ELSEIF szFile$ = "" THEN
  481.         MakePath = szDir$
  482.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  483.         MakePath = szDir$ + szFile$
  484.     ELSE
  485.         MakePath = szDir$ + "\" + szFile$
  486.     END IF
  487. END FUNCTION
  488.  
  489.  
  490. SUB Cleanup (dest$) STATIC
  491.     RemoveFile dest$ + "\vimage.mst",   cmoNone
  492.     RemoveFile dest$ + "\setup.inf",    cmoNone
  493.     RemoveFile dest$ + "\setup.lst",    cmoNone
  494.     RemoveFile dest$ + "\setup.exe",    cmoNone
  495.     RemoveFile dest$ + "\setupapi.inc", cmoNone
  496.     RemoveFile dest$ + "\msdetect.inc", cmoNone
  497.     RemoveFile dest$ + "\mscomstf.dll", cmoNone
  498.     RemoveFile dest$ + "\msinsstf.dll", cmoNone
  499.     RemoveFile dest$ + "\msuilstf.dll", cmoNone
  500.     RemoveFile dest$ + "\msshlstf.dll", cmoNone
  501.     RemoveFile dest$ + "\mscuistf.dll", cmoNone
  502.     RemoveFile dest$ + "\msdetstf.dll", cmoNone
  503.     RemoveFile dest$ + "\iniupd.dll",    cmoNone
  504.     RemoveFile dest$ + "\_mstest.exe",  cmoNone
  505.     RemoveFile dest$ + "\_mssetup.exe", cmoNone
  506. END SUB
  507.  
  508.  
  509. 
  510.