Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

GicaLilica

enviar email pelo delphi

Recommended Posts

Ola pessoal...eu vi o artigo que tem no imasters mas nao deu certo comigo. Alguem sabe outro exemplo? buuuaaaa eu nao sei fazer...alguem sabe umendereço de smtp que da certo?pq o ibest,yahoo etc nao dao...beijosobrigadaGi

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola

 

no proprio delphi tem um exemplo de envio de emails você o encontrara em C:\Program Files\Borland\Delphi6\Demos\Indy\MailClient\MailDemo ou de acordo com o diretorio onde você instalou o delphi, inclusive eu uso no meu programa e utilizo o yahoo, sendo q você tem de habilitar o servico smtp do email, para isso entre no seu email yahoo depois clique em Opções do Yahoo! Mail logo em seguida em Acesso POP e Redirecionamento entao abrira outra janela nesta você ira habilitar o servico, feito isso e soh enviar seus emails.

 

espero ter ajudado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ve se isto de ajuda.....

Trabalho a mto tempo com esta dica....mas tem que ser outlook express versão 6 no minimo:

 

uses Mapi;   function SendEMail(Handle: THandle; Mail: TStrings): Cardinal; type TAttachAccessArray = array [0..0] of TMapiFileDesc; PAttachAccessArray = ^TAttachAccessArray; var MapiMessage: TMapiMessage; Receip: TMapiRecipDesc; Attachments: PAttachAccessArray; AttachCount: Integer; i1: integer; FileName: string; dwRet: Cardinal; MAPI_Session: Cardinal; WndList: Pointer; begin dwRet := MapiLogon(Handle, PChar(''), PChar(''), MAPI_LOGON_UI or MAPI_NEW_SESSION, 0, @MAPI_Session);   if (dwRet <> SUCCESS_SUCCESS) then begin MessageBox(Handle, PChar('Error while trying to send email'), PChar('Error'), MB_ICONERROR or MB_OK); end else begin FillChar(MapiMessage, SizeOf(MapiMessage), #0); Attachments := nil; FillChar(Receip, SizeOf(Receip), #0);   if Mail.Values['to'] <> '' then begin Receip.ulReserved := 0; Receip.ulRecipClass := MAPI_TO; Receip.lpszName := StrNew(PChar(Mail.Values['to'])); Receip.lpszAddress := StrNew(PChar('SMTP:' + Mail.Values['to'])); Receip.ulEIDSize := 0; MapiMessage.nRecipCount := 1; MapiMessage.lpRecips := @Receip; end;   AttachCount := 0;   for i1 := 0 to MaxInt do begin if Mail.Values['attachment' + IntToStr(i1)] = '' then break; Inc(AttachCount); end;   if AttachCount > 0 then begin GetMem(Attachments, SizeOf(TMapiFileDesc) * AttachCount);   for i1 := 0 to AttachCount - 1 do begin FileName := Mail.Values['attachment' + IntToStr(i1)]; Attachments[i1].ulReserved := 0; Attachments[i1].flFlags := 0; Attachments[i1].nPosition := ULONG($FFFFFFFF); Attachments[i1].lpszPathName := StrNew(PChar(FileName)); Attachments[i1].lpszFileName := StrNew(PChar(ExtractFileName(FileName))); Attachments[i1].lpFileType := nil; end; MapiMessage.nFileCount := AttachCount; MapiMessage.lpFiles := @Attachments^; end;   if Mail.Values['subject'] <> '' then MapiMessage.lpszSubject := StrNew(PChar(Mail.Values['subject'])); if Mail.Values['body'] <> '' then MapiMessage.lpszNoteText := StrNew(PChar(Mail.Values['body']));   WndList := DisableTaskWindows(0); try Result := MapiSendMail(MAPI_Session, Handle, MapiMessage, MAPI_DIALOG, 0); finally EnableTaskWindows( WndList ); end;   for i1 := 0 to AttachCount - 1 do begin StrDispose(Attachments[i1].lpszPathName); StrDispose(Attachments[i1].lpszFileName); end;   if Assigned(MapiMessage.lpszSubject) then StrDispose(MapiMessage.lpszSubject); if Assigned(MapiMessage.lpszNoteText) then StrDispose(MapiMessage.lpszNoteText); if Assigned(Receip.lpszAddress) then StrDispose(Receip.lpszAddress); if Assigned(Receip.lpszName) then StrDispose(Receip.lpszName); MapiLogOff(MAPI_Session, Handle, 0, 0); end; end;

No botão coloque:

procedure TForm1.BitBtn5Click(Sender: TObject);varmail: TStringList;beginmail := TStringList.Create;trymail.values['to'] := 'Email@test.xyz'; ///AQUI VAI O EMAIL DO DESTINATARIO///mail.values['subject'] := 'Hello'; ///AQUI O ASSUNTO///mail.values['body'] := 'blah'; ///AQUI O TEXTO NO CORPO DO EMAIL///mail.values['attachment0'] := 'C:\Test.txt'; ////AQUI O ENDEREÇO ONDE ENCONTRAM OS ARQUIVOS//mail.values['attachment1']:='C:\Test2.txt'; ///IDEM  - NO ATTACHMENT1    TEM QUE COLOCAR A SEQUNCIA DO EMAIL A QUAL DESEJA ENVIAR EXEMPLO: ATTACHMENT1sendEMail(Application.Handle, mail);finallymail.Free;end;end;

 

Espero ter ajudado

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.