Método IMiniportDMus::Init (dmusicks.h)
El Init
método inicializa el objeto DMus miniport.
NTSTATUS Init(
[in, optional] PUNKNOWN UnknownAdapter,
[in] PRESOURCELIST ResourceList,
[in] PPORTDMUS Port,
[out] PSERVICEGROUP *ServiceGroup
);
[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.
Init
devuelve S_OK si la llamada se realizó correctamente. De lo contrario, el método devuelve un código de error adecuado.
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 .
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.
Requisito | Value |
---|---|
Plataforma de destino | Escritorio |
Encabezado | dmusicks.h (incluye Dmusicks.h) |
IRQL | PASSIVE_LEVEL |