Поделиться через


Функция RtlFindUnicodePrefix (ntifs.h)

Подпрограмма RtlFindUnicodePrefix ищет лучшее соответствие заданному имени файла Юникода в таблице префикса.

Синтаксис

NTSYSAPI PUNICODE_PREFIX_TABLE_ENTRY RtlFindUnicodePrefix(
  [in] PUNICODE_PREFIX_TABLE PrefixTable,
  [in] PCUNICODE_STRING      FullName,
  [in] ULONG                 CaseInsensitiveIndex
);

Параметры

[in] PrefixTable

Указатель на таблицу префикса. Таблица должна быть инициализирована путем вызова RtlInitializeUnicodePrefix.

[in] FullName

Указатель на строку Юникода, содержащую полное имя пути для файла.

[in] CaseInsensitiveIndex

Позиция в имени файла и строках префикса, в которых сравнение не учитывает регистр. Сравнение строк учитывает регистр для первых CaseInsensitiveIndex символов в каждой строке без учета регистра для остальной части строки.

Ценность Значение
0 Сравнение строк не учитывает регистр.
1..FullName.Length-1 Сравнение строк учитывает регистр для символов в позициях 0 до CaseInsensitiveIndex-1, без учета регистра для символов от позиции CaseInsensitiveIndex до конца строки.
FullName.Length Сравнение строк учитывает регистр.

Возвращаемое значение

RtlFindUnicodePrefix возвращает указатель на самый длинный правильный префикс, найденный для заданной строки в FullName. Если префикс сопоставления не найден, RtlFindUnicodePrefix возвращает NULL.

Замечания

Каждая запись префикса в таблице — это имя пути относительно корневого каталога тома файловой системы. Чтобы быть хорошо сформированным, префикс должен начинаться с одной обратной косой черты ().

При поиске соответствующего префикса RtlFindUnicodePrefix перебалансирует дерево воспроизведения таблицы префикса.

Файловые системы должны вызывать RtlInitializeUnicodePrefix, чтобы инициализировать таблицу префикса перед использованием любой другой Rtl.. Подпрограммы ЮникодаPrefix на нем. Инициализированная структура таблицы префикса должна считаться непрозрачной.

Вызывающие Rtl.. Подпрограммы ЮникодаPrefix отвечают за синхронизацию доступа к таблице префикса. Быстрый мьютекс — это наиболее эффективный механизм синхронизации, используемый для этой цели.

Дополнительные сведения о других подпрограммах обработки строк см. в Run-Time подпрограммах библиотеки (RTL).

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows XP
минимальный поддерживаемый сервер Windows Server 2003
целевая платформа Всеобщий
заголовка ntifs.h (include Ntifs.h)
библиотеки NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

См. также

RtlInitializeUnicodePrefix

RtlInsertUnicodePrefix

RtlNextUnicodePrefix

RtlRemoveUnicodePrefix

UNICODE_STRING