VBScriptでGmailを使用してメール送信
概要
バッチ処理の監視用に終了時にGmailを使ってメールを送信して、うまくいったかどうか確認するための簡単なスクリプトです。
メールアドレスやパスワードは適宜読み替えてください。
sendmail.vbs
On Error Resume Next Dim param Dim mailer Set param = WScript.Arguments Set mailer = WScript.CreateObject("CDO.Message") mailer.From = "***@gmail.com" mailer.To = "***@gmail.com" mailer.Subject = "[" & param(0) & "]" mailer.TextBody = param(1) & vbCrlf & Now mailer.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 mailer.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.gmail.com" mailer.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465 mailer.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True mailer.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 rem ユーザ名 mailer.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "***@gmail.com" rem パスワード mailer.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "***" mailer.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60 mailer.Configuration.Fields.Update mailer.Send Set param = Nothing Set mailer = Nothing
使い方
実行時に引数で件名と内容を指定します。
バッチスクリプトに組み込んで、処理結果で動的に件名と内容を設定するような使い方をしています。
testDrive.bat
@echo off Set subject=SUCCESS Set body=SCRIPT001 cscript //nologo sendmail.vbs %subject% %body%