Método IPortDMus::RegisterServiceGroup (dmusicks.h)
El RegisterServiceGroup
método registra un grupo de servicios con el controlador de puerto DMus.
Sintaxis
void RegisterServiceGroup(
[in] PSERVICEGROUP ServiceGroup
);
Parámetros
[in] ServiceGroup
Puntero a un objeto IServiceGroup . Este es el grupo de servicios que se va a registrar.
Valor devuelto
None
Observaciones
El controlador de minipuerto llama al RegisterServiceGroup
método para registrar un grupo de servicios (objeto IServiceGroup ) con el controlador de puerto. El controlador de puerto puede insertar uno o varios de sus receptores de servicio (objetos IServiceSink ) en este grupo de servicios. El controlador de minipuerto envía una notificación (llamando a IPortDMus::Notify) al grupo de servicios cada vez que se produce una interrupción. Tras recibir una notificación, el grupo de servicios programa una llamada a procedimiento diferida (DPC). El DPC recorre en iteración todos los receptores de servicio del grupo de servicios y envía una notificación a cada uno.
El controlador de minipuerto normalmente llama a RegisterServiceSink durante la ejecución de su método IMiniportDMus::Init . El propósito de esta llamada es registrar el grupo de servicios con el controlador de puerto lo suficientemente pronto como para empezar a controlar las interrupciones tan pronto como estén habilitadas. Tenga en cuenta que el grupo de servicios que el método Init genera no está disponible para el controlador de puerto hasta después de la devolución del método Init .
Si el controlador de minipuerto llama RegisterServiceSink
a , el grupo de servicios que pasa el RegisterServiceSink
controlador de minipuerto al método debe ser el mismo que el controlador de minipuerto genera a través de su método Init .
Un controlador de minipuerto típico no tiene más necesidad de llamar RegisterServiceSink
una vez que se ha producido el retorno de IMiniportDMus::Init .
Vea el controlador de audio de ejemplo DMusUART en el Kit de controladores de Microsoft Windows (WDK) para obtener un ejemplo de código que muestra cómo llama RegisterServiceSink
el controlador de miniporte desde su método IMiniportDMus::Init .
El parámetro pServiceGroup sigue las convenciones de recuento de referencias para objetos COM.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Escritorio |
Encabezado | dmusicks.h (incluye Dmusicks.h) |
IRQL | PASSIVE_LEVEL |