Método IMiniportDMus::Init (dmusicks.h)
O Init
método inicializa o objeto miniport DMus.
Sintaxe
NTSTATUS Init(
[in, optional] PUNKNOWN UnknownAdapter,
[in] PRESOURCELIST ResourceList,
[in] PPORTDMUS Port,
[out] PSERVICEGROUP *ServiceGroup
);
Parâmetros
[in, optional] UnknownAdapter
Ponteiro para a interface IUnknown do objeto adaptador cujo objeto miniport está sendo inicializado. Esse parâmetro é opcional e pode ser especificado como NULL. Para obter mais informações, consulte a seção Comentários a seguir.
[in] ResourceList
Ponteiro para um objeto IResourceList que contém a lista de recursos do adaptador. Depois de passar essa referência para o driver de miniporta, o driver de porta fica livre para examinar o conteúdo da lista de recursos, mas não modificará o conteúdo dessa lista.
[in] Port
Ponteiro para um objeto IPortDMus que fornece a interface de retorno de chamada do driver de porta.
[out] ServiceGroup
Ponteiro de saída para o grupo de serviços. Esse parâmetro aponta para uma variável de ponteiro alocada pelo chamador na qual o método grava um ponteiro para a interface IServiceGroup do objeto de grupo de serviços do driver de miniport. Esse é o grupo de serviços que este driver de miniporta deseja ter usado para chamadas para IPortDMus::Notify.
Retornar valor
Init
retornará S_OK se a chamada tiver sido bem-sucedida. Caso contrário, o método retornará um código de erro apropriado.
Comentários
O parâmetro pUnknownAdapter é opcional:
-
Se pUnknownAdapter não for NULL, o
Init
método consultará o objeto pUnknownAdapter para sua interface IInterruptSync . -
Se pUnknownAdapter for NULL, o
Init
método chamará PcNewInterruptSync para criar um novo objeto IInterruptSync . Nesse caso, a lista de recursos para a qual pResourceList aponta fornece o recurso de interrupção que o novo objeto IInterruptSync usa.
Init
método e chama o método RegisterServiceRoutine no objeto IInterruptSync para adicionar a ISR (rotina de serviço de interrupção) do driver de miniporta à lista de ISRs. Quando o driver do adaptador libera o objeto de porta posteriormente, o driver de porta libera sua referência ao objeto IInterruptSync .
Os parâmetros pUnknownAdapter e pResourceList são os mesmos valores de ponteiro que o driver do adaptador anteriormente passou como parâmetros para o método do Init
objeto IPortDMus (consulte IPort::Init).
Os parâmetros pUnknownAdapter, pResourceList, pPort e ppServiceGroup seguem 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 |