home *** CD-ROM | disk | FTP | other *** search
/ PC go! 1996 January / Image.iso / pcgo / demo / boerse / setup.mst < prev    next >
Encoding:
Text File  |  1995-05-09  |  6.1 KB  |  200 lines

  1. '**************************************************************************
  2. '*                       MSSetup Toolkit Sample 1
  3. '**************************************************************************
  4.  
  5. '$INCLUDE 'setupapi.inc'
  6. '$INCLUDE 'msdetect.inc'
  7.  
  8. CONST Dlg_Welcome           = 1000
  9. CONST Dlg_DestinationPath   = 1010
  10. CONST Dlg_InvalidPath       = 1020
  11. CONST Dlg_Failure           = 1030
  12. CONST Dlg_AskQuit           = 1040
  13. CONST Dlg_Quit              = 1050
  14. CONST Dlg_Help              = 1060
  15. CONST Dlg_Success           = 1090
  16. CONST Dlg_InstallDatabase   = 1100
  17. CONST DlG_Autoexec          = 1200
  18. CONST DLG_AutoexecOld       = 1210
  19. CONST DLG_AutoexecCh3       = 1220
  20. CONST DlG_Config            = 1300
  21. CONST DLG_ConfigOld         = 1310
  22. CONST DLG_ConfigCh3         = 1320
  23.  
  24. CONST Bmp_LOGO              = 10000
  25.  
  26. GLOBAL DLL_chartHeft$
  27. GLOBAL DestinationPath$        ''Default destination directory.
  28.  
  29. DECLARE SUB Install
  30. DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  31.  
  32.   INIT:
  33.     DLL_chartHeft$ = "nwpstp.DLL"
  34.     SetTitle "NWP-B÷rse Light Installation"
  35.  
  36.     szInf$ = GetSymbolValue("STF_SRCDIR")+"setup.inf"
  37.     ReadInfFile szInf$
  38.  
  39.     ON ERROR GOTO QUIT
  40.  
  41.   WELCOME:
  42.     sz$ = UIStartDlg(DLL_chartHeft$, Dlg_Welcome, "FDlgProc", Dlg_Help, "FdlgProc")
  43.     UIPop 1
  44.     IF sz$ = "Abbruch" THEN
  45.       GOSUB ASKQUIT
  46.       GOTO WELCOME
  47.      END IF
  48.  
  49.     DestinationPath$ = "C:\CH30"
  50.     SetSymbolValue "EditTextOut", DestinationPath$
  51.  
  52.   GETPATH:
  53.     sz$ = UIStartDlg(DLL_chartHeft$, Dlg_DestinationPath, "FPathDlgProc", Dlg_Help, "FDlgProc")
  54.     UIPop 1
  55.     IF sz$ = "Weiter" THEN
  56.       DestinationPath$ = GetSymbolValue("EditTextOut")
  57.       IF IsDirWritable(DestinationPath$) = 0 THEN
  58.         GOSUB BADPATH
  59.         GOTO GETPATH
  60.        END IF
  61.      ELSEIF sz$ = "Abbruch" THEN
  62.        GOSUB ASKQUIT
  63.        GOTO GETPATH
  64.       ELSEIF sz$ = "Zurueck" THEN
  65.         GOTO WELCOME
  66.        END IF
  67.  
  68.     INSTALL
  69.  
  70.   SYSFILES:
  71.     sz$ = UIStartDlg(DLL_chartHeft$, Dlg_Autoexec, "FShareAskDlgProc", 0,"")
  72.     UIPop 1
  73.     IF sz$ = "Abbruch" THEN
  74.       GOTO SYSFILES
  75.      ELSEIF sz$ = "Ja" THEN
  76.        sz$ = UIStartDlg(DLL_chartHeft$, Dlg_AutoexecOld, "FDlgProc", 0,"")
  77.        UIPop 1
  78.       ELSEIF sz$ = "Nein" THEN
  79.         sz$ = UIStartDlg(DLL_chartHeft$, Dlg_AutoexecCh3, "FDlgProc", 0,"")
  80.         UIPop 1
  81.        END IF
  82.  
  83.   SYSFILES_2:
  84.     sz$ = UIStartDlg(DLL_chartHeft$, Dlg_Config, "FConfigAskDlgProc", 0,"")
  85.     UIPop 1
  86.     IF sz$ = "Abbruch" THEN
  87.       GOTO SYSFILES_2
  88.      ELSEIF sz$ = "Ja" THEN
  89.        sz$ = UIStartDlg(DLL_chartHeft$, Dlg_ConfigOld, "FDlgProc", 0,"")
  90.        UIPop 1
  91.       ELSEIF sz$ = "Nein" THEN
  92.         sz$ = UIStartDlg(DLL_chartHeft$, Dlg_ConfigCh3, "FDlgProc", 0,"")
  93.         UIPop 1
  94.        END IF
  95.  
  96.   QUIT:
  97.     IF ERR = 0 THEN
  98.       dlg% = Dlg_Success
  99.      ELSEIF ERR = STFQUIT THEN
  100.        dlg% = Dlg_Quit
  101.       ELSE
  102.         dlg% = Dlg_Failure
  103.        END IF
  104.  
  105.   QUITL1:
  106.     sz$ = UIStartDlg(DLL_chartHeft$, dlg%, "FDlgProc", 0, "")
  107.     UIPop 1
  108.     IF sz$ = "Abbruch" THEN
  109.       GOTO QUITL1
  110.      END IF
  111.     UIPopAll
  112.    END
  113.  
  114.   ERRQUIT:
  115.     i% = DoMsgBox("Dieser Diskettensatz ist fehlerhaft!", "chartHeft 3.0  Installation", MB_OK + MB_TASKMODAL + MB_ICONHAND)
  116.     END
  117.  
  118.  
  119.  
  120.   BADPATH:
  121.     sz$ = UIStartDlg(DLL_chartHeft$, Dlg_InvalidPath, "FDlgProc", 0, "")
  122.     UIPop 1
  123.     IF sz$ = "Abbruch" THEN
  124.       GOTO BADPATH
  125.      END IF
  126.    RETURN
  127.  
  128.  
  129.  
  130.   ASKQUIT:
  131.     sz$ = UIStartDlg(DLL_chartHeft$, Dlg_AskQuit, "FDlgProc", 0, "")
  132.     UIPop 1
  133.     IF sz$ = "Ja" THEN
  134.       UIPopAll
  135.       ERROR STFQUIT
  136.      ELSEIF sz$ = "Abbruch" THEN
  137.        GOTO ASKQUIT
  138.       END IF
  139.    RETURN
  140.  
  141.  
  142.  
  143. '**
  144. '** Purpose:
  145. '**     Builds the copy list and performs all installation operations.
  146. '** Arguments:
  147. '**     none.
  148. '** Returns:
  149. '**     none.
  150. '*************************************************************************
  151. SUB Install STATIC
  152.  
  153.     SrcDir$ = GetSymbolValue("STF_SRCDIR")
  154.     CreateDir DestinationPath$, cmoNone
  155.  
  156.     AddSectionFilesToCopyList "chartHeft 3.0 Files", SrcDir$, DestinationPath$
  157.  
  158.  
  159.     CopyFilesInCopyList
  160.  
  161.     CreateProgmanGroup "NWP-B÷rse Light", "", cmoNone
  162.     ShowProgmanGroup  "NWP-B÷rse Light", 1, cmoNone
  163.     CreateProgmanItem "NWP-B÷rse Light", "READ.ME", "NOTEPAD.EXE " + MakePath(DestinationPath$,"READ.ME"), "", cmoOverwrite
  164.     CreateProgmanItem "NWP-B÷rse Light", "NWP-B÷rse  Stammdaten", MakePath(DestinationPath$,"STA_MAIN.EXE"), "", cmoOverwrite
  165.     CreateProgmanItem "NWP-B÷rse Light", "NWP-B÷rse  Kurseditor", MakePath(DestinationPath$,"KRS_MAIN.EXE"), "", cmoOverwrite
  166.     CreateProgmanItem "NWP-B÷rse Light", "NWP-B÷rse  Filter", MakePath(DestinationPath$,"FIL_MAIN.EXE"), "", cmoOverwrite
  167.     CreateProgmanItem "NWP-B÷rse Light", "NWP-B÷rse  Chart", MakePath(DestinationPath$,"CHA_MAIN.EXE"), ",1", cmoOverwrite
  168.     CreateProgmanItem "NWP-B÷rse Light", "NWP-B÷rse  Liste", MakePath(DestinationPath$,"LST_MAIN.EXE"), "", cmoOverwrite
  169.     CreateProgmanItem "NWP-B÷rse Light", "NWP-B÷rse  Kataloge", MakePath(DestinationPath$,"KAT_MAIN.EXE"), "", cmoOverwrite
  170.     CreateProgmanItem "NWP-B÷rse Light", "NWP-B÷rse  DFU", MakePath(DestinationPath$,"DFU.EXE"), "", cmoOverwrite
  171.     CreateProgmanItem "NWP-B÷rse Light", "NWP-B÷rse  ASCII", MakePath(DestinationPath$,"DFU_MAIN.EXE"), "", cmoOverwrite
  172.     CreateProgmanItem "NWP-B÷rse Light", "NWP-B÷rse Light", MakePath(DestinationPath$,"TPW.EXE"), "", cmoOverwrite
  173.  
  174. END SUB
  175.  
  176.  
  177.  
  178. '**
  179. '** Purpose:
  180. '**     Appends a file name to the end of a directory path,
  181. '**     inserting a backslash character as needed.
  182. '** Arguments:
  183. '**     szDir$  - full directory path (with optional ending "\")
  184. '**     szFile$ - filename to append to directory
  185. '** Returns:
  186. '**     Resulting fully qualified path name.
  187. '*************************************************************************
  188. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  189.     IF szDir$ = "" THEN
  190.         MakePath = szFile$
  191.     ELSEIF szFile$ = "" THEN
  192.         MakePath = szDir$
  193.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  194.         MakePath = szDir$ + szFile$
  195.     ELSE
  196.         MakePath = szDir$ + "\" + szFile$
  197.     END IF
  198. END FUNCTION
  199.  
  200.