Método IPortDMus::RegisterServiceGroup (dmusicks.h)
O RegisterServiceGroup
método registra um grupo de serviços com o driver de porta DMus.
Sintaxe
void RegisterServiceGroup(
[in] PSERVICEGROUP ServiceGroup
);
Parâmetros
[in] ServiceGroup
Ponteiro para um objeto IServiceGroup . Esse é o grupo de serviços que deve ser registrado.
Retornar valor
Nenhum
Comentários
O driver de miniporto chama o RegisterServiceGroup
método para registrar um grupo de serviços (objeto IServiceGroup ) com o driver de porta. O driver de porta pode inserir um ou mais de seus coletores de serviço (objetos IServiceSink ) nesse grupo de serviços. O driver de miniporta envia uma notificação (chamando IPortDMus::Notify) para o grupo de serviços sempre que ocorre uma interrupção. Ao receber a notificação, o grupo de serviço agenda uma DPC (chamada de procedimento adiado). O DPC itera por todos os coletores de serviço no grupo de serviços e envia uma notificação para cada um.
O driver de miniporto normalmente chama RegisterServiceSink durante a execução de seu método IMiniportDMus::Init . A finalidade dessa chamada é registrar o grupo de serviços com o driver de porta cedo o suficiente para começar a lidar com interrupções assim que elas estiverem habilitadas. Observe que o grupo de serviços que o método Init gera não está disponível para o driver de porta até depois do retorno do método Init .
Se o driver de miniporta chamar RegisterServiceSink
, o grupo de serviço que o driver de miniporto passa para o RegisterServiceSink
método deverá ser o mesmo que o driver de miniporto gera por meio de seu método Init .
Um driver de miniporto típico não precisa chamar RegisterServiceSink
mais uma vez que o retorno de IMiniportDMus::Init tenha ocorrido.
Consulte o driver de áudio de exemplo DMusUART no WDK (Microsoft Windows Driver Kit) para obter um exemplo de código que mostra como o driver de miniporto chama RegisterServiceSink
de dentro de seu método IMiniportDMus::Init .
O parâmetro pServiceGroup segue as convenções de contagem de referência para objetos COM.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Área de Trabalho |
Cabeçalho | dmusicks.h (inclua Dmusicks.h) |
IRQL | PASSIVE_LEVEL |