Метод 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, если вызов выполнен успешно. В противном случае метод возвращает соответствующий код ошибки.
Замечания
Минипорт-объект, указанный в UnknownMiniport, должен поддерживать минипорт-интерфейс, необходимый драйверу порта, или вызов Init завершится ошибкой.
Во время вызова IPort::Init драйвер порта вызывает метод инициализации драйвера мини-порта (например, см. IMiniportWavePci::Init).
Параметр UnknownAdapter указывает на COM-интерфейс объекта адаптера. Драйвер адаптера обычно создает этот объект в рамках подпрограммы запуска устройства, что является подпрограммой вызова операционной системы для запуска устройства (см. последовательность запуска). Пример интерфейса для объекта адаптера см. в CMiniportWaveRT::Init
определении и реализации в примере драйвера звука sysvad.
Параметры UnknownMiniport, UnknownAdapter и ResourceList соответствуют стандартным соглашениям о подсчете ссылок для объектов COM.
Требования
Требование | Ценность |
---|---|
заголовка | portcls.h |
IRQL | PASSIVE_LEVEL |