高度な検索
Developer Connection
Member Login ログイン | ご入会 ADC連絡先

TB 18 - フォントが格納されているファイルを探す(15-Feb-96)

Q: 指定されたフォントが格納されているファイルを探す必要があります。Finderの「ファイル検索」は、この場合役に立たないようなのですが。

この件について、サンプルコードは無いでしょうか?

A: この問題に対するプログラム的アプローチを以下に示します。

  1. GetNamedResource()をコールして、然るべき名前のFONDを探します(複数個存在する可能性もあります)。最初に見つかったものから始めると良いでしょう。
  2. 返されたhandleを使用してHomeResFile()をコールし、そのリソースを含んでいるファイルのrefnumを取得します。
  3. 取得したrefnumを指定してPBGetFCBInfo()をコールし、ファイルのロケーションを特定します。一つのファイルに複数のrefnumが付加されている場合、この方法はうまくいきません。しかし、FONDリソースの場合は問題ないでしょう。
  4. GetNextFOND()(この関数は明確には記述されていませんが、関数定義はResources.hでされています)に、今まで使用していたFONDhandleを渡します。
  5. 返されたhandleがNilでなければステップ2に戻ってください。Nil handleが返ってきたら終了です。


    [ Technical Q&A's : Operating System Services : Toolbox : TB18 ]