Метод IPort::Init (portcls.h)
Метод Init инициализирует драйвер порта.
Синтаксис
NTSTATUS Init(
PVOID DeviceObject,
PVOID Irp,
PUNKNOWN UnknownMiniport,
PUNKNOWN UnknownAdapter,
PRESOURCELIST ResourceList
);
Параметры
DeviceObject
Указатель на объект устройства, переданный в качестве аргумента для процедуры запуска устройства драйвера адаптера. Объект устройства — это системная структура типа DEVICE_OBJECT.
Irp
Указатель на IRP, переданный в качестве аргумента для процедуры запуска устройства драйвера адаптера.
UnknownMiniport
Указатель на интерфейс IUnknown неинициализированного объекта мини-порта. Этот интерфейс запрашивается для конкретного интерфейса мини-порта, поддерживаемого драйвером порта, и вызывается функция инициализации для этого интерфейса.
UnknownAdapter
Указатель на интерфейс IUnknown объекта адаптера, драйвер порта которого инициализируется. Этот указатель является необязательным и может быть указан как NULL. Дополнительные сведения см. в разделе "Примечания".
ResourceList
Указатель на объект IResourceList, переданный в качестве аргумента в процедуру запуска устройства драйвера адаптера. После передачи этой ссылки драйверу мини-порта драйвер порта может просматривать содержимое списка ресурсов, но не будет изменять содержимое этого списка.
Возвращаемое значение
Этот метод возвращает NTSTATUS, содержащий STATUS_SUCCESS, если вызов был успешным. В противном случае метод возвращает соответствующий код ошибки.
Комментарии
Объект miniport, указанный в UnknownMiniport, должен поддерживать интерфейс мини-порта, необходимый драйверу порта, в противном случае вызов Init завершится ошибкой.
Во время вызова IPort::Init драйвер порта вызывает метод инициализации драйвера miniport (например, см . раздел IMiniportWavePci::Init).
Параметр UnknownAdapter указывает на COM-интерфейс объекта адаптера. Драйвер адаптера обычно создает этот объект в рамках процедуры запуска устройства, которая является подпрограммой, которую операционная система вызывает для запуска устройства (см. последовательность запуска). Пример интерфейса для объекта адаптера см. в определении CMiniportWaveRT::Init
и реализации в примере драйвера sysvad audio.
Параметры UnknownMiniport, UnknownAdapter и ResourceList соответствуют стандартным соглашениям о подсчете ссылок для COM-объектов.
Требования
Требование | Значение |
---|---|
Заголовок | portcls.h |
IRQL | PASSIVE_LEVEL |