PFN_WSK_GET_ADDRESS_INFO回调函数 (wsk.h)
WskGetAddressInfo 函数执行与协议无关的主机名到传输地址的转换。
语法
PFN_WSK_GET_ADDRESS_INFO PfnWskGetAddressInfo;
NTSTATUS PfnWskGetAddressInfo(
[in] PWSK_CLIENT Client,
[in, optional] PUNICODE_STRING NodeName,
[in, optional] PUNICODE_STRING ServiceName,
[in, optional] ULONG NameSpace,
[in, optional] GUID *Provider,
[in, optional] PADDRINFOEXW Hints,
[out] PADDRINFOEXW *Result,
[in, optional] PEPROCESS OwningProcess,
[in, optional] PETHREAD OwningThread,
[in, out] PIRP Irp
)
{...}
参数
[in] Client
[in]指向通过 的 WskProviderNpi 参数返回的WSK_CLIENT结构的指针 WskCaptureProviderNPI 函数。
[in, optional] NodeName
[in]指向 UNICODE_STRING 结构的可选指针,该结构包含一个 Unicode 字符串,该字符串表示主机 (节点) 名称或数字主机地址字符串。 对于 Internet 协议,数字主机地址字符串是点十进制 IPv4 地址或 IPv6 十六进制地址。
[in, optional] ServiceName
[in]指向 UNICODE_STRING 结构的可选指针,该结构包含表示服务名称或端口号的 Unicode 字符串。
[in, optional] NameSpace
[in]一个可选的命名空间标识符,用于指定查询的命名空间提供程序。 只能成功查询支持指定命名空间的命名空间提供程序。
[in, optional] Provider
[in]指向要查询的特定命名空间提供程序 GUID 的可选指针。
[in, optional] Hints
[in]指向 ADDRINFOEXW 结构的可选指针,该结构提供有关调用方支持的套接字类型的提示。
ADDRINFOEXW 结构在 Ws2def.h 标头中定义。 它与
addrinfoex 结构。
[out] Result
[out]指向调用方分配的缓冲区的指针,该缓冲区接收表示有关主机的响应信息的一个或多个 ADDRINFOEXW 结构的链接列表。
[in, optional] OwningProcess
[in]指向函数从中检索安全上下文的进程的可选指针。 此安全上下文指示函数在其中处理名称解析请求的用户帐户上下文。
如果此参数为 NULL,则函数在预定义本地帐户的上下文中以最小特权处理名称解析请求。
如果此参数不是 NULL ,并且模拟令牌对调用线程有效,则此函数将失败并返回STATUS_INVALID_PARAMETER。
[in, optional] OwningThread
[in]指向函数从中检索安全上下文的线程的可选指针。 仅当 OwningProcess 为非 NULL 时,此参数才能为非 NULL。 否则,此函数将失败并返回STATUS_INVALID_PARAMETER。
如果此参数不是 NULL ,并且模拟令牌对调用线程有效,则此函数将失败并返回STATUS_INVALID_PARAMETER。
[in, out] Irp
[in/out]指向 I/O 请求数据包的指针 (IRP) 用于异步完成请求。 请求完成后, Irp ->Iostatus.Information 将保存返回的状态代码。
返回值
WskGetAddressInfo 返回以下 NTSTATUS 代码之一:
返回代码 | 说明 |
---|---|
|
指定的参数无效。 |
|
无法解析主机名。 |
|
函数已成功完成。 如果 WSK 应用程序在 中指定了指向 IRP 的指针 Irp 参数,IRP 将以成功状态完成。 |
|
WSK 子系统无法立即完成函数。 WSK 子系统将在完成控制操作后完成 IRP。 控制操作的状态将在 IRP 的 IoStatus.Status 字段中返回。 |
|
出现了错误。 IRP 将以失败状态完成。 |
注解
OwningProcess 参数指向的进程或 OwningThread 进程指向的线程指示此函数的安全上下文。 由安全上下文指示的用户帐户指示函数的名称解析请求的上下文。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 适用于 Windows 7 及更高版本的 Windows 操作系统。 |
目标平台 | 通用 |
标头 | wsk.h (包括 Wsk.h) |
IRQL | PASSIVE_LEVEL |