この特集のトップページへ
Chapter 2:Component Object Model

head1.gif 2.3 COMの内部処理

 このようにVisual Basicでは,参照設定したのちに,Newキーワードを使うかCreateObject関数を呼び出すことによって,COMオブジェクトを利用することができる。

 COMオブジェクトを利用するだけであれば,これだけの知識でよいのだが,COMコンポーネントを作ろうという場合や,MTSやCOM+を利用するような場合には,もう少し細部まで知っていると理解しやすくなる。

 ここでは,Visual Basicで参照設定したとき,あるいはNewキーワードやCreateObject関数を呼び出したときに,内部でどのような処理が実行されているのかについて説明する。

head2.gif 2.3.1 参照設定とタイプライブラリ
 すでに述べたとおり,参照設定することによって,COMコンポーネントに含まれているオブジェクトの種類や備えるプロパティ,メソッド,利用している定数などの情報をVisual Basic側から取得できるようになる。これらの情報は「タイプライブラリ」と呼ばれ,一般的にはCOMサーバーに含まれたり,別ファイル(拡張子.tlbのファイル)として提供されたりする。

 タイプライブラリがどのファイルで提供されているのかは,レジストリのHKEY_CLASSES_ROOT\TYPELIBの下に含まれる(Fig.2-8)。Visual Basicのメニューから[プロジェクト]−[参照設定]を選択したときには,レジストリに含まれている内容が一覧表示されているのである。

Fig.2-8 タイプライブラリのレジストリ情報

fig2-08.gif

prevpg.gif Chapter 2 7/15 nextpg.gif