Generazione mail

di il
7 risposte

Generazione mail

Buona sera,

volevo sapere se ci fosse della documentazione dove spiegano anche con esempi la generazione di un mail tramite codice.
sotto questo punto di vista sono davvero alla base.

grazie mille

7 Risposte

  • Re: Generazione mail

    f.developer ha scritto:


    volevo sapere se ci fosse della documentazione dove spiegano anche con esempi la generazione di un mail tramite codice.
    sotto questo punto di vista sono davvero alla base.
    Usando la libreria Indy Components, si può creare un messaggio e-mail generico con il componente TIdMessage e, successivamente, inviarlo tramite il componente TIdSMTP, che rappresenta un client per server di recapito posta che usano l'omonimo protocollo SMTP.

    In questo articolo ci sono spiegazioni ed esempi di codice.

    Ciao!
  • Re: Generazione mail

    Ho un problema riguardo un sti usando outlook ed ogni voltami mostra un errore di permessi.
    come posso eliminare il problema da codice o su outlook fargli consentire sempre
  • Re: Generazione mail

    f.developer ha scritto:


    Ho un problema riguardo un sti usando outlook ed ogni voltami mostra un errore di permessi.
    come posso eliminare il problema da codice o su outlook fargli consentire sempre
    Non è chiaro quello che hai scritto, in particolare non capisco qual è l'errore preciso, qual è la configurazione che stai utilizzando e di quale codice stiamo parlando.
  • Re: Generazione mail

    f.developer ha scritto:


    Ho un problema riguardo un sti usando outlook ed ogni voltami mostra un errore di permessi.
    come posso eliminare il problema da codice o su outlook fargli consentire sempre
    se vuoi ti posso dare il sorgente di un programma che ho realizzato io.
  • Re: Generazione mail

    In passato ci ho perso un bel po' di tempo anche io, prova con questa:
    
                         xMail : String;
                         xCC   : String;
                         xSubj : String;
                         xBody : String;
                         xAttch: Array of String;
                         
    PROCEDURE RunOutlook;//compilo outlook
        const olMailItem = $00000000;
          var Outlook    : OleVariant;
              vMailItem  : Variant;
              Var1       : Byte;
        BEGIN
              //verifica installazione outlook
              Try Outlook := GetActiveOleObject('Outlook.Application');//se già aperto
                  Except
                  Screen.Cursor := crHourGlass;
                  Try Outlook := CreateOleObject('Outlook.Application');//prova ad aprirlo
                      Except//non installato
                      Screen.Cursor := crDefault;
                      //RunDefShell;//lancio il default
                      Exit;
                  End;
              End;
    
              //sostituisce il carattere di invio
              xBody := StringReplace(xBody,'%0D%0A',#13#10,[rfReplaceAll,rfIgnoreCase]);
    
              //compila outlook e lancia
              Try Try vMailItem := Outlook.CreateItem(olMailItem);
                      vMailItem.Recipients.Add(xMail);
                      vMailItem.CC := xCC;
                      vMailItem.Subject := xSubj;
                      vMailItem.Body := xBody;
    
                      If FilesCount>0 Then //allegati
                         For Var1:=0 To FilesCount-1 Do
                             vMailItem.Attachments.Add(xAttch[Var1]);
    
                      //vMailItem.Send;//invia e-mail automaticamente
                      //Attendi(0,500);
                      vMailItem.Display(False); //(true) mostra e attende
                      Finally
                      Try VarClear(Outlook); Except End;
                      Screen.Cursor := crDefault;
                  End;
                  Except
              End;
        END;
  • Re: Generazione mail

    atticus ha scritto:


    In passato ci ho perso un bel po' di tempo anche io, prova con questa:
    
    .....
              Try VarClear(Outlook); Except End;
    .....
     
    Non capisco il motivo per cui viene creato un blocco try except e poi non viene gestisto, in questo modo in caso di errore non si saprà mai se tutto è filato liscio oppure no.
    Nick.
  • Re: Generazione mail

    Sinceramente non ricordo perché l'ho messo, comunque puoi gestirlo come vuoi, o lo togli oppure fai sollevare una eccezione. Può darsi che a volte dava problemi nel liberare la risorsa
Devi accedere o registrarti per scrivere nel forum
7 risposte