TB 18 - フォントが格納されているファイルを探す(15-Feb-96)
Q: 指定されたフォントが格納されているファイルを探す必要があります。Finderの「ファイル検索」は、この場合役に立たないようなのですが。
この件について、サンプルコードは無いでしょうか?
A: この問題に対するプログラム的アプローチを以下に示します。
GetNamedResource()をコールして、然るべき名前のFONDを探します(複数個存在する可能性もあります)。最初に見つかったものから始めると良いでしょう。
- 返されたhandleを使用して
HomeResFile()をコールし、そのリソースを含んでいるファイルのrefnumを取得します。
- 取得したrefnumを指定して
PBGetFCBInfo()をコールし、ファイルのロケーションを特定します。一つのファイルに複数のrefnumが付加されている場合、この方法はうまくいきません。しかし、FONDリソースの場合は問題ないでしょう。
GetNextFOND()(この関数は明確には記述されていませんが、関数定義はResources.hでされています)に、今まで使用していたFONDのhandleを渡します。
- 返された
handleがNilでなければステップ2に戻ってください。Nil handleが返ってきたら終了です。
[ Technical Q&A's : Operating System Services : Toolbox : TB18 ]
|