Vivendo&Aprendendo
25/10/2004 - 15:26
Olá Galerinha
Necessito de um código que quando clico em um botão ele abra o Outlook mas já com um arquivo anexado.
Alexandre
Progr'amador
25/10/2004 - 16:07
Olá Alexandre.
Tenta isso:
Declare a unit MAPI na cláusula uses
| CODE |
function TForm1.EnviarEmailPadrao(const De, Para, Assunto, Texto, Arquivo: string; Confirma: Boolean): Integer; var Msg: TMapiMessage; lpSender, lpRecepient: TMapiRecipDesc; FileAttach: TMapiFileDesc; SM: TFNMapiSendMail; MAPIModule: HModule; Flags: Cardinal; begin // cria propriedades da mensagem FillChar(Msg, SizeOf(Msg), 0); with Msg do begin if (Assunto <> '') then lpszSubject := PChar(Assunto);
if (Texto <> '') then lpszNoteText := PChar(Texto);
// remetente if (De <> '') then begin lpSender.ulRecipClass := MAPI_ORIG; lpSender.lpszName := PChar(De); lpSender.lpszAddress := PChar(De); lpSender.ulReserved := 0; lpSender.ulEIDSize := 0; lpSender.lpEntryID := nil; lpOriginator := @lpSender; end;
// destinatário if (Para <> '') then begin lpRecepient.ulRecipClass := MAPI_TO; lpRecepient.lpszName := PChar(Para); lpRecepient.lpszAddress := PChar(Para); lpRecepient.ulReserved := 0; lpRecepient.ulEIDSize := 0; lpRecepient.lpEntryID := nil; nRecipCount := 1; lpRecips := @lpRecepient; end else lpRecips := nil;
// arquivo anexo if (Arquivo = '') then begin nFileCount := 0; lpFiles := nil; end else begin FillChar(FileAttach, SizeOf(FileAttach), 0); FileAttach.nPosition := Cardinal($FFFFFFFF); FileAttach.lpszPathName := PChar(Arquivo); nFileCount := 1; lpFiles := @FileAttach; end; end;
// carrega dll e o método para envio do email MAPIModule := LoadLibrary(PChar(MAPIDLL));
if MAPIModule = 0 then Result := -1 else try if Confirma then Flags := MAPI_DIALOG or MAPI_LOGON_UI else Flags := 0;
@SM := GetProcAddress(MAPIModule, 'MAPISendMail');
if @SM <> nil then Result := SM(0, Application.Handle, Msg, Flags, 0) else Result := 1; finally FreeLibrary(MAPIModule);
end; end; |
E num button por exemplo:
| CODE |
| EnviarEmailPadrao(remetente, destinatário,assunto,corpo_da_mensagem,arquivo_anexo,false); |
Qualquer dúvida, posta ae, flw!!!
Abs.
Vivendo&Aprendendo
25/10/2004 - 23:01
Olá amigo
Vlw pela ajuda...
Mas,.... Sou um pouco inexperiente nessa área de envio de e-mail e um pouco em programação, entaum se for possível vc me explicar esse código ou enviar um menos complicado...
Esse código abre o Outlock ou envia pelo sistema mesmo...
Alexandre
Progr'amador
26/10/2004 - 09:47
Olá Alexandre.
Ai vai um exemplo bem bacana que eu montei.
enviar e-mail para o outlookqualquer dúvida posta ae falow!!!
Abs.
Vivendo&Aprendendo
26/10/2004 - 09:49
Vlw Amigão
Vou testar aki e posto a resposta neste post
QUE DEUS TE ABENÇOE
Alexandre
Vivendo&Aprendendo
26/10/2004 - 09:59
Amigo
Testei aki o sistema e é o seguinte tentei enviar uma arquivo txt do e-mail aslalexandre@hotmail.com para o alexandre.lima@bertin.com.br e não enviou e nem deu erro.
O que pode ser??
Desculpe o tormento.
Alexandre
Progr'amador
26/10/2004 - 10:02
Como assim?
Mais abriu o outlook, como o arquivo anexado e tudo mais?
Qual é a versão do seu delphi?
Vivendo&Aprendendo
26/10/2004 - 10:08
Não abriu nem o Outlook e uso o Delphi 7.
Alexandre
Progr'amador
26/10/2004 - 10:12
o problema pode ser a configuração do seu outlook, sua conta ta configura corretamente lá?
é estranho cara

, deveria funcionar!!!
Vivendo&Aprendendo
26/10/2004 - 10:15
Amigão vou reconfigurar o meu outlook e minha conta, e lhe dou a resposta neste post.... tem como fazer isso sem abrir o outlook....... Desculpe por abusar da sua vontade...
hehehehe
Alexandre
Progr'amador
26/10/2004 - 10:26
bom vc quer dizer enviar direto do delphi.
no delphi 7 tem o componente IdSMTP na paleta Indy Clients.
so não sei como usar.
Só que já ouvi falar que todos os provedores requerem autenticação do servidor e com isso não daria certo tambem. (Não tenho certeza disso)
de qual forma não custa tentar né?
e quem souber usar esse componente (IdSMTP) galera, posta ae flw!!!
Abs.
Vivendo&Aprendendo
26/10/2004 - 10:48
Kra
Agora ele abriu o outloook certinho mas não envia a mensagem para o destino que coloco da o seguinte erro:
Sua mensagem não foi recebida por um ou mais dos destinatários.
Assunto: teste
Enviada em: 26/10/2004 09:45
Não foi possível encontrar os seguintes destinatários:
'alexandre.lima@bertin.com.br' em 26/10/2004 09:45
Nenhuma de suas contas de email pôde enviar mensagem para este destinatário.
Será que o hotmail não aceita?
Alexandre
Progr'amador
26/10/2004 - 10:56
é amigo, acredito que seja a questao da autenticação.
se voce escrever direto no outlook, envia normalmente?
Vivendo&Aprendendo
26/10/2004 - 11:26
Kra
O outlook não esta conseguindo estabelecer uma conexão com o hotmail, tem como esse código verificar qual o gerenciador de mail que esta como padrão na máquina e utilizar ele?
Alexandre
Progr'amador
26/10/2004 - 11:42
Cara o problema é Outlook x Hotmail.
O Hotmail usa servidor de e-mail HTTP e não o POP3, e no outlook num tem essa opção (ou não achei), fiz um teste aki no Outlook Express e ele envia normalmente, só que eu num entendo esse negócio direito naum.
Pra usar o Outlook vc tinha que usar outro provedor.
Abs.
Vivendo&Aprendendo
26/10/2004 - 11:49
Amigão esse problema já esta resolvido pois o sindicato no qual estou desenvovendo esta aplicação forneceu e-mail para todos os escritórios que irão utilizar esse sistama e o mail usa POP3, agora só mais uma dívida que postei no post anterior tem como o sistema verificar qual o gerenciador de mail padrão do computador e usar ele tipo assim outlook ou incredimail?
Não fica bravo não sou perguntador mesmo.....hehehehe
Alexandre
Progr'amador
26/10/2004 - 11:59
| QUOTE (Vivendo&Aprendendo @ Oct 26 2004, 11:49 AM) |
| Não fica bravo não sou perguntador mesmo.....hehehehe |
Olá Alexandre.
Num esqueta com isso não cara, afinal esse forum é pra isso mesmo, eu fasso isso por prazer mesmo! flw!!!
Com relação a sua pergunta, infelizmente

eu ainda num sei não cara, mas sempre é bom agente aprender, por isso vou pesquisar sobre esse assunto, e se encontrar alguma coisa eu posto aki, e se alguem souber POSTA ae galera.
Abs.
Vivendo&Aprendendo
26/10/2004 - 12:04
Vlw Amigão
A vc foi de enorme ajuda para mim.... e eu vou pesquisar sobre aquilo tb e se encontrar posto e quem souber posta ai para nós...........vlw
Vou testar com o POP3 e te digo se deu certo..
qual o seu mail???
Alexandre
Progr'amador
26/10/2004 - 12:12
Ae
elienaicm@ig.com.br
Ate+
Vivendo&Aprendendo
27/10/2004 - 07:48
Kra vlw pela ajuda o código que vc me passou deu certinho, manda de qualquer servidor para qualquer servidor...
Mais uma vez Obrigado.... Vcs do forum são demais
Vc deve voltar para a equipe de MODERADORES o mais rápido possível vc e o CAPABLANCA são muito bons nisso... estou aprendendo muito com vcs dois.
Vlw
Alexandre - Vivendo&Aprendendo
Progr'amador
27/10/2004 - 10:11
Valeu alexandre, pela força.
Obrigado.
Então, Resolvido...
Vivendo&Aprendendo
27/10/2004 - 10:30
Sim kra resolvido....
Vlw pela ajuda e sempre que eu precisar eu te procuro hehehehehe
Flw
Esta é uma versão simplificada de nosso conteúdo principal. Para ver a versão completa com maiores informações, formatação e imagens, por favor
clique aqui.