Attach Files using MailTo:

Post Reply
User avatar
Pedro Faro
Posts: 31
Joined: Sun Jan 29, 2006 6:34 pm
Location: Lisboa-Portugal
Contact:

Attach Files using MailTo:

Post by Pedro Faro »

Hi

Is possible to attach files using MailTo:

I can´t use SMTP because the Intranet uses a exchange server

Regards

Pedro
User avatar
Maurilio Viana
Posts: 252
Joined: Tue Oct 25, 2005 2:48 pm
Location: Garça/Garza/Heron City - Brazil
Contact:

Re: Attach Files using MailTo:

Post by Maurilio Viana »

Pedro,

If you refer to use Windows "mailto:" command it's not possible.

Regards,
Maurilio
User avatar
Biel EA6DD
Posts: 680
Joined: Tue Feb 14, 2006 9:48 am
Location: Mallorca
Contact:

Post by Biel EA6DD »

Code: Select all

   LOCAL cTexto:=  "txt ....",;
         eSubject:="?Subject="+ cTexto,;
         eBody:="&body=" + cTexto ,;
         eTo:="mailto:bmaimo@piema.info",;
         eAttachment:="&attach=\My Documents\file.txt",;
         CmdLine := eTo+eSubject+ebody+eAttachment

   Shellexecute(ownd:hWnd,"open",cMdLine )
Last edited by Biel EA6DD on Fri Nov 03, 2006 6:21 pm, edited 1 time in total.
Saludos desde Mallorca
Biel Maimó
http://bielsys.blogspot.com/
User avatar
Maurilio Viana
Posts: 252
Joined: Tue Oct 25, 2005 2:48 pm
Location: Garça/Garza/Heron City - Brazil
Contact:

Post by Maurilio Viana »

Biel,

I think mailto: have not 'Attach' parameter :(

http://msdn.microsoft.com/library/defau ... mailto.asp
http://www.ianr.unl.edu/internet/mailto.html

Regards
Maurilio
User avatar
Biel EA6DD
Posts: 680
Joined: Tue Feb 14, 2006 9:48 am
Location: Mallorca
Contact:

Post by Biel EA6DD »

You are right Maurilio, maybe in the past, but today &Attach is not running.
I have an old VB code using &Attach, but after testing today I can see it's not running.

Code: Select all

...
sAddedText = sAddedText & "&Attach=" & Chr(34) & txtAttachmentFileLocation & Chr(34)
Call ShellExecute(Me.hWnd, "open", sText, vbNullString, vbNullString, SW_SHOWNORMAL)
   
Saludos desde Mallorca
Biel Maimó
http://bielsys.blogspot.com/
Rochinha
Posts: 309
Joined: Sun Jan 08, 2006 10:09 pm
Location: Brasil - Sao Paulo
Contact:

Post by Rochinha »

Amiguinho

Esta solução para envio de email é bem aplicada para o teu caso.

Os programas são muito pequenos e tem funcionamento muito simples.

GetMail
Baixa as mensagens uma a uma em arquivos TeXTo e desta forma bastaria analisar o código e interpretar a mensagem podendo ser apresentado dentro de campos memo.

Cliquem neste link e baixem-no.

A sintaxe é apresentada somente digitando no prompt do DOS a palavra GETMAIL

Vejam:

GETMAIL -u usuario@provedor.com.br -pw senha -s pop3.provedor.com.br

Blat
Talvez o mais conhecido de todos possui caracteristicas de suportar anexos e agora pode autenticar as mensagens. Peguem neste link.

Sintaxe:

BLAT -body "Corpo da mensagem" -server smtp.ig.com.br
-to toledo@pctoledo.com.br -f jscrocha@terra.com.br
-subject "Assunto" -u jscrocha -pw senha -attach c:\teste.txt

SendMail
Achei o mesmo muito bom e esta contido em um executavel de 32k. Contem os recursos de anexos e autenticação. Peguem neste link.

Sintaxe:

SendMail /smtpserver smtp.itelefonica.com.br
/from jscrocha@terra.com.br
/subject Teste com sendmail
/body Corpo da mensagem
/smtpport 25
/attachment c:\teste.txt
/user irochinha
/password senha

Os comandos devem estar em somente uma linha.

mapisend

mapisend -u "<profile>" -p <anything> -r <recipient> -s "<subject>" -t <text file containing the message>
e.g. mapisend -u "john savill" -p anything -r john@savilltech.com -s "Test message" -t c:\message\mail4.txt

-u Nome de quem envia
-p Senha da conta de email
-i Pede senha e usuario em prompt
-r Email Recipiente(de quem vai receber a memsagem)
-c Email de copia
-s Assunto
-m Conteudo do email
-t Texto externo anexo ao corpo da mensagem
-f Arquivo anexo externo
-v Gera resumo sobre a operação

Baixe deste link. Cortesia de Dudu_xBase.

Com o codigo exemplo exemplificado mais a frente será fácil implementar este utilitario ao codigo e usar em seus aplicativos.

Pensando em utiliza-los em meus sistemas preparei um teste através de um pequeno aplicativo em Fivewin que pode ser entendido e re-escrito em Clipper DOS.

Codigo completo:

Code: Select all

// Testing FiveWin new Internet Outgoing mail (SMTP protocol) Class

#include "FiveWin.ch"

static oWnd

//----------------------------------------------------------------------------//
function eudora()
   local oBar
   DEFINE WINDOW oWnd TITLE "Gerenciador de E-Mail"
   DEFINE BUTTONBAR oBar _3D OF oWnd
   DEFINE BUTTON OF oBar ;
                 ACTION Blat( "Este e o corpo da mensagem",;
                              "smtp.itelefonica.com.br",;
                              "jscrocha@terra.com.br",;
                              "irochinha@itelefonica.com.br",;
                              "Greetings from Joe!",;
                              "Usuario",;
                              "Senha",;
                              "c:\drvgames.txt" ) TOOLTIP "Enviar Mail"
   DEFINE BUTTON OF oBar ;
                 ACTION GetMail( "usuario",;
                                 "Senha",;
                                 "pop.sao.terra.com.br" ) TOOLTIP "Receber Mail"
   DEFINE BUTTON OF oBar ;
                 ACTION SendMail( "smtp.itelefonica.com.br",;
                                  "jscrocha@terra.com.br",;
                                  "irochinha@itelefonica.com.br",;
                                  "SendMail teste" ,;
                                  "Este foi um teste com SendMail" ,;
                                  25 ,;
                                  "c:\drvgames.txt" ,;
                                  "usuario" ,;
                                  "Senha" )
   SET MESSAGE OF oWnd TO "SoftClever" NOINSET DATE TIME KEYBOARD
   ACTIVATE WINDOW oWnd 
   return nil

//----------------------------------------------------------------------------//
function blat( cbody ,;
               cserver ,;
               cto ,;
               cf ,;
               csubject ,;
               cu ,;
               cpw ,;
               cattach )
     BlatCMD := [ -body "]    + alltrim(cbody) + ["] + ;
                [ -server ]   + alltrim(cserver) + ;
                [ -to ]       + alltrim(cto) + ;
                [ -f ]        + alltrim(cf) + ;
                [ -subject "] + alltrim(csubject) + ["] + ;
                [ -u ]        + alltrim(cu) + ;
                [ -pw ]       + alltrim(cpw) + ;
                [ -attach ]   + alltrim(cattach) 
     cMacro="BLAT.EXE" + BlatCMD
     memowrit( "put.bat", cMacro )
     ? cMacro
     MsgRun( "Enviando a "+LOWER(cServer)+"..." )
     WinExec( "put.bat", 7 )
     RETURN .T.

function GetMail( cuser ,;
                  cpass ,;
                  cserver )
     GetMCMD := " -u "   + alltrim(cuser) + ;
                " -pw "  + alltrim(cpass) + ;
                " -s "   + alltrim(cserver)
     cMacro="GETMAIL.EXE" + GetMCMD
     memowrit( "get.bat", cMacro )
     ? cMacro
     MsgRun( "Recebendo de "+LOWER(cServer)+"..." )
     WinExec( "get.bat", 7 )
     RETURN .T.

function SendMail( cSmtpServer ,;
                   cTo ,;
                   cFrom ,;
                   cSubject ,;
                   cBody ,;
                   nSmtpPort ,;
                   cAttachment ,;
                   cUser ,;
                   cPassword )
     SendMail := " /smtpserver " + alltrim(cSmtpServer) +;
                 " /to "         + alltrim(cTo) +;
                 " /from "       + alltrim(cFrom) +;
                 " /subject "    + alltrim(cSubject) +;
                 " /body "       + alltrim(cBody) +;
                 " /smtpport "   +     str(nSmtpPort) +;
                 " /attachment " + alltrim(cAttachment) +;
                 " /user "       + alltrim(cUser) +;
                 " /password "   + alltrim(cPassword)
     cMacro="SENDMAIL " + SendMail
     memowrit( cMacro )
     ? cMacro
     memowrit("sendmail.bat",cMacro)
     MsgRun( "Conectando a "+LOWER(cSmtpServer)+"..." )
     WinExec( cMacro, 7 )
     RETURN .T.
A linha ? cMacro apenas apresenta o conteudo da linha de comando não tendo efeito nenhum no processamento.

@braços :?)
Post Reply