Como eu faço para gerar uma mensagem no Out-Look

15/12/2003

1

Tenho uma aplicação que precisa passar mensagem para diversos clientes informando a situação da carteira.

A melhor forma seria passar por e-mail criando automaticamente uma mensagem no Out-Look.

Será que tem um componente?

Rogério


Responder

Posts

15/12/2003

Fabio.hc

[b:a37c31b920]Enviar um email[/b:a37c31b920]

Fazer um aplicativo completo para manipulação de e-mails é um tanto trabalhoso e não é o assunto desta dica. Muitas vezes, porém, queremos apenas dar ao nosso software a capacidade de enviar simples e-mails. Isto é fácil, especialmente porque o Delphi5 nos oferece o componente TNMSMTP (paleta FastNet) que faz praticamente todo o trabalho para nós. Precisamos apenas alterar algumas propriedades e chamar alguns métodos para que a mensagem seja enviada. Vamos para a prática:

1. Coloque um componente TNMSMTP no form.

2. Coloque um botão e no evento OnClick deste botão escreva:

procedure TForm1.Button1Click(Sender: TObject);
begin
 
  { Seu servidor SMTP }
  NMSMTP1.Host := ´smtp.servidor.com.br´;
 
  { Porta SMTP, **NÃO MUDE ISTO** }
  NMSMTP1.Port := 25;
 
  { Nome de login do usuário }
  NMSMTP1.UserID := ´MeuLogin´;
 
  { Conecta ao servidor }
  NMSMTP1.Connect;
 
  { Se ocorrer algum erro durante a conexão com o servidor, avise! }
  if not NMSMTP1.Connected then
  raise Exception.Create(´Erro de conexão´);
 
  with NMSMTP1.PostMessage do begin
  { Seu e-mail }
  FromAddress := ´meuemail@meuserver.com.br´;
 
  { Seu nome }
  FromName := ´Meu Nome´;
 
  { E-mail do destinatário }
  ToAddress.Clear;
  ToAddress.Add(´destinatario@servidor.com.br´);
 
  { Assunto da mensagem }
  Subject := ´Assunto da mensagem´;
 
  { Corpo da mensagem }
  Body.Clear;
  Body.Add(´Primeira linha da mensagem´);
  Body.Add(´Segunda linha da mensagem´);
  Body.Add(´´); { Linha em branco }
  Body.Add(´Última linha da mensagem´);
 
  { Anexar arquivos(Se não quiser anexar arquivos, apague as 3 linhas seguintes) }
 
  Attachments.Clear;
 
  { Endereço do anexo }
  Attachments.Add(´c:\diretorio\arquivo.ext´);
 
  end;
 
 { Manda o e-mail }
  NMSMTP1.SendMail;
 { Disconecta do servidor }
  NMSMTP1.Disconnect;
end;


Pronto! É só fazer as adaptações necessárias e você terá envio de e-mails em sua aplicação.

Observações:
Para enviar o mesmo e-mail para vários destinatário de uma só vez basta adicionar os endereços de e-mails de todos os destinatários em NMSMTP1.PostMessage.ToAddress.


Responder
×
+1 DevUP
Acesso diário, +1 DevUP
Parabéns, você está investindo na sua carreira