Michele Lucia Ответов: 1

Пароль специальных символов с smtpclient


Привет,
Я использую Vb.net (2005 и 2013).
Я использую этот код для отправки электронных писем:
Dim SmtpServer As New SmtpClient()
            Dim mail As New MailMessage()
            SmtpServer.Credentials = New _
		Net.NetworkCredential("username@gmail.com", "password")
            SmtpServer.Port = 587
            SmtpServer.Host = "smtp.gmail.com"
            mail = New MailMessage()
            mail.From = New MailAddress("YOURusername@gmail.com")
            mail.To.Add("TOADDRESS")
            mail.Subject = "Test Mail"
            mail.Body = "This is for testing SMTP mail from GMAIL"
            SmtpServer.Send(mail)


и это прекрасно работает, но только в том случае, если пароль учетных данных не содержит специальных символов, таких как"@","!",...

Что я уже пробовал:

Я пробовал работать с некоторыми smtp-серверами, такими как gmail, register, ecc.
Я пробовал как с .net 2.0, так и с .net 4.5.1

Большое спасибо!

Richard MacCutchan

Что происходит, когда пароль содержит специальные символы?

1 Ответов

Рейтинг:
9

Jochen Arndt

Попробуйте передать пароль, заключенный в двойные кавычки (каждая из которых должна предшествовать другой двойной кавычке, чтобы сообщить VB, что это не конец строки):

Net.NetworkCredential("username@gmail.com", """password""")