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

📄 instw32.tcl

📁 基于VxWorks的图形界面开发工具Zinc6.0的升级补丁。
💻 TCL
📖 第 1 页 / 共 5 页
字号:
    global setupVals ctrlVals    for {set i 0} {$i < 10} {incr i} {        uiEventProcess    }    beginWaitCursor    set setupVals(isWlmdRunning) [pingServer [info host]]    endWaitCursor    if {[needUpdateWlmd] && $setupVals(isWlmdRunning)} {        messageBox -ok -stopicon [strTableGet 1359_LICENSE_SERVER_SHUTDOWN]        applicationExit    } {        set ctrlVals(currPage) welcome                pageRemove wlmdDetect        return 1    }}proc needUpdateWlmd {} {    global ctrlVals setupVals    set retVal 0    set installedWlmd [systemDirGet]\\WLMD.EXE    set cdWlmd $setupVals(WLM_DIR)\\WLMD.EXE    if {[file exists $installedWlmd]} {         set retVal [expr [file mtime $installedWlmd] < [file mtime $cdWlmd]]    }     return $retVal}proc constructPages {mode} {    global ctrlVals    global setupVals    global dll    set retVal 1    set ctrlVals(pageList) {}    switch $mode {        license {            # Load the Support.dll which contains the mail API            if [catch {dllLoad [cdromBinDirGet]\\SUPPORT.DLL} dll(1)] {                messageBox -ok -stopicon $dll(1)                return 0            }            # Load the TGensock.dll which contains the socket API            if [catch {dllLoad "[cdromBinDirGet]\\TGENSOCK.DLL"} dll(2)] {                messageBox -ok -stopicon $dll(2)                return 0            }            # Load the wlmUtils.dll which contains the License API            if [catch {dllLoad "[cdromBinDirGet]\\WLMUTCL.DLL"} dll(3)] {                messageBox -ok -stopicon $dll(3)                return 0            }            cdromDescSet [strTableGet 1261_LICENSE]            if {($ctrlVals(admin) != "1") && ($ctrlVals(NT) == "1")} {                messageBox -ok -stopicon [strTableGet 1352_LICENSE_WARNING]                set retVal 0                                                } {                source [cdromRootDirGet]\\RESOURCE\\TCL\\SMTP.TCL                set ctrlVals(pageList) {welcome wlmdDetect registration destDir                                        folderSelect licenseChoice                                        remoteLicenseHost licEmail licCall                                        licenseKey licenseFinish}                set setupVals(hostName) [string toupper [info host]]            }        }            icon {            set ctrlVals(pageList) {welcome destDir folderSelect iconFinish}            cdromDescSet "Remote Icons"        }            default {            set ctrlVals(pageList) {welcome privilege registration destDir \                                    compSelect folderSelect filesCopy \                                    libUpdate portMapper torRegistry \                                    remoteRegistryHost finish}                catch {setupPortmapDetect} detect            if {$detect} {                pageRemove portMapper            }            if {($ctrlVals(admin) == "1") || ($ctrlVals(NT) != "1")} {                pageRemove privilege            }             }    }    set ctrlVals(currPage) [lindex $ctrlVals(pageList) 0]    set ctrlVals(pageListBack) $ctrlVals(pageList)    return $retVal}proc dlgFrmCreate {title} {    global ctrlVals    global setupVals    if {[windowExists $ctrlVals(mainWindow)] != 1 } {        set controls [list \                [list bitmap -name bitmap \                             -title $ctrlVals(dlgImage) -stretch \                             -x 10 -y 10 -w 80 -h 160] \                [list frame -gray -name frm2 -x 10 -y 178 -w 295 -h 2] \                [list button -name backButt -title "< &Back" \                             -callback backCallback \                             -disable -x 147 -y 185 -w 50 -h 14] \                [list button -name nextButt -title "&Next >" \                             -default -callback nextCallback \                              -x 197 -y 185 -w 50 -h 14] \                [list button -name cancelButt -title "Cancel" \                             -callback quitCallback \                              -x 255 -y 185 -w 50 -h 14] \        ]        dialogCreate -name $ctrlVals(mainWindow) \                     -topmost -title $title -w 315 -h 204 \                     -parent $ctrlVals(parentDialog) \                     -nocontexthelp \                     -modeless \                     -controls $controls        set ctrlVals(parentDialog) $ctrlVals(mainWindow)        windowQueryCloseCallbackSet $ctrlVals(mainWindow) quitCallback    }    customizeMainWindow $title    return $ctrlVals(mainWindow)    }proc customizeMainWindow {title} {    global ctrlVals    windowTitleSet $ctrlVals(mainWindow) $title    foreach ctrl $ctrlVals(volatileFrm) {        controlCreate $ctrlVals(mainWindow) $ctrl    }    set ctrlVals(jumpBack) 1}proc destroyVolatileFrm {} {    global ctrlVals    foreach ctrl $ctrlVals(volatileFrm) {        set pos [lsearch $ctrl "-name"]        if {$pos != "-1"} {            controlDestroy \                $ctrlVals(mainWindow).[lindex $ctrl [expr $pos + 1]]         }    }    set ctrlVals(volatileFrm) ""}proc backCallback {} {    global ctrlVals    # decrement the dialog index and re-create previous page    set currPageIndex [lsearch $ctrlVals(pageList) $ctrlVals(currPage)]    set prevPageIndex [expr $currPageIndex - 1]    if {"$prevPageIndex" >= "0"} {        set ctrlVals(currPage) [lindex $ctrlVals(pageList) $prevPageIndex]        destroyVolatileFrm        pageCreate($ctrlVals(currPage))    } else {        messageBox "Can't go back further!"    }}proc nextCallback {} {    global ctrlVals    set retVal 0    if {"$ctrlVals(currPage)" != "" && \                [pageProcess($ctrlVals(currPage))] == "1"} {        set currPageIndex [lsearch $ctrlVals(pageList) $ctrlVals(currPage)]        if {"$currPageIndex" != "-1"} {            set nextPageIndex [expr $currPageIndex + 1]            set nextPage [lindex $ctrlVals(pageList) $nextPageIndex]            if {"$nextPage" != ""} {                set ctrlVals(currPage) $nextPage                destroyVolatileFrm                pageCreate($nextPage)                            set retVal 1                                        } {                applicationExit            }         } {                        puts "error: page $ctrlVals(currPage) not found!"        }    }    return $retVal}proc dialog {dialogType title message args} {    global ctrlVals    switch $dialogType {        retry_cancel {            switch [messageBox -retrycancel -questionicon $message] {                retry  { return 0 }                cancel { return 1 }            }        }        yes_no {            switch [messageBox -yesno -questionicon $message] {                yes { return 0 }                no  { return 1 }            }        }                   resume_exit {                set dlgName "resume_exit"                 set controls [list \                    [list label -name message -title $message \                                -x 10 -y 10 -w 205 -h 90] \                    [list button -name Resume -title "Resume" \                                 -callback {windowClose $dlgName;                                             return 0} \                                 -x 116 -y 92 -w 50 -h 14] \                    [list button -name Exit -title "Exit Setup" \                                 -callback {windowClose $dlgName;                                            return 1} \                                 -x 169 -y 92 -w 50 -h 14] \                ]                set width 230                set xpos [expr ($ctrlVals(screenW) / 2) - ($width / 2)]                set height 114                set ypos [expr ($ctrlVals(screenH) / 2) - ($height / 2)]                dialogCreate -name $dlgName \                            -title "$title" \                            -nocontexthelp \                            -parent $ctrlVals(parentDialog) \                            -x $xpos -y $ypos \                            -w $width -h $height \                            -controls $controls        }        re_ig_cancel {            switch [messageBox -abortretryignore -questionicon $message] {                abort  { return 2 }                retry  { return 0 }                ignore { return 1 }            }        }        re_ig_cancel_old {            set controls [list \                [list label -name message -title $message \                            -x 10 -y 7 -w 194 -h 90] \                [list button -name retry -title "&Retry" \                             -callback {windowClose dlg;                                        return 0} \                             -x 10 -y 56 -w 50 -h 14] \                [list button -name ignore -title "&Ignore" \                             -callback {windowClose dlg;                                        return 1} \                             -x 80 -y 56 -w 50 -h 14] \                [list button -name cancel -title "&Cancel" \                             -callback {windowClose dlg;                                        return 2} \                             -x 150 -y 56 -w 50 -h 14] \            ]            dialogCreate -name "re_ig_cancel" \                         -title "$title" \                         -parent $ctrlVals(parentDialog) \                         -nocontexthelp \                         -w 205 -h 76 \                         -controls $controls        }        ok {            switch [messageBox -ok -information $message] {                ok { return 0 }            }        }        ok_cancel {            switch [messageBox -okcancel -questionicon $message] {                ok     { return 0 }                cancel { return 1 }            }        }    }}proc quitCallback {} {    global setupVals    global ctrlVals    if {"$setupVals(cancel)" != "1"} {        switch [dialog resume_exit "Setup" [strTableGet 1360_QUIT_CALLBACK]] {            0 {                return 0            }            1 {                set setupVals(cancel) 1                catch {uninstLog setupLog "\tUser aborted!"}                if {"filesCopy" != "$ctrlVals(currPage)"} {                    applicationExit                }                return 1            }        }    }}proc applicationExit {} {    global ctrlVals    windowClose $ctrlVals(backgroundWindow)}proc onTextChange {control var} {    global ctrlVals    global setupVals     set setupVals($var) [controlValuesGet $ctrlVals(mainWindow).$control]}proc onTorRegOptSel {opt} {    global ctrlVals    set ctrlVals(torRegAction) $opt}proc onFolderName {} {    global ctrlVals    global setupVals    defGroupSet [controlValuesGet $ctrlVals(mainWindow).folderName]}proc mailSend {} {    global ctrlVals    dialogCreate \        -name mailConfirmDlg \        -parent $ctrlVals(mainWindow) \        -title "Mail Confirmation" \        -width 181 -height 133 \        -init mailSendInit \        -controls { \                { button -title "Send" -name sendButt -default \                        -xpos 66 -ypos 112 -width 50 -height 14  \                        -callback onMailSend }                { button -title "Cancel" -name cancelButt  \                        -xpos 124 -ypos 112 -width 50 -height 14  \                        -callback {windowClose mailConfirmDlg} }                { label -title "Subject:" -name subjectLabel  \                        -xpos 7 -ypos 41 -width 33 -height 8 }                { text -name toEdit -readonly \                        -xpos 47 -ypos 6 -width 126 -height 12 }                { label -title "To:" -name toLabel  \                        -xpos 7 -ypos 8 -width 19 -height 8 }                { label -title "From:" -name fromLabel  \                        -xpos 7 -ypos 25 -width 18 -height 8 }                { text -name fromEdit  \                        -xpos 47 -ypos 23 -width 126 -height 12 }                { text -name subjectEdit  -readonly \                        -xpos 47 -ypos 39 -width 126 -height 12 }                { group -title "Mail Protocol" -name group1  \                        -xpos 7 -ypos 56 -width 166 -height 47 }                { choice -title "SMTP host:" -name smtpButt  \                        -newgroup -auto \                        -xpos 16 -ypos 74 -width 56 -height 10  \                        -callback onSmtp }                { choice -title "MAPI" -name mapiButt  \                        -auto \                        -xpos 16 -ypos 86 -width 33 -height 10  \                        -callback onMapi }                { text -name smtpEdit  \                        -xpos 72 -ypos 73 -width 90 -height 13 }        }    return 1}proc onMailSend {} {    global setupVals    set retVal 1    set attachments ""    set bccList ""    set msgContents "$setupVals(mailMsg)"    set server [controlValuesGet mailConfirmDlg.smtpEdit]    set toList [controlValuesGet mailConfirmDlg.toEdit]    set sender [controlValuesGet mailConfirmDlg.fromEdit]    set ccList $sender    set subject [controlValuesGet mailConfirmDlg.subjectEdit]    set mailDate [clock format [clock second] -format "%a, %d %h %Y %X"]    if {$sender == ""} {        messageBox [strTableGet 3356_LICENSE_WARN]        controlFocusSet mailConfirmDlg.fromEdit        return 0    }    if {$server 

⌨️ 快捷键说明

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