## Tcl8.6.17/Tk8.6.17 Documentation > Tcl C API > GetOpnFl

### 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
    Tcl_GetOpenFile — 与えられた解釈実行機能内に通信路の為に登録された FILE* を返す(Unix 限定) Return a FILE* for a channel registered in the given interpreter (Unix only)
  SYNOPSIS
    #include <tcl.h>
    int
    Tcl_GetOpenFile(interp, chanID, write, checkUsage, filePtr)
  引数 ARGUMENTS
    Tcl_Interp *interp (入力in)
    const char *chanID (入力in)
    int write (入力in)
    int checkUsage (入力in)
    ClientData *filePtr (出力out)
  説明 DESCRIPTION
  KEYWORDS

### NAME

Tcl_GetOpenFile — 与えられた解釈実行機能内に通信路の為に登録された FILE* を返す(Unix 限定) Return a FILE* for a channel registered in the given interpreter (Unix only)

### SYNOPSIS

#include <tcl.h>
int
Tcl_GetOpenFile(interp, chanID, write, checkUsage, filePtr)

### 引数 ARGUMENTS

Tcl_Interp *interp (入力in)
  そこから操作子が得られる Tcl 解釈実行機能｡　 Tcl interpreter from which file handle is to be obtained.

const char *chanID (入力in)
  通信路を識別する文字列､譬えば stdin や file4｡ 　　　 String identifying channel, such as stdin or file4.

int write (入力in)
  非-零はファイルが記入の為に使われていることを意味し､零は読出しの為に使用されていることを意味する｡　 Non-zero means the file will be used for writing, zero means it will be used for reading.

int checkUsage (入力in)
  もし､非零の場合､そのファイルが､書込みに示された利用の為に開かれなかったときには不都合が生成される｡ 　　　 If non-zero, then an error will be generated if the file was not opened for the access indicated by write.

ClientData *filePtr (出力out)
  chanID によって与えられたファイルの為の FILE 構造への指示子を中に保存する単語を指す｡　 Points to word in which to store pointer to FILE structure for the file given by chanID.

### 説明 DESCRIPTION

Tcl_GetOpenFile は引数として open 命令により *filePtr の箇所にファイルに関する FILE ポインターが返された形式のファイル識別子を取る｡ write 引数は FILE ポインターが読み又は書きに使われるかを指し示す｡ある場合にはその様な通信路は副処理課程のパイプ行に接続し､読み書きについて異なる FILE ポインターが返される｡ Tcl_GetOpenFile は通常 TCL_OK を返す｡もし Tcl_GetOpenFile 内に不都合が生じると(譬えば､chanID がどの様な意味もなさない､或は checkUsage が設定され､ファイルが書込み指定の利用では開けない)､ TCL_ERROR が返され､解釈実行機能の結果は不都合伝言文を含む｡現在の実装では checkUsage が無視され整合性の試験は常に実行される｡ Tcl_GetOpenFile takes as argument a file identifier of the form returned by the open command and returns at *filePtr a pointer to the FILE structure for the file. The write argument indicates whether the FILE pointer will be used for reading or writing. In some cases, such as a channel that connects to a pipeline of subprocesses, different FILE pointers will be returned for reading and writing. Tcl_GetOpenFile normally returns TCL_OK. If an error occurs in Tcl_GetOpenFile (e.g. chanID did not make any sense or checkUsage was set and the file was not opened for the access specified by write) then TCL_ERROR is returned and the interpreter's result will contain an error message. In the current implementation checkUsage is ignored and consistency checks are always performed.

註意すべきはこの対話機能は Unix 上のみで運営される｡ 　　 Note that this interface is only supported on the Unix platform.

### KEYWORDS

channel, file handle, permissions, pipeline, read, write
Copyright © 1996-1997 Sun Microsystems, Inc.