📄 instw32.tcl
字号:
# INSTW32.TCL - UITcl script for Windows/UNIX Installation schemes## Copyright 1996-1999 Wind River Systems, Inc.## modification history# --------------------# 11b,26apr99,bjl Check for KDE in dlgFrmCreate, restoreOriginalDialog,# and meterCreate.# 11a,21apr99,wmd Fix spr #25970 - by utilizing controlHide first, then # destroying the control, we avoid the refresh problem.# 10z,08apr99,wmd Move the unused background window to 10000 10000.# 10y,08apr99,wmd Do not use windowSetSize 0 0, use windowShow xxx 0 instead.# 10x,02apr99,wmd More fixes for resize problem.# 10w,31mar99,wmd Fix resizing problem.# 10v,31mar99,wmd Fix spr #226197 by introducing a pause between updates of# ole and com.# 10u,24mar99,bjl workaround UITclSh problem with resizing Unix window.# 10t,22mar99,bjl move back button to the left on Unix to prevent overlap.# 10s,19mar99,wmd Output to a file any debug messages.# 10r,16mar99,tcy Added compatiblity and howto pages to UNIX Setup# 10q,16mar99,tcy Added safeguard to prevent setup from wiping out # program folders# 10p,15mar99,tcy minor fix: need to escape quote in message# 10o,12mar99,bjl restored gradient background and banner for windows. # 10n,01mar99,wmd Fix progStart to work for all window managers.# 10m,23feb99,tcy minimize system rebooting to only once (fix for SPR 22838)# 10l,18feb99,tcy placed remoteRegistryHost page after registry page# 10k,17feb99,tcy added REGDLL page to program group installation # (partial fix for SPR 24897)# 10j,11feb99,tcy added COMPTBLE and HOWTO pages for backward compatibility# 10i,09feb99,bjl do not resize next button in restoreOriginalDialog to# fix final oversized OK button on some Unix hosts.# 10h,03feb99,tcy hardcode file versions for OLE32.DLL and COMCTL32.DLL # (fix for SPR 24191)# 10g,03feb99,tcy fixed "Overwrite one file" bug (SPR 24715, 24135)# 10f,28jan99,tcy create new page configSys for configuration user system# 10e,27jan99,tcy moved some procedures to INCLUDE.TCL# 10d,26jan99,tcy moved regOptionRegValueRead() to REGISTRY.TCL# 10c,26jan99,tcy use for loop to source wizard pages# 10b,26jan99,tcy added sourcing of permission page# 10a,25jan99,tcy reorganize INSTW32.TCL -- move procs to wizard page files# 09f,25jan99,tcy added fileContentGet();# convert calls from cdRomRootDirGet() to cdFileNameGet();# move some messages to MESSAGES.TCL# 09e,25jan99,wmd Fixed spr 24181, allow partial selection of Tornado product# to be installed without dragging in the driver object.# 09d,22jan99,wmd Fix bug in proc onProjLicRecordOK, $error should be error.# 09c,20jan99,tcy added more comment headers# 09b,19jan99,tcy added comment headers to all procedures;# updated file according to WRS coding convention; # removed license management# 09a,18jan99,wmd Fix test automation stuff.# 08z,14jan99,wmd Need to eliminate use of FSPACE.TCL, its functions are now# in GLOBAL.TCL.# 08y,14jan99,wmd Changename of proc fileAppreviate to fileAbbreviate.# 08x,10dec98,tcy corrected logic to show program group for non-administrators# 08w,09dec98,bjl added superceding patch messages to patchinfo. # 08v,04dev98,bjl allow choice to continue Setup for required patches.# 08u,04dec98,tcy remove extra space in first user folder (fixes SPR 23700)# 08t,03dec98,tcy reset uninstall link location to SETUP directory# 08s,02dec98,bjl convert Unix style slashes to backslashes for Windows# in pageProcess(destDir).# 08r,25nov98,tcy use kbyteToMbyte to get available disk space for Windows# 08q,24nov98,bjl do not allow any directory starting with a number# for destDir.# 08p,24nov98,tcy run htmlBook utility at end of SETUP for UNIX# 08o,23nov98,tcy adjusted welcome screen to incoporate new warning message# 08n,20nov98,bjl skip filesCopy if user chooses to exit during setupCopy. # 08m,20nov98,tcy made last mod applicable for Windows only# 08l,19nov98,tcy prevent user from choosing directory with leading numbers# or directory without absolute paths# 08n,19nov98,bjl append web site location to patchinfo. # 08m,18nov98,bjl create patchinfo file during Unix patch checking to be # displayed at the shell when setup exits. # 08l,17nov98,bjl lowered space required/available labels for Unix (fixes# spr 23328). # 08k,13nov98,wmd fix spacing for choice button text.# 08j,13nov98,wmd create page for installation or program group icon # installation choices for the user.# 08i,13nov98,bjl move torRegistry radio buttons up for Win95, changed# order of radio button creation. # 08h,12nov98,tcy provide option for FAE to not save installation key # 08g,12nov98,wmd change order of choice boxes in Tornado Registry page,# change shortcut key for browse to be 'r' in destDir page.# 08f,11nov98,bjl replaced all group boxes with labels and frames (fixes# spr 23061).# 08e,11nov98,bjl restore window in restoreOriginalDialog before resizing# (fixes spr 22841).# 08d,10nov98,tcy removed batch file creation for regTornado.bat;# added call to backupFileQueueFlush to command queue;# disallow white space in destination directory (fix for SPR# 22793); run htmlbook tool# 08c,09nov98,wmd need to make setupVals(drvIndex) and array of indices.# 08b,30oct98,bjl added noColorMgr check, remove setup icon from welcome page # if color manager not running. # 08a,28oct98,wmd if the installation key is "none" remove the projInfo page.# 07z,28oct98,bjl allow overwrite of existing products for test automation,# fixed problem with Next button after minimize on Unix.# 07y,27oct98,bjl do not check for tornadoInstalled in folderSelect for icon # install, open explorer in iconFinish, reduce tor registry # label height for win95, do not display message about# exiting all programs for Unix, fixed various labels for# mw build 96.# 07x,27oct98,bjl added patchCheck procedure and recommended patch handling. # 07w,27oct98,tcy added nextCallback for finish page in automated test# 07v,26oct98,tcy changed "Select Components" to "Select Products"# added check for disk space on Windows# 07u,25oct98,tcy added backupFileQueueFlush call after filesCopy and# fixed return values of tempDirectory# 07t,22oct98,wmd change title of "I accept" button, check key shortcuts.# 07s,21oct98,tcy set focus on OK button in finish page; create folder# before creating icons if tornado is not installed# 07r,21oct98,wmd fix bug when compsel page is wrapped around using space key# when selected/deselecting the drv/objects.# 07q,20oct98,tcy fixed typo in prgGrp variable ; removed newDestDir variable# 07p,20oct98,tcy added sourcing of REGSAVE.TCL for updating registry to T2;# update comctl32.dll on Win95 if necessary# 07o,20oct98,bjl reduced height for tor reg description label for win95,# do not display reg desc. on remote page for Windows,# lower meter for billboard display.# 07n,20oct98,wmd fix some button coordinates.# 07m,20oct98,wmd same fix for tornadoSelected.# 07l,20oct98,wmd make sure setupVals(devIndex) is valid before using it.# 07k,19oct98,bjl lower license agreement button for Unix, added# tornado registry description to torRegistry page, make# torRegistry and remoteRegistryHost titles consistent.# 07j,16oct98,wmd if Tornado selected, don't allow de-selection of driver # product.# 07i,16oct98,wmd bold the message to exit all programs.# 07h,19oct98,bjl added code to place billboards in dialog window. Set # the env variable SETUP_REMOVEBACKGROUND=1 to activate. # 07g,16oct98,tcy do not write installation key to registry if user is FAE# 07f,15oct98,tcy do not copy atl.dll to system directory# 07e,15oct98,tcy enable detail button for all product with subparts# 07d,13oct98,wmd Reverse the order for the Registry and Project Info pages,# and automatically extract the WRS license field.# 06c,09oct98,bjl added code to remove background and limit colors. Set# the env variable SETUP_LIMITCOLORS=1 to activate. # 06b,09oct98,wmd fix for test automation.# 06a,09oct98,bjl use solid background and product label bitmap for Windows.# 05z,09oct98,tcy fixed patch scenario# 05y,07oct98,bjl do not call uninstStop unless uninstHomeDir is set. # 05x,06oct98,bjl added permissions page for Unix.# 05w,06oct98,tcy save tornado registry option in registry# 05v,06oct98,wmd fixed bug in installedProdGet.# 05u,06oct98,tcy used defGroupGet instead of Tornado for # opening program folder; added CD description to # welcome and registry frames# 05t,05oct98,bjl removed unsupported -topmost flag from proc dlgFrmCreate.# 05s,01oct98,wmd open explorer on the Tornado group for windows hosts.# 05r,29sep98,wmd fix envPathSet to respect UNIX names.# 05q,29sep98,wmd move display of README.TXT to right after welcome screen# 05p,30sep98,tcy move setupCopy ahead of filesCopy# 05o,29sep98,wmd added readmeDlg to ask if user wishes to read README.TXT.# 05n,29sep98,tcy added "yes_exit" dialog box # 05m,29sep98,tcy update Uninstall string from Tornado 1.0.1 to Tornado 2.0# 05l,29sep98,wmd fix hardcoding of SUN4/SOLARIS2 for CD_BIN# 05k,29sep98,tcy check for dcom95 installation at start and removed dcom page# 05j,28sep98,bjl display README.TXT and NEW.TXT at finish.# 05i,26sep98,tcy added progressmeter to DLL registration page# 05h,25sep98,bjl added required patch checking before setup starts, remove # setup.log.abort at finish.# 05g,25sep98,tcy make sure ATL.DLL is run first# 05f,25sep98,wmd display blank lines in license.txt for clarity.# 05e,25sep98,wmd left out some procs while merging, fixed it.# 05d,25sep98,wmd add warning if any installed product is about to be # overwritten, fix how to use choice buttons in proc dialog.# 05c,24Sep98,vhe Corrected boggus desc in partGuiChkLstUpdate# Added automatic selection of WTX component for # automatic setup# 05b,24sep98,tcy For dll registration, call batch file if exec does not work# 05a,23sep98,tcy use batch file to workaround exec bug ;# set overwritePolicy if user installs to new directory# 04z,22sep98,bjl added tornado-vxsim for tornadoInstalled setting, changed# setupVals(prodRegEntry) to Tornado 2.0, do not write# reg values immediately for remote registry, fixed remote# registry writing for unix, close mainWindow in # applicationExit to fix exit problems. # 04y,22sep98,tcy added regTornado page and rearranged dCom page and # regTornado proc; retain duplicate products; enabled# workaround for exit program on Windows; copied Tornado# DLLs before calling regTornado# 04x,22sep98,wmd fixed the product info screen dimensions for controls.# 04w,21sep98,bjl removed setupBannerAttach, added product label for Windows# and product bitmap for unix. # 04v,21sep98,tcy remove duplicate products from product list# 04u,19sep98,tcy fixed missing folder names on Win95 and # reregister debugger if failed once# 04t,17sep98,tcy adjust finish page and added dcom warning page# disable detail button initially# 04s,17sep98,bjl write registry values immediately, do not run uninstStop# if disk is full.# 04r,17sep98,wmd fix syntax problems from merging previous checkin.# 04q,17sep98,wmd use proc cdFileNameGet, fix onProjRecordOK proc.# 04p,16sep98,vhe Add automatic selection of product from configuration file# 04o,16sep98,tcy adjusted compSelect page # 04n,15sep98,wmd remove confirmation of project info page, changed some# wording, changed how proc dialogCreate worked.# 04m,14sep98,tcy print list of products after finish page# 04l,14sep98,bjl focus on backgroundWindow first for unix to set correct# colors for welcome page. # 04k,14sep98,j_w fix auto setup in registration page# 04j,11sep98,tcy added regTornado to register Tornado binaries# 04i,11sep98,j_w display products installed in log file in auto install# 04h,10sep98,j_w add test modification # 04g,09sep98,bjl fixed remove unix tempDir on exit, modified isUnix # procedure, workaround setup.ico with setupico.bmp, moved # projInfo registry values to inf file, workaround for # application exit for unix, include fspace.tcl for unix # available space, use different minimized icon for unix.# 04f,04sep98,bjl changed tornado.inf to uppercase, modified tempDirectory# procedure to work with setup wrapper.# 04e,03sep98,bjl removed torRegistry page for unix, added tornadoInstalled # check to compSelect, lowered button and frame on license # text page for unix display. # 04d,03sep98,wmd removed horizontal scroll bar from license text page.# 04c,03sep98,bjl modified to handle unix directories, added borders to # text boxes, removed folderSelect page for unix, # fixed exit dialogs to return values for unix.# 04b,02sep98,tcy torRegistry/remoteRegistryHost pages moved before filesCopy# 04a,01sep98,wmd incorporate license/project info into the setup widzard.# 03z,26aug98,tcy added context-sensitive help for all dialogs/controls# 03Y,25aug98,wmd fix the license text to fit into dialog frame nicely.# 03X,24aug98,wmd allign input text boxes for project info.# 03W,20aug98,wmd modify to identify and prevent installation over T101 tree.# 03v,19aug98,wmd modified for Mainwin.# 03u,19aug98,tcy added dialog box prompting for WIND directory if ZIP files# are not found# 03t,17aug98,j_w fix various pages for auto installation# 03s,12aug98,wmd add license agreement page, license record dialog to Setup.# 03r,14aug98,j_w add modification for test automation# 03q,10aug98,tcy added extra argument "args" for linkCreateLog# 03p,10aug98,tcy use COM interface functions to create folders and links# 03o,06aug98,tcy fixed bug of missing curly brace in keyData registry# 03n,05aug98,bjl write user data to registry from tornado.inf when setup # finishes.# 03m,04aug98,tcy fixed meter for libUpdate()# 03l,04aug98,bjl added processing of warning message file from inf file. # 03k,04aug98,wmd modified to add check for coreProd, and edited some warnings.# 03j,03aug98,bjl modified setup /ICON to update registry and use inf file. # 03i,30jul98,bjl added inf file processing; removed service install of # Tornado Registry, Tornado icon functions, functions that # store Tornado specific data into the Windows Registry, # and fileDup of .TXT files (now handled by inf files); # allow installation of Registry as a service without # the portmapper.# 03h,29jul98.wmd added error handling to check responses for overwrite/core# installation.# 03g,28jul98,tcy modified for new UITclSh# 03f,27jul98,tcy changed to controlPropertySet in libUpdate frame# 03e,24jul98,wmd fixed bitmap fading for bbrdUpdate.# 03d,23jul98,wmd add dialog for corefile installation, new dialog for setting# overwrite policy, uitclsh t2 changes.# 03c,23jul98,tcy added multi-key selection capability# 03b,22jul98,tcy added system check for TCP-IP and long filename# 03a,22jul98,tcy removed portMapper and moved License procs to LICW32.TCL# 02j,01apr98,pdn fixed localHost to localhost# 02i,09feb98,pdn continued even after getting BAD_CD_REVISION message.# 02h,16sep97,pdn allowed the 'none' key to be changed.# 02g,01jul97,pdn fixed the available diskspace problem.# 02f,13jun97,pdn added error handling in case key vendor mismatch.# 02e,08apr97,pdn fixed remote icon install problem, fixed mail sending# problem, copied *.TXT from root of CDROM to root of# tornado tree.# 02d,28mar97,pdn fixed the problem that torVarCreate get call too early# 02c,25mar97,pdn asigned 'localHost' to WIND_REGISTRY if user chooses to # run wtxregd.exe locally.# 02b,17mar97,pdn used "WindLM" instead of "Wind License Manager" for # service name on NT. # 02a,12mar97,pdn fixed setup problem when portMapper is running.# 01z,07mar97,pdn fixed the resource logging problem.# 01y,05mar97,pdn sorted the product list.# 01w,03mar97,pdn added the minimize flag when creating icons in the startup# group. created uninstall icon for all Window hosts.# added -p option for patch installation.# 01v,13feb97,pdn improved license installation steps.# 01u,09feb97,pdn added option to configure a floating license server# 01t,04feb97,pdn filted out unused messages from checklist box.# 01s,24jan97,pdn cleanup# 01r,24jan97,pdn adjusted welcome, and component select dialog.# 01q,22jan97,pdn fixed folder install bug.# 01p,21jan97,pdn saved the last Tornado group, fixed license install# 01o,20jan97,pdn used backslashes where possible, saved installation key# 01n,16jan97,pdn surrounded the if conditions w/ braces# 01m,13jan97,pdn fixed WIND_REGISTRY location, fixed checklist logic, # moved uninstBinCopy() to INSTALL.TCL, and clean up.# 01l,06jan97,pdn updated billboard cyling by product. cleanup text.# 01k,18dec96,sks cleaned up; better error handling on startup; rearranged code# a bit; create & destroy TMP dir.; change location of "TCL" &# "BITMAPS" directories; renamed "TEXT.TCL" to "MESSAGES.TCL"# 01j,12dec96,pdn added BAD_CD_REVISION check# 01i,11dec96,pdn displayed the feature id/description# 01h,24nov96,sj eliminated premature returns.# 01g,18nov96,sj replaced global variables with functions# from GLOBAL.TCL# 01f,14nov96,sj moved all text messages to TEXT.TCL# 01e,08nov96,sj queued up all registry key and value# writes until the end of uninstBinCopy.# 01d,06nov96,sj setup now works on 95 and NTs. # 01c,30oct96,sj completed the license setup# 01b,10may96,pdn adding setup wizard.# 01a,19apr96,sks written.# DESCRIPTION# This module is the Tcl code for the Setup program. It creates the wizard# pages.## RESOURCE FILES# etc/tools/resource/mfg/setup/RESOURCE/TCL/INSTALL.TCL# etc/tools/resource/mfg/setup/RESOURCE/TCL/GLOBAL.TCL# etc/tools/resource/mfg/setup/RESOURCE/TCL/MESSAGES.TCL# etc/tools/resource/mfg/setup/RESOURCE/TCL/CONFIG.TCL# etc/tools/resource/mfg/setup/RESOURCE/TCL/INF.TCL# etc/tools/resource/mfg/setup/RESOURCE/TCL/HELPW32.TCL# globals############################################################################### fileContentGet - return the content of a file as a string## This procedure opens a file and return the content of the file as a # string separated by new lines## SYNOPSIS# .tS# fileContentGet <file># .tE## PARAMETERS: # .IP file# file name relative to the root of the CD## RETURNS: N/A ## ERRORS: N/A#proc fileContentGet {file} { set file [cdFileNameGet $file] if [catch {open $file r} infile] { puts "Error: can't open $file" close $infile return } set contents "" foreach line [split [read $infile] \n] { string trimright $line append contents [format "%s\r\n" $line] } close $infile return $contents}############################################################################### isUnix - determine whether host platform is Unix or not## This procedure will determine whether host platform is Unix or not## SYNOPSIS# .tS# isUnix# .tE## PARAMETERS: N/A## RETURNS: 0 if host platform is not Unix# 1 if host platform is Unix## ERRORS: N/A##proc isUnix {} { global env if {[info exists env(WIND_HOST_TYPE)]} { if {[string match sun4* $env(WIND_HOST_TYPE)]} { return 1; } elseif {[string match parisc* $env(WIND_HOST_TYPE)]} { return 1; } else { return 0; } } else { return [info exists env(MWHOME)] }}############################################################################### limitColors - determine whether environment variable SETUP_LIMITCOLORS is set
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -