Delphi Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript

Delphi Examples

Bounced Mail
Character Encoding
Digital Certificates
Digital Signatures
Email
FTP
HTML-to-XML
HTTP
IMAP
Encryption
MHT / HTML Email
RSA Encryption
S/MIME
Socket
Spider
String
Tar
Upload
XML
XMP
Zip Compression

More Examples...
Byte Array
Email Object
POP3
SMTP
RSS
Atom
Self-Extractor
Service
PPMD
Deflate
DH Key Exchange
DSA

Unreleased...
Bzip2
LZW
Bz2
Icon

Type Conversion

 

Article: Understanding COM References in Delphi

Create PFX from PEM (Certificate and Private Key Files)

Create a PFX file from a pair of PEM files (the certificate PEM and private key PEM).

uses
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
    Dialogs, StdCtrls,
    CHILKATCERTIFICATELib_TLB,
    OleCtrls;

...

procedure TForm1.Button1Click(Sender: TObject);
var
success: Integer;
cert: TChilkatCert;
privkey: CHILKATCERTIFICATELib_TLB.IPrivateKey;
bMachineKeyset: Integer;
bForSigning: Integer;
keyCont: TKeyContainer;
bIncludeCertsInChain: Integer;

begin


cert := TChilkatCert.Create(Self);

success := cert.LoadFromFile('chilkat_cert.pem');
if (success <> 1) then
  begin
    ShowMessage(cert.LastErrorText);
    Exit;
  end;

privkey := TprivateKey.Create(Self).ControlInterface;
success := privkey.LoadPemFile('chilkat_pkey.pem');
if (success <> 1) then
  begin
    ShowMessage(privkey.LastErrorText);
    Exit;
  end;

//  Link the cert to the private key.
//  Use the current logged-on user's protected key store:
bMachineKeyset := 0;
//  If the private key is to be used for creating signatures,
//  set bForSigning = 1.  If the private key is to be
//  used for decrypting, set bForSigning = 0
bForSigning := 1;

//  Select an arbitrary key container name that is unique
//  to your application.  Make sure it exists:
keyCont := TKeyContainer.Create(Self);
//  The CreateContainer method will create the key container
//  if it does not already exist, otherwise it will open it.
//  (The key container is in the Windows protected store.)
success := keyCont.CreateContainer('myApp',bMachineKeyset);
if (success <> 1) then
  begin
    ShowMessage(keyCont.LastErrorText);
    Exit;
  end;

success := cert.LinkPrivateKey('myApp',bMachineKeyset,bForSigning);
if (success <> 1) then
  begin
    ShowMessage(cert.LastErrorText);
    Exit;
  end;

//  Now export to a PFX:
bIncludeCertsInChain := 0;
success := cert.ExportToPfxFile('chilkat2.pfx','myPassword',bIncludeCertsInChain);
if (success <> 1) then
  begin
    ShowMessage(cert.LastErrorText);
    Exit;
  end;

ShowMessage('PFX created!');


end;

 

Need a specific example? Send a request to support@chilkatsoft.com

© 2000-2007 Chilkat Software, Inc. All Rights Reserved.

Mail Component · .NET Email Component · XML Parser