RtlConvertSidToUnicodeString-Funktion (ntifs.h)
Die RtlConvertSidToUnicodeString Routine generiert eine druckbare Unicode-Zeichenfolgendarstellung eines Sicherheitsbezeichners (SID).
Syntax
NTSYSAPI NTSTATUS RtlConvertSidToUnicodeString(
[in, out] PUNICODE_STRING UnicodeString,
[in] PSID Sid,
[in] BOOLEAN AllocateDestinationString
);
Parameter
[in, out] UnicodeString
Ein Zeiger auf eine UNICODE_STRING Struktur, die die generierte Unicode-Zeichenfolge enthält. Das UnicodeString->MaximumLength Member wird nur festgelegt, wenn AllocateDestinationStringTRUEist.
[in] Sid
Ein Zeiger auf die SID-Struktur, die in Unicode konvertiert werden soll (die SID-Struktur ist nicht betroffen).
[in] AllocateDestinationString
Ein boolesches Flag, das angibt, ob diese Routine den UnicodeString-Puffer zuweist. Wenn TRUE-, muss vom Aufrufer nur das UnicodeString->Buffer--Element zugewiesen werden, und der Rest der UnicodeString--Struktur muss vom Aufrufer zugewiesen werden.
Rückgabewert
Die RtlConvertSidToUnicodeString Routine kann einen der folgenden Werte zurückgeben:
Rückgabecode | Beschreibung |
---|---|
|
Die Konvertierung war erfolgreich. |
|
Dies wird zurückgegeben, wenn "AllocateDestinationString"-FALSE- ist und der vom Aufrufer bereitgestellte UnicodeString- Puffer zu klein ist, um die konvertierte Unicode-Zeichenfolge aufzunehmen. |
|
Dies wird zurückgegeben, wenn AllocateDestinationString-TRUE- ist und nicht genügend Arbeitsspeicher vorhanden ist, um den UnicodeString- Puffer zuzuweisen. |
|
Die angegebene SID- Struktur ist nicht strukturell gültig. |
Bemerkungen
Die generierte Unicode-Zeichenfolge verwendet eine von zwei Formen. Wenn der Wert des IdentifierAuthority-Members der SID- kleiner oder gleich 2^32 ist, wird der IdentifierAuthority-Member als Dezimalwert generiert. Eine SID- beispielsweise mit einer IdAuthority von 281.736 generiert:
S-1-281736-12-72-9-110
Andernfalls wird die IdentifierAuthority als hexadezimal generiert. Beispielsweise generiert eine SID- mit einer IdAuthority von 173.495.281.736:
S-1-0x28651FE848-12-72-9-110
Alle anderen Elemente in der SID- werden als Dezimalstellen generiert.
Wenn AllocateDestinationStringTRUEist, muss der zugeordnete Puffer mithilfe RtlFreeUnicodeString-zugeordnet werden.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 2000 |
Zielplattform- | Universal |
Header- | ntifs.h (einschließlich Ntifs.h, FltKernel.h) |
Library | NtosKrnl.lib |
DLL- | NtosKrnl.exe |
IRQL- | <= APC_LEVEL |