Функция RtlConvertSidToUnicodeString (ntifs.h)
Подпрограмма RtlConvertSidToUnicodeString создает печатаемое строковое представление идентификатора безопасности (SID) в Юникоде.
Синтаксис
NTSYSAPI NTSTATUS RtlConvertSidToUnicodeString(
[in, out] PUNICODE_STRING UnicodeString,
[in] PSID Sid,
[in] BOOLEAN AllocateDestinationString
);
Параметры
[in, out] UnicodeString
Указатель на UNICODE_STRING структуру, содержащую созданную строку Юникода. Элемент UnicodeString-MaximumLength> задается, только если свойство AllocateDestinationString имеет значение TRUE.
[in] Sid
Указатель на структуру SID, которая должна быть преобразована в Юникод (структура SID не затрагивается).
[in] AllocateDestinationString
Логический флаг, указывающий, будет ли эта подпрограмма выделять буфер ЮникодString. Если значение РАВНО TRUE, то выделяется только член UnicodeString-Buffer>, а остальная часть структуры UnicodeString должна быть выделена вызывающим объектом.
Возвращаемое значение
Подпрограмма RtlConvertSidToUnicodeString может возвращать одно из следующих значений:
Код возврата | Описание |
---|---|
|
Преобразование прошло успешно. |
|
Возвращается, если параметр AllocateDestinationString имеет значение FALSE , а буфер UnicodeString , предоставленный вызывающим объектом, слишком мал для хранения преобразованной строки Юникода. |
|
Возвращается, если свойство AllocateDestinationString имеет значение TRUE и для выделения буфера ЮникодString недостаточно памяти. |
|
Указанная структура SID не является структурно допустимой. |
Комментарии
Созданная строка Юникода будет принимать одну из двух форм. Если значение элемента IdentifierAuthority sid меньше или равно 2^32, элемент IdentifierAuthority будет создан как десятичный. Например, идентификатор SID с идентификатором IdentifierAuthority 281 736 создает:
S-1-281736-12-72-9-110
В противном случае значение IdentifierAuthority будет создано как шестнадцатеричное. Например, идентификатор SID с идентификатором IdentifierAuthority 173 495 281 736 создает:
S-1-0x28651FE848-12-72-9-110
Все остальные элементы в sid будут созданы как десятичные.
Если свойство AllocateDestinationString имеет значение TRUE, выделенный буфер должен быть освобожден с помощью RtlFreeUnicodeString.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 |
Целевая платформа | Универсальное |
Верхняя часть | ntifs.h (включая Ntifs.h, FltKernel.h) |
Библиотека | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по