能否用批处理实现自动发邮件

时间:2021-11-17 23:08:04
我想在一台Windows Server 2003上写个批处理,每隔一小时发一封email给我。在UNIX下很容易实现,一条mailx命令足矣。请问怎样在Windows下用批处理实现呢(这台服务器上有Outlook Express)?

p.s. 由于是服务器,所以不能安装第三方软件。

8 个解决方案

#1


'把以下文件存為vbs文件,雙擊就可運行,也可以放到Job里去運行。
    Set cdo = CreateObject("CDO.Message")
    strCfg = "http://schemas.microsoft.com/cdo/configuration/"
    With cdo
        .Sender = "發送者郵件地址"
        .From = "發送者郵件地址"
        .To = "接收者郵件地址"
        .Fields("urn:schemas:mailheader:X-Priority") = 1 
        .Fields.Update 
        .Subject = "郵件標題"
        .TextBody = "郵件內容"
        .Configuration(strCfg & "SendUsing") = 2
        .Configuration(strCfg & "smtpserver") = "發送郵件服務器地址"
        .Configuration(strCfg & "sendusername") = "發送者郵箱帳號"
        .Configuration(strCfg & "sendpassword") = "發送者郵箱密碼"
        .Configuration.Fields.Update
.send
    End With 
msgbox "發送完成"

'以上程序因網絡限制無法作測試,不知是否可用,請各位看官自行測試吧。

#2


'把以下文件存为vbs文件,双击就可运行,也可以放到Job里去运行。
    Set cdo = CreateObject("CDO.Message")
    strCfg = "http://schemas.microsoft.com/cdo/configuration/"
    With cdo
        .Sender = "发送者邮件地址"
        .From = "发送者邮件地址"
        .To = "接收者邮件地址"
        .Fields("urn:schemas:mailheader:X-Priority") = 1 
        .Fields.Update 
        .Subject = "邮件标题"
        .TextBody = "邮件内容"
        .Configuration(strCfg & "SendUsing") = 2
        .Configuration(strCfg & "smtpserver") = "发送邮件服务器地址"
        .Configuration(strCfg & "sendusername") = "发送者邮箱帐号"
        .Configuration(strCfg & "sendpassword") = "发送者邮箱密码"
        .Configuration.Fields.Update
.send
    End With 
msgbox "发送完成"

'以上程序因网络限制无法作测试,不知是否可用,请各位看官自行测试吧。

#3


顶一下
看看有没有其它方法

#4


//strCfg = "http://schemas.microsoft.com/cdo/configuration/"

VBS脚本测试成功,请问这句是什么作用?
用IE无法打开这个网页,但发送邮件成功,何解?

#5


很不错的一个脚本,hoho

#6


能否发送附件?

#7


引用 4 楼 ljc007 的回复:
//strCfg   =   "http://schemas.microsoft.com/cdo/configuration/ " 

VBS脚本测试成功,请问这句是什么作用? 
用IE无法打开这个网页,但发送邮件成功,何解?

怎么我发送的时候,提示错误,
ActiveX 不见不能创建对象: 'CDO. Message'

#8


注意空格要去掉。
两外,可能还要加:
.Configuration(strCfg   &   "smtpauthenticate")=1

#1


'把以下文件存為vbs文件,雙擊就可運行,也可以放到Job里去運行。
    Set cdo = CreateObject("CDO.Message")
    strCfg = "http://schemas.microsoft.com/cdo/configuration/"
    With cdo
        .Sender = "發送者郵件地址"
        .From = "發送者郵件地址"
        .To = "接收者郵件地址"
        .Fields("urn:schemas:mailheader:X-Priority") = 1 
        .Fields.Update 
        .Subject = "郵件標題"
        .TextBody = "郵件內容"
        .Configuration(strCfg & "SendUsing") = 2
        .Configuration(strCfg & "smtpserver") = "發送郵件服務器地址"
        .Configuration(strCfg & "sendusername") = "發送者郵箱帳號"
        .Configuration(strCfg & "sendpassword") = "發送者郵箱密碼"
        .Configuration.Fields.Update
.send
    End With 
msgbox "發送完成"

'以上程序因網絡限制無法作測試,不知是否可用,請各位看官自行測試吧。

#2


'把以下文件存为vbs文件,双击就可运行,也可以放到Job里去运行。
    Set cdo = CreateObject("CDO.Message")
    strCfg = "http://schemas.microsoft.com/cdo/configuration/"
    With cdo
        .Sender = "发送者邮件地址"
        .From = "发送者邮件地址"
        .To = "接收者邮件地址"
        .Fields("urn:schemas:mailheader:X-Priority") = 1 
        .Fields.Update 
        .Subject = "邮件标题"
        .TextBody = "邮件内容"
        .Configuration(strCfg & "SendUsing") = 2
        .Configuration(strCfg & "smtpserver") = "发送邮件服务器地址"
        .Configuration(strCfg & "sendusername") = "发送者邮箱帐号"
        .Configuration(strCfg & "sendpassword") = "发送者邮箱密码"
        .Configuration.Fields.Update
.send
    End With 
msgbox "发送完成"

'以上程序因网络限制无法作测试,不知是否可用,请各位看官自行测试吧。

#3


顶一下
看看有没有其它方法

#4


//strCfg = "http://schemas.microsoft.com/cdo/configuration/"

VBS脚本测试成功,请问这句是什么作用?
用IE无法打开这个网页,但发送邮件成功,何解?

#5


很不错的一个脚本,hoho

#6


能否发送附件?

#7


引用 4 楼 ljc007 的回复:
//strCfg   =   "http://schemas.microsoft.com/cdo/configuration/ " 

VBS脚本测试成功,请问这句是什么作用? 
用IE无法打开这个网页,但发送邮件成功,何解?

怎么我发送的时候,提示错误,
ActiveX 不见不能创建对象: 'CDO. Message'

#8


注意空格要去掉。
两外,可能还要加:
.Configuration(strCfg   &   "smtpauthenticate")=1