Метод IMiniportDMus::Init (dmusicks.h)
Метод Init
инициализирует объект мини-порта DMus.
Синтаксис
NTSTATUS Init(
[in, optional] PUNKNOWN UnknownAdapter,
[in] PRESOURCELIST ResourceList,
[in] PPORTDMUS Port,
[out] PSERVICEGROUP *ServiceGroup
);
Параметры
[in, optional] UnknownAdapter
Указатель на интерфейс IUnknown объекта адаптера, для которого выполняется инициализация мини-объекта. Этот параметр является необязательным и может быть указан как NULL. Дополнительные сведения см. в разделе "Примечания".
[in] ResourceList
Указатель на объект IResourceList , содержащий список ресурсов адаптера. После передачи этой ссылки драйверу мини-порта драйвер порта может просматривать содержимое списка ресурсов, но не будет изменять содержимое этого списка.
[in] Port
Указатель на объект IPortDMus , предоставляющий интерфейс обратного вызова драйвера порта.
[out] ServiceGroup
Выходной указатель для группы служб. Этот параметр указывает на переменную указателя, выделенную вызывающим объектом, в которую метод записывает указатель на интерфейс IServiceGroup объекта группы служб драйвера мини-порта. Это группа служб, которую драйвер мини-порта хочет использовать для вызовов IPortDMus::Notify.
Возвращаемое значение
Init
возвращает S_OK, если вызов выполнен успешно. В противном случае метод возвращает соответствующий код ошибки.
Комментарии
Параметр pUnknownAdapter является необязательным:
-
Если pUnknownAdapter не равно NULL,
Init
метод запрашивает у объекта pUnknownAdapter интерфейс IInterruptSync . -
Если pUnknownAdapter имеет значение NULL,
Init
метод вызывает PcNewInterruptSync для создания нового объекта IInterruptSync . В этом случае список ресурсов, на который указывает pResourceList , предоставляет ресурс прерывания, который использует новый объект IInterruptSync .
Init
метод и вызывает метод RegisterServiceRoutine для объекта IInterruptSync , чтобы добавить подпрограмму обслуживания прерывания (ISR) драйвера miniport в список ISR. Когда позже драйвер адаптера освобождает объект порта, драйвер порта освобождает ссылку на объект IInterruptSync .
Параметры pUnknownAdapter и pResourceList — это те же значения указателя, которые драйвер адаптера ранее передал в качестве параметров в метод объекта Init
IPortDMus (см. раздел IPort::Init).
Параметры pUnknownAdapter, pResourceList, pPort и ppServiceGroup следуют соглашениям о подсчете ссылок для COM-объектов.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | dmusicks.h (включая Dmusicks.h) |
IRQL | PASSIVE_LEVEL |