다음을 통해 공유


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

요청된 컨트롤 함수의 인터페이스 ID입니다. 클라이언트는 이 매개 변수를 다음 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 메서드를 호출하여 더 이상 필요하지 않은 경우 인터페이스를 해제 할 책임이 있습니다. 활성화 호출이 실패하면 *ppObjectNULL입니다.

반환 값

메서드가 성공하면 S_OK가 반환되고, 실패할 경우 가능한 반환 코드에는 다음 표에 표시된 값이 포함되지만 이에 국한되지는 않습니다.

반환 코드 설명
E_INVALIDARG
dwClsContext의 CLSCTX_INPROC_SERVER 비트는 0입니다.
E_POINTER
포인터 ppvObjectNULL입니다.
E_NOINTERFACE
part 개체는 요청된 인터페이스를 지원하지 않습니다.

설명

Activate 메서드는 다음과 같은 함수별 제어 인터페이스를 지원합니다.

파트의 함수별 컨트롤 인터페이스의 인터페이스 ID를 가져오려면 파트의 IControlInterface::GetIID 메서드를 호출합니다. 함수별 컨트롤 인터페이스 형식의 인터페이스 ID를 가져오려면 __uuidof 연산자를 사용합니다. 예를 들어 IAudioAutoGainControl 의 인터페이스 ID는 다음과 같이 정의됩니다.

const IID IID_IAudioAutoGainControl  __uuidof(IAudioAutoGainControl)

__uuidof 연산자에 대한 자세한 내용은 Windows SDK 설명서를 참조하세요.

요구 사항

   
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 devicetopology.h

추가 정보

IControlInterface::GetIID

IPart 인터페이스