com_load_typelib

タイプライブラリを読み込む

説明

bool com_load_typelib(string $typelib, bool $case_insensitive = true)

タイプライブラリを読み込んで定数をエンジン内に登録し、それらが define を使用して定義されているかのように 扱えるようにします。

あまり融通の利く方法ではありませんが、 com.typelib-file php.ini 設定を利用して定数の 事前読み込みと登録をすませるほうがずっと効率的であることに 注意しましょう。

com.autoregister-typelib を有効にすると、 PHP がインスタンス化した COM オブジェクトに関連付けられている定数を 自動的に登録しようと試みます。これは COM オブジェクト自身の提供する インターフェイスに依存し、常に可能であるとは限りません。

パラメータ

typelib

typelib は、以下のいずれかの形式となります。

  • .tlb ファイル、あるいはタイプライブラリを含む 実行モジュールのファイル名。

  • タイプライブラリの GUID の後にバージョン番号を続ける。たとえば {00000200-0000-0010-8000-00AA006D2EA4},2,0 のような形式。

  • タイプライブラリ名。たとえば Microsoft OLE DB ActiveX Data Objects 1.0 Library のような形式。

PHP は、この順序でタイプライブラリ名の解決を試みます。リストの下の ほうにいくほど検索処理のコストが高くなります。タイプライブラリ名に よる検索は、一致するものが見つかるまでレジストリを物理的に列挙していく という方法をとっています。

case_insensitive

case_insensitive は、 define 関数の $case_insensitive とは逆の動きをします。

戻り値

成功した場合に true を、失敗した場合に false を返します。