📄 instw32.tcl
字号:
# 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# etc/tools/resource/mfg/setup/RESOURCE/TCL/UTILW32.TCL# globals############################################################################### 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)] || [string match "x86-linux2" $env(WIND_HOST_TYPE)] || [string match parisc* $env(WIND_HOST_TYPE)] } { return 1; } else { return 0; } } else { return [info exists env(MWHOME)] }}############################################################################### noColorMgr - determine whether environment variable SETUP_NOCOLORMGR is set## This procedure will determine whether environment variable# SETUP_NOCOLORMGR is set## SYNOPSIS# .tS# noColorMgr# .tE## PARAMETERS: N/A## RETURNS: 0 if enviroment variable SETUP_NOCOLORMGR is not set# 1 if enviroment variable SETUP_NOCOLORMGR is set## ERRORS: N/A###proc noColorMgr {} {# global env## if {[info exists env(SETUP_NOCOLORMGR)]} {# if {$env(SETUP_NOCOLORMGR)==1} {# return 1# }# }## return 0#}############################################################################### parseCmdLine - parse command line arguments## This procedure will parse command line argument## SYNOPSIS# .tS# parseCmdLine <switches># .tE## PARAMETERS:# .IP switches# [/ICON | /I | -I] install icons only# [/HELP | /H | /?] print help messages# [/TEXT | /T | -T] text mode# [/PATCH]=<pathToPatch> patch mode# [/L | -L] license mode# [/A | -A] register file type associations# [/R | -R] Tornado registry reconfiguration at startup# [/U | -U | /M | -M | /C | -C | /E | -E] <lmFeatureName> <lmRcStr> <lmErrString># license error mode## RETURNS: 1 if there is a usage error# 0 if there are no usage errors## ERRORS: N/A#proc parseCmdLine {switches} { global tornadoInstalled global setupVals patchPath global usageError global displayedUsageError global skipInstalloverCheck regsub -all {\\\}} $switches {"} tmp regsub -all {\\\{} $tmp {"} tmp1 regsub -all {\\} $tmp1 {/} switches # check for usageError and switches to handle # recursive calls. if {![info exists usageError]} { set usageError 0 set displayedUsageError 0 } else { if {$usageError != 0} { return $usageError } } if {$switches==""} { return 0 } set usageError [expr [llength $switches] > 6] if {!$usageError} { set option [string range [lindex $switches 0] 0 8] switch -regexp ($option) { \-I - /I - \-i - /i - /ICON { if { [instTypeGet] != "text" } { instTypeSet icon set tornadoInstalled 1 parseCmdLine [lrange $switches 1 end] } else { puts [strTableGet 1550_USAGE] set displayedUsageError 1 set usageError 1 } } \-U - /U - \-u - /u - \-M - /M - \-m - /m - \-C - /C - \-c - /c - \-E - /E - \-e - /e { dbgputs "parseCmdLine: got licenseError $[lindex $switches 3]" instTypeSet licenseError set setupVals(lmError) [string toupper [lindex $switches 0]] dbgputs "parseCmdLine: lmError detected - $setupVals(lmError)" set setupVals(lmFeatureName) [lindex $switches 1] set setupVals(lmRcStr) [lindex $switches 2] set setupVals(lmErrString) [lindex $switches 3] if {$setupVals(lmFeatureName)=="" || $setupVals(lmRcStr)=="" || $setupVals(lmErrString)=="" } { set usageError 1 } else { parseCmdLine [lrange $switches 4 end] } if {$setupVals(lmFeatureName) == "WindRiver_GCC"} { # force Setup to simply exit if the feature is gcc set displayedUsageError 1 set usageError 1 } } \-f - /f - \-F - /F { dbgputs "parseCmdLine: flexlm Installation, switch is [lindex $switches 0]" instTypeSet flexInst parseCmdLine [lrange $switches 1 end] } \-l - /l - \-L - /L { dbgputs "parsCmdLine: license management setup" instTypeSet licenseSetup parseCmdLine [lrange $switches 1 end] } \-r - /r - \-R - /R { instTypeSet registryInst parseCmdLine [lrange $switches 1 end] } \-t - /t - \-T - /T - /TEXT { if { [instTypeGet] != "icon" } { set setupVals(cmdMode) "text" parseCmdLine [lrange $switches 1 end] } else {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -