Perl Requires Chilkat v9.5.0.63+
Chilkat2 Perl
Add Email Attachment from FTP
Downloads (into memory) a file from an FTP server and adds it as an attachment to an email.Chilkat Perl Downloads
use strict;
use warnings;
use Chilkat2;
# This example assumes Chilkat Ftp2 to have been previously unlocked.
# See Unlock Ftp2 for sample code.
my $ftp = Chilkat2::Ftp2->new;
$ftp->Hostname('www.my-ftp-server.com');
$ftp->Username('mFtpLogin');
$ftp->Password('myFtpPassword');
# Connect to the FTP server.
my $success = $ftp->ConnectOnly();
if (!$success) {
print $ftp->LastErrorText, "\n";
exit;
}
# Authenticate with the FTP server.
$success = $ftp->LoginAfterConnectOnly();
if (!$success) {
print $ftp->LastErrorText, "\n";
exit;
}
# Move to the remove directory where our file is located.
$success = $ftp->ChangeRemoteDir('qa_data');
if ($success) {
$success = $ftp->ChangeRemoteDir('pdf');
}
if (!$success) {
print $ftp->LastErrorText, "\n";
exit;
}
# Download...
my $pdfData = Chilkat2::BinData->new;
$success = $ftp->GetFileBd('fishing.pdf', $pdfData);
if (!$success) {
print $ftp->LastErrorText, "\n";
exit;
}
$ftp->Disconnect();
# Create an email object, and add the PDF as an attachment.
my $email = Chilkat2::Email->new;
$email->Subject('Test with PDF attachment.');
$email->Body('This is a plain-text body..');
# Add the PDF attachment.
$success = $email->AddAttachmentBd('fishing.pdf', $pdfData, 'application/pdf');
if (!$success) {
print $email->LastErrorText, "\n";
exit;
}
# Save the email and examine with a text editor to see the PDF attachment is present..
$email->SaveEml('qa_output/out.eml');
print "Success.\n";