' *********************************************************************** ' ' NetSHAKER ' ' Copyright(C) 2009 YASKAWA INFORMATION SYSTEMS Corporation ' All Rights Reserved. ' ' **************************************************************************** ' NetSHAKER Red-Mail現地確認ツール main ' ==========+===========================================+========+=========== ' DATE | Comments |Revision| SIGN ' ==========+===========================================+========+=========== ' 2009/09/09| NSK51+ScoolOffice | New |Miura ' ----------+-------------------------------------------+--------+----------- ' 2009/xx/xx| | | ' ----------+-------------------------------------------+--------+----------- ' ' 概要 ' 引数で指定されたSMTPサーバを使用して、メールを送信する。 ' ' 引数 ' 0 : SMTPサーバアドレス ' 1 : SMTPサーバポート番号 ' 2 : 宛先メールアドレス ' ' 戻り値 ' 0 : メール送信成功 ' 1 : メール送信失敗 ' ' 注意 ' ' ---------------------------------------------------------------------------- rem エラー発生時も処理継続 On Error Resume Next ' ============================================================================ ' 定義 ' ============================================================================ rem サーバ情報 Dim SmtpServer rem SMTPサーバアドレス Dim SmtpPort rem SMTPサーバポート番号 Dim MailTo rem 宛先メールアドレス MailFrom = "CheckTool" MailSubject = "NetSHAKER Test Mail" MailBody = "導通確認のためのテストメールです。" & vbCrLf & vbCrLf & "送信日時:" & Now Dim result Dim resultout ' ============================================================================ ' 引数チェック ' ============================================================================ rem 引数を取得 If WScript.Arguments.count > 2 Then SmtpServer = Trim(WScript.Arguments.Item(0)) SmtpPort = Trim(WScript.Arguments.Item(1)) MailTo = Trim(WScript.Arguments.Item(2)) Else WScript.StdOut.WriteLine "引数が正しくありません。" WScript.Quit 1 End If ' ============================================================================ ' メイン処理 ' ============================================================================ rem メール送信オブジェクトの生成 Set oMsg = CreateObject("CDO.Message") rem 送信者 oMsg.From = MailFrom rem 宛先 oMsg.To = MailTo rem 件名 oMsg.Subject = MailSubject rem 本文 現在時刻を追加 oMsg.TextBody = MailBody rem ============================================================================================================ rem SMTPサーバの指定(デフォルト:1) rem "1"は、ローカル(windows自身)のSMTPサービスのピックアップディレクトリにメールを配置 rem "2"は、外部SMTPサーバを指定 rem "3"は、OLE DBを利用してローカルのExchangeに接続(よく分からんが、Exchangeサーバが動いている環境用?) oMsg.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 rem 外部SMTPサーバアドレス指定 oMsg.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = SmtpServer rem 外部SMTPサーバのポート番号 oMsg.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = SmtpPort rem ============================================================================================================ rem 設定値の反映 oMsg.Configuration.Fields.Update rem メール送信 oMsg.Send rem 成否判定 If Err.Number <> 0 then result = "NG" resultout = "Err.Number (" & Err.Number & ")" return = 1 Else result = "OK" resultout = "send OK." return = 0 End If rem 実行結果出力 WScript.StdOut.WriteLine "exec command : " & WScript.ScriptName & " " & SmtpServer & " " & SmtpPort & " " & MailTo WScript.StdOut.WriteLine "exec result : " & result WScript.StdOut.WriteLine "exec out:---------------------------------------->" WScript.StdOut.WriteLine resultout WScript.StdOut.WriteLine "exec out:<----------------------------------------" rem 戻り値 WScript.Quit return