読者です 読者をやめる 読者になる 読者になる

1.21 jigowatts

Great Scott!

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%