VB .Net Sending email using Gmail account
Why does this timeout?
Dim s As New SmtpClient
s.Host = "smtp.gmail.com"
s.Port = 465
s.EnableSsl = True
s.Timeout = 5000
s.Credentials = New NetworkCredential("my.name@gmail.com", "mypassword")
Dim m As New MailMessage
m.To.Add("my.name@gmail.com")
m.From = New MailAddress("my.name@gmail.com")
m.Body = "Test Message"
m.Subject = "Test Subject"
s.Send(m)
These settings come straight from my Outlook Express test setup, and it can send fine.
Set really long timeout = does nothing
Change port numbers to 587 or 25 = does nothin开发者_开发知识库g
One thought: Outlook Express has a "My server requires authentication" option, which I couldn't see an obvious equivalent for with SmtpClient. Could it be related to that?
Thanks in advance
Dave
--Trindaz on Fedang #vb.net-smtp
Edit: You might need to add the following line: s.UseDefaultCredentials = False
before the line starting with s.Credentials...
Do you have a firewall or some kind of anti-virus program running that might be blocking the connections?
A good place to start is to just do a simple connect from the command line.
telnet smtp.gmail.com 465
Note, depending on Windows version you might have to enable the telnet client first, see this link for details.
You have to go into your gmail account and turn on access for less secure apps and change the port to 587
精彩评论