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 接口。 适配器驱动程序通常在其设备启动例程中创建此对象,这是作系统调用启动设备的例程(请参阅启动序列)。 有关适配器对象的接口示例,请参阅 sysvad 音频驱动程序示例中的 CMiniportWaveRT::Init 定义和实现。

UnknownMiniport、UnknownAdapter 和 ResourceList 参数遵循 COM 对象的标准引用计数约定。

要求

要求 价值
标头 portcls.h
IRQL PASSIVE_LEVEL

另请参阅

IPort

IMiniportWavePci::Init