COMのIUnknownと私は最初のCoGetClassObjectを呼び出す前に、それへのポインタが必要なのでしょうか?

StackOverflow https://stackoverflow.com/questions/2843670

  •  27-09-2019
  •  | 
  •  

質問

あなたには、いくつかのCOMサーバーオブジェクトのインスタンスを作成する場合、

でCOMは、あなたにそれのIUnknownインターフェイスへのポインタを取得するための最初の必要性を行うだけにして使用して、クラスのオブジェクトを作成CoGetClassObjectに?

私の知る限りそれを理解するように、IUnknownのは、クライアントが作成したいオブジェクトを何でも、そう私の理解から、オブジェクトの寿命を管理するために使用され、一つは、それへのポインタが最初のIUnknownインターフェイスの実装のニーズます。

正しい音?ない場合は、缶誰もがそれがどのように動作するかを教えて?

役に立ちましたか?

解決

IUnknownの既存ののCOMオブジェクトの寿命を管理します。オブジェクトが作成される前に、話すために何IUnknownポインタはありません。

CoGetClassObjectは、目的のオブジェクトを作成することが期待されているオブジェクトのIUnknownインターフェイスを取得するために使用されます。すなわち、それはオブジェクトの工場のある、通常は、オブジェクトを作成するために使用することIClassFactoryメソッドを宣言しCreateInstanceを実装します。

の代わりに、明示的にクラスファクトリを使用するのでは、それは多くの場合、単にコールCoCreateInstanceに簡単です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top