Leggere la posta elettronica mediante le sole risorse di Gambas

Da Gambas-it.org - Wikipedia.

Per leggere mediante le risorse di Gambas la propria posta elettronica, è necessario attivare i seguenti Componenti:

  • gb.net
  • gb.net.pop3
  • gb.mime


Mostriamo un esempio pratico:

Public Sub Main()
 
 Dim pop As New Pop3Client
 Dim mm As Mime
 Dim mimess As MimeMessage
 Dim nomefile, dati_allegato, idHeader As String
 Dim contenuto, decodifica As String
 Dim email, codifica As Integer
 
   With pop
     .Host = "pop.server.it"
     .Port = numero_porta
     .User = "nome_utente"
     .Password = "password"
     .Encrypt = Net.SSL
     .Debug = False
     .Open()
   End With
 
' Imposta il numero d'indice della e-mail ricevuta da leggere:
   email = 4
       
' Controlla che il numero di e-mail non sia inesistente:
   If email > pop.Count - 1 Then
     Print "\n\e[5mIl numero di e-mail scelto è superiore a quello delle e-mail effettivamente presenti !" 
     Quit
   Endif
 
   Print "===== E-MAIL RICEVUTA n. "; email + 1; " =====\n"
   With mimess = New MimeMessage(pop[email].Text)
' Mostra il mittente della e-mail ed il suo indirizzo:
     Print "\e[1mMittente:  \e[21m "; .Sender
     Print "\e[1mTo:        \e[21m "; .To
     If Not IsNull(.Cc) Then Print "\e[1mCc:        \e[21m "; .Cc
     If Not IsNull(.BCc) Then Print "\e[1mBcc:       \e[21m "; .BCc
' Mostra l'argomento della e-mail:
     Print "\e[1mArgomento: \e[21m "; .Subject
     Print "\n\e[1mTESTO: \e[21m \n"
' Legge il testo della prima parte della e-mail:
     Print .Part[0].Data
     
' Verifica se c'è un file allegato. Se c'è, lo scarica:
     If .Part[.Part.Count - 1].ContentDisposition Like "*attachment*" Then 
       nomefile = .Part[.Part.Count - 1].FileName
       codifica = .Part[.Part.Count - 1].ContentEncoding
       idHeader = .Part[.Part.Count - 1].ContentId
       contenuto = .Part[.Part.Count - 1].ToString()
       dati_allegato = Scan(contenuto, "*" & idHeader & ">\n*")[1]
       decodifica = mm.Decode(dati_allegato, codifica)
' Salva il file allegato con il nome e nel percorso prescelti:
       File.Save("/tmp" &/ nomefile, decodifica)
     Endif
   
   End With
    
End


Pagina in costruzione !