## Tcl9.0.3/Tk9.0.3 Documentation > Tcl C API > Access

### 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_Access, Tcl_Stat — ファイルの権限とその他の属性を調べる check file permissions and other attributes
  SYNOPSIS
    #include <tcl.h>
    int
    Tcl_Access(path, mode)
    int
    Tcl_Stat(path, statPtr)
  引数 ARGUMENTS
    const char *path (入力in)
    int mode (入力in)
    struct stat *statPtr (出力out)
  説明 DESCRIPTION
  廃れた諸函数 OBSOLETE FUNCTIONS
  KEYWORDS
  SEE ALSO

### NAME

Tcl_Access, Tcl_Stat — ファイルの権限とその他の属性を調べる check file permissions and other attributes

### SYNOPSIS

#include <tcl.h>
int
Tcl_Access(path, mode)
int
Tcl_Stat(path, statPtr)

### 引数 ARGUMENTS

const char *path (入力in)
  属性を調べる対象のファイルのOS固有の名前｡ Native name of the file to check the attributes of.

int mode (入力in)
  R_OK, W_OK, X_OK と F_OK の一つ以上で構成される櫛｡R_OK, W_OK と X_OK は､ファイルが実在し､更にそれぞれ､読込み､書込み､実行､の権限を持っているかどうかの確認を要求する｡ F_OK は､単にファイルの存在の確認を要求する｡ Mask consisting of one or more of R_OK, W_OK, X_OK and F_OK. R_OK, W_OK and X_OK request checking whether the file exists and has read, write and execute permissions, respectively. F_OK just requests a check for the existence of the file.

struct stat *statPtr (出力out)
  結果を含む構造体｡　 The structure that contains the result.

### 説明 DESCRIPTION

可能な限り､Tcl_Access や Tcl_Stat よりも､対象を基本としたAPI(object-based API) の Tcl_FSAccess や Tcl_FSStat を使うことが望ましい｡後者の諸函数は Tcl の仮想ファイル系層を運営するが､前者は運営しない｡ The object-based APIs Tcl_FSAccess and Tcl_FSStat should be used in preference to Tcl_Access and Tcl_Stat, wherever possible. Those functions also support Tcl's virtual filesystem layer, which these do not.

#### 廃れた諸函数 OBSOLETE FUNCTIONS

システムの水準の access や stat の直接呼出しよりも Tcl_Access や Tcl_Stat を使うのは､二つの理由がある｡第１は､この二つの函数はWindows実装では､システム水準呼出しの不具合を幾つか克服している｡第２に､ Tcl_Access と Tcl_Stat は両方とも(恰も Tcl_OpenFileChannelProc の様に）機能のリストに連結される｡その結果､代替の媒体や利用様式により､別経路のファイル取扱の可能性がある｡ There are two reasons for calling Tcl_Access and Tcl_Stat rather than calling system level functions access and stat directly. First, the Windows implementation of both functions fixes some bugs in the system level calls. Second, both Tcl_Access and Tcl_Stat (as well as Tcl_OpenFileChannelProc) hook into a linked list of functions. This allows the possibility to reroute file access to alternative media or access methods.

Tcl_Access は､その名前が path の既存のファイル(又は､他のファイル系対象)に対して､その手続函数が読込み､書込み､実行､の権限を持っているかどうかを調べる｡もし path が Unixの記号連結の時には､この記号連結が指しているファイルに対する権限を調べる｡ Tcl_Access checks whether the process would be allowed to read, write or test for existence of the file (or other file system object) whose name is path. If path is a symbolic link on Unix, then permissions of the file referred by this symbolic link are tested.

調査が成功(権限が全て許容されていた)なら､零を返し､失敗(調査対象のどれかの権限が許可されない､又は何かの不都合が生じた)の場合は､-1を返す｡ On success (all requested permissions granted), zero is returned. On error (at least one bit in mode asked for a permission that is denied, or some other error occurred), -1 is returned.

Tcl_Stat は指定されたファイルに関する情報を､状態の構造体 statPtr に入れる｡この情報を調べようとするファイルに接触する権限はなんら必要ないが､そのファイルへの経路の全てのディレクトリーへの調査権限が必要である｡この情報の状態の構造体が含む事項は､装置については､inode (Windowsでは常に0)､使用権限の様式､ nlink (Windowsでは常に1)､ 使用者番号（Windowsでは常に0)､使用者群番号（Windowsでは常に0)､ rdev （Windowsでは装置と同じ)､容量､最終接触日時､最終修正日時､創作日時､である｡ Tcl_Stat fills the stat structure statPtr with information about the specified file. You do not need any access rights to the file to get this information but you need search rights to all directories named in the path leading to the file. The stat structure includes info regarding device, inode (always 0 on Windows), privilege mode, nlink (always 1 on Windows), user id (always 0 on Windows), group id (always 0 on Windows), rdev (same as device on Windows), size, last access time, last modification time, and creation time.

path が存在する場合は, Tcl_Stat は 0 を戻し､stat 構造体にデータを入れる｡存在しない場合は -1 を戻し､stat に情報は与えられない｡ If path exists, Tcl_Stat returns 0 and the stat structure is filled with data. Otherwise, -1 is returned, and no stat info is given.

### KEYWORDS

stat, access

### SEE ALSO

Tcl_FSAccess, Tcl_FSStat
Copyright © 1998-1999 Scriptics Corporation