## Tcl9.0.3/Tk9.0.3 Documentation > Tk Commands > loadTk

### Tcl/Tk Applications | Tcl Commands | Tk Commands | [incr Tcl] Package Commands | SQLite3 Package Commands | TDBC Package Commands | tdbc::mysql Package Commands | tdbc::odbc Package Commands | tdbc::postgres Package Commands | tdbc::sqlite3 Package Commands | Thread Package Commands | Tcl C API | Tk C API | [incr Tcl] Package C API | TDBC Package C API

### NAME

safe::loadTk — Tkを安全な解釈実行機能に組込む Load Tk into a safe interpreter.

### 構文 SYNOPSIS

safe::loadTk child ?-use windowId? ?-display displayName?

### 説明 DESCRIPTION

安全な Tk は安全な Tcl に基いている､それは､自動的組込みと安全な解釈実行機能に関する梱包の利用を制限し仲介することを許容する仕組みを提供する｡安全な Tk は､安全な Tk の操作に対する解釈実行機能の構成設定機能と Tk の安全な解釈実行機能への組込みの能力を追加する｡ Safe Tk is based on Safe Tcl, which provides a mechanism that allows restricted and mediated access to auto-loading and packages for safe interpreters. Safe Tk adds the ability to configure the interpreter for safe Tk operations and load Tk into safe interpreters.

この safe::loadTk 命令は指名された安全な解釈実行機能内の要求されたデータ構造を初期化し､次に Tk をその中に組込む｡この解釈実行機能は safe::interpCreate によって作成されたか safe::interpInit.を使って初期化されたものでなければならない｡この命令は安全な解釈実行機能の名前を返す｡もし -use が指定されていると､系に依存した識別子 windowId によって識別される窓が､安全な解釈実行機能の “.” の窓を含む為に､使われる; それはどれかの適切な識別子で､最終的には他の応用譜に属する窓を参照する｡簡単に謂うと､もし､応用譜の Tk 窓に使おうとしている窓は､窓の識別子(譬えば､ winfo id .x.y から)の代りに､窓の名前(譬えば “.x.y” )が使える｡もし､ -use が指定されていないと新しい頂上水準は､安全な解釈実行機能の“.”窓に対して生成される｡ X11 上では省略時設定の窓の代りに -display を使って指定して埋込み窓を表示に使用したくなる｡実装の詳細は下の SECURITY ISSUES の節を参照されたい｡ The safe::loadTk command initializes the required data structures in the named safe interpreter and then loads Tk into it. The interpreter must have been created with safe::interpCreate or have been initialized with safe::interpInit. The command returns the name of the safe interpreter. If -use is specified, the window identified by the specified system dependent identifier windowId is used to contain the “.” window of the safe interpreter; it can be any valid id, eventually referencing a window belonging to another application. As a convenience, if the window you plan to use is a Tk Window of the application you can use the window name (e.g., “.x.y”) instead of its window Id (e.g., from winfo id .x.y). When -use is not specified, a new toplevel window is created for the “.” window of the safe interpreter. On X11 if you want the embedded window to use another display than the default one, specify it with -display. See the SECURITY ISSUES section below for implementation details.

### SECURITY ISSUES

安全な Tcl に対する基本的安全保障の考慮についての学習には Tcl に対する safe の取扱説明書を読んで下さい｡ Please read the safe manual page for Tcl to learn about the basic security considerations for Safe Tcl.

safe::loadTk は､親の解釈実行機能からとった tk_library の値を安全な解釈実行機能の仮想的経路に追加しそれにより安全な解釈実行機能内で自動組込みが作動できる｡ safe::loadTk adds the value of tk_library taken from the parent interpreter to the virtual access path of the safe interpreter so that auto-loading will work in the safe interpreter.

Tk の初期化は今や初期化に対する子供の状態の信頼性を考慮することなく安全である｡safe::loadTk は子供の名前を登録し､ Tk の初期化(Tk_SafeInit)が呼ばれ､順番に親の safe::InitTk が呼ばれる時､それは望ましい argv の等価(-use windowId 正しい -display etc.)を返すことになる｡ Tk initialization is now safe with respect to not trusting the child's state for startup. safe::loadTk registers the child's name so when the Tk initialization (Tk_SafeInit) is called and in turn calls the parent's safe::InitTk it will return the desired argv equivalent (-use windowId, correct -display, etc.)

-use が使われない時､新しい頂上水準は特に使用者が常に気付く様修飾されて作成される､それは使用者の相互干渉機能に潜在的な譜安全な命令譜に由来するか対応する解釈実行機能を安易に削除しうることを知らせる｡ When -use is not used, the new toplevel created is specially decorated so the user is always aware that the user interface presented comes from a potentially unsafe code and can easily delete the corresponding interpreter.

X11 上では､ -use と -display の干渉は致命的な X の不都合を生成する｡ On X11, conflicting -use and -display are likely to generate a fatal X error.

### SEE ALSO

safe, interp, library, load, package, source, unknown

### KEYWORDS

alias, auto-loading, auto_mkindex, load, parent interpreter, safe interpreter, child interpreter, source
Copyright © 1995-1996 Sun Microsystems, Inc.