home *** CD-ROM | disk | FTP | other *** search
/ Sound, Music & MIDI Collection 2 / SMMVOL2.bin / DOS / DOS_MIS / IN3MK2.ZIP / IN3.MS_ / IN3.MS
Encoding:
Text File  |  1995-05-23  |  7.1 KB  |  246 lines

  1. '**************************************************************************
  2. '*                       MSSetup For IN3
  3. '**************************************************************************
  4.  
  5. '$INCLUDE 'setupapi.inc'
  6. '$INCLUDE 'msdetect.inc'
  7.  
  8. ''Dialog ID's
  9. CONST WELCOME      = 100
  10. CONST ASKQUIT      = 200
  11. CONST EXITFAILURE  = 400
  12. CONST EXITQUIT     = 600
  13. CONST EXITSUCCESS  = 700
  14. CONST OPTIONS      = 800
  15. CONST APPHELP      = 900
  16. CONST AUDPATH      = 1000
  17. CONST LEXPATH      = 1100
  18.  
  19. ''Bitmap ID
  20. CONST LOGO         = 1
  21.  
  22. ''File Types
  23. CONST APPFILES     = 1
  24. CONST LEXFILES     = 2
  25. CONST AUDFILES     = 3
  26. ''Pseudo File types (controls Program Grouping)
  27. CONST ADDACC       = 4
  28. CONST CREATIN3     = 5
  29.  
  30.  
  31. DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  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 "IN3 Voice Command System Setup"
  40.  
  41.     szInf$ = GetSymbolValue("STF_SRCINFPATH")
  42.     IF szInf$ = "" THEN
  43.         szInf$ = GetSymbolValue("STF_CWDDIR") + "IN3.INF"
  44.     END IF
  45.     ReadInfFile szInf$
  46.  
  47.     szSrc$ = GetSymbolValue("STF_SRCDIR")
  48.  
  49.  
  50. WELCOME:
  51.     sz$ = UIStartDlg(CUIDLL$, WELCOME, "FInfoDlgProc", APPHELP, HELPPROC$)
  52.     IF sz$ = "CONTINUE" THEN
  53.         UIPop 1
  54.     ELSE
  55.         GOSUB ASKQUIT
  56.         GOTO WELCOME
  57.     END IF
  58.  
  59.  
  60.     WINDRIVE$ = MID$(GetWindowsDir, 1, 1)
  61.     WINPATH$ = GetWindowsDir
  62.     WINSYSTEM$ = GetWindowsSysDir
  63.     OLDDLL$ = MakePath( WINSYSTEM$, "vrsdll.dll" )
  64.     IF DoesFileExist( OLDDLL$, femRead ) THEN
  65.         RemoveFile OLDDLL$, cmoNone
  66.     END IF
  67.     OLDDLL$ = MakePath( WINSYSTEM$, "vrsi.dll" )
  68.     IF DoesFileExist( OLDDLL$, femRead ) THEN
  69.         RemoveFile OLDDLL$, cmoNone
  70.     END IF
  71.     OLDDLL$ = MakePath( WINSYSTEM$, "vrl.dll" )
  72.     IF DoesFileExist( OLDDLL$, femRead ) THEN
  73.         RemoveFile OLDDLL$, cmoNone
  74.     END IF
  75.     OLDDLL$ = MakePath( WINSYSTEM$, "vrswave.dll" )
  76.     IF DoesFileExist( OLDDLL$, femRead ) THEN
  77.         RemoveFile OLDDLL$, cmoNone
  78.     END IF
  79.     OLDDLL$ = MakePath( WINSYSTEM$, "vrsi.dll" )
  80.     IF DoesFileExist( OLDDLL$, femRead ) THEN
  81.         RemoveFile OLDDLL$, cmoNone
  82.     END IF
  83.     OLDDLL$ = MakePath( WINPATH$, "vrl.dll" )
  84.     IF DoesFileExist( OLDDLL$, femRead ) THEN
  85.         RemoveFile OLDDLL$, cmoNone
  86.     END IF
  87.     OLDDLL$ = MakePath( WINPATH$, "vrsdemo.exe" )
  88.     IF DoesFileExist( OLDDLL$, femRead ) THEN
  89.         RemoveFile OLDDLL$, cmoNone
  90.     END IF
  91.     OLDDLL$ = MakePath( WINPATH$, "in3demo.exe" )
  92.     IF DoesFileExist( OLDDLL$, femRead ) THEN
  93.         RemoveFile OLDDLL$, cmoNone
  94.     END IF
  95.     OLDDLL$ = MakePath( WINPATH$, "in3.exe" )
  96.     IF DoesFileExist( OLDDLL$, femRead ) THEN
  97.         RemoveFile OLDDLL$, cmoNone
  98.     END IF
  99.     OLDDLL$ = MakePath( WINPATH$, "vrs.exe" )
  100.     IF DoesFileExist( OLDDLL$, femRead ) THEN
  101.         RemoveFile OLDDLL$, cmoNone
  102.     END IF
  103.  
  104.     ini$ = MakePath(WINPATH$, "IN3.INI")
  105.     iniold$ = MakePath(szSrc$, "IN3INI.OLD")
  106.  
  107.     IF DoesFileExist( ini$, femRead ) THEN
  108.         DESTLEX$=GetIniKeyString( ini$, "In3", "LexiconPath" )
  109.         LEXICON$=GetIniKeyString( ini$, "In3", "Lexicon" )
  110.         DESTAUD$=GetIniKeyString( ini$, "In3", "AudioPath" )
  111.         TOPMOST$=GetIniKeyString( ini$, "In3", "TopMost" )
  112.         AUDIOMSG$=GetIniKeyString( ini$, "In3", "AudioMsgs" )
  113.         CopyFile ini$, iniold$, cmoNone, 0
  114.     RemoveFile ini$, cmoNone
  115.     END IF
  116.  
  117.     ini$ = MakePath( szSrc$, "IN3.INI" )
  118.     iniold$ = MakePath( szSrc$, "IN3INI.INI" )
  119.  
  120.     IF DoesFileExist( ini$, femRead ) = 0 THEN
  121.     RenameFile iniold$, "IN3.INI"
  122.     END IF
  123.  
  124.     IF DoesFileExist( iniold$, femRead ) = 0 THEN
  125.     RemoveFile iniold$, cmoNone
  126.     END IF
  127.  
  128.     IF DESTLEX$ = "" THEN
  129.         DESTLEX$ = szSrc$
  130.     ELSEIF DoesDirExist( DESTLEX$ ) = 0 THEN
  131.         DESTLEX$ = szSrc$
  132.     END IF
  133.  
  134.     IF MID$(DESTLEX$, LEN(DESTLEX$), 1) <> "\" THEN
  135.         DESTLEX$ = DESTLEX$ + "\"
  136.     END IF
  137.  
  138.     IF DESTAUD$ = "" THEN
  139.         DESTAUD$ = DESTLEX$ + "AUDIO\"
  140.     END IF
  141.  
  142.     IF MID$(DESTAUD$, LEN(DESTAUD$), 1) <> "\" THEN
  143.         DESTAUD$ = DESTAUD$ + "\"
  144.     END IF
  145.  
  146.     IF DoesDirExist( DESTAUD$ ) = 0 THEN
  147.     DESTAUD$ = szSrc$
  148.     ELSEIF DoesFileExist( MakePath( DESTAUD$, "IN3READY.WAV" ), femRead ) = 0 THEN
  149.     DESTAUD$ = szSrc$
  150.     END IF
  151.  
  152.     IF TOPMOST$ = "" THEN
  153.     TOPMOST$ = "0"
  154.     END IF
  155.  
  156.     IF LEXICON$ = "" THEN
  157.     LEXICON$ = "DEMO"
  158.     END IF
  159.  
  160.     IF AUDIOMSG$ = "" THEN
  161.     AUDIOMSG$ = "1"
  162.     END IF
  163.  
  164. INSTALL:
  165.     CreateIniKeyValue ini$, "In3", "TopMost", TOPMOST$ , cmoNone
  166.  
  167.     CreateIniKeyValue ini$, "In3", "Lexicon", LEXICON$ , cmoNone
  168.     CreateIniKeyValue ini$, "In3", "Path", MakePath( szSrc$, "" ) , cmoNone
  169.     CreateIniKeyValue ini$, "In3", "LexiconPath", MakePath( DESTLEX$, "" ) , cmoOverwrite
  170.     CreateIniKeyValue ini$, "In3", "InstallPath", MakePath( szSrc$, "" ) , cmoOverwrite
  171.  
  172.     CreateIniKeyValue ini$, "In3", "AudioMsg", AUDIOMSG$  , cmoNone
  173.     CreateIniKeyValue ini$, "In3", "AudioPath", MakePath( DESTAUD$, "" ) , cmoOverwrite
  174.  
  175.     PMGROUP$="IN3"
  176.     CreateProgmanGroup "IN3", "", cmoNone
  177.     ShowProgmanGroup  PMGROUP$, 1, cmoNone
  178.  
  179.     CreateProgmanItem PMGROUP$, "IN3", MakePath( szSrc$, "in3.exe "), "", cmoOverwrite
  180.     CreateProgmanItem PMGROUP$, "IN3 HELP", MakePath( WINPATH$, "winhelp.exe " + MakePath( szSrc$, "in3.hlp" ) ), "", cmoOverwrite
  181.     CreateProgmanItem PMGROUP$, "IN3 Manual", MakePath( WINPATH$, "winhelp.exe " + MakePath( szSrc$, "in3man.hlp" ) ), "", cmoOverwrite
  182.     CreateProgmanItem PMGROUP$, "Release Notes", MakePath( WINPATH$, "write.exe " + MakePath( szSrc$, "release.wri" ) ), "", cmoOverwrite
  183.  
  184. QUIT:
  185.     ON ERROR GOTO ERRQUIT
  186.  
  187.     IF ERR = 0 THEN
  188.         dlg% = EXITSUCCESS
  189.     ELSEIF ERR = STFQUIT THEN
  190.         dlg% = EXITQUIT
  191.     ELSE
  192.         dlg% = EXITFAILURE
  193.     END IF
  194. QUITL1:
  195.     sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
  196.     IF sz$ = "REACTIVATE" THEN
  197.         GOTO QUITL1
  198.     END IF
  199.     UIPop 1
  200.  
  201.     END
  202.  
  203. ERRQUIT:
  204.     i% = DoMsgBox("Setup sources were corrupted, call (404)813-8030!", "Setup Message", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  205.     END
  206.  
  207.  
  208.  
  209. ASKQUIT:
  210.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  211.  
  212.     IF sz$ = "EXIT" THEN
  213.         UIPopAll
  214.         ERROR STFQUIT
  215.     ELSEIF sz$ = "REACTIVATE" THEN
  216.         GOTO ASKQUIT
  217.     ELSE
  218.         UIPop 1
  219.     END IF
  220.     RETURN
  221.  
  222.  
  223.  
  224. '**
  225. '** Purpose:
  226. '**     Appends a file name to the end of a directory path,
  227. '**     inserting a backslash character as needed.
  228. '** Arguments:
  229. '**     szDir$  - full directory path (with optional ending "\")
  230. '**     szFile$ - filename to append to directory
  231. '** Returns:
  232. '**     Resulting fully qualified path name.
  233. '*************************************************************************
  234. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  235.     IF szDir$ = "" THEN
  236.         MakePath = szFile$
  237.     ELSEIF szFile$ = "" THEN
  238.         MakePath = szDir$
  239.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  240.         MakePath = szDir$ + szFile$
  241.     ELSE
  242.         MakePath = szDir$ + "\" + szFile$
  243.     END IF
  244. END FUNCTION
  245.  
  246.