Share via


IVdsService::建議方法 (vds.h)

[從 Windows 8 和 Windows Server 2012 開始,虛擬磁碟服務 COM 介面會由 Windows 記憶體管理 API 取代。

向 VDS 註冊呼叫端的 IVdsAdviseSink 介面,讓呼叫端接收來自 VDS 服務的通知。

語法

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

參數

[in] pSink

IVdsAdviseSink 介面的指標。

[out] pdwCookie

稍後可用來取消註冊介面之 Cookie 的指標。

傳回值

這個方法可以傳回標準 HRESULT 值,例如E_INVALIDARG或E_OUTOFMEMORY,以及 VDS 特定的傳回值。 它也可以使用 HRESULT_FROM_WIN32 宏傳回已轉換的系統錯誤碼。 錯誤可能來自 VDS 本身,或來自正在使用的基礎 VDS 提供者 。 可能的傳回值包括下列專案。

傳回碼/值 描述
S_OK
註冊成功完成。
VDS_E_INITIALIZED_FAILED
0x80042401L
VDS 無法初始化。 如果應用程式在服務完成初始化之前呼叫此方法,則會封鎖 方法,直到初始化完成為止。 如果初始化失敗,則會傳回此錯誤。

備註

若要從 VDS 服務接收通知,您的應用程式必須實作 IVdsAdviseSink 介面,並使用 建議 方法來註冊介面。

若要停止從 VDS 服務接收通知,請使用 IVdsService::Unadvise 方法來取消註冊 IVdsAdviseSink 介面。

注意 呼叫 建議 的應用程式最終必須呼叫 Unadvise。 在理想情況下,它應該在不再需要收到通知時立即呼叫 Unadvise
 
為了接收來自基礎軟體和硬體提供者的通知,VDS 會將通知回呼函式傳遞至每個提供者作為 IVdsProviderPrivate::OnLoad 方法的參數。

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平台 Windows
標頭 vds.h
程式庫 Uuid.lib

另請參閱

IVdsAdviseSink

IVdsProviderPrivate::OnLoad

IVdsService

VDS 通知