GARANTIR DESCONTO

Fórum Indy - Envio de Mensagem pelo Servidor #343008

26/06/2007

0

Pessoal,

Como posso mandar mensagens do Servidor para o Cliente sem ser requisitado?

Uso Delphi 7.

Obrigado. :D


Rodfernandes

Rodfernandes

Responder

Posts

26/06/2007

Ant.carlos/sp

Olá!

:D

Email := Sql_DadosEmail.Value;
Anexo := ´C:\ACEINFO\E-MAIL\´+Nomarq;

Envia_Email(Ed_Assunto.text,ed_Mensagem.Text,Email,Anexo);

:)

//------------------------------------//
// Função envia e-mail //
//------------------------------------//
Function Envia_Email(Assunto:String; Mensagem:String;Email:String; Anexo:String):Boolean;
Var Msg : String;
IdMsgSend: TIdMessage;
SMTP : TIdSMTP;
Smtpx : String;


Begin
Try
Result := True;
IdMsgSend := TIdMessage.Create(Nil);
SMTP := TIdSMTP.Create(Nil);

// Mensagem
IdMsgSend.Subject := Assunto; //...´teste de email - Assunto´;
IdMsgSend.Body.Text := Mensagem; //...´Teste de Email - Ace-Informatica´;

// Remetente
idMsgSend.From.Address := DMEMP.Sql_PesqEmpadraoEmail.value; //...´aceinfo2004@itelefonica.com.br´;
idMsgSend.From.Name := DMEMP.Sql_PesqEmpadraoFantasia.value; //...´Antonio Carlos´;
IdMsgSend.ReplyTo.EMailAddresses := DMEMP.Sql_PesqEmpadraoEmail.value; //´aceinfo2004@itelefonica.com.br´;

// Destinatario
IdMsgSend.Recipients.EMailAddresses := Email; //...´aceinfo2004@itelefonica.com.br´;

// Copias
//idMsgSend.CCList.EMailAddresses := ´teste@teste.com.br, teste@terra.com.br´;

// Copias Ocultas
//idMsgSend.BccList.EMailAddresses := ´teste@teste.com.br; teste@terra.com.br´;

// Anexa um arquivo
IF Trim(Anexo) > ´´ Then Begin
TIdAttachment.Create(idMsgSend.MessageParts,Anexo);
//TIdAttachment.Create(idMsgSend.MessageParts,´c:\config.sys´);
End;

// Autenticacao - Use apenas quando o servidor exigir
IF (Trim(DMEMP.Sql_PesqEmpadraoUser_name.value) > ´´) and (Trim(DMEMP.Sql_PesqEmpadraoSenha.value) > ´´) Then Begin
SMTP.AuthenticationType := atLogin;
SMTP.Username := DMEMP.Sql_PesqEmpadraoUser_name.value; //...´aceinfo2004´;
SMTP.Password := DMEMP.Sql_PesqEmpadraoSenha.value; //...´d05m11´;
End;

// Dados do Servidor
Smtpx := ´´;
IF Copy(Trim(DMEMP.Sql_PesqEmpadraoHost.value),1,4) <> ´smtp´ Then
Smtpx := ´smtp.´;

SMTP.Host := Smtpx+Trim(DMEMP.Sql_PesqEmpadraoHost.value); //...´smtp.itelefonica.com.br´;
SMTP.Port := 25;

Try
SMTP.Connect;
try
SMTP.Send(IdMsgSend);
finally
SMTP.Disconnect;
end;
Except
Msg := ´Erro ao enviar E-Mail.´+#13+´Favor verificar se a internet está Conectada...´;
Application.MessageBox(Pchar(Msg),´Erro´,MB_Ok+mb_IconError);
Result := False;
End;
Finally
FreeAndNil(IdMsgSend);
FreeAndNil(SMTP);
End;
End;


Responder

Gostei + 0

26/06/2007

Ant.carlos/sp

Esqueci!
Use as seguintes Bibliotecas

---------------------------
uses
IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
IdMessageClient, IdSMTP, IdMessage, IdAntiFreezeBase,
IdAntiFreeze, IdIntercept, IdLogBase, IdLogEvent;

---------------------------


Responder

Gostei + 0

26/06/2007

Massuda

Talvez :arrow: [url=http://forum.clubedelphi.net/viewtopic.php?t=70214]este tópico[/url] seja útil para você.


Responder

Gostei + 0

27/06/2007

Rodfernandes

Valeu Massuda!!! :D


Responder

Gostei + 0

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

Aceitar