Enviar Email para todos meus Clientes

09/09/2009

Olá a Wesley ou Rodrigo, necessito de ajudar para envio de email para todos os meus clientes cadastrados. Utilizo RAD Studio 2007 e banco MS-SQLServer 2005. Vi que agora utilizamos System.Net.Mail.SmtpClient e System.Net.MailMessage, encontrei alguns exemplo para envio simples, mas gostaria de ter multiplos destinátios(recepient) ou com cópia oculta para vários destinatários que estão na minha tabela, teria como me dar uma luz sobre isso.
Paulo Freire

Paulo Freire

Curtidas 0

Respostas

Rodrigo Mourão

Rodrigo Mourão

09/09/2009

Olá Paulo,


Bem isso não é nunhum bicho de sete cabeças é até muito simples de desenvolver. O problemas e que vamos esbarrar em limitações do servidores STMP, como por exemplo limite máximo de destinatários por mensgem. Alguns so pertmitem enviar para 30 ou 40 pessoas ao memso tempo.

Outros bloqueiam quando vc manda muitos email um atras do outro. Enfim mas fora isso e tranquilo. Vou montar algo e te envio.

Abs!!!

GOSTEI 0
Rodrigo Mourão

Rodrigo Mourão

09/09/2009

Olá Amigo, desculpe a demora.

Segue sugestão de código:

var
  Msg: MailMessage;
  Smtp: SmtpClient;
  Con: SqlConnection;
  Command: SqlCommand;
  Read: SqlDataReader;
begin

  Con := SqlConnection.Create('Data Source=localhost;Initial Catalog=DBWork;User Id=SA;Password=;');
  Command := SqlCommand.Create('Select Email From contato',Con);
  Read := Command.ExecuteReader;


  Msg := MailMessage.Create;
  Msg.From    := MailAddress.Create('euestou@enviando.com.br','Meu Nome');
  Msg.Subject := 'Meu Assunto';
  while Read.Read do
  begin
    Msg.Bcc.Add(Read.GetString(0));
  end;

  Msg.Priority   := MailPriority.High;
  Msg.Body       := 'Meu conteudo aqui !!!!!!!!!!';

  Smtp := SmtpClient.Create('smtp.provedor.com.br',25);
  Smtp.Credentials := NetWorkCredential.Create('usuario','senha');

  Smtp.Send(Msg);
end;

Vale lembrar que os dados para acesso são ficticios, troque pelos seus. Este cósdigo e so uma sugestão. Não esqueça das limitações do servidor quanto ao envio de email em massa.

Atenção para uses nos namespaces  System.Net.Mail, System.Data.SqlClient, System.Net;

Abs
GOSTEI 0
Paulo Freire

Paulo Freire

09/09/2009

Como vc mesmo diz, "Simples assim" valeu Rodrigo, pode fechar.
GOSTEI 0
Rodrigo Mourão

Rodrigo Mourão

09/09/2009

Abs e até a próxima !!!


GOSTEI 0
POSTAR