home *** CD-ROM | disk | FTP | other *** search
/ Eyewitness Virtual Reality: Cats / Eyewitness_Virtual_Reality_Cats.iso / dksetup / dksetup.mst < prev    next >
Text File  |  1995-10-24  |  21KB  |  588 lines

  1. ''$DEFINE DEBUG
  2. '^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  3. '   CAT (UK)
  4. '
  5. '   uses VforW & Wing
  6. '
  7. '   VERSION
  8. '   -------
  9. '   18/08/95 rc and this have no min install. Changed dlg boxes custom,
  10. '            custom help and speed
  11. '
  12. '^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  13. '
  14. '18/08/95 Register notes most recent lang used
  15. '11/08/95 Register created using inf file
  16. '26/07/95 Uninstall code added
  17. '07/07/95 Correct dkgen.inc so unregisters use of ctl3d
  18. '04/07/95 Make sure files in bin section of inf file 'always' overwrite
  19. '28/07/95 Ini file not created for minimum install, uses file provided in dkcode
  20. '27/06/95 Test for directory names max 8 chars
  21. '26/06/95 For minimum install, ini file is now not installed
  22. '19/06/95 Moved test for cirrus drivers to mst file as only applies to sampler
  23. '05/06/95 Fonts installed on users machine
  24. '01/06/95 No choice about adding icon to prog man, altered dkgen.inc & rc file
  25. '            (custom, customhelp & speed dlg boxes need changing)
  26. '22/05/95 Code for bundling with sampler
  27. '22/05/95 Large readme need Write (will need to change dlg box in rc file)
  28. '15/05/95 No warning that directory does not exist
  29. '03/05/95 Ini file put in executable directory rather than Windows dir to stop
  30. '            clash with foreign products with same name files
  31.  
  32.  
  33. '$INCLUDE 'dkgen.inc'
  34.  
  35.  
  36. 'IF WITH SAMPLER ( add to .inf & dkcode ) + see add to prog man below
  37. 'CONST SAMPLER_PATH = "SAMPLER"
  38. 'CONST APPLICATION_MENU_FILE = "custmenu.exe"
  39. 'CONST APPLICATION_EXE2_FILE = "dksd2pc.exe"
  40. 'DECLARE FUNCTION TestForCirrus LIB "dkutils.dll" () As INTEGER
  41.  
  42.  
  43. 'IF USING SPECIFIC FONTS
  44. 'DECLARE FUNCTION InstallFont LIB "dkutils.dll" (szFont$) AS INTEGER
  45. 'DECLARE SUB UpdateFonts()
  46.  
  47. ' Uninstall icon
  48. CONST STR_UNINSTALL = "DKMM Uninstall"
  49. CONST LANG_DLL = "Unlang.eng"     'will use as default if can't find dll to match window lang
  50.  
  51. ' Paths and INI stuff
  52. CONST APPLICATION_INI_FILE = "cat.ini"
  53. CONST APPLICATION_EXE_FILE = "cat.exe"
  54. CONST APPLICATION_PENGE_FILE = "cat.png"
  55.  
  56. CONST INI_FILE_SOURCE = "AppPath" ' OR  "WinPath"
  57. CONST EDITOR_EXE =  "write.exe " 'OR "notepad.exe "
  58.  
  59. ' Language dependant strings
  60. CONST APPLICATION_README_FILE = "readme.wri"
  61. CONST STR_README = "Eyewitness Virtual Reality CAT Read Me"
  62. CONST APPLICATION_ORDER_FILE = "order.wri"
  63. CONST STR_ORDER = "Ordering Information"
  64. CONST STR_MSGCAPTION = "Eyewitness Virtual Reality CAT Setup"
  65. CONST STR_PRODUCTNAME = "Eyewitness Virtual Reality CAT"
  66. CONST DEFAULT_INSTALL_PATH = "\DKMM\CAT"
  67.  
  68.  
  69. DECLARE SUB CreateReg()
  70. DECLARE SUB Install()
  71. DECLARE SUB AddFilesToCopyList(szInstallType$)
  72. DECLARE FUNCTION IsCDROMDrive LIB "dkutils.dll" (wDrive%) As INTEGER
  73. DECLARE FUNCTION DeleteFiles LIB "dkutils.dll" (szDiffPath$, szProdName$, szDKREgIni$) AS INTEGER
  74. DECLARE FUNCTION DeleteDir LIB "dkutils.dll" (szDiffPath$) AS INTEGER
  75. DECLARE FUNCTION DeleteSection LIB "dkutils.dll" (szProdName$, szDKREgIni$) AS INTEGER
  76.  
  77.  
  78. Init:
  79.    Initialise STR_PRODUCTNAME, DEFAULT_INSTALL_PATH, STR_MSGCAPTION
  80.  
  81. WelcomeDlg:
  82.     if Welcome() = NAV_BACK then
  83.         ' Don nothing - cant go back
  84.     end if
  85.  
  86.  
  87.     if TestSystem() = NAV_BACK then
  88.         goto WelcomeDlg
  89.     end if
  90.  
  91. '    dButton = DoMsgBox( "Minimum install disabled", STR_MSGCAPTION, MB_OK)
  92.  
  93. 'IF WITH SAMPLER
  94. 'TestCirrus:
  95. '    if TestForCirrus() = 1 then
  96. '        dButton = DoMsgBox(STR_CIRRUS, szMsgCaption$, MB_OK+MB_TASKMODAL+MB_ICONINFORMATION)
  97. '    end if
  98.  
  99. 'IF EARLIER PRODS WITH NO SAMPLER
  100. '    UpdateADPCMDrivers
  101.  
  102.  
  103. ExpressCustomDlg:
  104.     ' defaults to Express
  105.     'if szExpressCustomChoice = "EXPRESS" then
  106.     '    SetSymbolValue "RadioDefault", "1"
  107.     'else
  108.     '    SetSymbolValue "RadioDefault", "1"
  109.     'end if
  110.  
  111. ECDlgLoop:
  112.     szButton = UIStartDlg(CUIDLL_FILENAME, IDD_SPEED, "FRadioDlgProc", IDD_WHIZZHELP, PROC_HELP)
  113.  
  114.     select case szButton
  115.     case "REACTIVATE"
  116.         goto ECDlgLoop
  117.     case "BACK"
  118.         UIPop 1
  119.         goto WelcomeDlg
  120.     case "CONTINUE" ' Install
  121.         UIPop 1
  122.         if GetSymbolValue("ButtonChecked") = "1" then
  123.             szExpressCustomChoice = "EXPRESS"
  124.             goto ExpressInstallLoop
  125.         else
  126.             szExpressCustomChoice = "CUSTOM"
  127.             goto CustomInstallLoop
  128.         end if
  129.     case "EXIT"
  130.         AskQuit
  131.         goto ECDlgLoop
  132.     end select
  133.  
  134.  
  135. CustomInstallLoop:
  136. GetPathDlg:
  137.     SetSymbolValue "EditTextIn", szDestPath
  138.     szOldDestPath = szDestPath
  139.     SetSymbolValue "EditFocus", "ALL"
  140.  
  141. GetPathDlgLoop:
  142.     szButton = UIStartDlg(CUIDLL_FILENAME, IDD_DESTPATH, "FEditDlgProc", IDD_PATHHELP, PROC_HELP)
  143.  
  144.     select case szButton
  145.     case "REACTIVATE"
  146.         goto GetPathDlgLoop
  147.  
  148.     case "BACK"
  149.         UIPop 1
  150.         szDestPath = szOldDestPath
  151.         goto ECDlgLoop
  152.  
  153.     case "CONTINUE"
  154.         UIPop 1
  155.         szDestPath = GetSymbolValue("EditTextOut")
  156.  
  157.         if mid$(szDestPath, 2, 1) = ":" and mid$(szDestPath, 3, 1) <> "\" then
  158.             szTemp$ = mid$(szDestPath, 1, 2) + "\" + mid$(szDestPath, 3, len(szDestPath)-2)
  159.             szDestPath = szTemp
  160.         end if
  161.  
  162.         if mid$(szDestPath, 2, 1) <> ":" then
  163.             if mid$(szDestPath, 1,1) <> "\" then
  164.                 szDestPath = mid$(szWinPath, 1,1) + ":\" + szDestPath
  165.             else
  166.                 szDestPath = mid$(szWinPath, 1,1) + ":" + szDestPath
  167.             end if
  168.         elseif IsDriveValid(mid$(szDestPath, 1,1)) = 0 then
  169.             szDestPath = szOldDestPath
  170.             UIPop 1
  171.             BadPath
  172.             goto GetPathDlg
  173.         end if
  174.  
  175.         ' check for "foreign" chars in path
  176.         slength% = len(szDestPath)
  177.         found% = 0
  178.         for i% = 1 to slength%
  179.             if asc(mid$(szDestPath, i%, 1)) > 126 then
  180.                 found% = 1
  181.             end if
  182.         next i%
  183.         if found% = 1 then
  184.             szDestPath = szOldDestPath
  185.             UIPop 1
  186.             BadPath
  187.             goto GetPathDlg
  188.         end if
  189.  
  190.         wDrive% = asc(mid$(szDestPath, 1,1)) - asc("A")
  191.         if IsCDROMDrive(wDrive%) > 0 then
  192.             szDestPath = szOldDestPath
  193.             UIPop 1
  194.             BadPath
  195.             goto GetPathDlg
  196.         end if
  197.  
  198.         if IsDriveNetwork(mid$(szDestPath,1,1)) = 1 then
  199.             szDestPath = szOldDestPath
  200.             UIPop 1
  201.             NetworkDrive
  202.             goto GetPathDlg
  203.         end if
  204.  
  205.         if IsDirWritable(szDestPath) = 0 then
  206.             szDestPath = szOldDestPath
  207.             UIPop 1
  208.             BadPath
  209.             goto GetPathDlg
  210.         end if
  211.  
  212.         'check dir names not > 8 chars
  213.         dirlength% = 0
  214.         i% = 3
  215.         while i% <> slength%
  216.             i% =i%+1
  217.             dirlength% = dirlength% +1
  218.             if mid$(szDestPath, i%, 1)="\" then
  219.                 if dirlength% > 9 then
  220.                     szDestPath = szOldDestPath
  221.                     dButton = DoMsgBox( STR_DIRTOOLONG, STR_MSGCAPTION, MB_OK+MB_TASKMODAL+MB_ICONHAND)
  222.                     goto GetPathDlg
  223.                  else
  224.                     dirlength% = 0
  225.                 endif
  226.             end if
  227.  
  228.         wend
  229.         if dirlength% > 8 then
  230.             szDestPath = szOldDestPath
  231.             dButton = DoMsgBox( STR_DIRTOOLONG, STR_MSGCAPTION, MB_OK+MB_TASKMODAL+MB_ICONHAND)
  232.             goto GetPathDlg
  233.         endif
  234.  
  235.  
  236.  
  237.   '      if DoesDirExist(szDestPath) = 0 then
  238.   '          dButton = DoMsgBox( STR_DIRNOTEXIST, STR_MSGCAPTION, MB_OK+MB_TASKMODAL+MB_ICONHAND)
  239.   '          if dButton = 7 then
  240.   '              goto GetPathDlg
  241.   '          end if
  242.   '      end if
  243.  
  244.         UIPop 1
  245.  
  246.  
  247.     case "EXIT"
  248.         AskQuit
  249.         goto GetPathDlg
  250.     end select
  251.  
  252. GetCustomChoicesDlg:
  253.     SetSymbolValue "CheckItemsState", ""
  254. '    AddListItem "CheckItemsState", szMinimalInstall
  255. '    AddListItem "CheckItemsState", szAddPMItem
  256. GetCustomChoicesLoop:
  257.  
  258.     ClearCopyList
  259. '    if szMinimalInstall = "OFF" then
  260.         AddFilesToCopyList "FULL"
  261. '    else
  262. '        AddFilesToCopyList "MINIMAL"
  263. '    end if
  264.  
  265.     dDestDrive = asc(mid$(szDestPath, 1,1)) - asc("A")+1
  266.     dWinDrive = asc(mid$(szWinPath, 1,1)) - asc("A")+1
  267.  
  268.     SetSymbolValue "DriveStatusText", ""
  269.     AddListItem "DriveStatusText", mid$(szDestPath, 1,1) + ":"
  270.     AddListItem "DriveStatusText", str$(GetDiskSpaceNeeded(dDestDrive) / 1024) + " K"
  271.     AddListItem "DriveStatusText", str$(GetFreeSpaceForDrive(mid$(szDestPath, 1,1))/1024) + " K"
  272.  
  273.     if dDestDrive = dWinDrive then
  274.         AddListItem "DriveStatusText", ""
  275.         AddListItem "DriveStatusText", ""
  276.         AddListItem "DriveStatusText", ""
  277.     else
  278.         AddListItem "DriveStatusText", mid$(szWinPath, 1,1) + ":"
  279.         AddListItem "DriveStatusText", str$(GetDiskSpaceNeeded(dWinDrive)/ 1024 ) + " K"
  280.         AddListItem "DriveStatusText", str$(GetFreeSpaceForDrive(mid$(szWinPath, 1,1))/1024) + " K"
  281.     end if
  282.  
  283.     AddListItem "DriveStatusText", szDestPath
  284.  
  285. ChooseInstall:
  286.  
  287.     szButton = UIStartDlg(CUIDLL_FILENAME, IDD_CUSTOM, "FCustInstDlgProc", IDD_CUSTOMHELP, PROC_HELP)
  288.  
  289. '    szMinimalInstall = GetListItem("CheckItemsState", 1)
  290. '    szAddPMItem = GetListItem("CheckItemsState", 2)
  291.  
  292.     select case szButton
  293.     case "REACTIVATE"
  294.         goto GetCustomChoicesLoop
  295.     case "BACK"
  296.         UIPop 1
  297.         goto GetPathDlg
  298.     case "CONTINUE"
  299.         UIPop 1
  300.     case "EXIT"
  301.         AskQuit
  302.         goto GetCustomChoicesLoop
  303.     end select
  304.  
  305.     ClearCopyList
  306. '    if szMinimalInstall = "OFF" then
  307.         AddFilesToCopyList "FULL"
  308. '    else
  309. '        AddFilesToCopyList "MINIMAL"
  310. '    end if
  311.     goto CommonInstallLoop
  312.  
  313. ExpressInstallLoop:
  314.     AddFilesToCopyList "FULL"
  315.     goto CommonInstallLoop
  316.  
  317. CommonInstallLoop:
  318.     InitCommonInstall
  319.  
  320.     if szMinimalInstall = "ON" and GetFreeSpaceForDrive(mid$(szDestPath,1,1)) < MINIMUM_DISK_SPACE then
  321.         error ERR_NODISKSPACE
  322.     elseif GetFreeSpaceForDrive(mid$(szDestPath,1,1)) < GetDiskSpaceNeeded( asc(mid$(szDestPath, 1,1))-asc("A")+1 ) then
  323.         error ERR_NODISKSPACE
  324.     end if
  325.  
  326. 'IF LATER PROD OR WITH SAMPLER
  327.     UpdateWinGDrivers
  328.     UpdateIndeoAVIDrivers
  329.  
  330. 'IF USING SPECIFIC FONTS
  331. '    UpdateFonts
  332.  
  333.  
  334. 'IF USING UNINSTALL or it is a MUSEUM TITLE
  335.     CreateIniKeyValue "Win.ini", "MMAPP", WIN_INI_ENTRY, szWinDrive+":"+DKREG_INI_PATH, cmoOverwrite
  336.     CreateReg
  337.  
  338.     Install
  339.  
  340. ' Cat & Bird ONLY
  341.     CreateDir ( szDestPath + "\" + "TOURS" ), cmoNone
  342.  
  343.     CreateProgmanGroup STR_COMPANYNAME, "", cmoNone
  344.     ShowProgmanGroup   STR_COMPANYNAME, 1, cmoNone
  345. '    szReadmeTitle$ = STR_PRODUCTNAME + " " + STR_README 'not used now
  346.  
  347. 'IF WITH SAMPLER
  348. '    szSamplerPath$ = MakePath( mid$(szSrcSetupPath, 1, (len(szSrcSetupPath) - len(SOURCE_SETUP_SUBDIR))-1), SAMPLER_PATH)
  349. '    szSamplerPath$ = MakePath(szSamplerPath$, APPLICATION_EXE2_FILE)
  350. '    if szMinimalInstall = "ON" then
  351. '        szInf$ = MakePath(szSrcBinPath, APPLICATION_MENU_FILE) + " " + MakePath(szSrcBinPath, APPLICATION_EXE_FILE) + " " + MakePath(szSrcBinPath, APPLICATION_PENGE_FILE) + " " + szSamplerPath$
  352. '        CreateProgmanItem STR_COMPANYNAME, STR_PRODUCTNAME, szInf, szInf, cmoOverwrite
  353. '         CreateProgmanItem STR_COMPANYNAME, STR_README, EDITOR_EXE + MakePath(szSrcBinPath, APPLICATION_README_FILE), "", cmoOverwrite
  354. '    else
  355. '        szInf$ = MakePath(szDestPath, APPLICATION_MENU_FILE) + " " + MakePath(szDestPath, APPLICATION_EXE_FILE) + " " + MakePath(szDestPath, APPLICATION_PENGE_FILE) + " " + szSamplerPath$
  356. '        CreateProgmanItem STR_COMPANYNAME, STR_PRODUCTNAME, szInf, szInf, cmoOverwrite
  357. '        CreateProgmanItem STR_COMPANYNAME, STR_README, EDITOR_EXE + MakePath(szDestPath, APPLICATION_README_FILE), "", cmoOverwrite
  358. '    end if
  359.  
  360. 'IF NO SAMPLER
  361. '    if szMinimalInstall = "ON" then
  362. '        szInf$ = MakePath(szSrcBinPath, APPLICATION_EXE_FILE) + " " + MakePath(szSrcBinPath, "dkpage")'APPLICATION_PENGE_FILE)
  363. '        CreateProgmanItem STR_COMPANYNAME, STR_PRODUCTNAME, szInf, szInf, cmoOverwrite
  364. '        CreateProgmanItem STR_COMPANYNAME, STR_README, EDITOR_EXE + MakePath(szSrcBinPath, APPLICATION_README_FILE), "", cmoOverwrite
  365. '    else
  366.         szInf$ = MakePath(szDestPath, APPLICATION_EXE_FILE) + " " + MakePath(szDestPath, "dkpage")'APPLICATION_PENGE_FILE)
  367.         CreateProgmanItem STR_COMPANYNAME, STR_PRODUCTNAME, szInf, szInf, cmoOverwrite
  368.         CreateProgmanItem STR_COMPANYNAME, STR_README, EDITOR_EXE + MakePath(szDestPath, APPLICATION_README_FILE), "", cmoOverwrite
  369.         CreateProgmanItem STR_COMPANYNAME, STR_ORDER, EDITOR_EXE + MakePath(szDestPath, APPLICATION_ORDER_FILE), "", cmoOverwrite
  370. '    end if
  371.  
  372. 'IF USING UNINSTALL
  373.     'Uninstall icon
  374.     szDKUninstall$ = szWinDrive + ":" +  DKREG_INI_DIR
  375.     szInf$ = MakePath( szDKUninstall, UNINSTALL_EXE_FILE)
  376.     CreateProgmanItem STR_COMPANYNAME, STR_UNINSTALL, szInf, szInf, cmoOverwrite
  377.  
  378. '$IFDEF DEBUG
  379.     DumpCopyList MakePath(szDestPath, "copylist.txt")
  380. '$ENDIF ''DEBUG
  381.  
  382.     EndCommonInstall APPLICATION_README_FILE, 0, EDITOR_EXE
  383.  
  384. quit:
  385.     on error goto quit
  386.  
  387.     select case ERR
  388.  
  389.     case 0
  390.         hDlg = IDD_EXITSUCCESS
  391.     case STFQUIT
  392.         hDlg = IDD_EXITQUIT
  393.     case ERR_NODISKSPACE
  394.         hDlg = IDD_NODISKSPACE
  395.     case else
  396.         hDlg = IDD_EXITFAILURE
  397.     end select
  398.  
  399.     UIPop 10
  400. quit2:
  401.     szButton = UIStartDlg(CUIDLL_FILENAME, hDlg, "FInfo0DlgProc", 0, "")
  402.     select case szButton
  403.     case "REACTIVATE"
  404.         goto quit2
  405.     end select
  406.  
  407.     UIPop 1
  408.     DeInitialise
  409.     stop
  410.     end
  411.  
  412. quitError:
  413.     dButton = DoMsgBox (STR_QUITERROR, STR_MSGCAPTION, MB_OK+MB_TASKMODAL+MB_ICONHAND)
  414.     DeInitialise
  415.     stop
  416.     end
  417.  
  418.  
  419. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  420.  
  421. Sub Install() STATIC
  422.  
  423.     cursor% = ShowWaitCursor()
  424.     CreateDir szDestPath, cmoNone
  425.     SetRestartDir szDestPath
  426.     RestoreCursor(cursor%)
  427.  
  428.     CopyFilesInCopyList  'creates dir even if min install
  429.  
  430. 'IF LATER PROD OR WITH SAMPLER
  431.     Run ("regedit.exe /s " + MakePath(szWinPath, "mplayer.reg"))
  432.     Run ("regedit.exe /s " + MakePath(szWinSysPath, "OLE2.reg"))
  433.     Run ("regedit.exe /s " + MakePath(szWinSysPath, "cleanup.reg"))
  434.     Run ("profdisp.exe")
  435.  
  436.     if INI_FILE_SOURCE = "AppPath" then
  437.         szAppINIPath = MakePath(szDestPath, APPLICATION_INI_FILE)
  438.     else
  439.         szAppINIPath = MakePath(szWinPath, APPLICATION_INI_FILE)
  440.     end if
  441.  
  442.        '=d:\                                    =d:\dksetup                =dksetup
  443.     szPengePath = mid$(szSrcSetupPath, 1,len(szSrcSetupPath)-len(SOURCE_SETUP_SUBDIR)-2) ' -2 removes backslash
  444.  
  445. 'IF SCRUNGED
  446. '    if szMinimalInstall = "OFF"  then
  447. 'data
  448.         CreateIniKeyValue szAppINIPath, PRODUCT_INI_DIR_SECTION_NAME, PRODUCT_INI_DIR_ENTRY_NAME, szPengePath, cmoOverwrite
  449. '    endif
  450.  
  451. 'IF DEBUG VERSION
  452. 'data
  453. '    CreateIniKeyValue szAppINIPath, PRODUCT_INI_DIR_SECTION_NAME, PRODUCT_INI_DIR_ENTRY_NAME, MakePath(szPengePath,"data"), cmoOverwrite
  454. 'pages
  455. '    CreateIniKeyValue szAppINIPath, PRODUCT_INI_DIR_SECTION_NAME, "Pages", MakePath(szPengePath,"dkpage"), cmoOverwrite
  456. '    CreateIniKeyValue szAppINIPath, PRODUCT_INI_DIR_SECTION_NAME, "Scrunge", "0", cmoOverwrite
  457. '    CreateIniKeyValue szAppINIPath, PRODUCT_INI_DIR_SECTION_NAME, "Developer", "1", cmoOverwrite
  458. '    CreateIniKeyValue szAppINIPath, PRODUCT_INI_DIR_SECTION_NAME, "Debug", "1", cmoOverwrite
  459.  
  460.  
  461. End Sub
  462.  
  463.  
  464. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  465. Sub AddFilesToCopyList(szInstallType$) STATIC
  466.     cursor% = ShowWaitCursor()
  467.  
  468. 'for uninstall
  469.     szDKUninstall$ = szWinDrive + ":" +  DKREG_INI_DIR
  470.     AddSectionFilesToCopyList "UNINSTALL", szSrcBinPath, szDKUninstall
  471.  
  472. '    select case szInstallType
  473. '    case "FULL"
  474.         AddSectionFilesToCopyList SETUP_INI_BINARIES_SECTION_NAME, szSrcBinPath, szDestPath
  475.  
  476. '    case "MINIMAL"
  477. '        ' nothing
  478. '    end select
  479.  
  480. 'IF EARLIER PRODS AND NO SAMPLER
  481. '    if fSystemUpdated = 1 then
  482. '        AddSectionFilesToCopyList "ACM Drivers", szSrcBinPath, szWinSysPath
  483. '    end if
  484.  
  485.  
  486. 'IF LATER PROD OR WITH SAMPLER
  487.         AddSectionFilesToCopyList SETUP_INI_WING_BINARIES_NAME, szSrcBinPath, szWinSysPath
  488.         AddSectionFilesToCopyList SETUP_INI_WING32_BINARIES_NAME, szSrcBinPath, szWinSysPath
  489.         AddSectionFilesToCopyList "VfW Runtime", szSrcBinPath, szWinSysPath
  490.         AddSectionFilesToCopyList "OLE2", szSrcBinPath, szWinSysPath
  491.         AddSectionFilesToCopyList "ACM Drivers", szSrcBinPath, szWinSysPath
  492.         AddSectionFilesToCopyList "MPlayer", szSrcBinPath, szWinPath
  493.         AddSectionFilesToCopyList "AVICodecs", szSrcBinPath, szWinSysPath
  494.  
  495.     RestoreCursor(cursor%)
  496. End Sub
  497.  
  498.  
  499. ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  500. 'IF USING SPECIFIC FONTS
  501. 'Sub UpdateFonts() STATIC
  502. '    ' Check TT enabled
  503. '    MakeListFromSectionFilename "Fonts_list", "Fonts"
  504. '
  505. '    listLength% = GetListLength("Fonts_list")
  506. '    if listLength% > 0 then
  507. '        for item% = 1 to listLength%
  508. '            szFontFile$ = GetListItem("Fonts_list", item%)
  509. '            ' Check if exists
  510. '            'Install font
  511. '            ret% = InstallFont(MakePath(szSrcBinPath, szFontFile))
  512. '            ' Write WIN.INI
  513. '        next
  514. '    end if
  515. 'End Sub
  516.  
  517.  
  518.  
  519. ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  520. Sub CreateReg() STATIC
  521.  
  522.     szDKREgIni$ = szWinDrive + ":" +  DKREG_INI_PATH
  523.     szProdName$ = STR_PRODUCTNAME
  524.     if DoesFileExist( szDKREgIni$, femExist) = 0 then
  525.         'dkreg.ini doesn't exist - initialize AppCount, create dir, add to InstalledApp
  526.         AppCount% = 1
  527.         CreateDir (szWinDrive+":"+DKREG_INI_DIR), cmoNone
  528.         CreateIniKeyValue szDKREgIni$, "InstalledApp", "Applications", str$(AppCount%), cmoOverwrite
  529.         szNum$=str$(AppCount%)
  530.         CreateIniKeyValue szDKREgIni$, "InstalledApp",ltrim$(szNum), szProdName$, cmoOverwrite
  531.     else
  532.         if DoesIniSectionExist( szDKREgIni$, szProdName$ )=1  then
  533.             szDiffPath$=GetIniKeyString(szDKREgIni$, szProdName$, "Path")
  534.         '     if(szDestPath$  <> szDiffPath$) then
  535.                'product is already installed in a different dir - delete files and dir and ini section, don't change installed app section
  536.                ret% = DeleteFiles (szDiffPath, szProdName, szDKREgIni)
  537.                ret% = DeleteDir (szDiffPath)
  538.                ret% = DeleteSection(szProdName, szDKREgIni)
  539.         '      endif
  540.              'product is installed in same dir - do nothing, will overwrite
  541.         else
  542.               'product name does not exist - increment AppCount, add to InstalledApp
  543.                szAppCount$ = GetIniKeyString( szDKREgIni$, "InstalledApp", "Applications" )
  544.                AppCount% = Val(szAppCount$) + 1
  545.                CreateIniKeyValue szDKREgIni$, "InstalledApp", "Applications", str$(AppCount%), cmoOverwrite
  546.                'assign product to first available number (maybe gaps due to deletion)
  547.                i%=1
  548.                while( GetIniKeyString( szDKREgIni$, "InstalledApp",str$(i%) )<>"")
  549.                    i=i+1
  550.                wend
  551.                szNum$=str$(i%)
  552.                CreateIniKeyValue szDKREgIni$, "InstalledApp",ltrim$(szNum), szProdName$, cmoOverwrite
  553.         endif
  554.      endif
  555.  
  556.     CreateIniKeyValue szDKREgIni$, "InstalledApp","RecentLang", LANG_DLL, cmoOverwrite
  557.     CreateIniKeyValue szDKREgIni$, szProdName$, "Path", szDestPath, cmoOverwrite
  558.     CreateIniKeyValue szDKREgIni$, szProdName$, "Company", STR_COMPANYNAME, cmoOverwrite
  559.     CreateIniKeyValue szDKREgIni$, szProdName$, "Readme", STR_README, cmoOverwrite
  560.     CreateIniKeyValue szDKREgIni$, szProdName$, "Order", STR_ORDER, cmoOverwrite
  561.     CreateIniKeyValue szDKREgIni$, szProdName$, "Exe", APPLICATION_EXE_FILE, cmoOverwrite
  562.     CreateIniKeyValue szDKREgIni$, szProdName$, "1", APPLICATION_INI_FILE , cmoOverwrite  'Ini
  563. '    if szMinimalInstall = "OFF" then
  564.         MakeListFromSectionFilename "BIN_list", "BIN"
  565.         listLength% = GetListLength("BIN_list")
  566.         if listLength% > 0 then
  567.             for item% = 1 to listLength%
  568.                 szBinFile$ = GetListItem("BIN_list", item%)
  569.                 szNum$=str$(item%+1)
  570.                 CreateIniKeyValue szDKREgIni$, szProdName$, ltrim$(szNum), szBinFile , cmoOverwrite
  571.             next
  572.         end if
  573. '    end if
  574.  
  575. '    listLength% = GetListLength("Fonts_list")
  576. '    if listLength% > 0 then
  577. '        for item% = 1 to listLength%
  578. '            szFontFile$ = GetListItem("Fonts_list", item%)
  579. '            szNum$=str$(item%)
  580. '            CreateIniKeyValue szDKREgIni$, szProdName$,"F"+ltrim$(szNum), szFontFile, cmoOverwrite
  581. '        next
  582. '    end if
  583.  
  584. End Sub
  585.  
  586.  
  587.  
  588.