伺服器權限調整後,JMail 元件寄信報錯 ASP 0178 : 80070005,Server.CreateObject("JMail.SMTPMail") 存取被拒。經半年多嘗試,最終依循四步驟成功修復:
jmail.dll → 內容 → 安全性 → 新增 IUSR_機器名、IWAM_機器名 → 允許「寫入」。regsvr32 jmail.dllJMail.ServerAddress 必須填內網 IP,外網 IP 會導致連線緩慢或失敗。<%
Dim JMail
On Error Resume Next
Set JMail = Server.CreateObject("JMail.SMTPMail")
JMail.ServerAddress = "10.x.x.x" ' 內網 IP
JMail.LazySend = True
JMail.Charset = "UTF-8"
JMail.ContentType = "text/html"
JMail.Sender = "sender@domain.com"
JMail.Subject = "測試寄信"
JMail.AddRecipient "receiver@domain.com"
JMail.Body = "測試郵件內容"
JMail.Priority = 3
JMail.AddHeader "Originating-IP", Request.ServerVariables("REMOTE_ADDR")
JMail.Execute
JMail.Close
Set JMail = Nothing
If Err.Number <> 0 Then
Response.Write Err.Description
Err.Clear
Else
Response.Write "發送成功"
End If
%>