星野(Zin)です。 > そういえば, NT には実行ユーザと実ユーザとの区別はあるのでしょ > うか? もしなければ test ?r の実装は eaccess() を使わずに > access() でいいことになると思うのですが. どなたか NT に詳し > い方, 教えて頂けないでしょうか. NTとUNIX系ではセキュリティーモデルにかなり違いがあるため、 どのように擦りあわせるか検討する必要があると思いますが、た しかプロセス/スレッドの実行ユーザ(実ユーザ)を変更するこ とはできないはずです。 Cygwinではどう対処しているのでしょうか。私はこちらに関して は素人なのでわかりません。 移植性を考えると、常に実効ユーザと実ユーザが同じで変更でき ないとして実装するのがいいと思うので、test ?r などについて はちばさんの意見に賛成です。 eaccess の中身の #else /* !NT*/ return 0; #endif を #else /* !NT*/ return eaccess(path, mode); #endif にすれば良いのではないでしょうか。 # Windowsでパッチを作る方法をしらないのでご容赦 --------- Zin