Поделиться через


Метод IVdsService::Advise (vds.h)

[Начиная с Windows 8 и Windows Server 2012, COM-интерфейс службы виртуальных дисков замечается API управления хранилищем Windows.]

Регистрирует интерфейс IVdsAdviseSink вызывающего объекта с VDS, чтобы вызывающий объект получал уведомления от службы 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 и использовать метод Advise для регистрации интерфейса.

Чтобы прекратить получение уведомлений от службы VDS, используйте метод IVdsService::Unadvise , чтобы отменить регистрацию интерфейса IVdsAdviseSink .

Примечание Приложение, которое вызывает Функцию Совет , в конечном итоге должно вызвать Unadvise. В идеале он должен вызывать unadvise , как только ему больше не нужно получать уведомления.
 
Для получения уведомлений от базовых поставщиков программного обеспечения и оборудования VDS передает функцию обратного вызова уведомлений каждому поставщику в качестве параметра метода IVdsProviderPrivate::OnLoad .

Требования

Требование Значение
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header vds.h
Библиотека Uuid.lib

См. также раздел

IVdsAdviseSink

IVdsProviderPrivate::OnLoad

IVdsService

Уведомления VDS