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


Интерфейс IControlChangeNotify (devicetopology.h)

Интерфейс IControlChangeNotify предоставляет уведомления при изменении состояния части (соединителя или подъединицы). В отличие от других интерфейсов в этом разделе, реализованных API DeviceTopology, интерфейс IControlChangeNotify должен быть реализован клиентом. Для получения уведомлений клиент передает указатель на экземпляр интерфейса IControlChangeNotify в качестве параметра в метод IPart::RegisterControlChangeCallback .

После регистрации интерфейса IControlChangeNotify клиент получает уведомления о событиях в виде обратных вызовов через метод OnNotify в интерфейсе .

При реализации интерфейса IControlChangeNotify клиент должен соблюдать следующие правила, чтобы избежать взаимоблокировок и неопределенного поведения:

  • Методы в интерфейсе должны быть неблокировными. Клиент никогда не должен ждать объекта синхронизации во время обратного вызова события.
  • Клиент никогда не должен вызывать метод IPart::UnregisterControlChangeCallback во время обратного вызова события.
  • Клиент никогда не должен освобождать окончательную ссылку на объект API MMDevice во время обратного вызова события.

Наследование

Интерфейс IControlChangeNotify наследуется от интерфейса IUnknown . IControlChangeNotify также имеет следующие типы элементов:

Методы

Интерфейс IControlChangeNotify содержит следующие методы.

 
IControlChangeNotify::OnNotify

Метод OnNotify уведомляет клиента при изменении состояния соединителя или подсоединения.

Требования

   
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Целевая платформа Windows
Header devicetopology.h

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

Основные звуковые интерфейсы

DeviceTopology API

IPart::RegisterControlChangeCallback

IPart::UnregisterControlChangeCallback