CryptBinaryToStringW 函式 (wincrypt.h)
CryptBinaryToString 函式會將位元組數位轉換成格式化字串。
語法
BOOL CryptBinaryToStringW(
[in] const BYTE *pbBinary,
[in] DWORD cbBinary,
[in] DWORD dwFlags,
[out, optional] LPWSTR pszString,
[in, out] DWORD *pcchString
);
參數
[in] pbBinary
要轉換成字串之位元組陣列的指標。
[in] cbBinary
pbBinary 陣列中的項目數目。
[in] dwFlags
指定所產生格式化字串的格式。 此參數可以是下列其中一個值。
價值 | 意義 |
---|---|
|
Base64,具有憑證開頭和結尾標頭。 |
|
Base64,不含標頭。 |
|
純二進位複本。 |
|
Base64,具有要求開頭和結尾標頭。 |
|
僅限十六進位。 |
|
十六進位,ASCII 字元顯示。 |
|
Base64,X.509 CRL 開頭和結尾標頭。 |
|
十六進位,並顯示位址。 |
|
十六進位,並顯示 ASCII 字元和位址。 |
|
原始十六進位字串。
Windows Server 2003 和 Windows XP:不支援此值。 |
|
Base64,不含標頭,並以 “-” 和 “/” 取代為 “_” 取代,如 RFC 4648 第 5 節 5 中所定義。 |
|
強制嚴格譯碼 ASN.1 文字格式。 某些 ASN.1 二進位 BLOBS 可以將 BLOB 的前幾個位元組錯誤解譯為 Base64 文字。 在此情況下,會忽略其餘的文字。 使用此旗標來強制執行 BLOB 的完整譯碼。
Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP:不支援此值。 |
除了上述值之外,還可以指定下列一或多個值來修改函式的行為。
[out, optional] pszString
接收已轉換字串之緩衝區的指標。 若要計算必須設定以儲存傳回字串的字元數,請將此參數設定為 NULL。 函式會將必要的字元數放在pcchString
[in, out] pcchString
DWORD 變數的指標,其中包含 pszString 緩衝區 TCHARs 的大小。 如果
傳回值
如果函式成功,函式會傳回非零 (TRUE)。
如果函式失敗,則會傳回零 (FALSE)。
言論
除了使用 CRYPT_STRING_BINARY 編碼時,所有字串都會附加新的行序列。 根據預設,新行序列是CR/LF配對(0x0D/0x0A)。 如果 dwFlags 參數包含 CRYPT_STRING_NOCR 旗標,則新行序列是 LF 字元(0x0A)。 如果 dwFlags 參數包含 CRYPT_STRING_NOCRLF 旗標,則不會將新的行序列附加至字串。
注意
wincrypt.h 標頭會根據 UNICODE 預處理器常數的定義,將 CryptBinaryToString 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows XP [傳統型應用程式 |UWP 應用程式] |
支援的最低伺服器 | Windows Server 2003 [傳統型應用程式 |UWP 應用程式] |
目標平臺 | 窗戶 |
標頭 | wincrypt.h |
連結庫 | Crypt32.lib |
DLL | Crypt32.dll |