25.10.2007 12:34:09Данные из Subject Ответов: 3
alien
Подскажите почему у меня выдается неполной первая строка сведений сертификата Subject(без первых четырех символов). Изменения размера буфера ничего не дают. Код запроса следующий:
hStore : HCERTSTORE;
pCertCon :PCCERT_CONTEXT;
sz : PChar;
szCommonName : PChar;

hStore := CertOpenSystemStore( 0, 'MY' );
pCertCon:=Nil;
pCertCon:=CertEnumCertificatesInStore(hStore, pCertCon);
CertGetNameString(pCertCon,
CERT_NAME_RDN_TYPE,//ищем атрибут
0,
@sz,//атрибут
@szCommonName, //буфер
1024);//размер буфера
ShowMessage(PChar(@sz));

Заранее спасибо.
 
Ответы:
25.10.2007 13:50:47Kirill Sobolev
4й параметр - входной DWORD, туда передается тип возвращаемой строки. А Вы его выводите, преобразовав к PChar - скорее всего там просто мусор какой-то.
25.10.2007 14:43:37alien
Ок. Спасибо. Подставил пятый, все выдается полностьб. Не понял, почему тогда там "мусор".
25.10.2007 15:50:04Kirill Sobolev
Это скорее вопрос к специалистам по работе компилятора Дельфи.