Jump to content
Fórum Script Brasil
  • 0

Outlook Delphi 2010


djfarinha

Question

Bom dia galera, estou com um problema e queria a ajuda de vocês.

É o seguinte estou usando uma função para enviar email pelo outlook

no delphi 2010 :

try
    Outlook := GetActiveOleObject('Outlook.Application');
  except
    Outlook := CreateOleObject('Outlook.Application');
  end;

  vMailItem := Outlook.CreateItem(indiceMail);
  vMailItem.Recipients.add( 'rafaelsilva46@gmail.com'); // 1o destinatário
  vMailItem.Subject := 'Assunto do e-mail';
  vMailItem.Body    := 'Corpo do e-mail';
  vMailItem.Attachments.Add('C:\arquivo.rar');
  vMailItem.GetInspector.Activate;

  vMailItem.Display(True); 
  VarClear(Outlook);
  exit;

só que está função só funciona se eu excluir a linha "vMailItem.Recipients.add( 'rafaelsilva46@gmail.com'); // 1o destinatário"

se eu deixar está linha ele não abre a janela de mensagem do outlook

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

voce que fazer uma copia do arquivo html e enviar ?

vMailItem.Attachments.Add('C:\arquivo.rar');

ou código para envio de html:

Var newText : TIdText; 
sPath : String; 
newAttach : TIdAttachment; 
imgID1, imgName1 : String; 
imgID2, imgName2 : String; 
begin 
// Endereço e ID das Imagens 
imgName1 := ExtractFilePath(Application.ExeName) + 'imagem1.jpg'; 
imgID1 := CreateUniqueID; 

imgName2 := ExtractFilePath(Application.ExeName) + 'imagem2.jpg'; 
imgID2 := CreateUniqueID; 

// Configura o Servidor 
IdSMTP.Username := 'nome do usuário'; 
IdSMTP.Password := 'senha do usuário'; 
IdSMTP.Host := 'host smtp'; 

// Configura o Remetente da Mensagem 
IdMessage.Clear; 
IdMessage.Subject := 'Teste de Envio de Mensagem em formato HTML, com imagens anexadas'; 
IdMessage.From.Address := 'remetente'; 
IdMessage.From.Name := Remetene; 

// configura os destinatários 
IdMessage.Recipients.Clear; 

IdMessage.Recipients.Add; 
IdMessage.Recipients.Items[IdMessage.Recipients.Count-1].Address := 'para@brasil.com.br'; 
IdMessage.Recipients.Items[IdMessage.Recipients.Count-1].Name := 'nome'; 

// Adiciona o HTML ao corpo da mensagem 
newText := TIdText.Create(IdMessage.MessageParts,nil); 
newText.ContentType := 'text/html'; 
newText.Body.Add('<HTML><BODY>'); 
newText.Body.Add('<H2>Teste de Envio de Email HTML Embeded</H2>'); 
newText.Body.Add('<IMG>'); // Troca imagens pelo ID unico 
newText.Body.Add('<IMG>'); // Troca imagens pelo ID unico 
newText.Body.Add('</BODY><HTML>'); 

// Adiciona uma parte texto ao corpo 
newText := TIdText.Create(IdMessage.MessageParts,nil); 
newText.ContentType := 'text/plain'; 
newText.Body.Add('Este email só será visualizado em padrão HTML'); 

// Anexa a primeira imagem 
newAttach := TIdAttachment.Create(IdMessage.MessageParts,imgName1); 
newAttach.ContentType := 'image/jpeg'; 
newAttach.ContentDisposition := 'inline'; 
newAttach.ExtraHeaders.Values['Content-ID'] := '<'+imgId1+'>'; 

// Anexa a segunda imagem 
newAttach := TIdAttachment.Create(IdMessage.MessageParts,imgName2); 
newAttach.ContentType := 'image/jpeg'; 
newAttach.ContentDisposition := 'inline'; 
newAttach.ExtraHeaders.Values['Content-ID'] := '<'+imgId2+'>'; 

// Envia 
IdSMTP.Connect; 
Try 
if IdSMTP.Connected then Begin 
IdSMTP.Send(IdMessage); 
End 
Finally 
IdSMTP.Disconnect; 
End; 

ShowMessage('Email Enviado.');

outro exemplo

http://massuda.blogspot.com.br/2007/01/del...em-formato.html

abraço

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652.1k
×
×
  • Create New...