home *** CD-ROM | disk | FTP | other *** search
/ CD Action 16 B / cdactioncoverdisc / polonica.rar / MANAGER.MST < prev    next >
Text File  |  1995-10-04  |  8KB  |  314 lines

  1.  
  2. '$DEFINE DEBUG  
  3.  
  4.  
  5.  
  6. '$INCLUDE 'my.inc'
  7. '$INCLUDE 'setupapi.inc'
  8. '$INCLUDE 'msdetect.inc'
  9.  
  10.  
  11.  
  12.  
  13. ''Custom user interface dll
  14. CONST STR_CUIDLL                                = "mscuistf.dll" 
  15.  
  16. CONST STR_MESSAGE_WYSTAPILBLADPODCZASINSTALACJI = "Wystapil blad podczas instalacji !" 
  17.  
  18.  
  19. ''Dialog ID's
  20. CONST WELCOME       = 100
  21. CONST ASKQUIT       = 200
  22. CONST DESTPATH      = 300
  23.  
  24. CONST EXITFAILURE   = 400
  25. CONST EXITQUIT      = 600
  26. CONST EXITSUCCESS   = 700
  27. CONST EXITSUCCESS2  = 710
  28.  
  29. CONST OPTIONS       = 800
  30. CONST APPHELP       = 900
  31. CONST WAIT_DLG      = 5000
  32. CONST BADPATH       = 6400
  33. CONST CDGETNAME     = 7400
  34.  
  35.  
  36. CONST SW_SHOW       = 5
  37.  
  38. ' *************************************************************************
  39. '   ZMIENNE GLOBALNE
  40. ' *************************************************************************
  41. GLOBAL DEST$ 
  42. GLOBAL SRCDIR$ 
  43.  
  44.  
  45. ' *************************************************************************
  46. '   PROTOTYPY
  47. ' *************************************************************************
  48. DECLARE SUB      Install
  49. DECLARE FUNCTION WinExec LIB "Kernel" (lpszCmdLine$, fuShow%) AS INTEGER
  50.  
  51. DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  52.  
  53.  
  54.  
  55.  
  56.  
  57. ''    DOLACZ STEROWANIE       !!!!!!!!!!!!!  wazne jest polozenie  !!!!!!!!
  58. '$INCLUDE 'params.inc'
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66. ' *************************************************************************
  67. '                                 START
  68. ' *************************************************************************
  69. INIT:
  70.    HELPPROC$ = "FHelpDlgProc"          ''Help dialog procedure
  71.  
  72.    
  73.  
  74.    SetTitle "Instalacja systemu  " + STR_SYSTEM_NAME
  75.    SetBitmap STR_CUIDLL, LOGO_TEXT
  76.  
  77.  
  78.    myLogo
  79.  
  80.     szInf$ = GetSymbolValue("STF_SRCINFPATH")
  81.     IF szInf$ = "" THEN
  82.         szInf$ = GetSymbolValue("STF_CWDDIR") + "msetup.inf"
  83.     END IF
  84.  
  85.     ReadInfFile szInf$
  86.  
  87.  
  88.  
  89.     DEST$ =  GetDestDefault ()          ''STR_INSTALL_KATALOG
  90.  
  91.  
  92.  
  93.  
  94. '$IFDEF DEBUG
  95.     i% = SetSizeCheckMode(scmOnIgnore)    '' could use scmOff; def = scmOnFatal
  96.     WinDrive$ = MID$(GetWindowsDir, 1, 1)
  97.     IF IsDriveValid(WinDrive$) = 0 THEN
  98.         i% = DoMsgBox("Windows drive ('"+WinDrive$+"') is not a valid drive.", "DEBUG", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  99.         GOTO QUIT
  100.     END IF
  101. '$ENDIF ''DEBUG
  102.  
  103.  
  104. WELCOME:
  105.     sz$ = UIStartDlg (STR_CUIDLL, WELCOME, "FInfoDlgProc", APPHELP, HELPPROC$)
  106.     IF sz$ = "CONTINUE" THEN
  107.         UIPop 1
  108.     ELSE
  109.         GOSUB ASKQUIT
  110.         GOTO WELCOME
  111.     END IF
  112.  
  113.  
  114.  
  115.  
  116. GETPATH:
  117.     SetSymbolValue "EditTextIn", DEST$
  118.     SetSymbolValue "EditFocus", "END"
  119. GETPATHL1:
  120.     sz$ = UIStartDlg(STR_CUIDLL, DESTPATH, "FEditDlgProc", APPHELP, HELPPROC$)
  121.     DEST$ = GetSymbolValue("EditTextOut")
  122.  
  123.     IF sz$ = "CONTINUE" THEN
  124.         IF IsDirWritable(DEST$) = 0 THEN
  125.             GOSUB BADPATH
  126.             GOTO GETPATHL1
  127.         END IF
  128.         UIPop 1
  129.     ELSEIF sz$ = "REACTIVATE" THEN
  130.         GOTO GETPATHL1
  131.     ELSEIF sz$ = "BACK" THEN
  132.         UIPop 1
  133.         GOTO WELCOME
  134.     ELSE
  135.         GOSUB ASKQUIT
  136.         GOTO GETPATH
  137.     END IF
  138.  
  139.  
  140.     '**********************************************************************
  141.     '                     INSTALACJA SYSTEMU
  142.     '**********************************************************************
  143.     Install
  144.  
  145.  
  146.     
  147.  
  148. QUIT:
  149.     ON ERROR GOTO ERRQUIT
  150.  
  151.     IF ERR = 0 THEN
  152.         myBeep
  153.  
  154.         IF  ( GetEnvVariableValue ("PLWHOME") <> DEST$)  THEN
  155.           dlg% = EXITSUCCESS
  156.         ELSE
  157.           dlg% = EXITSUCCESS2
  158.         END IF
  159.  
  160.     ELSEIF ERR = STFQUIT THEN
  161.         dlg% = EXITQUIT
  162.     ELSE
  163.         dlg% = EXITFAILURE
  164.     END IF
  165. QUITL1:
  166.     sz$ = UIStartDlg(STR_CUIDLL, dlg%, "FInfo0DlgProc", 0, "")
  167.     IF sz$ = "REACTIVATE" THEN
  168.         GOTO QUITL1
  169.     END IF
  170.     UIPop 1
  171.  
  172.     END
  173.  
  174. ERRQUIT:
  175.     i% = DoMsgBox(STR_MESSAGE_WYSTAPILBLADPODCZASINSTALACJI, STR_SYSTEM_NAME, MB_OK+MB_TASKMODAL+MB_ICONHAND)
  176.     END
  177.  
  178.  
  179. BADPATH:
  180.     sz$ = UIStartDlg(STR_CUIDLL, BADPATH, "FInfo0DlgProc", 0, "")
  181.     IF sz$ = "REACTIVATE" THEN
  182.         GOTO BADPATH
  183.     END IF
  184.     UIPop 1
  185.     RETURN
  186.  
  187.  
  188.  
  189. ASKQUIT:
  190.     sz$ = UIStartDlg (STR_CUIDLL, ASKQUIT, "FQuitDlgProc", 0, "")
  191.  
  192.     IF sz$ = "EXIT" THEN
  193.         UIPopAll
  194.         ERROR STFQUIT
  195.     ELSEIF sz$ = "REACTIVATE" THEN
  196.         GOTO ASKQUIT
  197.     ELSE
  198.         UIPop 1
  199.     END IF
  200.     RETURN
  201.  
  202.  
  203.  
  204.  
  205.  
  206. '*************************************************************************
  207. '                         Procedura  Install
  208. '*************************************************************************
  209. SUB Install STATIC
  210.  
  211.     SrcDir$   = GetSymbolValue("STF_SRCDIR")
  212.     CreateDir  DEST$, cmoNone
  213.  
  214.  
  215.  
  216.     '**********************************************************************
  217.     '                       OTWARCIE  LOGFILE.OUT
  218.     '**********************************************************************
  219.     OpenLogFile MakePath(DEST$, "LOGFILE.OUT"), 0
  220.     WriteToLogFile ""
  221.     WriteToLogFile "Uzytkownik wskazal katalog: '" + DEST$ + "'"
  222.     WriteToLogFile ""
  223.     WriteToLogFile "Utworzenie katalogu: " + DEST$
  224.     WriteToLogFile ""
  225.  
  226.  
  227.  
  228.     '**********************************************************************
  229.     '          TESTOWANIE KATALOGU PRZEZNACZONEGO DO INSTALACJI
  230.     '**********************************************************************
  231.     IF TestDest (DEST$) = 0 THEN
  232.        END
  233.     END IF
  234.  
  235.  
  236.     '**********************************************************************
  237.     '                       TWORZENIE  KATALOGOW
  238.     '**********************************************************************
  239.     CreateDirectories
  240.  
  241.  
  242.     '**********************************************************************
  243.     '                 KOPIOWANIE SKOMPRESOWANYCH ZBIOROW
  244.     '**********************************************************************
  245.     AddSectionFilesToCopyList "BASIC", SrcDir$, DEST$
  246.     CopyFilesInCopyList
  247.  
  248.  
  249.  
  250.     '**********************************************************************
  251.     '                   KOPIUJ ZBIORY NIESKOMPRESOWANE
  252.     '**********************************************************************
  253.     CopyNonCompressedFiles
  254.  
  255.  
  256.     '**********************************************************************
  257.     ''                   MODYFIKACJA PLIKOW INF
  258.     '**********************************************************************
  259.     ModifyInf
  260.  
  261.  
  262.     '**********************************************************************
  263.     ''                   KONWERSJA
  264.     '**********************************************************************
  265.     ConvertBookmarksAnnots
  266.  
  267.  
  268.  
  269.     '**********************************************************************
  270.     '              WYKREOWANIE GRUPY W PROGRAM MANAGERZE
  271.     '**********************************************************************
  272.     CreateProgmanGroup STR_GRUPA, "", cmoNone
  273.     ShowProgmanGroup   STR_GRUPA, 1, cmoNone
  274.  
  275.  
  276.     '**********************************************************************
  277.     '                    DODANIE PROGRAMOW DO GRUPY
  278.     '**********************************************************************
  279.     AddProgramsToGroup
  280.  
  281.  
  282.  
  283.     '**********************************************************************
  284.     '                     ZAMKNIECIE  LOGFILE.OUT
  285.     '**********************************************************************
  286.     CloseLogFile
  287.  
  288.     
  289.  
  290.  
  291.  
  292.  
  293. END SUB
  294.  
  295.  
  296.  
  297.  
  298. ' *************************************************************************
  299. '                   FUNKCJA  MakePath
  300. ' *************************************************************************
  301. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  302.     IF szDir$ = "" THEN
  303.         MakePath = szFile$
  304.     ELSEIF szFile$ = "" THEN
  305.         MakePath = szDir$
  306.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  307.         MakePath = szDir$ + szFile$
  308.     ELSE
  309.         MakePath = szDir$ + "\" + szFile$
  310.     END IF
  311. END FUNCTION
  312.  
  313.  
  314.