PGET_LOCATION_STRING回调函数 (ntddk.h)

PnpGetLocationString 例程提供设备的SPDRP_LOCATION_PATHS属性特定于设备的部分。

语法

PGET_LOCATION_STRING PgetLocationString;

NTSTATUS PgetLocationString(
  [in, out] PVOID Context,
  [out]     PZZWSTR *LocationStrings
)
{...}

参数

[in, out] Context

指向特定于接口的上下文信息的指针。 调用方传递作为 上下文PNP_LOCATION_INTERFACE 结构成员传递的值。

[out] LocationStrings

指向以 null 结尾的 Unicode 字符串序列的指针,该字符串由另一个零终止。 每个字符串用作设备的位置字符串。 驱动程序通常返回单个字符串。

返回值

例程返回一个 NTSTATUS 值来指示作的状态。

言论

PNP_LOCATION_INTERFACE 结构提供指向 PnpGetLocationString 例程的指针。

PnpGetLocationString 例程为设备提供特定于设备的位置字符串部分。 即插即用(PnP)管理器通过查询设备的驱动程序、设备的总线和任何父总线,以及将提供的字符串连接在一起来组装设备的位置字符串。

例程必须返回设备相对于其总线唯一的字符串。 对于跨作系统的所有版本的设备,字符串必须相同。 出于此目的选择字符串后,不得更改它。

按照约定,位置字符串采用 ServiceName(BusSpecificLocation)的形式。 例如,PCI 设备使用 PCI(XXYY),其中 XX 是设备编号,YY 是函数号。

PnpGetLocationString 例程调用例程,例如 ExAllocatePoolWithTag 来分配位置字符串的内存。 调用方负责调用 ExFreePool 例程,以便在不再需要位置字符串时释放 LocationStrings 指向的内存。

要求

要求 价值
最低支持的客户端 从 Windows Server 2003 开始可用。
目标平台 桌面
标头 ntddk.h (包括 Ntddk.h、 Ntifs.h)
IRQL <= PASSIVE_LEVEL

另请参阅

ExAllocatePoolWithTag

ExFreePool

PNP_LOCATION_INTERFACE