⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 instw32.tcl

📁 开发VxWorks图形界面所必须的媒体库WindML2.0的补丁windml2-cp2。
💻 TCL
📖 第 1 页 / 共 5 页
字号:

    set ctrlVals(volatileFrm) [list \
            [list label -name msg1 \
                        -title [strTableGet 1290_LICENSE_CHOICE] \
                        -x 100 -y 10 -w 187 -h 16] \
            [list list  -name listCtrl \
                        -x 100 -y 32 -w 150 -h 32] \
            [list label -name msg2 \
                        -title [strTableGet 1291_LICENSE_CHOICE] \
                        -x 100 -y 80 -w 205 -h 8] \
            [list choice -name remote \
                        -title [strTableGet 1300_LICENSE_CHOICE_0] \
                        -newgroup -auto \
                        -callback {onLicChoice remote} \
                        -x 110 -y 92 -w 185 -h 12] \
            [list choice -name haveKey \
                        -title [strTableGet 1300_LICENSE_CHOICE_1] \
                        -auto \
                        -callback {onLicChoice haveKey} \
                        -x 110 -y 103 -w 185 -h 12] \
            [list choice -name email \
                        -title [strTableGet 1310_LICENSE_CHOICE_2] \
                        -auto \
                        -callback {onLicChoice email} \
                        -x 110 -y 114 -w 185 -h 12] \
            [list choice -name call \
                        -title [strTableGet 1320_LICENSE_CHOICE_3] \
                        -auto \
                        -callback {onLicChoice call} \
                        -x 110 -y 125 -w 185 -h 12] \
    ]

    set w [dlgFrmCreate [strTableGet 1520_TITLE_LICENSE_CHOICE]]

    foreach featureId [cdInfoGet featureIdList] {
        lappend setupVals(licComp) "[featureDescGet $featureId]"
    }

    controlValuesSet $w.listCtrl $setupVals(licComp)
    controlValuesSet $w.$setupVals(licAction) 1 
    controlValuesSet $ctrlVals(mainWindow).nextButt "&Next >"
}


proc pageProcess(licenseChoice) {} {
    global setupVals

    if ![catch {genHostCode [info host]} retVal] {
        set setupVals(hostId) $retVal
    } {
        set setupVals(hostId) ""
        uninstLog setupLog "\tFailed to detect HostId: $retVal"
    }

    set setupVals(licenseNum) [setupLicenseNumGet]

    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
        }
        manual {
            pageRemove licEmail
            pageRemove licCall
            pageRemove licenseKey
            pageRemove remoteLicenseHost
        }
    }
    return 1
}


proc pageCreate(licenseKey) {} {
    global ctrlVals
    global setupVals

    set ctrlVals(volatileFrm) [list \
                [list label -name msg1 \
                            -title [strTableGet 1260_LICENSE_KEY \
                                                $setupVals(hostName)] \
                            -x 100 -y 10 -w 205 -h 25] \
                [list label -name msg2 -title "&License Key" \
                            -x 100 -y 37 -w 85 -h 10] \
                [list text -name licenseKeyText \
                           -x 100 -y 49 -w 150 -h 12] \
                [list list -name licList \
                           -callback keyInfoUpdate \
                           -x 100 -y 63 -w 150 -h 38] \
                [list group -name licInfoGroup \
                            -title "Key Information" \
                            -x 100 -y 106 -w 150 -h 64] \
                [list button -name add \
                            -title "&Add" \
                            -callback onAddLic \
                            -x 265 -y 49 \
                            -w 40 -h 12] \
                [list button -name remove \
                            -title "&Remove" \
                            -callback onRemoveLic \
                            -x 265 -y 63 \
                            -w 40 -h 12] \
    ]

    set x0 107
    set y0 116
    set txtList {"Feature Id:" "Feature Name:" "Licenses:" \
                 "Start Date:" "Expire Date:"}    

    set x1 [expr $x0 + 50]
    set i 1    

    foreach header $txtList {
        lappend ctrlVals(volatileFrm) [list label -name $header \
                -title $header \
                -x "$x0" -y "$y0" \
                -w 47 -h 10] 

        lappend ctrlVals(volatileFrm) [list label -name "ctrl$i" \
                -title "" \
                -x "$x1" -y "$y0" \
                -w 90 -h 10] 

        incr y0 10
        incr i
    }

    set w [dlgFrmCreate [strTableGet 1510_TITLE_LICENSE_KEY]]

    controlValuesSet $ctrlVals(mainWindow).licenseKeyText \
                "$setupVals(licenseKey)"

    controlValuesSet $ctrlVals(mainWindow).licList \
                $setupVals(licenseKeyList)

    controlValuesSet $ctrlVals(mainWindow).nextButt "&Next >"
    controlFocusSet $ctrlVals(mainWindow).licenseKeyText
}


proc pageProcess(licenseKey) {} {
    global setupVals
    global ctrlVals

    set retVal 0
    set exitMsg [strTableGet 1270_LICENSE_KEY_ERROR]

    if {[llength $setupVals(licenseKeyList)] != 0} {

        if {![file isdirectory [licenseHomeDirGet]]} {
            file mkdir [licenseHomeDirGet]
        }

        beginWaitCursor

        # copy over the license files

        licenseFilesCopy

        # create the license file

        set binDir "[destDirGet]\\host\\[windHostTypeGet]\\bin"

        foreach key $setupVals(licenseKeyList) {
            if [catch {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
            }
        }

        # install Wind License Manager as a service on NT, in the \
        # startup group on 95.  Start the server if it is not already \
        # running

        exitMsgSet [strTableGet 1261_LICENSE_KEY_FINISH_OK]

        set wlmdPath [systemDirGet]\\WLMD.EXE

        if {$ctrlVals(NT) && ($setupVals(isWlmdRunning) != 1)} {
            set exePath "[systemDirGet]\\WLMD.EXE"
            set licServiceName "WindLM"
    
            if {![catch {setupServiceInstall $licServiceName $wlmdPath ""}\
                error]} {
                uninstLog resource "service\t$licServiceName"            
            } 
            catch {setupServiceStart $licServiceName} error

        } elseif {! $ctrlVals(NT)} {
            set exeDir "[setupWinDirGet]\\system"

            itemCreateLog Startup WindLM $wlmdPath [systemDirGet] \
                          $ctrlVals(admin)

            if {$setupVals(isWlmdRunning) != 1} {
                if {[catch {processCreate -hidden $wlmdPath \
                                          [licenseHomeDirGet]} error]} {
    
                    exitMsgSet [strTableGet 1262_LICENSE_KEY_FINISH_BAD]
                }  
            }
        }

        windowShow $ctrlVals(mainWindow) 0
        set retVal 1
    } {
        messageBox [strTableGet 1270_LICENSE_KEY_ERROR]
        set retVal 0
    }   

    endWaitCursor        
    return $retVal
}


proc pageCreate(licEmail) {} {
    global setupVals
    global ctrlVals

    set ctrlVals(volatileFrm) [list \
                   [list label -name msg \
                               -title [strTableGet 1330_LICENSE_MAIL] \
                               -x 100 -y 10 -w 205 -h 24] \
                   [list text  -name licenseInfo \
                               -multiline -hscroll \
                               -vscroll -readonly \
                               -x 100 -y 40 -w 205 -h 130] \
    ]

    set mailMsg "[strTableGet 1340_LICENSE_MAIL_HEADER_LINE1]\
         \r\n\r\n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE2]\
         \r\n\r\n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE3 [userNameGet]]\
             \r\n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE4 [companyNameGet]]\
             \r\n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE5a [instKeyGet]]\
             \r\n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE6 \
                              $setupVals(licenseNum)]\
             \r\n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE7 \
                              $setupVals(hostName)]\
             \r\n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE8 \
                              $setupVals(hostId)]\
         \r\n\r\n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE9]\
         \r\n\r\n"

    foreach featureId [cdInfoGet featureIdList] {
        append mailMsg "[featureDescGet $featureId] (id = $featureId)\r\n"
    }

    set setupVals(mailMsg) $mailMsg
    set w [dlgFrmCreate [strTableGet 1530_TITLE_LICENSE_MAIL]]
    controlValuesSet $w.licenseInfo "$setupVals(mailMsg)" 
}


proc pageProcess(licEmail) {} {
    global setupVals
    global ctrlVals
  
    set setupVals(licAction) haveKey
    set ctrlVals(pageList) $ctrlVals(pageListBack)

    set ctrlVals(currPage) folderSelect
    return [mailSend]
}


proc pageCreate(licCall) {} {
    global setupVals
    global ctrlVals

    set ctrlVals(volatileFrm) [list \
                    [list label -name msg \
                                -title [strTableGet 1350_LICENSE_CALL] \
                                -x 100 -y 10 -w 205 -h 24] \
                    [list text  -name callInfo \
                               -multiline -hscroll -vscroll \
                               -readonly \
                               -x 100 -y 48 -w 205 -h 120] \
    ]

    set w [dlgFrmCreate [strTableGet 1540_TITLE_LICENSE_CALL]]
    
    set callMsg "[strTableGet 1340_LICENSE_MAIL_HEADER_LINE7 \
                              $setupVals(hostName)]\
             \r\n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE8 \
                              $setupVals(hostId)]\
             \r\n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE6 \
                              $setupVals(licenseNum)]\
         \r\n\r\n[strTableGet 1340_LICENSE_MAIL_HEADER_LINE9]\
         \r\n\r\n"

    foreach featureId [cdInfoGet featureIdList] {
        append callMsg "[featureDescGet $featureId] (id = $featureId)\r\n"
    }

    controlValuesSet $w.callInfo $callMsg
}


proc pageProcess(licCall) {} {
    global setupVals
    global ctrlVals
  
    set setupVals(licAction) haveKey
    set ctrlVals(pageList) $ctrlVals(pageListBack)

    set ctrlVals(currPage) folderSelect
    return 1
}


proc pageCreate(filesCopy) {} {
    global ctrlVals
    global setupVals

    set w [dlgFrmCreate [strTableGet 1470_TITLE_FILECOPY]]

    controlEnable $w.backButt 0
    controlEnable $w.nextButt 0
    set setupVals(cancel) 0

    set ctrlVals(bbrdList) [bbrdListGet .BMP]

    if {"$ctrlVals(bbrdList)" == ""} {
        set ctrlVals(bbrdList) \
            [dosToUnix [cdromRootDirGet]/RESOURCE/BITMAPS/SETUP.BMP]
    }

    set ctrlVals(numBbrd) [llength $ctrlVals(bbrdList)]
    set ctrlVals(displayInt) [expr 100 / $ctrlVals(numBbrd)]
    set ctrlVals(bbrdElapse) $ctrlVals(displayInt)

    meterCreate [strTableGet 1170_FILE_COPY] 
    controlColorsSet $ctrlVals(meterWindow).$ctrlVals(meterWg) \
                        -background Blue -foreground Black

    filesCopy

    controlEnable $w.backButt 1
    controlEnable $w.nextButt 1

    nextCallback
}


proc pageProcess(filesCopy) {} {
    global objects
    global ctrlVals
    global setupVals

    # This global variable is set in the tornado/postInstall.tcl
    global tornadoInstalled

    set retVal 0

    if {"$setupVals(cancel)" != "1"} {
        if ![info exists tornadoInstalled] {
            pageRemove torRegistry
            pageRemove remoteRegistryHost
            pageRemove portMapper
        } 

        if {[llength [cdInfoGet installedFeatureIdList]] == 0} {
            pageRemove licenseChoice 
            pageRemove licEmail
            pageRemove licCall
            pageRemove licenseKey  
            pageRemove remoteLicenseHost
        }

        set binDir "[destDirGet]\\host\\[windHostTypeGet]\\bin"

        if {[array names objects] == ""} {
            pageRemove "libUpdate"
        }

        meterDestroy $ctrlVals(meterWindow)
        set retVal 1

    } {
        applicationExit
    }

    return $retVal
}


proc pageCreate(libUpdate) {} {
    global ctrlVals
    global setupVals

    set ctrlVals(numBbrd) 0
    meterCreate [strTableGet 1180_LIB_UPDATE]
    set w [dlgFrmCreate [strTableGet 1480_TITLE_LIBUPDATE]]

    controlColorsSet $ctrlVals(meterWindow).$ctrlVals(meterWg) \
                            -background Blue -foreground Black

    controlEnable $w.backButt 0
    controlEnable $w.nextButt 0

    librariesUpdate

    meterDestroy $ctrlVals(meterWindow)

    controlEnable $w.backButt 1
    controlEnable $w.nextButt 1

    nextCallback

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -