📄 insttk.tcl
字号:
if [info exists tornadoInstalled] { torVarsCreate } wm withdraw . uninstStop endWaitCursor return 1}proc pageCreate(licenseFinish) {} { beginWaitCursor set w [dlgFrmCreate [strTableGet 1500_TITLE_FINISH]] uninstLog setupLog "[cdInfoGet number] SETUP" uninstLog setupLog [strTableGet 1261_LICENSE] $w.msg config -text [exitMsgGet] .buts.next config -text "Finish" .buts.cancel config -state disabled .buts.back config -state disabled endWaitCursor}proc pageProcess(licenseFinish) {w} { global setupVals beginWaitCursor wm withdraw . uninstStop endWaitCursor return 1}proc mailSend {} { global setupVals set tmpFile [tempDirGet]/licInfo.[pid] set f [open $tmpFile "w"] puts $f $setupVals(mailMsg) close $f set to [strTableGet 1220_MAIL_TO] set subject [strTableGet 1230_MAIL_SUBJECT] if [catch {exec mail -s $subject $to < $tmpFile} error] { if [catch {exec mail $to < $tmpFile} e] { messageBox [strTableGet 1240_MAIL_ERROR] return 0 } } messageBox [strTableGet 1250_MAIL_OK] return 1}proc pageCreate(licenseKey) {} { global ctrlVals global setupVals beginWaitCursor set w [dlgFrmCreate [strTableGet 1510_TITLE_LICENSE_KEY]] $w.msg config -text [strTableGet 1260_LICENSE_KEY [info host]] # Create license key field labelCreate $w.licenseKeyLabel "License Key:" place $w.licenseKeyLabel -in $w -y 60 entry $w.licenseKeyText -relief sunken -width 32 -font 7x13 \ -textvariable setupVals(licenseKey) place $w.licenseKeyText -in $w -y 85 focus $w.licenseKeyText set frm $w.frm frame $frm -height 50 place $frm -in $w -y 115 listbox $frm.list -width 29 -height 3 \ -yscrollcommand "$frm.scroll set" -font $ctrlVals(textFont) bind $frm.list <ButtonRelease-1> "updateKeyInfo $frm.list $w.licenseInfo" scrollbar $frm.scroll -command "$frm.list yview" pack $frm.list $frm.scroll -side left -fill y -expand yes if {[llength $setupVals(licenseKeyList)] != 0} { foreach key $setupVals(licenseKeyList) { $frm.list insert end $key } } # Create the "add key" button set setupVals(licenseKey) "" button $w.addKey -text "Add" \ -command "addKey $frm.list" \ -font $ctrlVals(textFont) \ -padx 14 -pady 2 place $w.addKey -in $w -x 250 -y 83 # Create the "remove key" button button $w.remKey -text "Remove" \ -command "remKey $frm.list" \ -font $ctrlVals(textFont) \ -padx 3 -pady 2 place $w.remKey -in $w -x 250 -y 115 labelCreate $w.licenseInfo "" place $w.licenseInfo -in $w -y 190 endWaitCursor}proc addKey {w} { global setupVals global ctrlVals set retVal 1 if {([string trim $setupVals(licenseKey)] != "") && \ ([lsearch [$w get 0 end] "$setupVals(licenseKey)"] == -1)} { set prog [cdromBinDirGet]/WLMUTILS if [catch {exec $prog -decodeKey $setupVals(licenseKey)} error] { messageBox [strTableGet 1281_LICENSE_KEY_ERROR_2 \ $setupVals(licenseKey)] set retVal 0 } { $w insert end $setupVals(licenseKey) set setupVals(licenseKeyList) [$w get 0 end] updateKeyInfo $w $ctrlVals(volatileFrm).licenseInfo\ $setupVals(licenseKey) } } elseif {[string trim $setupVals(licenseKey)] == ""} { messageBox "Please enter a license key first." set retVal 0 } set setupVals(licenseKey) "" return $retVal}proc remKey {w} { global setupVals global ctrlVals if {[$w curselection] >= 0} { $w delete [$w curselection] } set setupVals(licenseKeyList) [$w get 0 end] $ctrlVals(volatileFrm).licenseInfo config -text ""}proc updateKeyInfo {listW keyInfoW {key ""}} { global setupVals if {[llength $setupVals(licenseKeyList)] == 0} { return 0 } if {$key == ""} { set key [$listW get [$listW curselection]] } set prog [cdromBinDirGet]/WLMUTILS if [catch {exec $prog -decodeKey $key} retVal] { messageBox "$retVal" return 0 } set pList [split $retVal "\n"] set licenseInfo "" append licenseInfo "Feature Id\t: [lindex $pList 0]\n" append licenseInfo "Feature Name\t: [featureDescGet [lindex $pList 0]]\n" append licenseInfo "Licenses\t\t: [lindex $pList 2]\n" append licenseInfo "Start date\t: \ [clock format [lindex $pList 3] -format "%b %d %Y"]\n" append licenseInfo "Expire date\t: \ [clock format [lindex $pList 4] -format "%b %d %Y"]\n\n" $keyInfoW config -text $licenseInfo}proc pageProcess(licenseKey) {w} { global ctrlVals global setupVals beginWaitCursor if {[llength $setupVals(licenseKeyList)] == 0} { messageBox [strTableGet 1270_LICENSE_KEY_ERROR] endWaitCursor return 0 } set binDir [destDirGet]/host/[windHostTypeGet]/bin set relBinDir host/[windHostTypeGet]/bin foreach filepath [glob -nocomplain [cdromBinDirGet]/WLM/*] { set filename [string tolower [file tail $filepath]] fileDup $filepath $binDir/$filename uninstLog file "wind_base\t$relBinDir/$filename" } if ![file isdirectory [licenseHomeDirGet]] { file mkdir [licenseHomeDirGet] } foreach key $setupVals(licenseKeyList) { set prog [cdromBinDirGet]/WLMUTILS if [catch {exec $prog -putKeyfile \ [join $key ""] \ [info host] \ [licenseHomeDirGet]} result] { uninstLog setup \ "\t[strTableGet 1280_LICENSE_KEY_ERROR_1 $result]" messageBox [strTableGet 1280_LICENSE_KEY_ERROR_1 $result] endWaitCursor return 0 } } exitMsgSet [strTableGet 1355_LICENSE_SUCCESS] endWaitCursor return 1}proc pageCreate(licenseChoice) {} { global ctrlVals global setupVals beginWaitCursor set w [dlgFrmCreate [strTableGet 1520_TITLE_LICENSE_CHOICE]] set setupVals(licenseNum) [setupLicenseNumGet] set prog [cdromBinDirGet]/WLMUTILS if ![catch {exec $prog -genHostCode [info host]} retVal] { set setupVals(hostId) $retVal } { set setupVals(hostId) "" uninstLog setupLog "\tFailed to detect HostId: $retVal" } set ctrlVals(pageList) $ctrlVals(pageListBack) $w.msg config -text [strTableGet 1290_LICENSE_CHOICE] set frm $w.frm frame $frm -height 50 place $frm -in $w -y 60 listbox $frm.list -width 35 -height 3 \ -yscrollcommand "$frm.scroll set" -font $ctrlVals(textFont) scrollbar $frm.scroll -command "$frm.list yview" pack $frm.list $frm.scroll -side left -fill y -expand yes foreach featureId [cdInfoGet featureIdList] { $frm.list insert end [featureDescGet $featureId] } labelCreate $w.msg2 [strTableGet 1291_LICENSE_CHOICE] place $w.msg2 -in $w -y 140 radiobutton $w.remote -text [strTableGet 1300_LICENSE_CHOICE_0] \ -variable setupVals(licAction) \ -font $ctrlVals(textFont) \ -highlightthickness 0 \ -relief flat -pady 0 \ -value "remote" place $w.remote -in $w -y 165 -x 10 radiobutton $w.haveKey -text [strTableGet 1300_LICENSE_CHOICE_1] \ -variable setupVals(licAction) \ -font $ctrlVals(textFont) \ -highlightthickness 0 \ -relief flat -pady 0 \ -value "haveKey" place $w.haveKey -in $w -y 185 -x 10 radiobutton $w.email -text [strTableGet 1310_LICENSE_CHOICE_2] \ -variable setupVals(licAction) \ -font $ctrlVals(textFont) \ -highlightthickness 0 \ -relief flat -pady 0 \ -value "email" place $w.email -in $w -y 205 -x 10 radiobutton $w.call -text [strTableGet 1320_LICENSE_CHOICE_3] \ -variable setupVals(licAction) \ -font $ctrlVals(textFont) \ -highlightthickness 0 \ -relief flat -pady 0 \ -value "call" place $w.call -in $w -y 225 -x 10 .buts.next config -text "Next" endWaitCursor}proc pageProcess(licenseChoice) {w} { global setupVals beginWaitCursor switch $setupVals(licAction) { haveKey { pageRemove licEmail pageRemove licCall pageRemove remoteLicenseHost } email { pageRemove licCall pageRemove remoteLicenseHost } call { pageRemove licEmail pageRemove remoteLicenseHost } remote { pageRemove licEmail pageRemove licCall pageRemove licenseKey } } endWaitCursor return 1}proc pageCreate(licEmail) {} { global setupVals ctrlVals beginWaitCursor set w [dlgFrmCreate [strTableGet 1530_TITLE_LICENSE_MAIL]] $w.msg config -text [strTableGet 1330_LICENSE_MAIL] set frm $w.frm frame $frm -height 100 -width 150 place $frm -in $w -y 55 text $frm.licenseInfo -bd 2 -yscrollcommand "$frm.scroll set" \ -width 49 -height 16 -font $ctrlVals(smallFont) scrollbar $frm.scroll -command "$frm.licenseInfo yview" pack $frm.licenseInfo $frm.scroll -side left -fill y -expand yes set mailMsg "[strTableGet 1340_LICENSE_MAIL_HEADER_LINE1]\ \n\n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE2]\ \n\n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE3 [userNameGet]]\ \n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE4 [companyNameGet]]\ \n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE5a [instKeyGet]]\ \n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE6 \ $setupVals(licenseNum)]\ \n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE7 \ [info host]]\ \n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE8 \ $setupVals(hostId)]\ \n\n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE9]\ \n\n" foreach featureId [cdInfoGet featureIdList] { append mailMsg "[featureDescGet $featureId] (id = $featureId)\n" } set setupVals(mailMsg) $mailMsg $frm.licenseInfo insert end $setupVals(mailMsg) $frm.licenseInfo config -state disabled .buts.next config -text "Send" endWaitCursor}proc pageProcess(licEmail) {w} { global setupVals global ctrlVals beginWaitCursor set setupVals(licAction) haveKey set ctrlVals(pageList) $ctrlVals(pageListBack) set ctrlVals(currPage) destDir .buts.next config -text "Next" set retVal [mailSend] endWaitCursor return $retVal}proc pageCreate(licCall) {} { global setupVals ctrlVals beginWaitCursor set w [dlgFrmCreate [strTableGet 1540_TITLE_LICENSE_CALL]] $w.msg config -text [strTableGet 1350_LICENSE_CALL] set callMsg "[strTableGet 1340_LICENSE_MAIL_HEADER_LINE7 \ [info host]]\ \n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE8 \ $setupVals(hostId)]\ \n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE6 \ $setupVals(licenseNum)]\ \n\n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE9]\n\n" foreach featureId [cdInfoGet featureIdList] { append callMsg "[featureDescGet $featureId] (id = $featureId)\n" } set frm $w.frm frame $frm -height 60 -width 150 place $frm -in $w -y 80 text $frm.licenseInfo -bd 2 -yscrollcommand "$frm.scroll set" \ -width 49 -height 12 -font $ctrlVals(smallFont) scrollbar $frm.scroll -command "$frm.licenseInfo yview" pack $frm.licenseInfo $frm.scroll -side left -fill y -expand yes $frm.licenseInfo insert end $callMsg endWaitCursor}proc pageProcess(licCall) {w} { global setupVals global ctrlVals beginWaitCursor set setupVals(licAction) haveKey set ctrlVals(pageList) $ctrlVals(pageListBack) set ctrlVals(currPage) destDir endWaitCursor return 1}## Supported functions:#proc dlgFrmCreate {title} { global ctrlVals # Make sure that we don't unneccessary create the whole frame again. if {[winfo exists .bitmap] != "1"} { # Creating the dialog wm maxsize . $ctrlVals(dlgWidth) $ctrlVals(dlgHeight) wm minsize . $ctrlVals(dlgWidth) $ctrlVals(dlgHeight) wm geometry . $ctrlVals(dlgPos) wm iconname . Setup . configure -bg $ctrlVals(mainBg) # Display the bitmap label .bitmap -image $ctrlVals(dlgImage) place .bitmap -in . -x 20 -y 20
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -