Freigeben über


RtlFindUnicodePrefix-Funktion (ntifs.h)

Die RtlFindUnicodePrefix-Routine sucht nach der besten Übereinstimmung für einen bestimmten Unicode-Dateinamen in einer Präfixtabelle.

Syntax

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

Parameter

[in] PrefixTable

Zeiger auf die Präfixtabelle. Die Tabelle muss durch Aufrufen von RtlInitializeUnicodePrefix initialisiert worden sein.

[in] FullName

Zeiger auf eine Unicode-Zeichenfolge, die den vollständigen Pfadnamen für eine Datei enthält.

[in] CaseInsensitiveIndex

Position in den Dateinamen- und Präfixzeichenfolgen, bei denen der Vergleich die Groß-/Kleinschreibung nicht berücksichtigen soll. Beim Zeichenfolgenvergleich wird die Groß-/Kleinschreibung für die ersten CaseInsensitiveIndex-Zeichen in jeder Zeichenfolge beachtet, wobei die Groß-/Kleinschreibung für den Rest der Zeichenfolge nicht beachtet wird.

Wert Bedeutung
0 Beim Zeichenfolgenvergleich wird die Groß-/Kleinschreibung nicht beachtet.
1..FullName.Length-1 Beim Zeichenfolgenvergleich wird bei Zeichen an den Positionen 0 bis CaseInsensitiveIndex-1 die Groß-/Kleinschreibung beachtet, bei Zeichen von der Position CaseInsensitiveIndex bis zum Ende der Zeichenfolge wird die Groß-/Kleinschreibung nicht beachtet.
FullName.Length Beim Zeichenfolgenvergleich wird die Groß-/Kleinschreibung beachtet.

Rückgabewert

RtlFindUnicodePrefix gibt einen Zeiger auf das längste richtige Präfix zurück, das für die angegebene Zeichenfolge unter FullName gefunden wurde. Wenn kein übereinstimmende Präfix gefunden wird, gibt RtlFindUnicodePrefixNULL zurück.

Hinweise

Jeder Präfixeintrag in der Tabelle ist ein Pfadname relativ zum Stammverzeichnis eines Dateisystemvolumes. Um wohlgeformt zu sein, muss das Präfix mit einem einzelnen umgekehrten Schrägstrich () beginnen.

Wenn ein übereinstimmende Präfix gefunden wird, glich RtlFindUnicodePrefix die Wiedergabestruktur der Präfixtabelle aus.

Dateisysteme müssen RtlInitializeUnicodePrefix aufrufen, um die Präfixtabelle zu initialisieren, bevor eine andere Rtl.-Datei verwendet wird. UnicodePrefix-Routinen darauf. Die initialisierte Präfixtabellenstruktur sollte als undurchsichtig angesehen werden.

Anrufer der Rtl.. UnicodePrefix-Routinen sind für die Synchronisierung des Zugriffs auf die Präfixtabelle verantwortlich. Ein schneller Mutex ist der effizienteste Synchronisierungsmechanismus, der für diesen Zweck verwendet werden kann.

Informationen zu anderen Zeichenfolgenverarbeitungsroutinen finden Sie unter Laufzeitbibliotheksroutinen (RTL).

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP
Unterstützte Mindestversion (Server) Windows Server 2003
Zielplattform Universell
Header ntifs.h (include Ntifs.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

Weitere Informationen

RtlInitializeUnicodePrefix

RtlInsertUnicodePrefix

RtlNextUnicodePrefix

RtlRemoveUnicodePrefix

UNICODE_STRING