有人能帮我解决这个问题吗?
我尝试使用一些数据类型,如SMTSession、MailMessage、MailRecipient。
但它不起作用。
下面是代码。
&SMTPSession.Host = 'smtp.gmail.com'<br>
&SMTPSession.Port = 465<br>
&SMTPSession.Authentication = 1<br>
&SMTPSession.UserName = 'XXXX@gmail.com'<br>
&SMTPSession.Password = 'password'<br>
&SMTPSession.Secure = 1 <br>
&SMTPSession.Sender.Address = 'XXXX@gmail.com'<br>
&SMTPSession.Sender.Name = 'OtherName'<br>
&MailRecipient.Address = 'XXXX@hotmail.com'<br>
&MailRecipient.Name = 'Name'<br>
&MailMessage.Subject = 'Subject'<br>
&MailMessage.Text = 'text'<br>
&MailMessage.To.Add(&MailRecipient)<br>
&SMTPSession.Login()
if &SMTPSession.ErrCode <> 0
&SMTPSession.Send(&MailMessage)
&SMTPSession.Logout()
endifGenexus 3升级2,.Net环境,Web
发布于 2015-07-04 08:36:33
发布于 2015-07-04 21:30:24
代码看起来没问题。与我所做的唯一不同的是我编写了&error = &SMTPSession.Login ()
您正在使用的Gmail帐号没有启用两步验证?
发布于 2019-07-31 15:13:13
你的代码完全正确,你只是错过了发送前的状态检查,
&SMTPSession.Login()
if &SMTPSession.ErrCode = 0 // 0 = OK
&SMTPSession.Send(&MailMessage)
&SMTPSession.Logout()
else
//Msg(&SMTPSession.ErrDescription) // to see what kind of error
endif在我的例子中,我使用Gmail SMTP,端口是587
https://stackoverflow.com/questions/31214428
复制相似问题