Как я посылаю электронное письмо Списку рассылки Exchange с помощью c#

Ни один из приведенных выше ответов не работал для меня, или там, где небезопасно (как некоторые отмечали, использование Allow from all может сделать ваши файлы и данные доступными для внешнего мира).

Откройте файл c:\wamp\alias\phpmyadmin.conf и измените

Allow from 127.0.0.1

на

Allow from 127.0.0.1  ::1

Объяснение:

  • В большинстве компьютерных систем localhost преобразуется в IP-адрес 127.0.0.1, который является наиболее часто используемым адресом обратной связи IPv4, и на адрес обратной связи IPv6 :: 1 (источник: https://en.wikipedia.org/wiki/Localhost )
  • Разрешение имени localhost в один или несколько IP-адресов настраивается следующими строками в файле hosts операционной системы:

    127.0.0.1    localhost
    ::1          localhost
    
  • чтобы увидеть файл хостов, перейдите на c:\Windows\System32\drivers\etc\HOSTS

  • и обратите внимание, что приведенные выше строки закомментированы с примечанием: # localhost name resolution is handled within DNS itself.

На моей машине, на Win7 я также заметил следующее:

  • localhost\phpmyadmin не работал на Chrome, но работал на IE11
  • 127.0.0.1\phpmyadmin работал на Chrome

8
задан ЯegDwight 5 August 2010 в 14:16
поделиться

2 ответа

Самый простой способ - найти действительный адрес электронной почты DL и использовать его в поле «Кому:». Списки рассылки Exchange фактически имеют свои собственные адреса электронной почты, так что это должно работать нормально.

8
ответ дан 5 December 2019 в 13:01
поделиться

Сервер Exchange запускает SMTP, поэтому можно использовать SmtpClient для отправки электронной почты.

] Можно найти SMTP-адрес в списке рассылки (вручную) и использовать его в качестве адреса «для» в конструкторе MailMessage . Вызов конструктора завершится ошибкой, если вы просто передадите имя списка рассылки, поскольку он не выглядит как реальный адрес электронной почты.

public void Send(string server, string from, string to)
{
    // Client to Exchange server
    SmtpClient client = new SmtpClient(server);

    // Message
    MailMessage message = new MailMessage(from, to);
    message.Body = "This is a test e-mail message sent by an application. ";
    message.Subject = "test message 1";

    // Credentials are necessary if the server requires the client 
    // to authenticate before it will send e-mail on the client's behalf.
    client.Credentials = CredentialCache.DefaultNetworkCredentials;

    // Send
    client.Send(message);
}
3
ответ дан 5 December 2019 в 13:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: