使用CDO通过外部邮件服务器发邮件
类别: ASP教程
WIN2K下的CDO或CDONTS被默认配置成只能通过本地的Microsoft SMTP服务来发送邮件,如果要用外部的邮件服务器,一般要安装第三方组件。以下代码教你如何利用CDO通过外部邮件服务器发送邮件。(译者win2000下测试通过。)
<%
Const cdoSendUsingMethod="http://schemas.microsoft.com/cdo/configuration/sendusing"
Const cdoSendUsingPort=2
Const cdoSMTPServer="http://schemas.microsoft.com/cdo/configuration/smtpserver"
Const cdoSMTPServerPort="http://schemas.microsoft.com/cdo/configuration/smtpserverport"
Const cdoSMTPConnectionTimeout="http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout"
Const cdoSMTPAuthenticate="http://schemas.microsoft.com/cdo/configuration/smtpauthenticate"
Const cdoBasic=1
Const cdoSendUserName="http://schemas.microsoft.com/cdo/configuration/sendusername"
Const cdoSendPassword="http://schemas.microsoft.com/cdo/configuration/sendpassword"
Dim objConfig \' As CDO.Configuration
Dim objMessage \' As CDO.Message
Dim Fields \' As ADODB.Fields
Set objConfig = Server.CreateObject("CDO.Configuration")
Set Fields = objConfig.Fields
With Fields
.Item(cdoSendUsingMethod) = cdoSendUsingPort
.Item(cdoSMTPServer) = "sony.com" \'改成可用的外部邮件服务器域名
.Item(cdoSMTPServerPort) = 25
.Item(cdoSMTPConnectionTimeout) = 10
.Item(cdoSMTPAuthenticate) = cdoBasic
.Item(cdoSendUserName) = "hooke" \'以上服务器的用户名
.Item(cdoSendPassword) = "mypassword" \'密码
.Update
End With
Set objMessage = Server.CreateObject("CDO.Message")
Set objMessage.Configuration = objConfig
With objMessage
.To = "F4@meteorgardon.com" \'改成接收者的邮件地址
.From = "hooke@sony.com" \'改成发送人的邮件地址
.Subject = "SMTP Relay Test" \'标题
.TextBody = "SMTP Relay Test Sent @ " & Now() \'正文
.Send
End With
Set Fields = Nothing
Set objMessage = Nothing
Set objConfig = Nothing
%>
<%
Const cdoSendUsingMethod="http://schemas.microsoft.com/cdo/configuration/sendusing"
Const cdoSendUsingPort=2
Const cdoSMTPServer="http://schemas.microsoft.com/cdo/configuration/smtpserver"
Const cdoSMTPServerPort="http://schemas.microsoft.com/cdo/configuration/smtpserverport"
Const cdoSMTPConnectionTimeout="http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout"
Const cdoSMTPAuthenticate="http://schemas.microsoft.com/cdo/configuration/smtpauthenticate"
Const cdoBasic=1
Const cdoSendUserName="http://schemas.microsoft.com/cdo/configuration/sendusername"
Const cdoSendPassword="http://schemas.microsoft.com/cdo/configuration/sendpassword"
Dim objConfig \' As CDO.Configuration
Dim objMessage \' As CDO.Message
Dim Fields \' As ADODB.Fields
Set objConfig = Server.CreateObject("CDO.Configuration")
Set Fields = objConfig.Fields
With Fields
.Item(cdoSendUsingMethod) = cdoSendUsingPort
.Item(cdoSMTPServer) = "sony.com" \'改成可用的外部邮件服务器域名
.Item(cdoSMTPServerPort) = 25
.Item(cdoSMTPConnectionTimeout) = 10
.Item(cdoSMTPAuthenticate) = cdoBasic
.Item(cdoSendUserName) = "hooke" \'以上服务器的用户名
.Item(cdoSendPassword) = "mypassword" \'密码
.Update
End With
Set objMessage = Server.CreateObject("CDO.Message")
Set objMessage.Configuration = objConfig
With objMessage
.To = "F4@meteorgardon.com" \'改成接收者的邮件地址
.From = "hooke@sony.com" \'改成发送人的邮件地址
.Subject = "SMTP Relay Test" \'标题
.TextBody = "SMTP Relay Test Sent @ " & Now() \'正文
.Send
End With
Set Fields = Nothing
Set objMessage = Nothing
Set objConfig = Nothing
%>
- 上一篇: ASP中一个字符串处理类
- 下一篇: FSO+递归生成文件列表(XML)
-= 资 源 教 程 =-
文 章 搜 索