Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117

    [VB6] - Conferma di invio con MAPI

    Ciao ragazzi mi sono incartata su un punto del mio controllo MAPI.

    Io invio e-mail con allegati tramite il controllo MAPI. Il problema è che registro tutti gli invii su un database access e quindi avrei bisogno di sapere se il messaggio è stato effettivamente inviato.

    Ho provato a usare:

    codice:
    If MAPIMessages1.MsgSent = True Then
            MsgBox "Spedito"
        Else
            MsgBox "Non spedito"
        End If
    Ma non mi sembra funzioni dacchè mi da sempre la msgbox "Non Spedito" anche quando l'ha spedito!

    Questo è il codice che uso per spedire le mails e funziona:

    codice:
        destinatario = "miaemail@mioprovider.it"
        MAPISession1.DownLoadMail = False
        MAPISession1.SignOn
        With MAPIMessages1
            .SessionID = MAPISession1.SessionID
            .Compose
            .RecipAddress = destinatario
            .RecipDisplayName = "Mio Destinatario"
            .MsgSubject = "Mio Oggetto"
            .MsgNoteText = "Mio Testo della mail"
        End With
        MAPIMessages1.AttachmentIndex = 0
        MAPIMessages1.AttachmentPathName = "mioAllegato.txt"
        MAPIMessages1.AttachmentName = "nomeMioAllegato.txt"
        MAPIMessages1.Send
        MAPISession1.SignOff
    Grazie a tutti!

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Penso che se la Sent non ti da' errori, allora il messaggio e' stato spedito.

    Ovviamente, Che sia stato regolarmente ricevuto e' un'altra storia ...

  3. #3
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117
    in che senso?
    Il problema è che se mi desse errori il codice per scrivere l'invio sul db come lo gestisco?

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Non capisco ...

  5. #5
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117
    Scusa son io che non capisco...

    dove lo trovo il valore booleano che mi dice se l'email è spedita o no?

    La funzione Sent restituisce sempre false (anche se il messaggio è spedito).

    Se devo aspettare errori (come mi suggerisci) non sarebbe molto affidabile. Se per esempio nella finestrella di conferma di invio del MAPI io clicco annulla non mi da errori però mi segnerebbe il messaggio come inviato nel db (visto che non avendo errori avvierebbe la scrittura sul db)...aiuto! Mi sto cuocendo il cervello! VVoVe:

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Sto dicendo che se la

    MAPIMessages1.Send

    non ti restituisce errori, allora puoi ritenere che sia stata spedita.

  7. #7
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117
    E io sto dicendo che se io clicco Annulla all'invio della mail non mi restituisce errori ma la mail non è spedita!

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Devi inserire il controllo d'errore all'inizio della sub

    codice:
        On Error Goto errh
    poi il tuo codice fino a

    codice:
        MAPIMessages1.Send True  ' Nota il True
        
    xit:
        MAPISession1.SignOff
        Exit Sub
        
    errh:
      If Err.Number = 32001 Then MsgBox "L'utente NON ha inviato il messaggio"
      Resume xit

  9. #9
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117
    mmm cosi facendo mi apre la finestra di outlook...ed ho visto che se ci son problemi di connessione mi si incarta tutto il programma... (poi non so se è il mio pc matto). e devo usare termina processo...


    non si può fare senza mettere il true dopo il send? Così non mi apre la finestra nuovo messaggio di outlook!

    Grazie ancora!


    ma sto msgSent che l'han fatto a fare?!?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.