## Tcl8.6.17/Tk8.6.17 Documentation > Tk C API > Tk_Init

### 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
    Tk_Init, Tk_SafeInit — Tk を解釈実行機能に追加し新しいTk応用譜にする｡ add Tk to an interpreter and make a new Tk application.
  SYNOPSIS
    #include <tk.h>
    int
    Tk_Init(interp)
    int
    Tk_SafeInit(interp)
  引数 ARGUMENTS
    Tcl_Interp *interp (入力in)
  説明 DESCRIPTION
    bell
    clipboard
    grab
    menu
    selection
    send
    tk
    tkwait
    toplevel
    wm
  KEYWORDS

### NAME

Tk_Init, Tk_SafeInit — Tk を解釈実行機能に追加し新しいTk応用譜にする｡ add Tk to an interpreter and make a new Tk application.

### SYNOPSIS

#include <tk.h>
int
Tk_Init(interp)
int
Tk_SafeInit(interp)

### 引数 ARGUMENTS

Tcl_Interp *interp (入力in)
  Tk を組込むべき解釈実行機能｡Tk はこの解釈実行機能内に未だ組込まれていないこと｡ Interpreter in which to load Tk. Tk should not already be loaded in this interpreter.

### 説明 DESCRIPTION

Tk_Init は Tk に関する手続函数の初期化梱包である｡それは通常応用譜の為の Tcl_AppInit 手続函数､又は load 命令により起動される｡Tk_Init は全ての Tk 命令を interp に追加し､その主窓を含む新しい Tk 応用譜を作成する｡ Tk_Init は初期化が成功すると TCL_OK を返し､不都合がある場合は TCL_ERROR を返す｡Tk_Init は又､解釈実行機能内に不都合伝言文を残す｡ Tk_Init is the package initialization procedure for Tk. It is normally invoked by the Tcl_AppInit procedure for an application or by the load command. Tk_Init adds all of Tk's commands to interp and creates a new Tk application, including its main window. If the initialization is successful Tk_Init returns TCL_OK; if there is an error it returns TCL_ERROR. Tk_Init also leaves a result or error message in interpreter interp's result.

もし解釈実行機能内に変数 argv がある場合､Tk_Init は新しい Tk 応用譜の為の指示項目の列挙としてこの値の内容を取扱う｡その指示項目は wish 応用譜の為に記載されたどの形式でも所有しうる(実際､ wish はその命令行引数を処理するために Tk_Init を使う)｡ If there is a variable argv in interp, Tk_Init treats the contents of this variable as a list of options for the new Tk application. The options may have any of the forms documented for the wish application (in fact, wish uses Tk_Init to process its command-line arguments).

Tk_SafeInit は不安全と看做される全ての Tk 命令を取外すことを除いて Tk_Init と同一である｡これ等の除外の命令と理由は: Tk_SafeInit is identical to Tk_Init except that it removes all Tk commands that are considered unsafe. Those commands and the reasons for their exclusion are:

bell
  継続して鳴る鐘の音は不快である｡ Continuous ringing of the bell is a nuisance.

clipboard
  邪悪な記述譜が臨時記憶板の内容を文字列 “rm -r *” ［全てのディレクトリーとファイル消去->システム破壊］ で置換えるかもしれず､その内容が貼付けられた時に驚愕を引起す｡ A malicious script could replace the contents of the clipboard with the string “rm -r *” and lead to surprises when the contents of the clipboard are pasted.

grab
  この命令は如何なる他の応用譜からの利用も阻止することにも利用できる｡ Grab can be used to block the user from using any other applications.

menu
  指示項目聚は画面全体を覆い使用者から入力手段を奪うことに使える｡ Menus can be used to cover the entire screen and to steal input from the user.

selection
  臨時記憶板の項を参照されたい｡ See clipboard.

send
  命令を実行する為の不安全な解釈実行機能を引起すために使える｡ Send can be used to cause unsafe interpreters to execute commands.

tk
  tk 命令は不安全な send 命令を再生産する｡ The tk command recreates the send command, which is unsafe.

tkwait
  Tkwait は含んでいる課程処理を永久に阻止し得る｡ Tkwait can block the containing process forever

toplevel
  画面全体を覆い使用者から入力手段を奪うことに使える｡ Toplevels can be used to cover the entire screen and to steal input from the user.

wm
  凡そ toplevels が許容される場合､wm は装飾の除去､窓の徘徊､等に使用できる｡ If toplevels are ever allowed, wm can be used to remove decorations, move windows around, etc.

### KEYWORDS

safe, application, initialization, load, main window
Copyright © 1995-1996 Sun Microsystems, Inc.