Función CryptBinaryToStringA (wincrypt.h)
La función CryptBinaryToString convierte una matriz de bytes en una cadena con formato.
Sintaxis
BOOL CryptBinaryToStringA(
[in] const BYTE *pbBinary,
[in] DWORD cbBinary,
[in] DWORD dwFlags,
[out, optional] LPSTR pszString,
[in, out] DWORD *pcchString
);
Parámetros
[in] pbBinary
Puntero a la matriz de bytes que se va a convertir en una cadena.
[in] cbBinary
Número de elementos de la matriz pbBinary .
[in] dwFlags
Especifica el formato de la cadena con formato resultante. Este parámetro puede ser uno de los valores siguientes.
Valor | Significado |
---|---|
|
Base64, con encabezados iniciales y finales del certificado. |
|
Base64, sin encabezados. |
|
Copia binaria pura. |
|
Base64, con encabezados iniciales y finales de solicitud. |
|
Solo hexadecimal. |
|
Hexadecimal, con pantalla de caracteres ASCII. |
|
Base64, con encabezados iniciales y finales X.509 CRL. |
|
Hexadecimal, con visualización de direcciones. |
|
Hexadecimal, con caracteres ASCII y visualización de direcciones. |
|
Cadena hexadecimal sin formato.
Windows Server 2003 y Windows XP: Este valor no se admite. |
|
Base64, sin encabezados, con "+" reemplazado por "-" y "/" reemplazado por "_", tal y como se define en la sección 5 de RFC 4648. |
|
Aplicar la descodificación estricta de formatos de texto ASN.1. Algunos BLOBS binarios ASN.1 pueden tener los primeros bytes del BLOB interpretados incorrectamente como texto base64. En este caso, se omite el resto del texto. Use esta marca para aplicar la descodificación completa del BLOB.
Windows Server 2008, Windows Vista, Windows Server 2003 y Windows XP: Este valor no se admite. |
Además de los valores anteriores, se puede especificar uno o varios de los valores siguientes para modificar el comportamiento de la función.
[out, optional] pszString
Puntero a un búfer que recibe la cadena convertida. Para calcular el número de caracteres que se deben asignar para contener la cadena devuelta, establezca este parámetro en NULL. La función colocará el número necesario de caracteres, incluido el carácter NULL de terminación, en el valor al que apunta pcchString.
[in, out] pcchString
Puntero a una variable DWORD que contiene el tamaño, en TCHARs, del búfer pszString . Si pszString es NULL, la función calcula la longitud de la cadena de retorno (incluido el carácter nulo de terminación) en TCHARs y la devuelve en este parámetro. Si pszString no es NULL y lo suficientemente grande, la función convierte los datos binarios en un formato de cadena especificado, incluido el carácter nulo de terminación, pero pcchString recibe la longitud en TCHARs, no incluido el carácter nulo de terminación.
Valor devuelto
Si la función se ejecuta correctamente, la función devuelve un valor distinto de cero (TRUE).
Si se produce un error en la función, devuelve cero (FALSE).
Comentarios
A excepción de cuando se usa CRYPT_STRING_BINARY codificación, todas las cadenas se anexan con una nueva secuencia de líneas. De forma predeterminada, la nueva secuencia de líneas es un par CR/LF (0x0D/0x0A). Si el parámetro dwFlags contiene la marca CRYPT_STRING_NOCR , la nueva secuencia de líneas es un carácter LF (0x0A). Si el parámetro dwFlags contiene la marca CRYPT_STRING_NOCRLF , no se anexa ninguna secuencia de línea nueva a la cadena.
Nota
El encabezado wincrypt.h define CryptBinaryToString como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows XP [aplicaciones de escritorio | aplicaciones para UWP] |
Servidor mínimo compatible | Windows Server 2003 [aplicaciones de escritorio | aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | wincrypt.h |
Library | Crypt32.lib |
Archivo DLL | Crypt32.dll |