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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? uninst.tcl

?? vxworks下MV5500的BSP支持包。是支持tornad221下的版本。
?? TCL
?? 第 1 頁 / 共 4 頁
字號:
    # create the batch file that will copy required files and invoke uitclsh.exe    catch {file mkdir $env(TMP)}    foreach file [array names requiredFiles] {        file copy -force $requiredFiles($file)\\$file $env(TMP)        if {![isUnix]} {            file attributes $env(TMP)\\$file -readonly 0        }    }    set version [setupWinVerGet]    set flag ""    if {[info exists env(SETUP_DEBUG)]} {        set flag "-C"    }    if [catch {processCreate \        "$env(TMP)\\uitclsh.exe $flag  [dosToUnix $env(TMP)\\uninst.tcl] \         $uninst(WIND_BASE) [dosToUnix $env(TMP)]" $env(TMP)} error] {        puts $error    }}################################################################################ print - prints a message to the active console.## SYNOPSIS# print <nsg>## PARAMETERS: msg - message to be printed.## RETURNS: N/A## ERRORS: N/A#proc print {msg} {    global env    if {[info exists env(SETUP_DEBUG)]} {        puts "$msg"    }}################################################################################ uninstMeterUpdate - updates the meter display## This procedure uses the percent passed to update the meter.## SYNOPSIS# uninstMeterUpdate <percent tag1 tag2>## PARAMETERS:#     percent - number indicating percentage complete#     tag 1 - any informational string to display or null#     tag 2 - a second string to display or null## RETURNS: N/A## ERRORS: N/A##proc uninstMeterUpdate {percent tag1 tag2} {    global ctrlVals    global uninst    global env   set shortFileName [fileNameAbbreviate $tag2 30]   controlValuesSet uninstDlg.progress $percent   controlValuesSet uninstDlg.progressTag "$tag1 $shortFileName"   uiEventProcess}################################################################################ message - prints a message## This procedure prints a message either in the form of a message box.## SYNOPSIS# message <msg>## PARAMETERS: msg - any string## RETURNS: N/A## ERRORS: N/A#proc message {msg} {    global uninst    global env    messageBox -ok -information $msg}############################################################################### # dialog - display a dialog UI## This procedure## SYNOPSIS### PARAMETERS: N/A## RETURNS: N/A## ERRORS: N/A#proc dialog {type title msg bitmap default} {    global env     switch $type {        re_ig_cancel {            switch [messageBox -abortretryignore -questionicon $msg] {                abort  { return 2 }                retry  { return 0 }                ignore { return 1 }            }        }            }}################################################################################ lastInstSessionInfoGet - retrieves infomation on the last install session## This procedure retrieves and stores into uninst(info) strings which indicate# what was installed during the last install session.## SYNOPSIS# lastInstSessionInfoGet## PARAMETERS: N/A## RETURNS: N/A## ERRORS: N/A#proc lastInstSessionInfoGet {} {    global uninst env    set zipFile \        [lindex [lsort -decreasing \                       [glob -nocomplain $uninst(home)/data.???]] 0]    set saveDir [pwd]    cd $env(TMP)    catch {setupUnzip -o -qq $zipFile "installInfo"}    if {[file exists "installInfo"]} {        set f [open "installInfo" "r"]        set uninst(info) [read $f]        close $f    } else {        set uninst(info) "No previous install infomation to extract."    }}################################################################################ uninstInfoGet - unzips the installInfo from the zip files## This procedure unzips previous installation information from the data.???# file into the appropriate unist() array values.## SYNOPSIS# uninstInfoGet## PARAMETERS: N/A## RETURNS: N/A## ERRORS: N/A#proc uninstInfoGet {} {    global uninst    global env    set uninst(currItem) 1    set uninst(totalItem) 1    set uninst(resList) ""    set uninst(fileList) ""    set uninst(bakList) ""    beginWaitCursor    set uninstZipFileList \        [lsort -decreasing [glob -nocomplain $uninst(home)/data.???]]    if {"$uninst(mode)" == "part"} {        set uninst(zipFile) [lindex $uninstZipFileList 0]        uninstInfoGetHelper $uninst(zipFile)    } elseif {"$uninst(mode)" == "all"} {        foreach zipFile $uninstZipFileList {            uninstInfoGetHelper $zipFile        }    }    endWaitCursor    print "uninst(resList) = $uninst(resList)"    print "uninst(totalItem) = $uninst(totalItem)"    if {$uninst(useInputScript)} {        autoUninstLog "uninst(resList) = $uninst(resList)"        autoUninstLog "uninst(totalItem) = $uninst(totalItem)"    }}################################################################################ uninstInfoGetHelper - helper proc for uninstInfoGet## This procedure is invoked by uninstInfoGet which then does all the work# of initializing the uninst(fileList), uninst(bakList), and uninst(resList).## SYNOPSIS# uninstInfoGetHelper <zipFile>## PARAMETERS: zipFile - the zipfile to search through for the information.## RETURNS: N/A## ERRORS: N/A#proc uninstInfoGetHelper {zipFile} {    global uninst    global env    set saveDir [pwd]    cd $env(TMP)    catch {setupUnzip -o -qq $zipFile "install*"}    # Load the installed file list    if {[file exists "installFile"]} {        set f [open "installFile" "r"]        while {[gets $f line] != "-1"} {            if {"$line" != ""} {                lappend uninst(fileList) [split $line "\t"]            }        }        close $f    }    # Load the backup file list    if {[file exists "installBackup"]} {        set f [open "installBackup" "r"]        while {[gets $f line] != "-1"} {            if {"$line" != ""} {                lappend uninst(bakList) [split $line "\t"]            }        }        close $f    }    # Load the resource file list    if {[file exists "installResource"]} {        set f [open "installResource" "r"]        while {[gets $f line] != "-1"} {            if {"$line" != ""} {                lappend uninst(resList) [split $line "\t"]            }        }        close $f    }    incr uninst(totalItem) [llength $uninst(fileList)]    incr uninst(totalItem) [llength $uninst(resList)]    if {"$uninst(mode)" == "part"} {        incr uninst(totalItem) [llength $uninst(bakList)]    }    cd $saveDir}################################################################################ uninstBackup - restores the file in the backup list## This procedure restores the files from the $uninst(zipFile) zipfile.## SYNOPSIS# uninstBackup## PARAMETERS: N/A## RETURNS: N/A## ERRORS: N/A#proc uninstBackup {} {    global uninst    global env    foreach line $uninst(bakList) {       set file [lindex $line 1]       switch [lindex $line 0] {           wind_base {               incr uninst(currItem)               set percent [expr ($uninst(currItem) * 99) / $uninst(totalItem)]               uninstMeterUpdate $percent "Restoring " $file               if {[catch {setupUnzip -o -qq $uninst(zipFile) \                      -d $uninst(WIND_BASE) $file} error]} {                   incr uninst(errorCount)                   message "Cannot restore $file: $error"               }           }           default { puts "unknown rootdir token" }       }    }}################################################################################ dirInsert - inserts the head directory of the path into array dirArray().## SYNOPSIS# dirInsert <pathName>## PARAMETERS: pathname - path from which to extract the head of the tree.## RETURNS: N/A## ERRORS: N/A#proc dirInsert {pathName} {    global dirArray    set dirArray($pathName) ""    while { 1 } {        set pathName [file dirname $pathName]        if {$pathName == "."} {            break        } else {            set dirArray($pathName) ""        }    }}################################################################################ dirRemove - removes the directories listed in the tcl array dirArray().## SYNOPSIS# dirRemove## PARAMETERS: N/A## RETURNS: N/A## ERRORS: N/A#proc dirRemove {} {    global dirArray uninst    # delete the innermost empty directory first    foreach dir [lsort -decreasing [array names dirArray]] {        catch {file delete $uninst(WIND_BASE)/$dir}    }}################################################################################ uninstFile - removes the files and directories to be uninstalled.## This procedure is the main procedure which coordinates the removal of the# list of files and directories that are to be uninstalled.## SYNOPSIS# uninstFile## PARAMETERS: N/A## RETURNS: N/A## ERRORS: N/A#proc uninstFile {} {    global uninst    global env    foreach line $uninst(fileList) {       set file [lindex $line 1]       switch [lindex $line 0] {           wind_base {               set filePath $uninst(WIND_BASE)/$file               dirInsert [file dirname $file]           }           window {               if {[file extension $file] == ".CPL"} {                   catch {setupWindowClose "Control Panel"}               }               set filePath [setupWinDirGet]/$file           }           default { puts "unknown rootdir [lindex $line 0]" }       }       incr uninst(currItem)       set percent [expr ($uninst(currItem) * 99) / $uninst(totalItem)]       uninstMeterUpdate $percent "Removing " $file       if {[file exists $filePath]} {           while {[catch {file delete $filePath} error]} {               switch [dialog re_ig_cancel "Uninstall" "$error" question 0] {                   0 { unset error }                   1 { incr uninst(errorCount); break }                   2 { incr uninst(errorCount); return }               }           }       }    }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产老肥熟一区二区三区| 中国av一区二区三区| 亚洲电影欧美电影有声小说| 在线欧美小视频| 日精品一区二区| 精品国产乱码久久久久久老虎 | 亚洲国产欧美另类丝袜| 欧美三级电影精品| 日本中文在线一区| 精品国产欧美一区二区| 成人免费看的视频| 亚洲国产精品自拍| 精品国产一区二区精华| 成人久久视频在线观看| 亚洲影院在线观看| 精品久久久久久久久久久久久久久久久 | 欧美精品 日韩| 国产综合久久久久久久久久久久 | 国产亚洲欧美激情| 在线中文字幕一区二区| 日本 国产 欧美色综合| 国产精品毛片a∨一区二区三区| 91极品美女在线| 麻豆一区二区三| 一区在线中文字幕| 91精品国产一区二区| 国产在线精品一区在线观看麻豆| 综合在线观看色| 91麻豆精品国产91久久久| 国产不卡在线一区| 日韩精品亚洲一区二区三区免费| 国产亚洲福利社区一区| 欧美中文字幕一区二区三区亚洲| 黑人精品欧美一区二区蜜桃| 一区二区三区资源| 成人免费一区二区三区在线观看 | 免费不卡在线视频| 国产精品久久久久一区二区三区 | 国产成人综合在线观看| 夜夜精品视频一区二区| www久久精品| 欧美片网站yy| 94-欧美-setu| 国产美女精品一区二区三区| 亚洲成人激情综合网| 国产精品每日更新| 精品国产乱码久久久久久闺蜜| 91成人免费在线视频| 国产不卡高清在线观看视频| 免费观看日韩电影| 亚洲一区二区高清| 欧美国产乱子伦| 欧美www视频| 欧美日韩电影在线| 日本道免费精品一区二区三区| 国产精品自在在线| 精品一区二区三区免费视频| 婷婷亚洲久悠悠色悠在线播放| 国产精品二三区| 国产欧美综合在线观看第十页| 日韩美一区二区三区| 欧美酷刑日本凌虐凌虐| 色女孩综合影院| 91丨九色丨蝌蚪富婆spa| 成人小视频在线| 国产69精品久久久久毛片 | 日韩成人一级大片| 亚洲在线一区二区三区| 樱花影视一区二区| 一区二区视频在线| 中文字幕日韩欧美一区二区三区| 国产精品久久久久久久久果冻传媒 | 亚洲色图欧洲色图婷婷| 国产精品国产三级国产普通话99| 国产女同性恋一区二区| 国产视频一区在线观看| 久久久国际精品| 国产精品午夜在线| 国产精品福利电影一区二区三区四区| 国产拍揄自揄精品视频麻豆| 欧美激情综合五月色丁香| 久久久久久久久免费| 久久精品一二三| 亚洲欧洲国产日韩| 亚洲欧美日本在线| 亚洲一区二区三区四区五区中文| 亚洲国产乱码最新视频 | 日韩精品久久久久久| 日韩在线a电影| 精品写真视频在线观看| 国产尤物一区二区在线| 国产成人精品亚洲日本在线桃色 | 国产剧情一区在线| 成人美女视频在线看| 一本到一区二区三区| 欧美日韩在线综合| 日韩小视频在线观看专区| 精品国产a毛片| 国产欧美日韩久久| 亚洲精品视频在线观看免费| 亚洲一区二区高清| 麻豆成人久久精品二区三区红| 国产一区二区导航在线播放| 不卡视频免费播放| 欧美精品久久99久久在免费线 | 国产精品三级电影| 亚洲综合无码一区二区| 久久激情综合网| 99精品国产91久久久久久| 欧美日韩色一区| 久久亚洲捆绑美女| 亚洲免费大片在线观看| 久久se精品一区精品二区| www.亚洲国产| 91精品国产综合久久精品麻豆| 久久亚洲捆绑美女| 亚洲一区二区三区四区五区中文 | 久久99精品久久久久| av亚洲精华国产精华| 日韩一区二区三区视频在线观看| 中文字幕的久久| 天天综合日日夜夜精品| jlzzjlzz欧美大全| 日韩视频一区二区三区在线播放 | 9191成人精品久久| 中文字幕亚洲区| 久久电影国产免费久久电影| 91久久精品网| 国产精品青草综合久久久久99| 午夜亚洲福利老司机| 成人av午夜影院| 欧美成人国产一区二区| 亚洲最新视频在线观看| 国产福利一区在线观看| 777色狠狠一区二区三区| 亚洲你懂的在线视频| 国产精品乡下勾搭老头1| 337p亚洲精品色噜噜噜| 一区二区三区四区中文字幕| 国产一二精品视频| 日韩欧美在线影院| 亚洲国产精品久久不卡毛片| 成人美女视频在线看| 精品国产在天天线2019| 日本欧美韩国一区三区| 在线免费观看成人短视频| 国产精品久久久久久一区二区三区 | 欧美日韩不卡视频| 亚洲精品视频在线观看免费| 风间由美一区二区av101| 精品日韩在线观看| 日韩精品乱码免费| 4438x亚洲最大成人网| 亚洲综合成人在线| 91九色最新地址| 亚洲精品高清视频在线观看| 91视频国产观看| 亚洲欧洲日韩一区二区三区| 国产精品18久久久久久久久| 欧美精品一区二区三区蜜桃视频 | 国产欧美一区二区三区网站| 国产一区二区三区免费看| 26uuu国产电影一区二区| 精品一区中文字幕| 精品久久久久99| 久久 天天综合| 久久久久久日产精品| 国产一区二区三区最好精华液| 久久综合一区二区| 国产成人午夜99999| 久久免费的精品国产v∧| 国产毛片精品视频| 欧美经典一区二区| 不卡一区二区中文字幕| 亚洲日本青草视频在线怡红院| eeuss影院一区二区三区 | 国产女人18水真多18精品一级做| 国产精品白丝jk黑袜喷水| 国产精品色噜噜| 一本大道久久a久久综合 | 麻豆一区二区99久久久久| 精品成人一区二区| 成人一区在线看| 一区二区三区四区在线免费观看| 欧美日韩三级视频| 久久激情五月激情| 国产精品美女久久福利网站| 91麻豆国产香蕉久久精品| 亚洲成人av一区二区| 精品日本一线二线三线不卡| 国产乱子伦视频一区二区三区| 国产精品乱码久久久久久| 在线日韩一区二区| 蜜臀99久久精品久久久久久软件| 亚洲精品一区二区三区精华液| 成人aa视频在线观看| 亚洲成a人片综合在线| 久久婷婷综合激情| 一本色道久久综合亚洲aⅴ蜜桃| 午夜精品一区在线观看|