Método IPort::Init (portcls.h)
O método Init inicializa o driver de porta.
Sintaxe
NTSTATUS Init(
PVOID DeviceObject,
PVOID Irp,
PUNKNOWN UnknownMiniport,
PUNKNOWN UnknownAdapter,
PRESOURCELIST ResourceList
);
Parâmetros
DeviceObject
Ponteiro para o objeto de dispositivo que foi passado como um argumento para a rotina de inicialização do dispositivo do driver do adaptador. O objeto do dispositivo é uma estrutura do sistema do tipo DEVICE_OBJECT.
Irp
Ponteiro para o IRP que foi passado como um argumento para a rotina de inicialização do dispositivo do driver do adaptador.
UnknownMiniport
Ponteiro para a interface IUnknown do objeto miniport não inicializado. Essa interface é consultada para a interface de miniporto específica com suporte do driver de porta e a função de inicialização nessa interface é chamada.
UnknownAdapter
Ponteiro para a interface IUnknown do objeto do adaptador cujo driver de porta está sendo inicializado. Esse ponteiro é opcional e pode ser especificado como NULL. Para obter mais informações, consulte a seção Comentários a seguir.
ResourceList
Ponteiro para o objeto IResourceList que foi passado como um argumento para a rotina de inicialização do dispositivo do driver do adaptador. Depois de passar essa referência para o driver de miniporto, o driver de porta fica livre para examinar o conteúdo da lista de recursos, mas não modificará o conteúdo dessa lista.
Retornar valor
Esse método retorna NTSTATUS que contém STATUS_SUCCESS se a chamada foi bem-sucedida. Caso contrário, o método retorna um código de erro apropriado.
Comentários
O objeto de miniporto especificado por UnknownMiniport deve dar suporte à interface de miniporto que o driver de porta requer ou a chamada init falhará.
Durante a chamada IPort::Init, o driver de porta chama o método de inicialização do driver de miniport (por exemplo, consulte IMiniportWavePci::Init).
O parâmetro UnknownAdapter aponta para a interface COM de um objeto adaptador. O driver do adaptador normalmente cria esse objeto dentro de sua rotina de inicialização de dispositivo, que é a rotina que o sistema operacional chama para iniciar o dispositivo (consulte Sequência de Inicialização). Para obter um exemplo de uma interface para um objeto adaptador, consulte a definição e a CMiniportWaveRT::Init
implementação no exemplo do driver de áudio sysvad.
Os parâmetros UnknownMiniport, UnknownAdapter e ResourceList seguem as convenções de contagem de referência padrão para objetos COM.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | portcls.h |
IRQL | PASSIVE_LEVEL |