Функция CryptStringToBinaryW (wincrypt.h)
Функция CryptStringToBinary преобразует форматированную строку в массив байтов.
Синтаксис
BOOL CryptStringToBinaryW(
[in] LPCWSTR pszString,
[in] DWORD cchString,
[in] DWORD dwFlags,
[in] BYTE *pbBinary,
[in, out] DWORD *pcbBinary,
[out] DWORD *pdwSkip,
[out] DWORD *pdwFlags
);
Параметры
[in] pszString
Указатель на строку, содержащую форматированную строку для преобразования.
[in] cchString
Число символов преобразованной строки, не включая завершающий null символа. Если этот параметр равен нулю, pszString считается строкой, завершаемой значением NULL.
[in] dwFlags
Указывает формат строки для преобразования. Это может быть одно из следующих значений.
[in] pbBinary
Указатель на буфер, получающий возвращаемую последовательность байтов. Если этот параметр значение NULL, функция вычисляет длину необходимого буфера и возвращает размер требуемой памяти в DWORD, на которую указывает pcbBinary.
[in, out] pcbBinary
Указатель на переменную DWORD
Если pbBinaryNULL, DWORD, на который указывает pcbBinary, игнорируется.
[out] pdwSkip
Указатель на значение DWORD, которое получает количество символов, пропущенных для достижения начала заголовка -----BEGIN ...-----
.
Если заголовок отсутствует, DWORD имеет значение нулю.
Этот параметр является необязательным и может быть null, если он не нужен.
[out] pdwFlags
Указатель на значение DWORD, которое получает флаги, фактически используемые в преобразовании. Эти же флаги используются для параметра dwFlags. Во многих случаях это будут те же флаги, которые были переданы в параметре dwFlags. Если dwFlags содержит один из следующих флагов, это значение получит флаг, указывающий фактический формат строки. Этот параметр является необязательным и может быть null, если он не нужен.
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение ненулевое (TRUE).
Если функция завершается ошибкой, возвращаемое значение равно нулю (FALSE).
Замечания
Флаги CRYPT_STRING_BASE64HEADER, CRYPT_STRING_BASE64REQUESTHEADERи CRYPT_STRING_BASE64X509CRLHEADER обрабатываются одинаково этой функцией: они пытаются проанализировать первый блок данных в кодировке Base64 между строками формы -----BEGIN ...-----
и -----END ...-----
.
...
части игнорируются, и они не должны соответствовать.
Если синтаксический анализ выполнен успешно, значение, переданное в параметре dwFlags
Заметка
Заголовок wincrypt.h определяет CryptStringToBinary как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows XP [классические приложения | Приложения UWP] |
минимальный поддерживаемый сервер | Windows Server 2003 [классические приложения | Приложения UWP] |
целевая платформа | Виндоус |
заголовка | wincrypt.h |
библиотеки |
Crypt32.lib |
DLL | Crypt32.dll |