home *** CD-ROM | disk | FTP | other *** search
/ Chip Hitware 3 / Chip_Hitware_Vol_03.iso / chiphit3 / dfu / wisdn / sharew.mst < prev    next >
Text File  |  1995-10-31  |  17KB  |  541 lines

  1. '*********************
  2. '*                       ISDN WISDN Setup script : shareware version of software 5/6/95
  3. '*********************
  4.  
  5. '****************  DECLARATIONS ****************************
  6. ''Dialog ID's
  7. CONST WELCOME       = 100
  8. CONST ASKQUIT       = 200
  9. CONST DESTPATH      = 300
  10. CONST EXITFAILURE   = 400
  11. CONST EXITQUIT      = 600
  12. CONST EXITSUCCESS   = 700
  13. CONST REGISTER      = 1000
  14. CONST ASKREGISTER   = 1100
  15. CONST SAVEPASSWORDS = 1200
  16. CONST UNREGISTERED  = 1300
  17. CONST BADPATH       = 6400
  18.  
  19. ''Bitmap ID
  20. CONST LOGO = 1
  21.  
  22. GLOBAL DEST$       '' Default destination directory.
  23. GLOBAL REGNO$      '' Registration number
  24. GLOBAL ADMINPWD$   '' Administrator password
  25. GLOBAL OTHERSPWD$  '' All Others Password
  26. GLOBAL CUIDLL$
  27.  
  28. ''=============
  29. GLOBAL hSetup AS INTEGER
  30. GLOBAL fFrameInit AS INTEGER
  31. GLOBAL fInstallInit AS INTEGER
  32.  
  33. '' DoMsgBox Flags
  34.  
  35. CONST MB_OK          = 0
  36. CONST MB_ICONHAND    = 16
  37. CONST MB_TASKMODAL   = 8192
  38. CONST MB_ICONINFORMATIOM   = 64
  39.  
  40. ''Command Option Flags
  41. CONST cmoOverwrite   = 1024
  42. CONST cmoNone        = 0
  43.  
  44. ''General Return Codes
  45. CONST grcUserQuit   = 48
  46.  
  47. CONST cbSymValMax = 512
  48.  
  49. ''ON ERROR Error Codes
  50. CONST STFERR      = 1024   ''setup system error
  51. CONST STFQUIT     = 1025   ''user quit
  52.  
  53. DECLARE FUNCTION GetWindowsDirectory LIB "kernel" (szBuf$, cbBuf%) AS INTEGER
  54. DECLARE FUNCTION GetSystemDirectory LIB "kernel" (szBuf$, cbBuf%) AS INTEGER
  55.  
  56. DECLARE SUB SetWindowText LIB "User" (hwnd%, lpString$)
  57.  
  58. DECLARE FUNCTION FSetBitmap LIB "msshlstf.dll" (szDll$, Bitmap%) AS INTEGER
  59. DECLARE FUNCTION FSetAbout LIB "msshlstf.dll" (szAbout1$, szAbout2$) AS INTEGER
  60. DECLARE FUNCTION HwndFrame LIB "msshlstf.dll" AS INTEGER
  61. DECLARE FUNCTION HinstFrame LIB "msshlstf.dll" AS INTEGER
  62. DECLARE FUNCTION FSetSymbolValue LIB "msshlstf.dll" (szSymbol$, szValue$) AS INTEGER
  63. DECLARE FUNCTION InitializeFrame LIB "msshlstf.dll" (szCmdLine$) AS INTEGER
  64.  
  65. DECLARE FUNCTION FDoDialog LIB "msuilstf.dll" (hwnd%, szDll$, Dlg%, szDlgProc$, HelpDlg%, szHelpProc$) AS INTEGER
  66. DECLARE FUNCTION FKillNDialogs LIB "msuilstf.dll" (n%) AS INTEGER
  67.  
  68. DECLARE FUNCTION FInitializeInstall LIB "msinsstf.dll" (hinst%, hwndFrame%) AS INTEGER
  69. DECLARE FUNCTION FIsDirWritable LIB "msinsstf.dll" (szDir$) AS INTEGER
  70. DECLARE FUNCTION FCreateDir LIB "msinsstf.dll" (szDir$, cmo%) AS INTEGER
  71. DECLARE FUNCTION FCreateIniKeyValue LIB "msinsstf.dll" (szFile$, szSect$, szKey$, szValue$, cmo%) AS INTEGER
  72. DECLARE FUNCTION FCreateProgManGroup LIB "msinsstf.dll" (szGroup$, szPath$, cmo%) AS INTEGER
  73. DECLARE FUNCTION FCreateProgManItem LIB "msinsstf.dll" (szGroup$, szItem$, szCmd$, cmo%) AS INTEGER
  74. DECLARE FUNCTION FShowProgManGroup LIB "msinsstf.dll" (szGroup$, szCmd$, cmo%) AS INTEGER
  75.  
  76. DECLARE FUNCTION InitSetup (szCmdLine$) AS INTEGER
  77. DECLARE FUNCTION InitFrame (szCmdLine$) AS INTEGER
  78. DECLARE FUNCTION FAddSectionFilesToCopyList LIB "mscomstf.dll" (szSect$, szSrc$, szDest$) AS INTEGER
  79. DECLARE FUNCTION GrcCopyFilesInCopyList LIB "msinsstf.dll" (hInstance%) AS INTEGER
  80. DECLARE FUNCTION CbGetSymbolValue LIB "mscomstf.dll" (szSymbol$, szValue$, Length%) AS INTEGER
  81. DECLARE FUNCTION FOpenInf LIB "mscomstf.dll" (szFile$, fCheck%, fCheckSyms%) AS INTEGER
  82. DECLARE FUNCTION DoMsgBox LIB "mscomstf.dll" (lpText$,lpCaption$,wType%) As INTEGER
  83. DECLARE FUNCTION GetWindowsDir  AS STRING
  84. DECLARE FUNCTION GetWindowsSysDir AS STRING
  85. DECLARE FUNCTION GetSymbolValue (szSymbol$) AS STRING
  86. DECLARE FUNCTION IsDirWritable (szDir$) AS INTEGER
  87. DECLARE FUNCTION UIStartDlg(szDll$, Dlg%, szDlgProc$, HelpDlg%, szHelpProc$) AS STRING
  88.  
  89. DECLARE SUB InitInstall
  90. DECLARE SUB SetSymbolValue (szSymbol$, szValue$)
  91. DECLARE SUB CreateDir (szDir$, cmo%)
  92. DECLARE SUB SetBitmap(szDll$, Bitmap%)
  93. DECLARE SUB SetAbout(szAbout1$, szAbout2$)
  94. DECLARE SUB SetTitle (sz$)
  95. DECLARE SUB ReadInfFile (szFile$)
  96. DECLARE SUB UIPop (n%)
  97. DECLARE SUB UIPopAll
  98. DECLARE SUB CopyFilesInCopyList
  99. DECLARE SUB AddSectionFilesToCopyList (szSect$, szSrc$, szDest$)
  100. DECLARE SUB CreateIniKeyValue (szFile$, szSect$, szKey$, szValue$, cmo%)
  101. DECLARE SUB CreateProgmanGroup (szGroup$, szPath$, cmo%)
  102. DECLARE SUB CreateProgmanItem (szGroup$, szItem$, szCmd$, szOther$, cmo%)
  103. DECLARE SUB ShowProgmanGroup (szGroup$, Cmd%, cmo%)
  104. ''=============
  105.  
  106. DECLARE SUB Install     
  107. DECLARE FUNCTION MakePath  (szDir$, szFile$) AS STRING
  108.  
  109. TRAP CleanupTrap From "MSSHLSTF.DLL"
  110. End Trap
  111.  
  112. ON ERROR GOTO QUIT
  113. '****************  END OF DECLARATIONS ****************************
  114.  
  115. '****************  Start of Script ****************************
  116. INIT:
  117.     CUIDLL$= "mscuistf.dll"          ''Custom user interface dll
  118.     hSetup = InitSetup(COMMAND$)
  119.     REGNO$= ""
  120.  
  121.     SetBitmap CUIDLL$, LOGO
  122.     SetTitle "WISDN Setup"
  123.  
  124.     szInf$ = GetSymbolValue("STF_SRCINFPATH")
  125.     IF szInf$ = "" THEN
  126.       szInf$ = GetSymbolValue("STF_CWDDIR") + "SHAREW.INF"
  127.     END IF
  128.     ReadInfFile szInf$
  129.  
  130.     WINDRIVE$ = MID$(GetWindowsDir, 1, 1)
  131.     DEST$ = WINDRIVE$ + ":\WISDN"
  132.     AUTOEXECCUR$ = "1"
  133.  
  134. WELCOME:        
  135.     sz$ = UIStartDlg(CUIDLL$, WELCOME, "FInfoDlgProc", 0, "")    
  136.     IF sz$ = "CONTINUE" THEN
  137.       UIPop 1
  138.     ELSE
  139.       GOSUB ASKQUIT
  140.       GOTO WELCOME
  141.     END IF
  142.  
  143. GETPATH:
  144.     SetSymbolValue "EditTextIn", DEST$
  145.     SetSymbolValue "EditFocus", "END"
  146. GETPATHL1:
  147.     sz$ = UIStartDlg(CUIDLL$, DESTPATH, "FEditDlgProc", 0, "")
  148.     DEST$ = GetSymbolValue("EditTextOut")
  149.  
  150.     IF sz$ = "CONTINUE" THEN
  151.       IF IsDirWritable(DEST$) = 0 THEN
  152.         GOSUB BADPATH
  153.         GOTO GETPATHL1
  154.     END IF
  155.       UIPop 1
  156.     ELSEIF sz$ = "REACTIVATE" THEN
  157.       GOTO GETPATHL1
  158.     ELSE
  159.       GOSUB ASKQUIT
  160.       GOTO GETPATH
  161.     END IF      
  162.  
  163. ASKREGISTER:
  164.     sz$ = UIStartDlg(CUIDLL$, ASKREGISTER, "FInfoDlgProc", 0, "")
  165.     IF sz$ = "REGISTER" THEN
  166.       UIPop 1
  167.       GOTO GETREGNO
  168.     ELSEIF sz$ = "CONTINUE" THEN
  169.       UIPop 1
  170.       GOTO GETCOMPUTERID
  171.     ELSEIF sz$ = "BACK" THEN
  172.       UIPop 1
  173.       GOTO GETPATH
  174.     ELSEIF sz$ = "REACTIVATE" THEN
  175.     GOTO ASKREGISTER
  176.     ELSE
  177.       GOSUB ASKQUIT
  178.       GOTO ASKREGISTER
  179.     END IF
  180.  
  181. GETREGNO:
  182.     SetSymbolValue "EditTextIn", REGNO$
  183. GETREG1:
  184.     sz$ = UIStartDlg(CUIDLL$, REGISTER, "FRegisterDlgProc", 0, "")
  185.     IF sz$ = "CONTINUE" THEN
  186.       UIPop 1
  187.       REGNO$ = GetSymbolValue("EditTextOut")
  188.       GOTO DOINSTALL
  189.     ELSEIF sz$ = "BACK" THEN
  190.       UIPop 1
  191.       GOTO ASKREGISTER
  192.     ELSEIF sz$ = "REACTIVATE" THEN    
  193.       GOTO GETREG1
  194.     ELSE
  195.       GOSUB ASKQUIT
  196.       GOTO GETREG1
  197.     END IF      
  198.  
  199. GETCOMPUTERID:
  200.     sz$ = UIStartDlg(CUIDLL$, UNREGISTERED, "FUnregisteredDlgProc", 0, "")
  201.     IF sz$ = "CONTINUE" THEN
  202.       UIPop 1
  203.       REGNO$ = GetSymbolValue("EditTextOut")
  204.       GOTO DOINSTALL
  205.     ELSEIF sz$ = "BACK" THEN
  206.       UIPop 1
  207.       GOTO ASKREGISTER
  208.     ELSEIF sz$ = "REACTIVATE" THEN    
  209.       GOTO GETCOMPUTERID
  210.     ELSE
  211.       GOSUB ASKQUIT
  212.       GOTO GETCOMPUTERID
  213.     END IF      
  214.  
  215. DOINSTALL:
  216.       SetSymbolValue "EditTextIn", REGNO$
  217.       sz$ = UIStartDlg(CUIDLL$, SAVEPASSWORDS, "FSaveRegnoDlgProc", 0, "")
  218.       IF sz$ = "CONTINUE" THEN
  219.         UIPop 1
  220.         ADMINPWD$  = GetSymbolValue("AdminPasswd")
  221.         OTHERSPWD$ = GetSymbolValue("OthersPasswd")
  222.       ELSE
  223.       i%=DoMsgBox("Couldn't save the administrator's password.", "WISDN Setup", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  224.       ERROR STFERR
  225.       END IF
  226.       Install
  227.  
  228. QUIT:
  229.     ON ERROR GOTO ERRQUIT
  230.  
  231.     IF ERR = 0 THEN
  232.       dlg% = EXITSUCCESS
  233.     ELSEIF ERR = STFQUIT THEN
  234.       dlg% = EXITQUIT
  235.     ELSE
  236.       dlg% = EXITFAILURE
  237.     END IF
  238. QUITL1:
  239.     sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
  240.     IF sz$ = "REACTIVATE" THEN
  241.       GOTO QUITL1
  242.     END IF
  243.     UIPopAll
  244.     END
  245.  
  246. ERRQUIT:
  247.     UIPopAll
  248.     i% = DoMsgBox("Setup sources were corrupted. Please contact your supplier.", "WISDN Setup", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  249.     END
  250.  
  251. BADPATH:
  252.     sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
  253.     IF sz$ = "REACTIVATE" THEN
  254.       GOTO BADPATH
  255.     END IF
  256.     UIPop 1
  257.     RETURN
  258.  
  259. ASKQUIT:
  260.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  261.  
  262.     IF sz$ = "EXIT" THEN
  263.   ERROR STFQUIT
  264.     ELSEIF sz$ = "REACTIVATE" THEN
  265.   GOTO ASKQUIT
  266.     ELSE
  267.   UIPop 1
  268.     END IF
  269.     RETURN
  270.  
  271. '****************  END of Script ****************************
  272.  
  273. '****************  FUNCTIONS   ****************************
  274.  
  275. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  276.     IF szDir$ = "" THEN
  277.   MakePath = szFile$
  278.     ELSEIF szFile$ = "" THEN
  279.   MakePath = szDir$
  280.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  281.   MakePath = szDir$ + szFile$
  282.     ELSE
  283.   MakePath = szDir$ + "\" + szFile$
  284.     END IF
  285. END FUNCTION
  286.  
  287. FUNCTION InitSetup(szCmdLine$) STATIC AS INTEGER
  288.     fFrameInit = 0
  289.     fInstallInit = 0
  290.  
  291.     IF hSetup > 0 THEN
  292.     END IF
  293.  
  294.     i% = InitFrame(szCmdLine$)
  295.     fFrameInit = 1
  296.  
  297.     InitInstall
  298.     fInstallInit = 1
  299.  
  300.     InitSetup = i%
  301. END FUNCTION
  302. '********************
  303. FUNCTION InitFrame(szCmdLine$) STATIC AS INTEGER
  304.     IF hSetup > 0 THEN
  305.     ELSE
  306.   i% = InitializeFrame(szCmdLine$)
  307.   IF i% = -1 THEN
  308.       END   '' NOT an error - Usage (/?) or Command line copy operation
  309.   ELSEIF i% = 0 THEN
  310.       END
  311.   ELSE
  312.       InitFrame = i%
  313.   END IF
  314.     END IF
  315. END FUNCTION
  316. '********************
  317. SUB InitInstall STATIC
  318.     IF hSetup > 0 THEN
  319.     ELSEIF FInitializeInstall(HinstFrame(), HwndFrame()) = 0 THEN
  320.   END
  321.     END IF
  322. END SUB
  323. '********************
  324. FUNCTION GetSymbolValue(szSymbol$) STATIC AS STRING
  325.     szValue$ = string$(cbSymValMax,32)
  326.     Length% = CbGetSymbolValue(szSymbol$, szValue$, cbSymValMax)
  327.     GetSymbolValue = szValue$
  328.     IF Length% >= cbSymValMax THEN
  329.   res% = DoMsgBox("Buffer Overflow", "MS-Setup Error", MB_ICONHAND+MB_OK)
  330.   ERROR STFERR
  331.     END IF
  332.     IF szSymbol$ = "" THEN
  333.   ERROR STFERR
  334.     END IF
  335.     szValue$ = ""
  336. END FUNCTION
  337. '********************
  338. SUB SetSymbolValue(szSymbol$, szValue$) STATIC
  339.     IF FSetSymbolValue(szSymbol$, szValue$) = 0 THEN
  340.   ERROR STFERR
  341.     END IF
  342. END SUB
  343.  
  344. '*********************
  345. SUB SetBitmap(szDll$, Bitmap%) STATIC
  346.     IF FSetBitmap(szDll$, Bitmap%) = 0 THEN
  347.   ERROR STFERR
  348.     END IF
  349. END SUB
  350. '*********************
  351. SUB SetAbout(szAbout1$, szAbout2$) STATIC
  352.     IF FSetAbout(szAbout1$, szAbout2$) = 0 THEN
  353.   ERROR STFERR
  354.     END IF
  355. END SUB
  356. '********************
  357. SUB SetTitle(sz$) STATIC
  358.     SetWindowText HwndFrame(), sz$
  359. END SUB
  360. '********************
  361. SUB ReadInfFile (szFile$) STATIC
  362.     IF FOpenInf(szFile$, 1, 0) = 0 THEN
  363.       ERROR STFERR
  364.     END IF
  365. END SUB
  366. '********************
  367. FUNCTION GetWindowsDir STATIC AS STRING
  368.     szBuf$ = string$(256, 32)
  369.     cbBuf% = GetWindowsDirectory(szBuf$, 256)
  370.  
  371.     IF cbBuf% = 0 THEN
  372.   GetWindowsDir = ""
  373.   ERROR STFERR
  374.     ELSE
  375.   IF cbBuf% > 255 THEN
  376.       res% = DoMsgBox("Buffer Overflow", "MS-Setup Error", MB_ICONHAND+MB_OK)
  377.       ERROR STFERR
  378.   END IF
  379.   szBuf$ = RTRIM$(szBuf$)
  380.   IF MID$(szBuf$, 1, 1) = "\" THEN
  381.       'szBuf$ = MID$(CURDIR$, 1, 2) + szBuf$
  382.       szBuf$ = MID$(GetWindowsSysDir, 1, 2) + szBuf$
  383.   ELSEIF MID$(szBuf$, 2, 1) <> ":" THEN
  384.       szBuf$ = MID$(GetWindowsSysDir, 1, 3) + szBuf$
  385.   END IF
  386.   IF MID$(szBuf$, LEN(szBuf$), 1) <> "\" THEN
  387.       szBuf$ = szBuf$ + "\"
  388.   END IF
  389.   GetWindowsDir = szBuf$
  390.     END IF
  391.  
  392.     szBuf$ = ""
  393. END FUNCTION
  394. '********************
  395. FUNCTION GetWindowsSysDir STATIC AS STRING
  396.     szBuf$ = string$(256, 32)
  397.     cbBuf% = GetSystemDirectory(szBuf$, 256)
  398.  
  399.     IF cbBuf% = 0 THEN
  400.   ERROR STFERR
  401.     ELSE
  402.   IF cbBuf% > 255 THEN
  403.       res% = DoMsgBox("Buffer Overflow", "MS-Setup Error", MB_ICONHAND+MB_OK)
  404.       ERROR STFERR
  405.   END IF
  406.   szBuf$ = RTRIM$(szBuf$)
  407.   IF MID$(szBuf$, 1, 1) = "\" THEN
  408.       szBuf$ = MID$(CURDIR$, 1, 2) + szBuf$
  409.   ELSEIF MID$(szBuf$, 2, 1) <> ":" THEN
  410.       szBuf$ = MID$(CURDIR$, 1, 3) + szBuf$
  411.   END IF
  412.   IF MID$(szBuf$, LEN(szBuf$), 1) <> "\" THEN
  413.       szBuf$ = szBuf$ + "\"
  414.   END IF
  415.   GetWindowsSysDir = szBuf$
  416.     END IF
  417.  
  418.     szBuf$ = ""
  419. END FUNCTION
  420. '********************
  421. FUNCTION UIStartDlg(szDll$, Dlg%, szDlgProc$, HelpDlg%, szHelpProc$) STATIC AS STRING
  422.     IF FDoDialog(HwndFrame(), szDll$, Dlg%, szDlgProc$, HelpDlg%, szHelpProc$) = 0 THEN
  423.   ERROR STFERR
  424.     ELSE
  425.   UIStartDlg = GetSymbolValue("DLGEVENT")
  426.     END IF
  427. END FUNCTION
  428. '********************
  429. SUB UIPop (n%) STATIC
  430.     IF FKillNDialogs(n%) = 0 THEN
  431.   ERROR STFERR
  432.     END IF
  433. END SUB
  434. '********************
  435. SUB UIPopAll STATIC
  436.     IF FKillNDialogs(65535) = 0 THEN
  437.   ERROR STFERR
  438.     END IF
  439. END SUB
  440. '********************
  441. FUNCTION IsDirWritable (szDir$) STATIC AS INTEGER
  442.     IsDirWritable = FIsDirWritable(szDir$)
  443. END FUNCTION
  444. '********************
  445. SUB CreateDir (szDir$, cmo%) STATIC
  446.     IF FCreateDir(szDir$, cmo%) = 0 THEN
  447.   ERROR STFERR
  448.     END IF
  449. END SUB
  450. '********************
  451. SUB CopyFilesInCopyList STATIC
  452.     grc% = GrcCopyFilesInCopyList (HinstFrame())
  453.  
  454.     IF grc% = grcUserQuit THEN
  455.   ERROR STFQUIT
  456.     ELSEIF grc% > 0 THEN
  457.   ERROR STFERR
  458.     END IF
  459. END SUB
  460. '********************
  461. SUB AddSectionFilesToCopyList (szSect$, szSrc$, szDest$) STATIC
  462.     IF FAddSectionFilesToCopyList (szSect$, szSrc$, szDest$) = 0 THEN
  463.   ERROR STFERR
  464.     END IF
  465. END SUB
  466. '********************
  467. SUB CreateIniKeyValue (szFile$, szSect$, szKey$, szValue$, cmo%) STATIC
  468.     IF FCreateIniKeyValue(szFile$, szSect$, szKey$, szValue$, cmo%) = 0 THEN
  469.   ERROR STFERR
  470.     END IF
  471. END SUB
  472. '********************
  473. SUB CreateProgmanGroup (szGroup$, szPath$, cmo%) STATIC
  474.     IF FCreateProgManGroup(szGroup$, szPath$, cmo%) = 0 THEN
  475.   ERROR STFERR
  476.     END IF
  477. END SUB
  478. '********************
  479. SUB CreateProgmanItem (szGroup$, szItem$, szCmd$, szOther$, cmo%) STATIC
  480.     szItemNew$ = szItem$
  481.     IF szOther$ <> "" THEN
  482.   szItemNew$ = szItem$ + "," + szOther$
  483.     END IF
  484.     IF FCreateProgManItem(szGroup$, szItemNew$, szCmd$, cmo%) = 0 THEN
  485.   ERROR STFERR
  486.     END IF
  487.     szItemNew$ = ""
  488. END SUB
  489. '********************
  490. SUB ShowProgmanGroup (szGroup$, Cmd%, cmo%) STATIC
  491.     IF FShowProgManGroup(szGroup$, STR$(Cmd%), cmo%) = 0 THEN
  492.   ERROR STFERR
  493.     END IF
  494. END SUB
  495. '********************
  496.  
  497. '********************
  498. SUB Install STATIC
  499.     SrcDir$ = GetSymbolValue("STF_SRCDIR")
  500.     WinDir$ = GetWindowsDir()
  501.     SysDir$ = GetWindowsSysDir()
  502.        
  503.     CreateDir DEST$, cmoNone
  504.         
  505.     AddSectionFilesToCopyList "Main",       SrcDir$, DEST$ 
  506.     AddSectionFilesToCopyList "Docs", SrcDir$, DEST+"\Docs"
  507.         
  508.     CopyFilesInCopyList
  509.         
  510.     ini$ = MakePath(WinDir$, "WISDN.INI")
  511.     CreateIniKeyValue ini$, "Environment", "WISDN directory", DEST$ ,      cmoOverwrite
  512.     CreateIniKeyValue ini$, "Environment", "Call log", DEST$+"\WISDN.LOG" ,cmoOverwrite
  513.     CreateIniKeyValue ini$, "Options",     "Phone",            "65291",    cmoOverwrite
  514.     CreateIniKeyValue ini$, "Environment", "Help Path",         DEST$,     cmoOverwrite
  515.     CreateIniKeyValue ini$, "Options",     "Status Bars",     "12",               cmoOverwrite
  516.     CreateIniKeyValue ini$, "Options",     "Ringing Tone",    "2500,20,20,30",    cmoOverwrite
  517.    
  518. 'For Diskmanager
  519.     CreateIniKeyValue ini$, "Disk manager",    "Include",          "94",           cmoNone
  520.  
  521. 'For Registration
  522.     CreateIniKeyValue ini$, "Security", "Administrator Password",ADMINPWD$,     cmoOverwrite
  523.     CreateIniKeyValue ini$, "Security", "Registration Number",REGNO$,     cmoOverwrite
  524.     ini$ = MakePath(WinDir$, "WISDNSEC.INI")
  525.     CreateIniKeyValue ini$, "<all others>", "Password",OTHERSPWD$,     cmoOverwrite
  526.    
  527. ' Create WISDN Program Group with documents listed
  528.     CreateProgmanGroup "WISDN", "", cmoNone
  529.     ShowProgmanGroup  "WISDN", 1, cmoNone
  530.     CreateProgmanItem "WISDN", "WISDN 2", MakePath(DEST$,"wisdn.exe"), "", cmoOverwrite
  531.     CreateProgmanItem "WISDN", "WISDN 2 HELP", MakePath(WinDir$,"WINHELP "+DEST$+"\WISDN.HLP"), "", cmoOverwrite     
  532.     CreateProgmanItem "WISDN", "Read Me", MakePath(WinDir$,"WRITE "+DEST$+"\docs\README.WRI"), "", cmoOverwrite    
  533.     CreateProgmanItem "WISDN", "Getting Started", MakePath(WinDir$,"WRITE "+DEST$+"\docs\install.WRI"), "", cmoOverwrite            
  534.     CreateProgmanItem "WISDN", "Call Control", MakePath(WinDir$,"WRITE "+DEST$+"\docs\call.WRI"), "", cmoOverwrite       
  535.     CreateProgmanItem "WISDN", "Disk Manager", MakePath(WinDir$,"WRITE "+DEST$+"\docs\diskman.WRI"), "", cmoOverwrite       
  536.     CreateProgmanItem "WISDN", "ISDN", MakePath(WinDir$,"WRITE "+DEST$+"\docs\isdn.WRI"), "", cmoOverwrite       
  537.     CreateProgmanItem "WISDN", "WISDN Features", MakePath(WinDir$,"WRITE "+DEST$+"\docs\features.WRI"), "", cmoOverwrite       
  538.     CreateProgmanItem "WISDN", "Hints and Tips", MakePath(WinDir$,"WRITE "+DEST$+"\docs\Tips.WRI"), "", cmoOverwrite       
  539.     CreateProgmanItem "WISDN", "Register", MakePath(WinDir$,"NOTEPAD "+DEST$+"\docs\Register.txt"), "", cmoOverwrite       
  540. END SUB
  541.