Condividi tramite


Metodo IMiniportDMus::Init (dmusicks.h)

Il metodo Init inizializza l'oggetto miniport DMus.

Sintassi

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

Parametri

[in, optional] UnknownAdapter

Puntatore all'interfaccia IUnknown dell'oggetto adapter di cui viene inizializzato l'oggetto miniport. Questo parametro è facoltativo e può essere specificato come NULL. Per altre informazioni, vedere la sezione Osservazioni seguente.

[in] ResourceList

Puntatore a un oggetto IResourceList che contiene l'elenco di risorse dell'adapter. Dopo aver passato questo riferimento al driver miniport, il driver della porta è libero di esaminare il contenuto dell'elenco di risorse, ma non modificherà il contenuto di questo elenco.

[in] Port

Puntatore a un oggetto IPortDMus che fornisce l'interfaccia di callback del driver di porta.

[out] ServiceGroup

Puntatore di output per il gruppo di servizi. Questo parametro punta a una variabile puntatore allocata dal chiamante in cui il metodo scrive un puntatore nell'interfaccia IServiceGroup dell'oggetto gruppo di servizi del driver miniport. Questo è il gruppo di servizi che questo driver miniport vuole usare per le chiamate a IPortDMus::Notify.

Valore restituito

Init restituisce S_OK se la chiamata ha avuto esito positivo. In caso contrario, il metodo restituisce un codice di errore appropriato.

Osservazioni

Il parametro pUnknownAdapter è facoltativo:

  • Se pUnknownAdapter è diverso daNULL, il metodo Init esegue una query sull 'oggetto pUnknownAdapter per l'interfaccia IInterruptSync.
  • Se pUnknownAdapter è NULL, il metodo Init chiama PcNewInterruptSync per creare un nuovo oggetto IInterruptSync. In questo caso, l'elenco di risorse che pResourceList punta a specificare la risorsa interrupt usata dal nuovo oggetto IInterruptSync.
In entrambi i casi, il metodo Init e chiama il metodo RegisterServiceRoutine sull'oggetto IInterruptSync per aggiungere la routine del servizio interrupt del driver miniport (ISR) all'elenco di ISR. Quando il driver dell'adattatore libera successivamente l'oggetto porta, il driver della porta rilascia il riferimento all'oggetto IInterruptSync.

I parametri pUnknownAdapter e pResourceList sono gli stessi valori del puntatore passati in precedenza dal driver dell'adattatore come parametri al metodo Init IPortDMus dell'oggetto (vedere IPort::Init).

I parametri pUnknownAdapter, pResourceList, pPorte ppServiceGroup seguono le convenzioni di conteggio dei riferimenti per gli oggetti COM.

Fabbisogno

Requisito Valore
piattaforma di destinazione Desktop
intestazione dmusicks.h (include Dmusicks.h)
IRQL PASSIVE_LEVEL

Vedere anche

IInterruptSync

IMiniportDMus

IPort::Init

IPortDMus

IPortDMus::Notify

IResourceList

IServiceGroup

PcNewInterruptSync