| ||||
| ||||
Беру из сертификата серийный номер: s:=LPCSTR(pCert.pCertInfo.SerialNumber.pbData); for i:=1 to pCert.pCertInfo.SerialNumber.cbData do begin s1:=s1+IntToHex(ord(s[i]),2)+’ ’; end; Возвращается такой: 04 00 00 00 16 00 00 00 DC 39, в то время как он такой: 2e 78 fb 71 00 02 00 00 00 04. Подскажите почему так получается? Или я что-то не так делаю??? | ||||
Ответы: | ||||
| ||||
О... паскаль %) я считал вот так... создаю буфер в два раза больше + 1 байт под конец строки iLen := m_Blob.cbData * 2 + 1; И перевожу Classes.BinToHex( PChar( m_Blob.pbData ), pchResult, m_Blob.cbData ); Только он возвращает строку в обратной последовательности... потому либо менять символы местами либо написать аналог BinToHex но через downto | ||||
| ||||
большон спасибо помогло | ||||