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 |