RxPrefixTableLookupName-Funktion (prefix.h)
RxPrefixTableLookupName einen Namen in einer Präfixtabelle nachschlagen, die zum Katalog SRV_CALL, NET_ROOT und V_NET_ROOT Namen verwendet wird, und konvertiert den zugrunde liegenden Zeiger in eine Struktur, die den Namen enthält.
Syntax
PVOID RxPrefixTableLookupName(
[in] IN PRX_PREFIX_TABLE ThisTable,
[in] IN PUNICODE_STRING CanonicalName,
[out] OUT PUNICODE_STRING RemainingName,
IN PRX_CONNECTION_ID ConnectionId
);
Parameter
[in] ThisTable
Ein Zeiger auf die RX_PREFIX_TABLE Struktur, in der gesucht werden soll.
[in] CanonicalName
Ein Zeiger auf den Unicode-Zeichenfolgennamen, der nachschlagen soll.
[out] RemainingName
Ein Zeiger auf den Unicode-Zeichenfolgennamen des Teils des Namens, der nicht übereinstimmend war.
ConnectionId
Ein optionaler Parameter, der einen Zeiger auf die zu verwendende RX_CONNECTION_ID darstellt.
Rückgabewert
RxPrefixTableLookupName gibt einen Zeiger auf den Knoten zurück, der gefunden wurde, wenn eine Übereinstimmung gefunden wurde. Wenn keine Übereinstimmung gefunden wird, gibt RxPrefixTableLookupName einen NULL- Zeiger zurück.
Bemerkungen
Diese Routine wird intern von RDBSS als Reaktion auf einen Aufruf von MUP verwendet, um einen Namen oder formular den Erstellungspfad für eine NET_ROOT- oder V_NET_ROOT-Struktur anzufordern. Die RxPrefixTableLookupName Routine kann auch von Netzwerk-Miniumleitungen verwendet werden, solange die entsprechende Sperre vor dem Zugriff auf die Tabelle abgerufen wird und die Sperre freigegeben wird, wenn die Arbeit abgeschlossen ist. Die normale Verwendung durch einen Treiber wäre wie folgt:
- Erwerben Sie eine freigegebene Sperre, indem Sie RxpAcquirePrefixTableLockSharedaufrufen.
- Nachschlagen eines Namens durch Aufrufen von RxPrefixTableLookupName.
- Lassen Sie die freigegebene Sperre los, indem Sie RxpReleasePrefixTableLockaufrufen.
Bei überprüften Builds bewirkt RxPrefixTableLookupName-, dass das System ASSERTION ausführt, wenn die Länge der CanonicalName Zeichenfolge nicht größer als 0 ist.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Desktop |
Header- | prefix.h (include Prefix.h) |
IRQL- | <= APC_LEVEL |
Siehe auch
RxpAcquirePrefixTableLockExclusive