Share via


Método IMiniportDMus::Init (dmusicks.h)

El Init método inicializa el objeto DMus miniport.

Sintaxis

NTSTATUS Init(
  [in, optional] PUNKNOWN      UnknownAdapter,
  [in]           PRESOURCELIST ResourceList,
  [in]           PPORTDMUS     Port,
  [out]          PSERVICEGROUP *ServiceGroup
);

Parámetros

[in, optional] UnknownAdapter

Puntero a la interfaz IUnknown del objeto de adaptador cuyo objeto de minipuerto se está inicializando. Este parámetro es opcional y se puede especificar como NULL. Para obtener más información, vea la sección Comentarios que se muestra más adelante.

[in] ResourceList

Puntero a un objeto IResourceList que contiene la lista de recursos del adaptador. Después de pasar esta referencia al controlador de minipuerto, el controlador de puerto puede examinar el contenido de la lista de recursos, pero no modificará el contenido de esta lista.

[in] Port

Puntero a un objeto IPortDMus que proporciona la interfaz de devolución de llamada del controlador de puerto.

[out] ServiceGroup

Puntero de salida para el grupo de servicios. Este parámetro apunta a una variable de puntero asignada por el autor de la llamada en la que el método escribe un puntero en la interfaz IServiceGroup del objeto de grupo de servicios del controlador de minipuerto. Este es el grupo de servicios que este controlador de minipuerto quiere haber usado para las llamadas a IPortDMus::Notify.

Valor devuelto

Init devuelve S_OK si la llamada se realizó correctamente. De lo contrario, el método devuelve un código de error adecuado.

Comentarios

El parámetro pUnknownAdapter es opcional:

  • Si pUnknownAdapter no es NULL, el Init método consulta el objeto pUnknownAdapter para su interfaz IInterruptSync .
  • Si pUnknownAdapter es NULL, el Init método llama a PcNewInterruptSync para crear un nuevo objeto IInterruptSync . En este caso, la lista de recursos que pResourceList apunta a proporciona el recurso de interrupción que usa el nuevo objeto IInterruptSync .
En cualquier caso, el Init método y llama al método RegisterServiceRoutine en el objeto IInterruptSync para agregar la rutina de servicio de interrupción (ISR) del controlador de miniporte a la lista de ISR. Cuando el controlador del adaptador libera posteriormente el objeto de puerto, el controlador de puerto libera su referencia al objeto IInterruptSync .

Los parámetros pUnknownAdapter y pResourceList son los mismos valores de puntero que el controlador del adaptador pasó anteriormente como parámetros al método del Init objeto IPortDMus (vea IPort::Init).

Los parámetros pUnknownAdapter, pResourceList, pPort y ppServiceGroup siguen 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

Consulte también

IInterruptSync

IMiniportDMus

IPort::Init

IPortDMus

IPortDMus::Notify

IResourceList

IServiceGroup

PcNewInterruptSync