Invio della posta elettronica

Da Gambas-it.org - Wikipedia.
Versione del 10 set 2012 alle 15:29 di Vuott (Discussione | contributi) (Uso di Thunderbird)

Per inviare la posta elettronica con Gambas possiamo utilizzare almeno quattro modalità.


Uso del metodo ".SendMail" della classe Desktop

Per poter utilizzare il metodo ".SendMail" della classe Desktop, si dovrà impostare nel progetto anche il componente gb.desktop:

Public Sub Button1_Click()

 Desktop.SendMail(["lista_degli_indirizzi_email_dei_destinatari"], ["lista_dei_destinatari_CC"], ["lista_dei_destinatari_BCC"], "oggetto_dell'email", "corpo_dell'email", "percorso_del_file_che_sarà_allegato")

End

Se la lista CC e/o la lista BCC non è presente, allora si porrà uno spazio vuoto: [" "],... .

In questo caso il browser avvierà il programma per la gestione della posta elettronica.


Uso della Classe "SmtpClient"

Per utilizzare la classe "SmtpClient", si dovrà impostare nel progetto anche il componente gb.net.smtp:
Paragrafo in costruzione


Uso del comando specifico html

Con alcuni oggetti che supportano il codice html si potrà utilizzare lo specifico comando A HREF + mailto:

Public Sub Button1_Click()

' qui, come esempio, utilizzeremo l'oggetto "Message":
  Message.Info("<A HREF=\"mailto:indirizzo_email_del_destinatario\">Un testo qualsiasi</a>")

End

In questo caso il browser avvierà il programma per la gestione della posta elettronica.


Uso di Thunderbird

Mostreremo ora la modalità per inviare posta elettronica mediante "Thunderbird" con l'uso del comando Shell: |1|

Public Sub Button1_Click()

  postaElettronica("indirizzo_destinatario", "Oggetto_dell'email", "Corpo_dell'email", "invio_file_allegato")

End


Public Sub postaElettronica(destinatario As String, oggetto As String, corpo As String, allegato As String)

 Dim comandomail As String  
 Dim hmail As Process
 
' Per "Thunderbird":
  comandomail = "thunderbird -compose to='"  
  comandomail &= destinatario  
  comandomail &= "',subject='"  
  comandomail &= oggetto  
  comandomail &= "',body='"  
  comandomail &= corpo

  If allegato = "no" Then  
      comandomail &= "'"  
    Else    
      comandomail &= "',attachment='"  
      comandomail &= allegato & "'"  
  Endif

' Avvia il programma per la gestione della posta elettronica:
   hmail = Shell (comandomail)       |2|

Else If client = 1 Then

' ****PER EVOLUTION:
 comandomail = "evolution mailto:"
 comandomail &= destinatario
 comandomail &= "?subject='"
 comandomail &= oggetto
 If allegato = "no" Then
 comandomail &= "'"
 Else
 comandomail &= "'\\&attach="
 comandomail &= allegato
 Endif
 comandomail &= "\\&body='"
 comandomail &= corpo
 comandomail &= "'"
 hmail = Shell (comandomail)     

Else If client = 2 Then

' ****PER KMAIL:
 comandomail = "kmail "
 If allegato = "no" Then
 Else
 comandomail &= " --attach "
 comandomail &= allegato
 Endif
 comandomail &= " mailto:"
 comandomail &= destinatario

 comandomail &= "?subject='"
 comandomail &= oggetto
 comandomail &= "'"
 comandomail &= "\\&body='"
 comandomail &= corpo
 comandomail &= "'"
 hmail = Shell (comandomail)   

Endif

End

In questo caso il browser avvierà il programma per la gestione della posta elettronica.

Note

[1] Il codice è tratto da un suggerimento dell'utente "Golia" nel Forum di Gambas-it.org .

[2] In sostanza la linea del comando è la seguente (senza file allegato): hmail = Shell "thunderbird -compose to='indirizzo_del_destinatario',subject='Oggetto_dell'email',body='testo_del_corpo'"