共用方式為


IObjectControl::Activate 方法 (comsvcs.h)

可讓 COM+ 對象在啟用時執行內容特定的初始化。 在物件上呼叫任何其他方法之前,COM+ 運行時間環境會呼叫這個方法。

Syntax

HRESULT Activate();

傳回值

這個方法可以傳回標準傳回值E_INVALIDARG、E_OUTOFMEMORY、E_UNEXPECTED、E_FAIL和S_OK。

備註

每當用戶端呼叫尚未使用中的 COM+ 物件時,COM+ 執行時間環境會自動啟動物件。 這稱為 Just-In-Time 啟用。 對於支援 IObjectControl 做為介面的元件,COM+ 會先叫用物件的 Activate 方法,再將用戶端的方法呼叫傳遞給物件。

對於公開 IObjectControl 的物件,應該在 Activate 方法中實作任何內容特定的初始化程式。

例如,您可以使用 Activate 方法來取得物件內容的參考,並將其儲存在成員變數中。 然後,對象內容可供任何需要它的方法使用,而且您不需要每次想要使用它時取得新的對象內容。 取得對象內容的參考之後,您可以使用 IObjectControl 方法來檢查安全性是否已啟用、物件是在交易中執行,還是呼叫端是否處於特定角色。

如果您要藉由實作 CanBePooled 方法來查詢物件) 來啟用物件回收 (,Activate 方法必須能夠處理新建立和回收的物件。 當 Activate 方法傳回時,新物件與回收對象之間不應該有區別的差異。

COM+ 明確禁止呼叫公開 IObjectControl 的物件,再呼叫 Activate 方法 (其建構函式) 。 這類呼叫會導致RPC_E_DISCONNECTED錯誤。 例如,如果物件在其建構函式中傳回本身的參考,然後在呼叫 Activate 之前,參考會回呼至該物件,則會傳回中斷連線的錯誤。

您也可以使用 Activate 方法來取得物件的 ISecurityProperty 介面參考,並在呼叫任何方法之前檢查物件建立者的安全性標識碼。

規格需求

需求
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限桌面應用程式]
目標平台 Windows
標頭 comsvcs.h

另請參閱

IObjectControl