Delphi Examples

ChilkatHOMEAndroid™ASPVisual BasicVB.NETC#iOS (IPhone)Objective-CC++CUnicode C++Unicode CMFCDelphi DLLDelphi ActiveXFoxProJavaPerlPHP ExtensionPHP ActiveXPythonPowerShellRubySQL ServerVBScript

Delphi Examples

Bounced Mail
Bz2
Character Encoding
CSV
DKIM / DomainKey
Digital Certificates
Digital Signatures
DH Key Exchange
DSA
Email
Email Object
FTP
HTML Conversion
HTTP
IMAP
Encryption
MHT / HTML Email
NTLM
POP3
RSA
S/MIME
SMTP
Socket
Spider
SFTP
SSH
SSH Key
SSH Tunnel
String
Tar
Upload
XML
XMP
Zip Compression

More Examples...
Amazon S3
Byte Array
FileAccess
RSS
Atom
Self-Extractor
Service
PPMD
Deflate
Bzip2
LZW

Type Conversion

 

Article: Understanding COM References in Delphi

Save an Email Attachment using a Specific Filename

Download Chilkat Email ActiveX

Download 32-bit Chilkat IMAP ActiveX (.msi)

Download All 32-bit Chilkat ActiveX Components (.zip)

Download All 64-bit Chilkat ActiveX Components (.zip)

Demonstrates how to save an email attachment using a specific filename, regardless of the filename in the email.

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

...

procedure TForm1.Button1Click(Sender: TObject);
var
mailman: TChilkatMailMan2;
imap: TChilkatImap;
email: CHILKATIMAPLib_TLB.IChilkatEmail2;
success: Integer;
i: Integer;

begin
//  Create a MailMan or Imap object first for the purpose
//  of unlocking the component. (Only one is necessary)
mailman := TChilkatMailMan2.Create(Self);
mailman.UnlockComponent('anything for 30-day trial');
imap := TChilkatImap.Create(Self);
imap.UnlockComponent('anything for 30-day trial');

email := CoChilkatEmail2.Create();

//  Load an email object containing attachments.
//  This .eml can be downloaded from:
//  http://www.example-code.com/testData/HtmlEmail.eml

success := email.LoadEml('HtmlEmail.eml');
if (success <> 1) then
  begin
    ShowMessage(email.LastErrorText);

  end;

//  List the attachment filenames:
//  This email has two attachments: logo.jpg and faxCover.doc

for i := 0 to email.NumAttachments - 1 do
  begin
    Memo1.Lines.Add(email.GetAttachmentFilename(i));
  end;

//  Let's say we want to save the 1st attachment as "pic.jpg",
//  and the 2nd attachment as "cover.doc".
//  Call SetAttachmentFilename for both:
email.SetAttachmentFilename(0,'pic.jpg');
email.SetAttachmentFilename(1,'cover.doc');

//  The SaveAttachedFile method allows you to specify the directory
//  where the attachment is saved.  To save to the current working
//  directory, pass a "." for the directory path.  This code
//  saves each attachment to the current working directory:
email.SaveAttachedFile(0,'.');
email.SaveAttachedFile(1,'.');

//  Alternatively, we could save all the attachments in a single
//  call.  The argument to SaveAllAttachments is the directory
//  path.  In this case, the filenames set by SetAttachmentFilename
//  are used:
email.SaveAllAttachments('myAttachments');

ShowMessage('Finished!');

end;

 

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