use Mail::Sender; eval { (new Mail::Sender {on_errors => 'die'}) ->OpenMultipart({smtp=> 'jenda.krynicky.cz', to => 'jenda@krynicky.cz', subject => 'Mail::Sender.pm - new version' }) ->Body({ msg => <<'*END*' }) Here is a new module Mail::Sender. blah blah blah ... *END* ->Attach({ description => 'Perl module Mail::Sender.pm', ctype => 'application/x-zip-encoded', encoding => 'Base64', disposition => 'attachment', file => 'W:\jenda\packages\Mail\Sender\Mail-Sender-0.7.15.tar.gz' }) ->Close(); } or print "Error sending mail: $@\n";