CryptBinaryToStringA-Funktion (wincrypt.h)
Die CryptBinaryToString--Funktion konvertiert ein Bytearray in eine formatierte Zeichenfolge.
Syntax
BOOL CryptBinaryToStringA(
[in] const BYTE *pbBinary,
[in] DWORD cbBinary,
[in] DWORD dwFlags,
[out, optional] LPSTR pszString,
[in, out] DWORD *pcchString
);
Parameter
[in] pbBinary
Ein Zeiger auf das Array von Bytes, die in eine Zeichenfolge konvertiert werden sollen.
[in] cbBinary
Die Anzahl der Elemente im pbBinary Array.
[in] dwFlags
Gibt das Format der resultierenden formatierten Zeichenfolge an. Dieser Parameter kann einer der folgenden Werte sein:
Wert | Bedeutung |
---|---|
|
Base64, mit Zertifikatanfangs- und Endheadern. |
|
Base64, ohne Kopfzeilen. |
|
Reine binäre Kopie. |
|
Base64 mit Anforderungsanfangs- und Endheadern. |
|
Nur hexadezimal. |
|
Hexadezimal, mit ASCII- Zeichenanzeige. |
|
Base64 mit X.509 CRL-Anfangs- und Endheader. |
|
Hexadezimal, mit Adressanzeige. |
|
Hexadezimal, mit ASCII-Zeichen und Adressanzeige. |
|
Eine unformatierte hexadezimale Zeichenfolge.
Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Base64 ohne Kopfzeilen, wobei "+" durch "-" und "/" ersetzt wird, wie in RFC 4648 Abschnitt 5 definiert. |
|
Erzwingen Sie die strikte Decodierung von ASN.1-Textformaten. Einige ASN.1-Binär-BLOBS können die ersten Bytes des BLOB falsch als Base64-Text interpretiert haben. In diesem Fall wird der Rest des Texts ignoriert. Verwenden Sie dieses Flag, um die vollständige Decodierung des BLOB zu erzwingen.
Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
Zusätzlich zu den obigen Werten kann mindestens ein der folgenden Werte angegeben werden, um das Verhalten der Funktion zu ändern.
[out, optional] pszString
Ein Zeiger auf einen Puffer, der die konvertierte Zeichenfolge empfängt. Um die Anzahl der Zeichen zu berechnen, die der zurückgegebenen Zeichenfolge zugeordnet werden müssen, legen Sie diesen Parameter auf NULL-fest. Die Funktion platziert die erforderliche Anzahl von Zeichen, einschließlich des endenden NULL- Zeichens, in dem Wert, auf den pcchStringverweist.
[in, out] pcchString
Ein Zeiger auf eine DWORD- Variable, die die Größe des pszString- Puffers in TCHAR-enthält. Wenn pszStringNULL-ist, berechnet die Funktion die Länge der Rückgabezeichenfolge (einschließlich des endenden Nullzeichens) in TCHAR-und gibt sie in diesem Parameter zurück. Wenn pszString- nicht NULL- und groß genug ist, konvertiert die Funktion die Binärdaten in ein angegebenes Zeichenfolgenformat, einschließlich des endenden Nullzeichens, aber pcchString erhält die Länge in TCHARs, nicht einschließlich des endenden Nullzeichens.
Rückgabewert
Wenn die Funktion erfolgreich ist, gibt die Funktion nonzero (TRUE) zurück.
Wenn die Funktion fehlschlägt, wird null (FALSE) zurückgegeben.
Bemerkungen
Abgesehen davon, wann CRYPT_STRING_BINARY Codierung verwendet wird, werden alle Zeichenfolgen mit einer neuen Zeilensequenz angefügt. Standardmäßig ist die neue Linienfolge ein CR/LF-Paar (0x0D/0x0A). Wenn der dwFlags Parameter das CRYPT_STRING_NOCR Flag enthält, ist die neue Zeilensequenz ein LF-Zeichen (0x0A). Wenn der dwFlags Parameter das CRYPT_STRING_NOCRLF Flag enthält, wird an die Zeichenfolge keine neue Zeilenfolge angefügt.
Anmerkung
Der wincrypt.h-Header definiert CryptBinaryToString als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows XP [Desktop-Apps | UWP-Apps] |
mindestens unterstützte Server- | Windows Server 2003 [Desktop-Apps | UWP-Apps] |
Zielplattform- | Fenster |
Header- | wincrypt.h |
Library | Crypt32.lib |
DLL- | Crypt32.dll |