nyj has asked for the wisdom of the Perl Monks concerning the following question:

Hi, does anyone have some example code on how to write and send an email from a perl script on windows? I'm using ActiveState on XP Pro

Replies are listed 'Best First'.
Re: sending email on windows
by Corion (Patriarch) on Jul 20, 2010 at 12:40 UTC
Re: sending email on windows
by the_hawk_1 (Scribe) on Jul 20, 2010 at 15:07 UTC
    Here is the way we are dealing with emails and attachemets. We are using ActivePerl on windows XP Pro.
    sub sendemail { our $file; use Mail::Sendmail; use MIME::QuotedPrint; use MIME::Base64; my %mail = (smtp => 'smtp-int', To => 'foo@bar.com, foo2@bar.com', Cc => '', From => 'no-reply@foobar.com>', Subject => 'Email subject' ); my $boundary = "====" . time() . "===="; $mail{'content-type'} = "multipart/mixed; boundary=\"$boundary\""; my $message = encode_qp( "Email body. Also use to be called messag +e." ); open (F, $file) or die "Cannot read $file: $!"; binmode F; undef $/; $mail{body} = encode_base64(<F>); close F; $boundary = '--'.$boundary; $mail{body} = <<END_OF_BODY; $boundary Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable $message $boundary Content-Type: application/octet-stream; name="$file" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="$file" $mail{body} $boundary-- END_OF_BODY sendmail(%mail) or die $Mail::Sendmail::error; }
    Hope this can help you...
    The_Hawk_1 - an ignorant monk to be...
      Thanks very much Hawk, that's great!