2014-01-04 7 views
0

Я знаю, что для отправки электронной почты с SMTP-сервера необходимы адрес сервера, пароль и имя пользователя/учетные данные по умолчанию. Но имеет ли SMTP пароль для доступа к самому серверу? Есть ли имя пользователя?Отправка писем с SMTP-сервера

+0

Почему вы помечены как C# и Java? вы ищете реализацию? – i3arnon

+0

@ I3arnon - Нет, я не ищу код. Только концепция. Поскольку C# и Java популярны, и многие программисты уже могли сделать smtp-почту уже, я пометил ее с помощью java и C#. Это поможет моему сообщению привлечь внимание, в котором оно нуждается. Кто говорит - хорошо! сегодня я собираюсь попробовать некоторые smtp-вопросы? – Steam

+0

Нежелательная маркировка в попытках привлечь внимание не может быть оценена. – punund

ответ

0

Все, что вам нужно, это

  • имя хоста: smtp.servername.com
  • порт: 25 или 465 (в зависимости от того, если SSL)
  • Имя пользователя: MyUser
  • пароль: MyPassword

Вам не нужен пароль для «самого сервера» или что-то в этом роде.

В зависимости от конфигурации сервера адрес электронной почты, отправленный «от», может быть или не быть действительным адресом электронной почты на этом сервере.

EDIT: базовый C# реализация

System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage(); 
message.To.Add("[email protected]"); 
message.Subject = "This is the Subject line"; 
message.From = new System.Net.Mail.MailAddress("[email protected]",25); 
message.Body = "This is the message body"; 
System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient("yoursmtphost"); 
// if you need user/pass login 
client.Credentials = new NetworkCredential("username","password"); 
smtp.Send(message); 
+1

Это необходимо отправить почтовому _to_ SMTP-серверу, а не отправлять его _from_ SMTP-серверу. – punund

+0

@punund Итак, вы предполагаете, что код эмулирует SMTP-сервер, разговаривающий с целевым SMTP-сервером. Звучит странно. – SlaterCodes

+0

Спасибо. Но, на самом деле, я уже реализовал этот код. Но это полезно знать. – Steam

0

«? Но это SMTP также пароль для доступа самого сервера Есть ли имя пользователя, а?»

Нет, единственный пароль, который может вам понадобиться, - это учетная запись с учетными данными.

1

Это что работает реализация любое для меня:

  System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage(); 
      message.To.Add("[email protected]"); 
      message.Subject = "This is the Subject line"; 
      message.From = new MailAddress("[email protected]", "Name to Display"); 
      message.Body = "This is the message body"; 
      System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient("yoursmtphost"); 
      smtp.Credentials = new NetworkCredential("[email protected]", "yourpassword"); 
      smtp.Send(message); 
Смежные вопросы