loadTk(3tk)

NAME
loadTk - 把 Tk 裝載到一個安全直譯器中。

總覽 SYNOPSIS
::safe::loadTk slave ?-use windowId? ?-display displayName?

Safe Tk 基於 Safe Tcl 之上，它提供一種機制，允許對自動裝載和安全直譯器的包的受限制和有中介的訪問。Safe Tk 增加為安全 Tk 操作配置直譯器和把 Tk 裝載到安全直譯器的功能。

描述 DESCRIPTION

::safe::loadTk 命令在指明的直譯器中初始化需要的資料結構並把 Tk 裝載到其中。這個命令返回這個安全直譯器的名字。如果指定了 -use，使用由指定的系統決定的識別符號 windowId 所標識的視窗來包含這個直譯器的 ``.'' 視窗；它可以是任何有效的 id，最終引用屬於另一個應用的一個視窗。出於方便，如果你想要使用的視窗是應用的一個 Tk 視窗，則你可以使用這個視窗的名字(比如: .x.y)來替代它的視窗 Id ([winfo id .x.y])。在未指定 -use 的時候，為這個安全直譯器的 ``.'' 視窗建立一個新的頂層視窗。在 X11 上如果你想讓嵌入的視窗使用其他的顯示器而不是預設的那個，可以用 -display 指定它。實現的細節請參見下面的安全要點 (SECURITY ISSUES) 章節。

安全要點 SECURITY ISSUES

請閱讀 Tcl 的 safe 手冊頁來獲悉對 Safe Tcl 做的基本安全考慮。

::safe::loadTk 把從直譯器接受的 tk_library 的值增加到安全直譯器的虛擬路徑上，這樣自動裝載就能在安全直譯器中工作了。

就不信任從直譯器對啟動的陳述而論，Tk 初始化現在是安全的。::safe::loadTk 註冊從直譯器的名字，這樣在呼叫 Tk 初始化(Tk_SafeInit)和依次呼叫主直譯器的 ::safe::InitTk 的時候，它將返回想要的 argv 等價物(-use windowId，正確的 -display 等等...)。

在未使用 -use 的時候，對新建立的頂層視窗進行特殊裝飾，這樣使用者總能意識到呈現的使用者介面來自潛在不安全的程式碼並可以輕易的刪除相應的直譯器。

在 X11 上，有衝突的 -use 和 -display 將生成一個致命的 X 錯誤。

參見 SEE ALSO
safe(n), interp(n), library(n), load(n), package(n), source(n), unknown(n)

關鍵字 KEYWORDS
alias, auto-loading, auto_mkindex, load, master interpreter, safe interpreter, slave interpreter, source

[中文版維護人]
寒蟬退士

[中文版最新更新]
2002/05/15

《中國 Linux 論壇 man 手冊頁翻譯計劃》:
http://cmpp.linuxforum.net

跋
本頁面中文版由中文 man 手冊頁計劃提供。
中文 man 手冊頁計劃：https://github.com/man-pages-zh/manpages-zh