📄 instw32.tcl
字号:
# 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
# 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
tempDirectory destroy
}
}
\-f -
/f -
\-F -
/F {
dbgputs "parseCmdLine: flexlm Installation, switch is [lindex $switches 0]"
instTypeSet flexInst
parseCmdLine [lrange $switches 1 end]
}
\-l -
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -