home *** CD-ROM | disk | FTP | other *** search
/ Chip 2001 September / Chip_2001-09_cd1.bin / tema / leda2 / demo_acca.exe / DISK1 / SETUP.MS_ / SETUP.bin
Text File  |  1998-08-18  |  22KB  |  692 lines

  1. '**************************************************************************
  2. '*                       MSSetup Toolkit Leda Instalation
  3. '**************************************************************************
  4.    
  5. '$DEFINE VACCADEMO 
  6. '$DEFINE NODEBUG  ''Define for script development/debugging
  7.  
  8. '$INCLUDE 'setupapi.inc'
  9. '$INCLUDE 'msdetect.inc'
  10.  
  11. ''Logic ID's
  12. CONST TRUE  = -1
  13. CONST FALSE =  0
  14.  
  15. ''Dialog ID's
  16. CONST WELCOME          = 100
  17. CONST ASKQUIT          = 200
  18. CONST DESTPATH         = 300
  19. CONST EXITFAILURE      = 400
  20. CONST EXITQUIT         = 600
  21. CONST EXITSUCCESS      = 700
  22. CONST OPTIONS          = 800
  23. CONST APPHELP          = 900 
  24. CONST MODELESS         = 5000
  25. CONST TOOBIG           = 6300
  26. CONST BADPATH          = 6400
  27. CONST CDCONFIRMINFO    = 7300
  28. CONST SRCDRV           = 7802
  29. CONST BADDRV           = 7801
  30. CONST OPTIONSCOPY      = 7803
  31. CONST OPTIONSNETWORK   = 7804
  32. CONST DESTPATHNETW     = 7805
  33. CONST OPTIONSCOPY1     = 7806
  34. CONST OPTIONSWORD      = 7814
  35. CONST APPHELP3         = 7815
  36.  
  37. ''Bitmap ID
  38. CONST LOGO = 1
  39.        
  40. GLOBAL CUIDLL$   
  41. GLOBAL NETDSTP$    
  42. GLOBAL DSTPATH$        ''Default destination directory.
  43. GLOBAL WINPATH$        
  44. GLOBAL SRCDRVR$
  45. GLOBAL OPTVER$         ''Option selection from option dialog.
  46. GLOBAL OPTCOPY$
  47. GLOBAL OPTNETW$
  48. GLOBAL EXEDIR$
  49. GLOBAL REQDISC&
  50. GLOBAL STRTDIR$
  51. GLOBAL CDROM%
  52. GLOBAL NETINST%
  53. GLOBAL ININAME$
  54. GLOBAL OPTWORD$ 
  55. GLOBAL VERWORD70$ 
  56. GLOBAL INSTDOC70$
  57. GLOBAL INSTDOC97$
  58. GLOBAL DCTNAME$
  59.  
  60. DECLARE SUB Install
  61. DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  62. DECLARE SUB CopyFilesFromCD (szSrcDir$) 
  63.  
  64. '$IFDEF VACCA  
  65.     EXEDIR$  = "VACCA"
  66.     REQDISC& = 42000000
  67.     STRTDIR$ = "VACCA"
  68.     INSTDOC70$ = "INSTVACC.DOC"
  69.     INSTDOC97$ = "VACCA97.DOC"
  70.     DCTNAME$ = "Velk² A-╚/╚-A slovnφk"    
  71. '$ENDIF
  72. '$IFDEF VAC  
  73.     EXEDIR$  = "VAC"
  74.     REQDISC& = 26000000
  75.     STRTDIR$ = "VAC"
  76.     INSTDOC70$ = "INSTVAC.DOC"
  77.     INSTDOC97$ = "VAC97.DOC"
  78.     DCTNAME$ = "Velk² A-╚ slovnφk"    
  79. '$ENDIF
  80. '$IFDEF MZD  
  81.     EXEDIR$  = "MZD"
  82.     REQDISC& = 8500000
  83.     STRTDIR$ = "MZD"
  84.     INSTDOC70$ = "INSTMZD.DOC"
  85.     INSTDOC97$ = "MZD97.DOC"
  86.     DCTNAME$ = "A-╚/╚-A slovnφk zpracovßnφ dat, ..."    
  87. '$ENDIF
  88. '$IFDEF CAF  
  89.     EXEDIR$  = "CAF"
  90.     REQDISC& = 8000000
  91.     STRTDIR$ = "CAF"
  92.     INSTDOC70$ = "INSTCAF.DOC"
  93.     INSTDOC97$ = "CAF97.DOC"
  94.     DCTNAME$ = "╚-A slovnφk (Fronek)"    
  95. '$ENDIF
  96. '$IFDEF ENC  
  97.     EXEDIR$  = "ENC"
  98.     REQDISC& = 14000000
  99.     STRTDIR$ = "ENC"
  100.     DCTNAME$ = ""    
  101. '$ENDIF
  102. '$IFDEF ACLAW  
  103.     EXEDIR$  = "ACLAW"
  104.     REQDISC& = 3500000
  105.     STRTDIR$ = "LAW"
  106.     INSTDOC70$ = "INSTACLA.DOC"
  107.     INSTDOC97$ = "ACLAW97.DOC"
  108.     DCTNAME$ = "A-╚ prßvnick² slovnφk"    
  109. '$ENDIF
  110. '$IFDEF ACEKO  
  111.     EXEDIR$  = "ACEKO"
  112.     REQDISC& = 13000000
  113.     STRTDIR$ = "EKON"
  114.     INSTDOC70$ = "INSTECO.DOC"
  115.     INSTDOC97$ = "ACEKO97.DOC"
  116.     DCTNAME$ = "A-╚ ekonomick² slovnφk"    
  117. '$ENDIF
  118. '$IFDEF ACLS  
  119.     EXEDIR$  = "ACLS"
  120.     REQDISC& = 5000000
  121.     STRTDIR$ = "LS"
  122.     INSTDOC70$ = "INSTACLS.DOC"
  123.     INSTDOC97$ = "ACLS97.DOC"
  124.     DCTNAME$ = "A-╚ lΘka°sk² slovnφk"    
  125. '$ENDIF
  126. '$IFDEF VACCADEMO  
  127.     EXEDIR$  = "DEMO"
  128.     REQDISC& = 1200000
  129.     STRTDIR$ = "DEM"
  130.     INSTDOC70$ = "INSTDEMO.DOC"
  131.     INSTDOC97$ = "DEMO97.DOC"
  132.     DCTNAME$ = "DEMOVERZE Velk² A-╚ slovnφk"    
  133. '$ENDIF
  134. '$IFDEF LEX  
  135.     EXEDIR$  = "LEX"
  136.     REQDISC& = 7000000
  137.     STRTDIR$ = "LEX"
  138.     INSTDOC70$ = "INSTLEX.DOC"
  139.     INSTDOC97$ = "LEX97.DOC"
  140.     DCTNAME$ = "Lexicon Medicum"    
  141. '$ENDIF
  142. '$IFDEF ACF  
  143.     EXEDIR$  = "ACF"
  144.     REQDISC& = 7000000
  145.     STRTDIR$ = "ACF"
  146.     INSTDOC70$ = "INSTACF.DOC"
  147.     INSTDOC97$ = "ACF97.DOC"
  148.     DCTNAME$ = "A-╚ slovnφk (Fronek)"    
  149. '$ENDIF
  150. '$IFDEF SSC  
  151.     EXEDIR$  = "SSC"
  152.     REQDISC& = 30000000
  153.     STRTDIR$ = "SSC"
  154.     INSTDOC70$ = "INSTSSC.DOC"
  155.     INSTDOC97$ = "SSC97.DOC"
  156.     DCTNAME$ = "Slovnφk spisovnΘ ΦeÜtiny"    
  157. '$ENDIF
  158.  
  159. INIT:
  160.     CUIDLL$ = "mscuistf.dll"            ''Custom user interface dll
  161.     HELPPROC$ = "FHelpDlgProc"          ''Help dialog procedure
  162.  
  163.     SetBitmap CUIDLL$, LOGO
  164.     SetTitle "Instalace LEDA"
  165.  
  166.     szInf$ = GetSymbolValue("STF_SRCINFPATH")
  167.     IF szInf$ = "" THEN
  168.         szInf$ = GetSymbolValue("STF_CWDDIR") + "SETUP.INF"
  169.     END IF
  170.     ReadInfFile szInf$
  171.              
  172.     CDROM%   = FALSE         
  173.     NETINST% = FALSE
  174.     OPTVER$  = "1"
  175.     OPTCOPY$ = "1"
  176.     OPTNETW$ = "1" 
  177.     OPTWORD$ = "1"
  178.     VERWORD70$ = "1"
  179.     DSTPATH$ = "C:\LEDA\" + EXEDIR
  180.     NETDSTP$ = "C:\LEDA\" + EXEDIR
  181.     SRCDRVR$ = "A:\"
  182.     WINPATH$ = GetWindowsDir
  183.     ININAME$ = EXEDIR$ + ".INI"
  184.  
  185. '$IFDEF DEBUG
  186.     i% = SetSizeCheckMode(scmOnIgnore)    '' could use scmOff; def = scmOnFatal
  187.     WinDrive$ = MID$(GetWindowsDir, 1, 1)
  188.     IF IsDriveValid(WinDrive$) = 0 THEN
  189.         i% = DoMsgBox("Windows drive ('"+WinDrive$+"') is not a valid drive.", "DEBUG", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  190.         GOTO QUIT
  191.     END IF
  192. '$ENDIF ''DEBUG
  193.  
  194. '*************************************************************************
  195. 'uvod
  196. '************************************************************************* 
  197.  
  198. WELCOME:
  199.     sz$ = UIStartDlg(CUIDLL$, WELCOME, "FInfoDlgProc", APPHELP, HELPPROC$)
  200.     IF sz$ = "CONTINUE" THEN
  201.         UIPop 1
  202.     ELSE
  203.         GOSUB ASKQUIT
  204.         GOTO WELCOME
  205.     END IF
  206.  
  207.  
  208. '*************************************************************************
  209. 'uvod
  210. '************************************************************************* 
  211.  
  212. OPTION:
  213.     SetSymbolValue "RadioDefault", OPTVER$
  214. OPTL1:
  215.     sz$ = UIStartDlg(CUIDLL$, OPTIONS, "FRadioDlgProc", APPHELP, HELPPROC$)
  216.     OPTVER$ = GetSymbolValue("ButtonChecked")
  217.  
  218.     IF sz$ = "CONTINUE" THEN
  219.         UIPop(1)
  220.     ELSEIF sz$ = "REACTIVATE" THEN
  221.         GOTO OPTL1
  222.     ELSE
  223.         GOSUB ASKQUIT
  224.         GOTO OPTION
  225.     END IF
  226.  
  227. '*************************************************************************
  228. 'instalovat makro pro MS WORD if WINDOWS
  229. '************************************************************************* 
  230. IF OPTVER$ = "1" THEN
  231. OPTIONSWORD:
  232.     SetSymbolValue "RadioDefault", OPTWORD$
  233. OPTWORD:
  234.     sz$ = UIStartDlg(CUIDLL$, OPTIONSWORD, "FRadioDlgProc", APPHELP3, HELPPROC$)
  235.     OPTWORD$ = GetSymbolValue("ButtonChecked")
  236.  
  237.     IF sz$ = "CONTINUE" THEN
  238.         UIPop(1)
  239.     ELSEIF sz$ = "REACTIVATE" THEN
  240.         GOTO OPTWORD
  241.     ELSE
  242.         GOSUB ASKQUIT
  243.         GOTO OPTIONSWORD
  244.     END IF
  245. END IF
  246. '*************************************************************************
  247. 'zadat cilovy adresar
  248. '************************************************************************* 
  249.  
  250.  
  251. GETPATH:
  252.     SetSymbolValue "EditTextIn", DSTPATH$
  253.     SetSymbolValue "EditFocus", "END"
  254. GETPATHL1:
  255.     sz$ = UIStartDlg(CUIDLL$, DESTPATH, "FEditDlgProc", APPHELP, HELPPROC$)
  256.     DSTPATH$ = GetSymbolValue("EditTextOut")
  257.  
  258.     IF sz$ = "CONTINUE" THEN
  259.         UIPop 1
  260.     ELSEIF sz$ = "REACTIVATE" THEN
  261.         GOTO GETPATHL1
  262.     ELSEIF sz$ = "BACK" THEN
  263.         UIPop 1
  264.         GOTO OPTION
  265.     ELSE
  266.         GOSUB ASKQUIT
  267.         GOTO GETPATH
  268.     END IF                                                 
  269.  
  270.     IF DoesDirExist(DSTPATH$) = 1 THEN
  271.        SetSymbolValue "ConfirmTextIn", DSTPATH$
  272.        sz$ = UIStartDlg(CUIDLL$, CDCONFIRMINFO, "FConfirmDlgProc", APPHELP, HELPPROC$)
  273.        
  274.        IF sz$ = "CONTINUE" THEN
  275.           UIPop 1
  276.        ELSE 
  277.           UIPop 1
  278.           GOTO GETPATH
  279.        END IF
  280.     END IF      
  281.  
  282. '*************************************************************************
  283. 'cilovy adresar je na siti
  284. '************************************************************************* 
  285.  
  286.     IF IsDriveNetwork(Mid$(DSTPATH$,1,1)) = 1 THEN
  287.        NETINST% = TRUE
  288. OPTIONNET:
  289.        SetSymbolValue "RadioDefault", OPTNETW$
  290. OPTNETL1:
  291.        sz$ = UIStartDlg(CUIDLL$, OPTIONSNETWORK, "FRadioDlgProc", APPHELP, HELPPROC$)
  292.        OPTNETW$ = GetSymbolValue("ButtonChecked")
  293.  
  294.        IF sz$ = "CONTINUE" THEN
  295.           IF VAL(OPTNETW$) < VAL("3") THEN
  296.             IF IsDirWritable(DSTPATH$) = 0 THEN
  297.                 GOSUB BADPATH
  298.                 GOTO GETPATHL1
  299.             END IF
  300.           ENDIF   
  301.           UIPop(1)
  302.        ELSEIF sz$ = "REACTIVATE" THEN
  303.           GOTO OPTNETL1  
  304.        ELSEIF sz$ = "BACK" THEN
  305.              UIPop 1
  306.              GOTO GETPATH
  307.        ELSE
  308.           GOSUB ASKQUIT
  309.           GOTO OPTIONNET
  310.        END IF
  311.        
  312. '*************************************************************************
  313. 'zadat cilovy adresar pracovni stanice
  314. '************************************************************************* 
  315.  
  316.       IF VAL(OPTNETW$) > VAL("1") THEN
  317. GETPATHNET:
  318.          SetSymbolValue "EditTextIn", NETDSTP$
  319.          SetSymbolValue "EditFocus", "END"
  320. GETPATHNETL1:
  321.          sz$ = UIStartDlg(CUIDLL$, DESTPATHNETW, "FEditDlgProc", APPHELP, HELPPROC$)
  322.          NETDSTP$ = GetSymbolValue("EditTextOut")
  323.  
  324.          IF sz$ = "CONTINUE" THEN
  325.             IF IsDirWritable(NETDSTP$) = 0 THEN
  326.                GOSUB BADPATH
  327.                GOTO GETPATHNETL1
  328.             END IF 
  329.             UIPop 1
  330.          ELSEIF sz$ = "REACTIVATE" THEN
  331.             GOTO GETPATHNETL1
  332.          ELSEIF sz$ = "BACK" THEN
  333.             UIPop 1
  334.             GOTO OPTION
  335.          ELSE
  336.             GOSUB ASKQUIT
  337.             GOTO GETPATHNET
  338.          END IF      
  339.       ENDIF
  340.    
  341.       IF DoesDirExist(NETDSTP$) = 1 THEN
  342.          SetSymbolValue "ConfirmTextIn", NETDSTP$
  343.          sz$ = UIStartDlg(CUIDLL$, CDCONFIRMINFO, "FConfirmDlgProc", APPHELP, HELPPROC$)
  344.        
  345.          IF sz$ = "CONTINUE" THEN
  346.             UIPop 1
  347.          ELSE 
  348.             UIPop 1
  349.             GOTO GETPATHNET
  350.         END IF
  351.       END IF      
  352.       
  353.     END IF   
  354.                                                  
  355. '*************************************************************************
  356. 'zadat zdrojovy drive pro databaze 
  357. '************************************************************************* 
  358.  
  359.  
  360. GETDRV:
  361.     SetSymbolValue "EditTextIn", SRCDRVR$
  362.     SetSymbolValue "EditFocus", "END"
  363. GETDRVHL1:
  364.     sz$ = UIStartDlg(CUIDLL$, SRCDRV, "FEditDlgProc", APPHELP, HELPPROC$)
  365.     SRCDRVR$ = GetSymbolValue("EditTextOut")
  366.  
  367.     IF sz$ = "CONTINUE" THEN
  368.         IF IsDriveValid(SRCDRVR$) = 0 THEN
  369.             GOSUB BADDRV
  370.             GOTO GETDRVHL1
  371.         END IF
  372.         UIPop 1
  373.     ELSEIF sz$ = "REACTIVATE" THEN
  374.         GOTO GETDRVHL1
  375.     ELSEIF sz$ = "BACK" THEN
  376.         UIPop 1
  377.         GOTO GETPATH
  378.     ELSE
  379.         GOSUB ASKQUIT
  380.         GOTO GETDRV
  381.     END IF
  382.  
  383.     IF Asc(Mid$(SRCDRVR$,1,1)) > Asc("B") THEN
  384.        CDROM = TRUE
  385. OPTIONCOPY:
  386.        SetSymbolValue "RadioDefault", OPTCOPY$
  387. OPTCOPYL1:  
  388.        IF NETINST% = TRUE THEN
  389.           sz$ = UIStartDlg(CUIDLL$, OPTIONSCOPY1, "FRadioDlgProc", APPHELP, HELPPROC$)
  390.        ELSE
  391.           sz$ = UIStartDlg(CUIDLL$, OPTIONSCOPY, "FRadioDlgProc", APPHELP, HELPPROC$)
  392.        ENDIF
  393.        OPTCOPY$ = GetSymbolValue("ButtonChecked")
  394.  
  395.        IF sz$ = "CONTINUE" THEN
  396.           UIPop(1)
  397.        ELSEIF sz$ = "REACTIVATE" THEN
  398.           GOTO OPTCOPYL1  
  399.        ELSEIF sz$ = "BACK" THEN
  400.              UIPop 1
  401.              GOTO GETDRV
  402.        ELSE
  403.           GOSUB ASKQUIT
  404.           GOTO OPTIONCOPY
  405.        END IF
  406.     END IF      
  407.                        
  408.                        
  409.    IF OPTCOPY$ = "1" THEN
  410. GETFREE:   
  411.       IF GetFreeSpaceForDrive(Mid$(DSTPATH$,1,1)) < REQDISC& THEN
  412.          GOSUB TOOBIG 
  413.          ERROR STFERR
  414.          GOTO QUIT
  415.       END IF 
  416.       UIPop 1
  417.    ENDIF   
  418.                       
  419. '*************************************************************************
  420. 'instalace
  421. '************************************************************************* 
  422.  
  423.     Install
  424.  
  425.  
  426. QUIT:
  427.     ON ERROR GOTO ERRQUIT
  428.  
  429.     IF ERR = 0 THEN
  430.         dlg% = EXITSUCCESS
  431.     ELSEIF ERR = STFQUIT THEN
  432.         dlg% = EXITQUIT
  433.     ELSE
  434.         dlg% = EXITFAILURE
  435.     END IF
  436. QUITL1:
  437.     sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
  438.     IF sz$ = "REACTIVATE" THEN
  439.         GOTO QUITL1
  440.     END IF
  441.     UIPop 1
  442.  
  443.     END
  444.  
  445. ERRQUIT:
  446.     i% = DoMsgBox("InstalΦnφ program je poruÜen, kontaktujte ....", "Setup Message", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  447.     END
  448.  
  449. '*************************************************************************
  450. 'chybove stavy
  451. '************************************************************************* 
  452.  
  453.  
  454. BADPATH:
  455.     sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
  456.     IF sz$ = "REACTIVATE" THEN
  457.         GOTO BADPATH
  458.     END IF
  459.     UIPop 1
  460.     RETURN
  461.  
  462. BADDRV:
  463.     sz$ = UIStartDlg(CUIDLL$, BADDRV, "FInfo0DlgProc", 0, "")
  464.     IF sz$ = "REACTIVATE" THEN
  465.         GOTO BADDRV
  466.     END IF
  467.     UIPop 1
  468.     RETURN
  469.  
  470. TOOBIG:
  471.     sz$ = UIStartDlg(CUIDLL$, TOOBIG, "FInfo0DlgProc", 0, "")
  472.     IF sz$ = "REACTIVATE" THEN
  473.         GOTO TOOBIG
  474.     END IF
  475.     UIPop 1
  476.     RETURN
  477.  
  478. ASKQUIT:
  479.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  480.  
  481.     IF sz$ = "EXIT" THEN
  482.         UIPopAll
  483.         ERROR STFQUIT
  484.     ELSEIF sz$ = "REACTIVATE" THEN
  485.         GOTO ASKQUIT
  486.     ELSE
  487.         UIPop 1
  488.     END IF
  489.     RETURN
  490.  
  491.  
  492.  
  493. '**
  494. '** Purpose:
  495. '**     Builds the copy list and performs all installation operations.
  496. '** Arguments:
  497. '**     none.
  498. '** Returns:
  499. '**     none.
  500. '*************************************************************************
  501. SUB Install STATIC
  502.  
  503.     SrcDir$ = GetSymbolValue("STF_SRCDIR")
  504.     CreateDir DSTPATH$, cmoNone
  505.     ExeName$ = EXEDIR$ + ".EXE"
  506.     HlpName$ = EXEDIR$ + ".HLP"
  507.     CdDir$   = MID$(SRCDRVR$,1,1) + ":\" + STRTDIR$
  508.     CdPath$  = "" 
  509.     LogPath$  = ""
  510.     
  511.     IF NETINST% = TRUE AND OPTNETW$ > "1" THEN
  512.        CreateDir NETDSTP$, cmoNone 
  513.        LogPath$ = NETDSTP$
  514.     ELSE   
  515.        LogPath$ = DSTPATH$
  516.     ENDIF      
  517.     
  518.     OpenLogFile MakePath(LogPath$, "LOGFILE.OUT"), 0
  519.     WriteToLogFile ""
  520.     WriteToLogFile "  Destination directory: '" + DSTPATH$ + "'"
  521.     WriteToLogFile "  Surce drive: '" + SRCDRVR$ + "'"
  522.     WriteToLogFile ""
  523.                    
  524.     IF OPTVER$ = "1" THEN                                    'WINDOWS Version
  525.        IF NETINST% = TRUE AND OPTNETW$ = "1" THEN            'pouze server 
  526.           IF CDROM% = TRUE AND OPTCOPY$ = "1" THEN  
  527.              CopyFilesFromCD(CdDir$)
  528.           ELSEIF CDROM% = FALSE THEN
  529.              AddSectionFilesToCopyList "RData", SrcDir$, DSTPATH$
  530.              CopyFilesInCopyList
  531.           ENDIF
  532.           AddSectionFilesToCopyList "WinExe", SrcDir$, DSTPATH$
  533.           CopyFilesInCopyList
  534.        ELSEIF NETINST% = TRUE AND OPTNETW$ = "2" THEN        'server i klient
  535.           IF CDROM% = TRUE AND OPTCOPY$ = "1" THEN  
  536.              CopyFilesFromCD(CdDir$)
  537.           ELSEIF CDROM% = FALSE THEN
  538.              AddSectionFilesToCopyList "RData", SrcDir$, DSTPATH$
  539.              CopyFilesInCopyList
  540.           ENDIF
  541.           AddSectionFilesToCopyList "WinExe", SrcDir$, DSTPATH$
  542.           CopyFilesInCopyList
  543. '          AddSectionFilesToCopyList "WinHlp", SrcDir$, NETDSTP$
  544. '          AddSectionFilesToCopyList "RWData", SrcDir$, NETDSTP$
  545. '          CopyFilesInCopyList
  546.           AddSectionFilesToCopyList "IniFiles", SrcDir$, WINPATH$
  547.           CopyFilesInCopyList
  548.           IF CDROM% = TRUE AND OPTCOPY$ = "2" THEN
  549.              CdPath$ = CdDir$
  550.           ELSE   
  551.              CdPath$ = DSTPATH$
  552.           ENDIF
  553.           CreateProgmanGroup EXEDIR$, "", cmoNone
  554.           ShowProgmanGroup   EXEDIR$, 1, cmoNone
  555.           CreateProgmanItem  EXEDIR$, EXEDIR$, MakePath(DSTPATH$,ExeName) + " " + CdPath$, ",,,," + NETDSTP$, cmoOverwrite
  556.           CreateProgmanItem  EXEDIR$, "Help", MakePath(DSTPATH$,HlpName), "", cmoOverwrite
  557.           CreateProgmanItem  EXEDIR$, "Logfile", "notepad.exe " + MakePath(NETDSTP$,"logfile.out"), "", cmoOverwrite
  558.        ELSEIF NETINST% = TRUE AND OPTNETW$ = "3" THEN        'pouze klient
  559.           AddSectionFilesToCopyList "IniFiles", SrcDir$, WINPATH$
  560.           CopyFilesInCopyList
  561.           IF CDROM% = TRUE AND OPTCOPY$ = "3" THEN
  562.              CdPath$ = CdDir$
  563.           ELSE   
  564.              CdPath$ = DSTPATH$
  565.           ENDIF
  566.           CreateProgmanGroup EXEDIR$, "", cmoNone
  567.           ShowProgmanGroup   EXEDIR$, 1, cmoNone
  568.           CreateProgmanItem  EXEDIR$, EXEDIR$, MakePath(DSTPATH$,ExeName) + " " + CdPath$, ",,,," + NETDSTP$, cmoOverwrite
  569.           CreateProgmanItem  EXEDIR$, "Help", MakePath(DSTPATH$,HlpName), "", cmoOverwrite
  570.           CreateProgmanItem  EXEDIR$, "Logfile", "notepad.exe " + MakePath(NETDSTP$,"logfile.out"), "", cmoOverwrite
  571.        ELSE                           'jednouziv.licence
  572.           IF CDROM% = TRUE AND OPTCOPY$ = "1" THEN 
  573.              CopyFilesFromCD(CdDir$)
  574.           ELSEIF CDROM% = FALSE  THEN
  575.              AddSectionFilesToCopyList "RData", SrcDir$, DSTPATH$
  576.              CopyFilesInCopyList
  577.           ENDIF
  578. '          AddSectionFilesToCopyList "WinHlp", SrcDir$, DSTPATH$
  579.           AddSectionFilesToCopyList "WinExe", SrcDir$, DSTPATH$
  580. '          AddSectionFilesToCopyList "RWData", SrcDir$, DSTPATH$
  581.           CopyFilesInCopyList
  582.           AddSectionFilesToCopyList "IniFiles", SrcDir$, WINPATH$
  583.           CopyFilesInCopyList
  584.           IF CDROM% = TRUE AND OPTCOPY$ = "2" THEN
  585.              CdPath$ = CdDir$
  586.           ENDIF
  587.           CreateProgmanGroup EXEDIR$, "", cmoNone
  588.           ShowProgmanGroup   EXEDIR$, 1, cmoNone
  589.           CreateProgmanItem  EXEDIR$, EXEDIR$, MakePath(DSTPATH$,ExeName) + " " + CdPath$, "", cmoOverwrite
  590.           CreateProgmanItem  EXEDIR$, "Help", MakePath(DSTPATH$,HlpName), "", cmoOverwrite
  591.           CreateProgmanItem  EXEDIR$, "Logfile", "notepad.exe " + MakePath(DSTPATH$,"logfile.out"), "", cmoOverwrite
  592.        ENDIF   
  593.     ELSE                                                     'instalace pro DOS
  594.        IF NETINST% = TRUE AND OPTNETW$ = "1" THEN            'pouze server 
  595.           IF CDROM% = TRUE AND OPTCOPY$ = "1" THEN  
  596.              CopyFilesFromCD(CdDir$)
  597.           ELSEIF CDROM% = FALSE THEN
  598.              AddSectionFilesToCopyList "RData", SrcDir$, DSTPATH$
  599.              CopyFilesInCopyList
  600.           ENDIF
  601.           AddSectionFilesToCopyList "DosExe", SrcDir$, DSTPATH$
  602.           CopyFilesInCopyList
  603.        ELSEIF NETINST% = TRUE AND OPTNETW$ = "2" THEN        'server i klient
  604.           IF CDROM% = TRUE AND OPTCOPY$ = "1" THEN  
  605.              CopyFilesFromCD(CdDir$)
  606.           ELSEIF CDROM% = FALSE THEN
  607.              AddSectionFilesToCopyList "RData", SrcDir$, DSTPATH$
  608.              CopyFilesInCopyList
  609.           ENDIF
  610.           AddSectionFilesToCopyList "DosExe", SrcDir$, DSTPATH$
  611.           CopyFilesInCopyList
  612. '          AddSectionFilesToCopyList "RWData", SrcDir$, NETDSTP$
  613. '          CopyFilesInCopyList
  614.        ELSE                           'jednouziv.licence
  615.           IF CDROM% = TRUE AND OPTCOPY$ = "1" THEN 
  616.              CopyFilesFromCD(CdDir$)
  617.           ELSEIF CDROM% = FALSE  THEN
  618.              AddSectionFilesToCopyList "RData", SrcDir$, DSTPATH$
  619.              CopyFilesInCopyList
  620.           ENDIF
  621.           AddSectionFilesToCopyList "DosExe", SrcDir$, DSTPATH$
  622. '          AddSectionFilesToCopyList "RWData", SrcDir$, DSTPATH$
  623.           CopyFilesInCopyList
  624.        ENDIF   
  625.     ENDIF
  626.     
  627.     ini$ = MakePath(WINPATH$, ININAME$)
  628.     CreateIniKeyValue ini$,"PATH","EXE_PATH", DSTPATH$, cmoOverwrite
  629.     IF CdPath$ = "" THEN
  630.           CreateIniKeyValue ini$,"PATH","DB_PATH", DSTPATH$, cmoOverwrite
  631.     ELSE    
  632.           CreateIniKeyValue ini$,"PATH","DB_PATH", CdPath$, cmoOverwrite
  633.     END IF
  634.     IF OPTNETW$ = "1" THEN
  635.           CreateIniKeyValue ini$,"PATH","PRAC_PATH", DSTPATH$, cmoOverwrite
  636.     ELSE
  637.           CreateIniKeyValue ini$,"PATH","PRAC_PATH", NETDSTP$, cmoOverwrite
  638.     END IF
  639.     CreateIniKeyValue ini$,"PATH","NameEXE", DCTNAME$, cmoOverwrite
  640.     
  641.     IF val(OPTWORD$) <> val("3")  AND  OPTVER$ = "1"  THEN       'instalovat ,verze Windows
  642.        file_w$ = "winword.exe"
  643.        tree_w$ = "C:\"
  644.        wordpath$ = FindFileInTree(file_w$,tree_w$) 
  645.        IF wordpath$ <> "" THEN 
  646.           IF OPTWORD$ = "1"  THEN
  647.              CmdRun$ = wordpath$ + " " + MakePath(DSTPATH$, INSTDOC70$) 
  648.           ELSE
  649.              CmdRun$ = wordpath$ + " " + MakePath(DSTPATH$, INSTDOC97$) 
  650.           END IF   
  651.           Run CmdRun$
  652.        END IF
  653.     END IF 
  654.     CloseLogFile
  655.  
  656. END SUB
  657.  
  658.  
  659.  
  660. '**
  661. '** Purpose:
  662. '**     Appends a file name to the end of a directory path,
  663. '**     inserting a backslash character as needed.
  664. '** Arguments:
  665. '**     szDir$  - full directory path (with optional ending "\")
  666. '**     szFile$ - filename to append to directory
  667. '** Returns:
  668. '**     Resulting fully qualified path name.
  669. '*************************************************************************
  670. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  671.     IF szDir$ = "" THEN
  672.         MakePath = szFile$
  673.     ELSEIF szFile$ = "" THEN
  674.         MakePath = szDir$
  675.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  676.         MakePath = szDir$ + szFile$
  677.     ELSE
  678.         MakePath = szDir$ + "\" + szFile$
  679.     END IF
  680. END FUNCTION
  681.  
  682.  
  683. SUB CopyFilesFromCD (szSrcDir$) STATIC
  684.     sz$ = UIStartDlg(CUIDLL$, MODELESS, "FModelessDlgProc", APPHELP, HELPPROC$)
  685.     cursor% = ShowWaitCursor()
  686.     CopyFile MakePath(szSrcDir$,"LEDA_MI.DO1"),MakePath(DSTPATH$,"LEDA_MI.DO1"),cmoOverwrite, FALSE
  687.     CopyFile MakePath(szSrcDir$,"LEDA_MI.DD1"),MakePath(DSTPATH$,"LEDA_MI.DD1"),cmoOverwrite, FALSE
  688.     CopyFile MakePath(szSrcDir$,"LEDA_MI.DCT"),MakePath(DSTPATH$,"LEDA_MI.DCT"),cmoOverwrite, FALSE
  689.     RestoreCursor cursor 
  690.     UIPop 1
  691. END SUB    
  692.