#!D:/Perl/bin/perl.exe # メール送信Perlスクリプトその2(Windowsサーバー専用BASP21版) # BASPmail2.pl 2002.08.21 作成:鷹の巣 http://sakaguch.com/ # BASP21.DLLの入手先は、http://www.hi-ho.ne.jp/babaq/basp21.html # 参考サイト;「Basp21を使ってメールを送る」。 # http://homepage3.nifty.com/hippo2000/perltips/perlmail.htm#2.2 # 添付ファイルをつけないメールの送信。 #■□■ メールの設定データ ■□■ $mail_log = './sendmail.log'; # メール送信記録ファイル(nullにすると記録されなくなる。) $mail_server = 'smpt.provider.com'; # SMTPサーバー名(LAN内のSMTPサーバーの場合はブライベートアドレスでも可) $mail_from = 'webmaster@example.com'; # 送信元メールアドレス $mail_to = 'user@example.com'; # 宛先メールアドレス $mail_to = "$mail_to\tbcc\t$mail_from"; # 宛先メールアドレス(送信元にもBccでメールを送る)Bcc不要時、コメント行にする。 $mail_subj = "BASP21でメール"; # 件名 $mail_body = <<'_MAIL_'; # メール本文 簡単なメール送信試験 Windows のActive Perlから、メールを 送ります。jcode.plも不要です。 --------------------------------------- サイト名:○○○の自宅サーバー URL http://example.com/ 山田太郎(E-mail:webmaster@example.com) --------------------------------------- _MAIL_ $mail_file = ''; # 添付ファイル #■□■ メールの設定終わり ■□■ use Win32::OLE; # OLEパッケージの使用 &main(); exit; sub main { $mes = sendmail($mail_log, $mail_server, $mail_from,$mail_to, $mail_subj, $mail_body, $mail_file); print "$mes\n"; } sub sendmail { my ($log, $server, $from, $to, $subj, $body, $file) = @_; # 引数の受信 my $BASP = Win32::OLE -> new('basp21'); # BASP21オブジェクトの作成 my $err_mes = $BASP -> SendMailEx($log, $server, $to, $from, $subj, $body, $file); # メールの送信 return ($err_mes); # 戻り値の設定 }