Share via


IVdsService::Advise 메서드(vds.h)

[Windows 8 및 Windows Server 2012 가상 디스크 서비스 COM 인터페이스는 Windows Storage 관리 API로 대체됩니다.]

호출자가 VDS 서비스에서 알림을 받도록 호출자의 IVdsAdviseSink 인터페이스를 VDS에 등록합니다.

구문

HRESULT Advise(
  [in]  IVdsAdviseSink *pSink,
  [out] DWORD          *pdwCookie
);

매개 변수

[in] pSink

IVdsAdviseSink 인터페이스에 대한 포인터입니다.

[out] pdwCookie

나중에 인터페이스 등록을 취소하는 데 사용할 수 있는 쿠키에 대한 포인터입니다.

반환 값

이 메서드는 표준 HRESULT 값(예: E_INVALIDARG 또는 E_OUTOFMEMORY) 및 VDS 관련 반환 값을 반환할 수 있습니다. 또한 HRESULT_FROM_WIN32 매크로를 사용하여 변환된 시스템 오류 코드를 반환할 수도 있습니다. 오류는 VDS 자체 또는 사용 중인 기본 VDS 공급자 에서 발생할 수 있습니다. 가능한 반환 값은 다음과 같습니다.

반환 코드/값 Description
S_OK
등록이 성공적으로 완료되었습니다.
VDS_E_INITIALIZED_FAILED
0x80042401L
VDS를 초기화하지 못했습니다. 서비스가 초기화를 완료하기 전에 애플리케이션이 이 메서드를 호출하면 초기화가 완료될 때까지 메서드가 차단됩니다. 초기화에 실패하면 이 오류가 반환됩니다.

설명

VDS 서비스에서 알림을 받으려면 애플리케이션이 IVdsAdviseSink 인터페이스를 구현하고 Advise 메서드를 사용하여 인터페이스를 등록해야 합니다.

VDS 서비스에서 알림 수신을 중지하려면 IVdsService::Unadvise 메서드를 사용하여 IVdsAdviseSink 인터페이스의 등록을 취소합니다.

참고Advise 를 호출하는 애플리케이션은 결국 Unadvise를 호출해야 합니다. 이상적으로는 더 이상 알림을 받을 필요가 없는 즉시 Unadvise 를 호출해야 합니다.
 
기본 소프트웨어 및 하드웨어 공급자로부터 알림을 받기 위해 VDS는 IVdsProviderPrivate::OnLoad 메서드의 매개 변수로 각 공급자에게 알림 콜백 함수를 전달합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 vds.h
라이브러리 Uuid.lib

추가 정보

IVdsAdviseSink

IVdsProviderPrivate::OnLoad

IVdsService

VDS 알림