Поделиться через


Метод 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

См. также

IPort

IMiniportWavePci::Init