亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? uninst.tcl

?? 這是vxworks 的圖形界面開(kāi)發(fā)軟件windML2.0的補(bǔ)丁CP2。
?? TCL
?? 第 1 頁(yè) / 共 3 頁(yè)
字號(hào):
                   -callback onUITclDialogOk] \
           [list button -title "Cancel" -name cancelButt  \
                   -xpos 266 -ypos 197 -width 50 -height 14  \
                   -callback {windowClose uninstDlg}]]
}

proc onUITclDialogOk {} {
    global uninst
    global env

    controlEnable uninstDlg.okButt 0
    controlEnable uninstDlg.cancelButt 0
    controlEnable uninstDlg.uninstAll 0
    controlEnable uninstDlg.uninstPart 0
    controlDestroy uninstDlg.message

    controlCreate uninstDlg { label -name progressTag  \
                       -xpos 117 -ypos 151 -width 197 -height 8  \
                  }
    controlCreate uninstDlg { meter -center -name progress \
                       -xpos 117 -ypos 164 -width 199 -height 22 \
                  }
    controlColorsSet uninstDlg.progress \
                       -background Blue -foreground Black

    uninstInfoGet
    uninstResource
    uninstFile

    if {"$uninst(mode)" == "part"} {
        uninstBackup
    }

    set setupLog ""

    if {"$uninst(mode)" == "all"} {
        catch {file delete -force $uninst(WIND_BASE)/.wind/uninst}
        catch {file delete -force $uninst(WIND_BASE)/.wind/license}
        catch {file delete $uninst(WIND_BASE)/.wind}
        catch {file delete $uninst(WIND_BASE)/setup.log}
        if [catch {file delete $uninst(WIND_BASE)} error] {
   	    incr uninst(errorCount)
	}
    } {
	catch {
            set setupLog [open $uninst(WIND_BASE)/setup.log "a+"]
            foreach line [split $uninst(info) "\n"] {
                if {"$line" != ""} {
                    puts $setupLog "[date]\tUninst\t$line"
                }
            }
            file delete $uninst(zipFile)
	}
    }

    controlDestroy uninstDlg.progress
    controlDestroy uninstDlg.progressTag

    if {$uninst(errorCount) > 0} {
        set msg "Warning: Not all files/directories are removed.  You may\
                 need to remove them manually.  Press the OK button to exit."

       if {"$setupLog" != ""} {
            puts $setupLog "\tUninstall did not complete successfully."
       }
    } {
       set msg "Uninstall completed successfully.\
                Press the OK button to exit."
    }

    if {"$setupLog" != ""} {
       puts $setupLog ""
       close $setupLog
    }

    controlCreate uninstDlg { label -name message  \
                   -xpos 117 -ypos 153 -width 199 -height 25 }

    controlDestroy uninstDlg.okButt
    controlValuesSet uninstDlg.message "$msg"
    controlValuesSet uninstDlg.cancelButt "OK"
    controlEnable uninstDlg.cancelButt 1
}

proc uninstResource {} {
    global uninst

    set folderList {}
    set visitedList {}

    foreach line $uninst(resList) {

       incr uninst(currItem)
       set percent [expr ($uninst(currItem) * 99) / $uninst(totalItem)]
       meterUpdate $percent "Removing" "[lindex $line 0]..."

       if {[lsearch $visitedList $line] == "-1"} {
           lappend visitedList $line

           switch [lindex $line 0] {
               icon {
                   set folderName [lindex $line 1]
                   set iconName [lindex $line 2]
                   set common [lindex $line 3]
    
                   if [catch {setupItemDelete $folderName $iconName $common} \
		       err] {
                       print "cannot delete icon, $iconName: $err"
                   } {
                       print "deleted icon: $iconName"
                   }
               }
    
               folder {
                   # Need to remove all the icons first
    
                   lappend folderList $line
               }
    
               regkey {
                   set rootKey [lindex $line 1]
                   set key [lindex $line 2]
    
                   if [catch {sysRegistryKeyDelete $rootKey $key} err] {
                       print "cannot delete registry key, $key: $err"
                   } {
                       print "deleted registry key: $key"
                   }
               }
         
               regValue {
                   set rootKey [lindex $line 1]
                   set subKey [lindex $line 2]
                   set value [lindex $line 3]
    
                   if [catch {sysRegistryValueDelete $rootKey $subKey $value} \
		       err] {
                       print "cannot delete registry value, $value: $err"
                   } {
                       print "deleted registry value: $value"
                   }
               }
    
               service {
                   set serviceName [lindex $line 1]
    
                   if [catch {setupServiceStop $serviceName} err] {
                       print "cannot stop service, $serviceName: $err"
                   } {
                       print "stopped service: $serviceName"
                   }
    
                   if [catch {setupServiceRemove $serviceName} err] {
                       print "cannot delete service: $serviceName: $err"
                   } {
                       print "deleted service: $serviceName"
                   }
               }
    
               default {}
           }
        }
    }

    # now is time to remove all folders if any

    foreach folder $folderList {

       set folderName [lindex $folder 1]
       set common [lindex $folder 2]

       if [catch {setupGroupDelete $folderName $common} err] {
           print "cannot delete folder: $folderName: $err"
       } {
           print "deleted folder: $folderName"
       }
    }
}

proc uninstUITclDialogInit {} {
    global uninst
    global argv
    global env

    applicationTitleSet "Tornado Uninstall"

    if {$uninst(mode) == "none"} {
       messageBox -stop "Cannot find the uninstall information."
       windowClose uninstDlg

    } elseif {$uninst(mode) == "all"} {
       controlValuesSet uninstDlg.uninstAll 1
       controlEnable uninstDlg.uninstPart 0
       onUninstallAll
    } {
       controlValuesSet uninstDlg.uninstPart 1
       onUninstallPart
    }
}

proc dosTempDirGet {} {
    global env

    # Determine the "temp" directory

    set uninstTemp "_TMP[pid]"

    foreach elem [array names env] {
       if {[string compare [string tolower $elem] "tmp"] == 0} {
           set env(TMP) $env($elem)
       }
       if {[string compare [string tolower $elem] "temp"] == 0} {
           set env(TEMP) $env($elem)
       }
       if {[string compare [string tolower $elem] "tmpdir"] == 0} {
           set env(TMPDIR) $env($elem)
       }
    }

    if {[info exists env(TEMP)] && [file isdir $env(TEMP)]} {
        set TMP $env(TEMP)\\$uninstTemp

    } elseif {[info exists env(TMP)] && [file isdir $env(TMP)]} {
        set TMP $env(TMP)\\$uninstTemp

    } elseif {[info exists env(TMPDIR)] && [file isdir $env(TMPDIR)]} {
        set TMP $env(TMPDIR)\\$uninstTemp
    } {
        set TMP "C:\\$uninstTemp"
    }

    return $TMP
}

proc seedUninstall {} {
    global env argv0 uninst

    set env(TMP) [unixToDos [dosTempDirGet]]

    set binDir [unixToDos "$uninst(WIND_BASE)\\host\\x86-win32\\bin"]
    set uninstDir [unixToDos "$uninst(WIND_BASE)\\.wind\\uninst"]

    set requiredFiles(mfc42.dll) $binDir
    set requiredFiles(msvcrt.dll) $binDir
    set requiredFiles(pctree32.dll) $binDir
    set requiredFiles(tcl.dll) $binDir
    set requiredFiles(uitcl.dll) $binDir
    set requiredFiles(setuptcl.dll) $binDir
    set requiredFiles(uitclsh.exe) $binDir
    set requiredFiles(uninst.tcl) $uninstDir
    set requiredFiles(uninst.bmp) $uninstDir

    # create the batch file that will copy required files and invoke uitclsh.exe

    catch {file mkdir $env(TMP)}
    set tmpBatchFileName "$env(TMP)\\tmp[pid].bat"

    if [catch {open $tmpBatchFileName w} tmpBatchFile] {
        set error $tmpBatchFile
    } {
        if [catch {
            # write the necessary commands to execute from within the batch file

            foreach file [array names requiredFiles] {
                puts $tmpBatchFile \
                   "copy $requiredFiles($file)\\$file $env(TMP)"
            }

            # set the environment variables that's needed for the uninst.tcl

            puts $tmpBatchFile "set UI=UITcl"
            puts $tmpBatchFile "set TMP="
            puts $tmpBatchFile "set TMP=[dosToUnix $env(TMP)]"

            if {"[setupWinVerGet]" == "WIN95"} {
                puts $tmpBatchFile "set PATH=[setupWinDirGet]\\command;%PATH%"
            }

            set flag ""

            if [info exists env(SETUP_DEBUG)] {
                set flag "-C"
            }

            puts $tmpBatchFile "start /wait \
                 $env(TMP)\\uitclsh.exe $flag \
                 [dosToUnix $env(TMP)\\uninst.tcl] \
                 $uninst(WIND_BASE)"

            puts $tmpBatchFile "cd \\"

            if {"[setupWinVerGet]" == "WIN95"} {
                puts $tmpBatchFile "deltree /Y $env(TMP)"
            } {
                puts $tmpBatchFile "rmdir /S /Q $env(TMP)"
            }

            close $tmpBatchFile
        } errorX] {set error $errorX}
    }

    # now spawn the batch file

    if ![info exists error] {
        if [catch {processCreate -hidden $tmpBatchFileName $env(TMP)} errorX] {
            set error $errorX
        }
    }

    if [info exists error] {
        messageBox "Error launching Setup program: $error"
        return ""
    }
}
########################################################################
#
# Common functions
#

proc date {} {
    return [clock format [clock second] -format "%d-%b-%y.%H:%M"]
}

proc dosToUnix {path} {
    regsub -all {\\} $path {/} newpath
    return $newpath
}

proc unixToDos {path} {
    regsub -all {/} $path {\\} newpath
    return $newpath
}

proc print {msg} {
    global env

    if [info exists env(SETUP_DEBUG)] {
        puts "$msg"
    }
}

proc meterUpdate {percent tag1 tag2} {
    global ctrlVals
    global uninst
    global env

    set shortFileName [fileNameAppreviate $tag2]

    if {"$env(UI)" == "TK"} {
       setWidth $ctrlVals(meterWg) $percent
       $ctrlVals(meterTagWg) config -text "$tag1 $shortFileName"
       update
    } elseif {"$env(UI)" == "UITcl"} {
       controlValuesSet uninstDlg.progress $percent
       controlValuesSet uninstDlg.progressTag "$tag1 $shortFileName"
       uiEventProcess
    } {
       puts "$percent $tag1 $tag2"
    }
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本成人在线不卡视频| av中文字幕亚洲| 日本aⅴ精品一区二区三区| 夜夜夜精品看看| 亚洲码国产岛国毛片在线| 亚洲视频一区在线观看| 综合久久给合久久狠狠狠97色 | 久久精品国产网站| 中文字幕av在线一区二区三区| 欧美大尺度电影在线| 精品国一区二区三区| 国产亚洲午夜高清国产拍精品| 正在播放一区二区| 欧美大黄免费观看| 国产精品日日摸夜夜摸av| 一区二区中文视频| 偷拍与自拍一区| 成人看片黄a免费看在线| 成人av综合在线| 69堂成人精品免费视频| 2020国产精品自拍| 一区二区激情视频| 看片的网站亚洲| 99视频热这里只有精品免费| 色88888久久久久久影院野外 | 在线欧美日韩精品| 26uuu色噜噜精品一区二区| 亚洲自拍偷拍图区| 狠狠色丁香九九婷婷综合五月| 97se亚洲国产综合自在线不卡| 日韩欧美国产午夜精品| 水蜜桃久久夜色精品一区的特点| 免费成人在线播放| 午夜精品久久久久久| 国产盗摄一区二区| 日韩一区二区三区在线| 亚洲男人电影天堂| av一区二区久久| 久久精品人人爽人人爽| 奇米色777欧美一区二区| 欧美午夜精品久久久| 亚洲欧美在线观看| 成人午夜免费av| 中文字幕一区二区三区不卡| 国产一区二区h| 2欧美一区二区三区在线观看视频 337p粉嫩大胆噜噜噜噜噜91av | 日本不卡一区二区| 欧美日韩免费电影| 久久精品国产久精国产爱| 91丨九色丨蝌蚪富婆spa| 国产精品视频线看| 欧美最猛黑人xxxxx猛交| 久久久久久一二三区| 国产一区二区网址| 国产日韩欧美激情| 成人精品亚洲人成在线| 国产精品妹子av| 丁香五精品蜜臀久久久久99网站 | 欧美人成免费网站| 亚洲第一久久影院| 欧美成人猛片aaaaaaa| 91精品国产综合久久精品图片| 亚洲成av人片在线观看| 欧美另类高清zo欧美| 亚洲国产日产av| 欧美草草影院在线视频| 国产成人在线视频网站| 一区二区欧美视频| 亚洲精品乱码久久久久久久久| 色先锋aa成人| 蜜臀av性久久久久蜜臀aⅴ四虎| 精品第一国产综合精品aⅴ| 国产69精品久久久久毛片| 亚洲老妇xxxxxx| 久久久91精品国产一区二区三区| 91亚洲精品久久久蜜桃网站| 美女在线视频一区| 久久久不卡网国产精品一区| 色婷婷香蕉在线一区二区| 秋霞电影网一区二区| 亚洲精品免费看| 国产视频视频一区| 3d动漫精品啪啪1区2区免费| 99久久久精品免费观看国产蜜| 亚洲成人一区在线| 中文字幕乱码日本亚洲一区二区 | 欧美一二三区在线观看| 一本色道久久综合亚洲aⅴ蜜桃| 免费成人在线网站| 婷婷国产在线综合| 亚洲美女偷拍久久| 国产精品国产三级国产三级人妇| 日韩亚洲欧美在线| 7777精品伊人久久久大香线蕉| 成人免费视频网站在线观看| 久久99热国产| 久草这里只有精品视频| 天天亚洲美女在线视频| 亚洲黄网站在线观看| 自拍偷拍亚洲激情| 国产精品毛片高清在线完整版| 精品伦理精品一区| 国产视频一区二区在线| 精品欧美一区二区在线观看| 欧美大片在线观看一区二区| 欧美一区二区三区四区久久| 91精品久久久久久久久99蜜臂| 欧美老女人第四色| 精品成人一区二区三区四区| 欧美日韩成人高清| 欧美情侣在线播放| 日韩免费福利电影在线观看| 精品免费国产一区二区三区四区| 欧美一区二区二区| 久久色中文字幕| 亚洲老司机在线| 亚洲国产综合人成综合网站| 日韩中文字幕不卡| 久久国产精品99久久久久久老狼| 精品无码三级在线观看视频| 成人午夜短视频| 欧美日韩亚洲综合在线 欧美亚洲特黄一级 | 福利一区二区在线观看| 国产精品中文字幕一区二区三区| 成人激情小说乱人伦| 色爱区综合激月婷婷| 日韩欧美区一区二| 国产精品久久久久久妇女6080 | 蜜臀av国产精品久久久久 | 激情五月婷婷综合| 国产大陆亚洲精品国产| 在线精品亚洲一区二区不卡| 精品久久久久一区二区国产| 亚洲美女屁股眼交3| 国产真实精品久久二三区| 欧美亚洲一区二区在线| 国产亚洲自拍一区| 欧美a级理论片| 91天堂素人约啪| 久久亚洲免费视频| 免费人成精品欧美精品 | 欧美一级xxx| 一区二区三区资源| 99国产精品久久久久久久久久| 91精品国产综合久久蜜臀| 亚洲免费av高清| 91在线视频播放| 欧美变态tickling挠脚心| 亚洲国产一区二区视频| 91污在线观看| 亚洲欧美日韩国产综合| 成人av资源下载| 中文字幕乱码一区二区免费| 国产麻豆视频精品| 欧美va在线播放| 久久不见久久见免费视频7| 欧美高清性hdvideosex| 亚洲少妇屁股交4| 欧洲国内综合视频| 亚洲444eee在线观看| 色天天综合色天天久久| 成人欧美一区二区三区白人 | 91色porny在线视频| 综合久久一区二区三区| 91美女片黄在线观看91美女| 亚洲欧美另类在线| 精品视频色一区| 久久99国产精品成人| 国产欧美日韩麻豆91| 在线播放亚洲一区| 精品在线播放免费| 国产欧美日韩视频一区二区| 在线看不卡av| 午夜免费欧美电影| 精品国产免费人成在线观看| 风间由美性色一区二区三区| 亚洲青青青在线视频| 欧美日韩三级一区| 精品一区二区日韩| 中文字幕日韩av资源站| 91 com成人网| 国产精品综合二区| 亚洲精选视频在线| 日韩一区二区电影网| www.欧美色图| 日本视频中文字幕一区二区三区| 久久婷婷色综合| 欧美写真视频网站| 国产一区二区毛片| 亚洲成人免费视| 国产精品久久久久久久久搜平片| 欧美色图天堂网| 国产成人三级在线观看| 午夜视黄欧洲亚洲| 亚洲欧美日韩国产成人精品影院| 精品免费99久久| 日韩丝袜情趣美女图片| 欧美日韩一区二区三区四区五区| 成人高清免费在线播放| 美女高潮久久久|