Share via


IControlChangeNotify-Schnittstelle (devicetopology.h)

Die IControlChangeNotify-Schnittstelle stellt Benachrichtigungen bereit, wenn sich die status eines Teils (Connector oder Untereinheit) ändert. Im Gegensatz zu den anderen Schnittstellen in diesem Abschnitt, die von der DeviceTopology-API implementiert werden, muss die IControlChangeNotify-Schnittstelle von einem Client implementiert werden. Um Benachrichtigungen zu empfangen, übergibt der Client einen Zeiger auf seine IControlChangeNotify-Schnittstelle instance als Parameter an die IPart::RegisterControlChangeCallback-Methode.

Nach der Registrierung der IControlChangeNotify-Schnittstelle empfängt der Client Ereignisbenachrichtigungen in Form von Rückrufen über die OnNotify-Methode in der Schnittstelle.

Bei der Implementierung der IControlChangeNotify-Schnittstelle sollte der Client diese Regeln beachten, um Deadlocks und nicht definiertes Verhalten zu vermeiden:

  • Die Methoden in der -Schnittstelle müssen nicht blockiert werden. Der Client sollte während eines Ereignisrückrufs niemals auf ein Synchronisierungsobjekt warten.
  • Der Client sollte während eines Ereignisrückrufs niemals die IPart::UnregisterControlChangeCallback-Methode aufrufen.
  • Der Client sollte während eines Ereignisrückrufs niemals den endgültigen Verweis auf ein MMDevice-API-Objekt freigeben.

Vererbung

Die IControlChangeNotify-Schnittstelle erbt von der IUnknown-Schnittstelle . IControlChangeNotify verfügt auch über folgende Membertypen:

Methoden

Die IControlChangeNotify-Schnittstelle verfügt über diese Methoden.

 
IControlChangeNotify::OnNotify

Die OnNotify-Methode benachrichtigt den Client, wenn sich die status eines Connectors oder einer Untereinheit ändert.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile devicetopology.h

Weitere Informationen

Kernaudioschnittstellen

DeviceTopology-API

IPart::RegisterControlChangeCallback

IPart::UnregisterControlChangeCallback