オートメーション クライアント : タイプ ライブラリの使用
クライアントがサーバーの オブジェクトを操作する必要がある場合、オートメーション クライアントにはサーバー オブジェクトのプロパティとメソッドに関する情報が必要です。 プロパティにはデータ型があります。メソッドは多くの場合、値を返し、パラメーターを受け取ります。 サーバー オブジェクト型に静的にバインドするために、クライアントにはこれらすべてのデータ型に関する情報が必要です。
この型情報は、いくつかの方法で認識できます。 タイプ ライブラリを作成する方法をお勧めします。
MkTypLib の詳細については、Windows SDK を参照してください。
Visual C++ はタイプ ライブラリのファイルを読み取り、COleDispatchDriver から派生したデスパッチ クラスを作成できます。 そのクラスのオブジェクトには、サーバー オブジェクトと重複するプロパティと操作があります。 アプリケーションは、このオブジェクトのプロパティと操作を呼び出し、COleDispatchDriver
から継承した機能によって、これらの呼び出しが OLE システムにルーティングされ、その後、それらはサーバー オブジェクトにルーティングされます。
オブジェクトが作成されたときに Automation を含めるように選択した場合、Visual C++ はこのタイプ ライブラリ ファイルを自動的に保持します。 各ビルドの一部として、MkTypLib を使用して .tlb ファイルがビルドされます。
タイプ ライブラリ (.tlb) ファイルからディスパッチ クラスを作成するには
クラス ビューまたはソリューション エクスプローラーでプロジェクトを右クリックし、[追加] をクリックして、ショートカット メニューの [クラスの追加] をクリックします。
[クラスの追加] ダイアログ ボックスで、左側のウィンドウから [Visual C++/MFC] フォルダを選択します。 右側のウィンドウから [TypeLib からの MFC クラス] アイコンを選択し、[開く] をクリックします。
[Typelib クラス追加ウィザード] ダイアログ ボックスで、[Available type libraries (使用可能なタイプ ライブラリ)] ドロップダウン リストからタイプ ライブラリを選択します。 [インターフェイス] ボックスには、選択したタイプ ライブラリに使用可能なインターフェイスが表示されます。
Note
複数のタイプ ライブラリからインターフェイスを選択できます。
インターフェイスを選択するには、インターフェイスをダブルクリックするか、[追加] ボタンをクリックします。 これを行うと、ディスパッチ クラスの名前が [生成されたクラス] ボックスに表示されます。
Class
ボックス内のクラス名を編集できます。[ファイル] ボックスには、クラスが宣言されるファイルが表示されます (このファイル名も編集できます)。 既存のファイル、またはプロジェクト ディレクトリ以外のディレクトリにヘッダーと実装情報を書き込む場合は、参照ボタンを使用して他のファイルを選択することもできます。
Note
選択したインターフェイスのすべてのディスパッチ クラスは、ここで指定したファイルに保存されます。 インターフェイスを個別のヘッダーで宣言する場合は、作成するヘッダー ファイルごとにこのウィザードを実行する必要があります。
Note
一部のタイプ ライブラリ情報は、.DLL、.OCX、または .OLB ファイル拡張子で保存されます。
[完了] をクリックします。
ウィザードは、指定されたクラス名とファイル名を使用して、ディスパッチ クラスのコードを記述します。