實作 IClassFactory

當用戶端使用 CLSID 要求建立物件實例時,第一個步驟是建立類別物件,這是包含 IClassFactory 介面方法實作的中繼物件。 雖然 COM 提供數個實例建立函式,但這些函式實作的第一個步驟是建立類別物件。

因此,所有伺服器都必須實作 IClassFactory 介面的方法,其中包含兩種方法:

  • CreateInstance。 這個方法必須建立物件的未初始化實例,並傳回物件上所要求介面的指標。
  • LockServer。 這個方法只會遞增類別對象的參考計數,以確保伺服器會保留在記憶體中,而且不會在用戶端準備好執行此動作之前關閉。

若要讓伺服器負責自己的授權,COM 會定義 IClassFactory2,它會從 IClassFactory 繼承其定義。 因此,實作 IClassFactory2 的伺服器必須依定義實作 IClassFactory 的方法

COM 也提供協助程式函式來實作跨進程伺服器。 如需詳細資訊,請參閱 跨進程伺服器實作協助程式

COM 伺服器責任

授權和 IClassFactory2