Article View: pl.comp.lang.delphi
Article #334516Re: CAPICOM - gdzie wstawić PIN?
From: AbiX
Date: Fri, 30 Dec 2011 09:35
Date: Fri, 30 Dec 2011 09:35
54 lines
2629 bytes
2629 bytes
W dniu 2011-12-29 14:46, AbiX pisze:
> Witam.
> Mam taki kawałek kodu który tekst z memo powinien podpisać wybranym
> certyfikatem. Jednak przy wywołaniu Sing wypada błąd "Podana para kluczy
> nie istnieje". Grzebię po MSDN'ie już drugi dzień i nie mogę namierzyć
> jak podpisać dane certyfikatem kwalifikowanym.
>
> var
> store: TStore;
> signer: TSigner;
> sData: TSignedData;
> certificates: ICertificates2;
> certificate: ICertificate2;
> I: integer;
> begin
> store := TStore.Create(nil);
> store.Open(CAPICOM_CURRENT_USER_STORE, 'My',
> CAPICOM_STORE_OPEN_MAXIMUM_ALLOWED or
> CAPICOM_STORE_OPEN_INCLUDE_ARCHIVED or CAPICOM_STORE_OPEN_EXISTING_ONLY);
>
> certificates := (store.Certificates as ICertificates2).Select('Podpis
> danych', 'wybierz certyfikat', false);
> if certificates.Count=0 then
> begin
> Application.MessageBox('Nie znaleziono odpowiedniego certyfikatu.', '',
> MB_OK + MB_ICONWARNING);
> Exit;
> end;
> certificate:=IInterface(certificates.Item[1]) as ICertificate2;
> signer:=TSigner.Create(self);
> signer.Certificate:=Certificate;
>
> mmo1.Lines.Add('');
> mmo1.Lines.Add(certificate.SubjectName);
>
> sData:=TSignedData.Create(self);
> sData.Connect;
> sData.Content:=mmo1.Text;
> mmo1.Text:=sData.Sign(signer.DefaultInterface, true,
> CAPICOM_ENCODE_BASE64);
> sData.Disconnect;
> sData.Free;
> signer.Free;
> store.close();
> store.Free;
> end;
>
Temat nieaktualny. Napisałem w C# (dosłownie kilka linijek - masakra). A
z komunikatem "Podana para kluczy nie istnieje" okazało się że
certyfikat się źle zainstalował. Po ponownej, ręcznej instalacji
certyfikatu, pyta się już o PIN.
--
Pozdrawiam
AbiX
Technical Details
Message-ID:
<jdk0lp$fse$1@mx1.internetia.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!opal.futuro.pl!news.internetia.pl!not-for-mailReferences:
<jdhr16$gla$1@mx1.internetia.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!opal.futuro.pl!news.internetia.pl!not-for-mail From: AbiX <abix_usun_ten_tekst@poczta.del.fm> Newsgroups: pl.comp.lang.delphi Subject: Re: CAPICOM - gdzie wstawić PIN? Date: Fri, 30 Dec 2011 10:35:21 +0100 Organization: Netia S.A. Lines: 54 Message-ID: <jdk0lp$fse$1@mx1.internetia.pl> References: <jdhr16$gla$1@mx1.internetia.pl> NNTP-Posting-Host: 77.253.231.6 Mime-Version: 1.0 X-Trace: mx1.internetia.pl 1325237753 16270 77.253.231.6 (30 Dec 2011 09:35:53 GMT) X-Complaints-To: abuse@inetia.pl NNTP-Posting-Date: Fri, 30 Dec 2011 09:35:53 +0000 (UTC) In-Reply-To: <jdhr16$gla$1@mx1.internetia.pl> X-Tech-Contact: usenet@internetia.pl User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:8.0) Gecko/20111105 Thunderbird/8.0 X-Server-Info: http://www.internetia.pl/ Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit