rtlHashUnicodeString 函数 (wdm.h)

RtlHashUnicodeString 例程根据给定的 Unicode 字符串和哈希算法创建哈希值。

语法

NTSYSAPI NTSTATUS RtlHashUnicodeString(
  [in]  PCUNICODE_STRING String,
  [in]  BOOLEAN          CaseInSensitive,
  [in]  ULONG            HashAlgorithm,
  [out] PULONG           HashValue
);

参数

[in] String

指向 UNICODE_STRING 结构的指针,该结构包含要转换为哈希值的 Unicode 字符串。

[in] CaseInSensitive

指定在计算哈希值时是否将 Unicode 字符串视为区分大小写。 如果 CaseInSensitiveTRUE,则小写和大写字符串哈希为同一值。

[in] HashAlgorithm

要使用的哈希算法。 如果 hashAlgorithm 是HASH_STRING_ALGORITHM_X65599, 则 RtlHashUnicodeString 使用 x65599 哈希算法。 如果 hashAlgorithm HASH_STRING_ALGORITHM_DEFAULT, 则 RtlHashUnicodeString 将使用默认算法。 目前,默认算法是 x65599 哈希算法。

[out] HashValue

指向接收哈希值的 ULONG 变量的指针。

返回值

RtlHashUnicodeString 在成功时返回STATUS_SUCCESS,或在失败时返回相应的 NTSTATUS 值。 如果 Unicode 字符串为 NULLHashValueNULL,或者调用方为 HashAlgorithm 指定了未定义的值,则例程将返回一个STATUS_INVALID_PARAMETER值。

要求

要求
最低受支持的客户端 在 Windows XP 和更高版本的 Windows 中可用。
目标平台 通用
标头 wdm.h(包括 Wdm.h、Ntddk.h、Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

另请参阅

UNICODE_STRING