主题:ASP發送Mail
zyw222
[专家分:0] 发布于 2007-03-12 09:33:00
我想在公司内部局域网环境下实现网页上自动发送mail。公司mail服务器是exchange。每位员工都有自己的邮箱帐号和密码,但不能上外网。用jmail的话,请问需要哪些步骤?请详告之,谢谢!
我只會VBScript
回复列表 (共10个回复)
沙发
霜 [专家分:3370] 发布于 2007-03-12 09:36:00
安装jmail以后在那个目录下面会有不少例子,按照那个写一下就可以发了!
板凳
zyw222 [专家分:0] 发布于 2007-03-12 09:39:00
不行啊,我試過了,用CDO也試過了
3 楼
notbird [专家分:2800] 发布于 2007-03-12 10:04:00
1:如果你的邮件服务器及局域网可能配置有问题
2:DNS服务器配置有问题
3:防火墙阻止了
4:杀毒软件开启了邮件发送监控
5:代码可能没有验证信息
以上问题你检查一下
4 楼
zyw222 [专家分:0] 发布于 2007-03-12 10:10:00
可不可以說詳細點啊,我不太懂網絡配置
郵件服務器Ping通過,用outlook能夠發送Mail
Web服務器的25端口也有打開
代碼是這樣的
Dim iMsg
Dim iConf
Dim Flds
Dim mToMan, mFromMan,mCCMan, mSubject, mUrl
mFromMan = "yw.z@yy2a.yydg.com.cn"
mCCMan = "yw.z@yy2a.yydg.com.cn"
mToMan = "yw.z@yy2a.yydg.com.cn"
mSubject = "Test"
Set iMsg = Server.CreateObject("CDO.Message")
Set iConf = Server.CreateObject("CDO.Configuration")
Set Flds = iConf.Fields
Flds.Item("cdoSendUsingMethod") = 2 'cdoSendUsingPort
Flds.Item("cdoSMTPServer") = "172.17.5.27"
Flds.Item("cdoSMTPConnectionTimeout") = 3600
Flds.Item("cdoSMTPServerPort") = "25"
Flds.Item("cdoSMTPAuthenticate")= 1 '0:cdoAnonymous, 1:gengeral
Flds.Item("cdoSendUserName") = "dgmail\yw.z" '我的outlook登錄是這個賬號
Flds.Item("cdoSendPassword") = "dd"
Flds.Item("cdoURLGetLatestVersion") = true
Flds.Update
On Error Resume Next
With iMsg
Set .Configuration = iConf
.BodyPart.Charset = "utf-8"
.To = mtoMan
.From = mfromMan
.CC = mCCMan
.Subject = mSubject
.HtmlBody = "ddddd"
'CdoMHTMLFlags Enum : 0 = CdoSuppressNone (Download all Resources), 31= CdosuppressAll (Do Not download any Resources)
.Send
End With
Set iMsg = Nothing
Set iConf = Nothing
5 楼
zyw222 [专家分:0] 发布于 2007-03-12 10:14:00
以前防火牆關閉了25端口,現在我把祂打開了
6 楼
notbird [专家分:2800] 发布于 2007-03-12 10:14:00
没用过CDO.message
7 楼
zyw222 [专家分:0] 发布于 2007-03-12 10:27:00
Set msg = Server.CreateObject("JMail.Message")
msg.silent = true
msg.Logging = true
msg.Charset = "gb2312"
msg.MailServerUserName = "dgmail\yw.z"
msg.MailServerPassword = "dgmail"
msg.From = "yw.z@yy2a.yydg.com.cn"
msg.FromName = "刀刀"
msg.Subject = "test"
msg.Body = "test"
msg.Send ("172.17.5.27")
msg.close()
set msg=nothing
這段代碼也不行
8 楼
notbird [专家分:2800] 发布于 2007-03-12 11:03:00
你都乱填的,还是仔细看看别人回的帖吧
9 楼
zyw222 [专家分:0] 发布于 2007-03-12 13:48:00
上面少了一句,這樣子也發不出去啊
Set jmail = Server.CreateObject("JMAIL.Message")
jmail.silent = true
Jmail.logging = true
jmail.Charset = "GB2312"
jmail.ContentType = "text/html"
jmail.AddRecipient "yw.z@yy2a.yydg.com.cn"
jmail.From = "yw.z@yy2a.yydg.com.cn"
jmail.MailServerUserName = "dgmail\yw.z" '登录邮件服务器所需的用户名
jmail.MailServerPassword = "dgmail" '登录邮件服务器所需的密码
jmail.Subject = "Mail Subject"
jmail.Body = "Mail Body"
if jmail.Send("YYDGVS3.yydg.com.cn")
response.write "Pass"
else
response.write "fail"
end if
jmail.Close()
set jmail = nothing
MailServerUserName我試過
yw.z
yw.z@yy2a.yydg.com.cn
dgmail\yw.z
dgmail\yw.z@yy2a.yydg.com.cn
我電腦上用outlook登錄的賬號是dgmail\yw.z
YYDGVS3.yydg.com.cn的IP是172.17.5.27(能夠Ping通),兩者都有試過,就是發不出去啊
10 楼
zyw222 [专家分:0] 发布于 2007-03-12 15:25:00
我在DOS下用執行smtpdiag yw.z@yy2a.yydg.com.cn yw.z@yy2a.yydg.com.cn
結果如下:
正在搜尋 Exchange 外部 DNS 設定值。
電腦名稱為 SIMON。[這個是我的電腦名稱]
無法連接網域控制站。錯誤: 8007054b
正在檢查 yy2a.yydg.com.cn 的 SOA。
正在檢查外部 DNS 伺服器。
正在檢查內部 DNS 伺服器。
SOA 序號相符: 通過。
正在檢查本機網域記錄。
正在使用 TCP 檢查 MX 記錄: yy2a.yydg.com.cn。
正在使用 UDP 檢查 MX 記錄: yy2a.yydg.com.cn。
TCP 及 UDP 查詢均成功。本機 DNS 測試通過。
正在檢查遠端網域記錄。
正在使用 TCP 檢查 MX 記錄: yy2a.yydg.com.cn。
正在使用 UDP 檢查 MX 記錄: yy2a.yydg.com.cn。
TCP 及 UDP 查詢均成功。遠端 DNS 測試通過。
正在檢查 yw.z@yy2a.yydg.com.cn 列出的 MX 伺服器。
在通訊埠 25 上連線到 yydgvs4.yydg.com.cn [172.17.5.29]。
錯誤: 預期是 "220"。伺服器不接受連線。
無法將郵件提交到 yydgvs4.yydg.com.cn。
在通訊埠 25 上連線到 yydgvs3.yydg.com.cn [172.17.5.27]。
錯誤: 預期是 "220"。伺服器不接受連線。
無法將郵件提交到 yydgvs3.yydg.com.cn。
請教各位高手指點我該如何做
我来回复