Функция DsUnquoteRdnValueA (dsparse.h)
Функция DsUnquoteRdnValue — это вызов клиента, который преобразует указанное значение RDN обратно в неquoted RDN-значение. Так как RDN изначально помещался в кавычки, так как он содержал символы, которые могут быть неправильно интерпретированы при внедрении в различающееся имя (DN), значение RDN не должно быть отправлено как часть DN в службу каталогов с помощью различных API, таких как LDAP.
Синтаксис
DSPARSE DWORD DsUnquoteRdnValueA(
[in] DWORD cQuotedRdnValueLength,
[in] LPCCH psQuotedRdnValue,
[in, out] DWORD *pcUnquotedRdnValueLength,
[out] LPCH psUnquotedRdnValue
);
Параметры
[in] cQuotedRdnValueLength
Количество символов в строке psQuotedRdn Value.
[in] psQuotedRdnValue
Значение RDN, которое может быть кавычек и экранировано.
[in, out] pcUnquotedRdnValueLength
Входное значение для этого аргумента — максимальная длина в символах psQuotedRdnValue.
Выходное значение для этого аргумента содержит следующие флаги.
ERROR_SUCCESS
Возвращается, если число символов соответствует строке, используемой в psQuotedRdnValue.
ERROR_BUFFER_OVERFLOW
Возвращается, если число символов не соответствует строке, используемой в psQuotedRdnValue.
[out] psUnquotedRdnValue
Преобразованное, неquoted значение RDN.
Возвращаемое значение
Следующий список содержит возможные значения, возвращаемые для функции DsUnquoteRdnValue.
Замечания
Если psQuotedRdnValue кавычек:
- Удаляются начальные и конечные кавычки.
- Пробел перед удалением первой кавычки.
- Пробел, завершающий последнюю кавычку, удаляется.
- Экраны удаляются, а символ после escape-файла сохраняется.
- В начале пробела удаляется.
- Конечная пробела хранится.
- Экранированные не специальные символы возвращают ошибку.
- Неискаченные специальные символы возвращают ошибку.
- Значения RDN, начинающиеся с # (игнорируя начальный пробел), обрабатываются как значение BER, которое ранее было преобразовано в строку и преобразуется соответствующим образом.
- Экранированные шестнадцатеричные цифры (\89) преобразуются в двоичный байт (0x89).
- Экраны удаляются из экранированных специальных символов.
- Экранированные специальные символы не отображаются.
- Входные и выходные значения RDN не являются значениями, завершающиеся null.
Заметка
Заголовок dsparse.h определяет DsUnquoteRdnValue как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows Vista |
минимальный поддерживаемый сервер | Windows Server 2008 |
целевая платформа | Виндоус |
заголовка | dsparse.h (include Ntdsapi.h) |
библиотеки |
Ntdsapi.lib |
DLL | Ntdsapi.dll |