Enviar email pelo delphi...

21/03/2003

0

Alguém saberia me dizer se tem alguma apostila ou mesmo dicas de como eu posso montar um email via programação e envia-lo?


Primf

Primf

Responder

Posts

21/03/2003

Carnette

Alguém saberia me dizer se tem alguma apostila ou mesmo dicas de como eu posso montar um email via programação e envia-lo?


Tirado do 750 Dicas e Truque em Delphi do LloydSoft

Enviar um email smtp.postmessage.toAddress := ´StringList (por ex uma listbox´; smtp.postmessage.FromAdreess := ´ex: meu_email@123.pt´; smtp.userid := ´ex: user@123.pt´ smtp.host := ´ex: smtp@123.pt´ smtp.postmessage.subject := ´Assunto´ smtp.postmessage.body := ´Texto da mensagem (stringlist)´ smtp.connect; smtp.sendmail; smtp.disconnect; Contribuição: O Anonymous.nick enviou um complemento explicando melhor o procedimento para enviar um e-mail usando o Delphi. 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.ToA



Responder

21/03/2003

Aroldo Zanela

Alguém saberia me dizer se tem alguma apostila ou mesmo dicas de como eu posso montar um email via programação e envia-lo?

Colega,

Dá uma olhada nesse componente na paleta Indy (Acho que está disponível a partir da versão 5), e praticamente intuitivo:

Implements a Simple Mail Transfer Protocol client.

TIdSMTP = class(TIdMessageClient)

Unit

IdSMTP

Description

TIdSMTP is a TIdMessageClient descendant that implements a Simple Mail Transfer Protocol or SMTP client, as described in the Internet Standards documents:

RFC 821 - Simple Mail Transfer Protocol [SMTP] (http://www.rfc-editor.org/rfc/rfc821.txt)
RFC 1869 - SMTP Service Extensions (http://www.rfc-editor.org/rfc/rfc1869.txt)
RFC 2554 - SMTP Service Extension for Authentication (http://www.rfc-editor.org/rfc/rfc2554.txt)

Use TIdPOP3 or TIdIMAP4 to retrieve E-Mail messages from a mail server to the user´s computer.


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar