2011年5月17日火曜日

VBScriptでメール送信 - Microsoft Collaboration Data Objects

Microsoft Collaboration Data Objects を利用することで、VBScriptからメール送信する機能を簡単に実現することが可能

メール通知によるプッシュ型の業務プロセス向け


<サンプル>

'---定数---
Const MSCDOCONF = "http://schemas.microsoft.com/cdo/configuration/" '固定URI
Const SMTPSRV = "xxx.xxx.xxx.xxx" 'SMTPサーバ:IP or FQDNで指定
Const SMTPPORT = 25 'ポート番号

'---メール送信---
function cdo_mail_send( _
byVal stSubject,byVal stFrom,byVal stTo,byVal stCc,byVal stBcc,byVal stBody,byVal stTempfile)
  on error resume next

  Set oCDO = CreateObject("CDO.Message") '「Collaboration Data Objects」作成

  oCDO.Subject = stSubject '件名
  oCDO.From = stFrom '送信元アドレス
  oCDO.To = stTo '送信先アドレス(複数指定はセミコロン区切り)

  if stCc <> "" then oCDO.Cc = stCc 'Ccアドレス
  if stBcc <> "" then oCDO.Bcc = stBcc 'Bccアドレス

  oCDO.TextBody = stBody '本文:テキスト形式
  'oCDO.HTMLBody = stBody '本文:HTML形式

  if stTempfile<>"" then oCDO.AddAttachment(stTempfile) 'ファイル添付(物理パス指定)

  with oCDO.Configuration.Fields
   .Item( MSCDOCONF & "sendusing" ) = 2 '固定値:SMTPポートに接続して送信
   .Item( MSCDOCONF & "smtpserver" ) = SMTPSRV
   .Item( MSCDOCONF & "smtpserverport" ) = SMTPPORT
   .Update
  end with

  oCDO.Send 'メール送信

  Set oCDO = Nothing '破棄

  if err.number <> 0 then
   '(エラー処理)
  end if

end function

0 件のコメント:

コメントを投稿