IPortDMus::RegisterServiceGroup-Methode (dmusicks.h)

Die RegisterServiceGroup -Methode registriert eine Dienstgruppe beim DMus-Porttreiber.

Syntax

void RegisterServiceGroup(
  [in] PSERVICEGROUP ServiceGroup
);

Parameter

[in] ServiceGroup

Zeiger auf ein IServiceGroup-Objekt . Dies ist die Dienstgruppe, die registriert werden soll.

Rückgabewert

Keine

Bemerkungen

Der Miniporttreiber ruft die RegisterServiceGroup -Methode auf, um eine Dienstgruppe (IServiceGroup-Objekt ) beim Porttreiber zu registrieren. Der Porttreiber kann eine oder mehrere seiner Dienstsenken (IServiceSink-Objekte ) in diese Dienstgruppe einfügen. Der Miniporttreiber sendet jedes Mal eine Benachrichtigung (durch Aufrufen von IPortDMus::Notify) an die Dienstgruppe. Nach Erhalt der Benachrichtigung plant die Dienstgruppe einen Verzögerten Prozeduraufruf (DPC). Der DPC durchläuft alle Dienstsenken in der Dienstgruppe und sendet Benachrichtigungen an jede.

Der Miniporttreiber ruft normalerweise RegisterServiceSink während der Ausführung seiner IMiniportDMus::Init-Methode auf. Der Zweck dieses Aufrufs besteht darin, die Dienstgruppe früh genug beim Porttreiber zu registrieren, um mit der Behandlung von Interrupts zu beginnen, sobald sie aktiviert sind. Beachten Sie, dass die Dienstgruppe, die von der Init-Methode ausgegeben wird, erst nach der Rückgabe von der Init-Methode für den Porttreiber verfügbar ist.

Wenn der Miniporttreiber aufruft RegisterServiceSink, sollte die Dienstgruppe, die der Miniporttreiber an die RegisterServiceSink -Methode übergibt, dieselbe sein, die der Miniporttreiber über seine Init-Methode ausgibt.

Ein typischer Miniporttreiber muss nicht mehr aufgerufen RegisterServiceSink werden, sobald die Rückkehr von IMiniportDMus::Init erfolgt ist.

Im DMusUART-Beispiel-Audiotreiber im Microsoft Windows Driver Kit (WDK) finden Sie ein Codebeispiel, das zeigt, wie der Miniporttreiber innerhalb seiner IMiniportDMus::Init-Methode aufruftRegisterServiceSink.

Der pServiceGroup-Parameter folgt den Referenzzählungskonventionen für COM-Objekte.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile dmusicks.h (include Dmusicks.h)
IRQL PASSIVE_LEVEL

Weitere Informationen

IMiniportdMus::Init

IPortDMus

IPortDMus::Notify

IServiceGroup

IServiceSink