共用方式為


IPart::Activate 方法 (devicetopology.h)

Activate方法會在連接器或子單位上啟動函式特定介面。

語法

HRESULT Activate(
  [in]  DWORD  dwClsContext,
  [in]  REFIID refiid,
  [out] void   **ppvObject
);

參數

[in] dwClsContext

執行內容,其中管理新建立物件的程式碼將會執行。 呼叫端可以藉由將此參數設定為一或多個CLSCTX列舉值的位OR來限制內容。 用戶端可以藉由指定CLSCTX_ALL來避免造成任何內容限制。 如需 CLSCTX的詳細資訊,請參閱 Windows SDK 檔。

[in] refiid

所要求控制項函式的介面識別碼。 用戶端應該將此參數設定為下列其中一個 REFIID 值:

IID_IAudioAutoGainControl

IID_IAudioBass

IID_IAudioChannelConfig

IID_IAudioInputSelector

IID_IAudioLoudness

IID_IAudioMidrange

IID_IAudioMute

IID_IAudioOutputSelector

IID_IAudioPeakMeter

IID_IAudioTreble

IID_IAudioVolumeLevel

IID_IDeviceSpecificProperty

IID_IKsFormatSupport

IID_IKsJackDescription

IID_IKsJackDescription2

如需詳細資訊,請參閱<備註>。

[out] ppvObject

指標變數的指標,方法會寫入參數 refiid所指定的介面位址。 透過這個方法,呼叫端會取得介面的計數參考。 呼叫端負責藉由呼叫介面的 Release 方法,在不再需要介面時釋出介面。 如果 Activate 呼叫失敗, *ppObjectNull

傳回值

如果方法成功,它會傳回 S_OK。 如果失敗,可能的傳回碼包括,但不限於下表所示的值。

傳回碼 描述
E_INVALIDARG
dwClsCoNtext中的CLSCTX_INPROC_SERVER位為零。
E_POINTER
指標 ppvObjectNull
E_NOINTERFACE
part 物件不支援要求的介面。

備註

Activate方法支援下列函式特定的控制介面:

若要取得元件之函式特定控制項介面的介面識別碼,請呼叫元件的 IControlInterface::GetIID 方法。 若要取得函式特定控制項介面類別型的介面識別碼,請使用 __uuidof 運算子。 例如, IAudioAutoGainControl 的介面識別碼定義如下:

const IID IID_IAudioAutoGainControl  __uuidof(IAudioAutoGainControl)

如需 __uuidof 運算子的詳細資訊,請參閱 Windows SDK 檔。

需求

   
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
目標平台 Windows
標頭 devicetopology.h

另請參閱

IControlInterface::GetIID

IPart 介面