Ciao, ti passo un mio tip:
Aprire il programma predefinito per inviare eMail
Un sistema semplice per consentire all'utente di inviare un'email consiste nell'utilizzare il client di posta
elettronica predefinito.
La funzione API ShellExecute fa al caso nostro. Questa funzione, infatti, permette di eseguire un comando che, nel
caso dell'invio di eMail, si tratta di mailto.
codice:
Option Explicit
Private Declare Function ShellExecute Lib "Shell32" Alias "ShellExecuteA" (ByVal Hwnd As Long _
, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String _
, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
'
Function OpenMailProgram(ByVal EMailAddress As String) As Boolean
' - Apre il programma predefinito per l'invio di Posta elettronica
' completando il campo del destinatario con l'indirizzo EMail riportato
' da EMailAddress.
' Restituisce True in caso di successo, altrimenti False.
Dim Res As Long
Res = ShellExecute(0&, "open", "mailto:" & EMailAddress, vbNullString, vbNullString, vbNormalFocus)
OpenMailProgram = (Res > 32)
End Function
'
Function OpenMailProgram2(ByVal EMailAddress As String, Optional Subject As String, Optional BODY As String _
, Optional sCC As String, Optional sBCC As String) As Boolean
' - Questa seconda versione apre il programma predefinito per l'invio di
' Posta elettronica completando altri campi oltre all'EMailAddress:
' Subject: Oggetto
' BODY: Testo della Mail
' sCC: Indirizzo di CC
' sBCC: Indirizzo di BC
' N.B: Per inserire caratteri speciali nel campo BODY, occorre indicarli nel seguente formato: %n
' dove n è il codice esadecimale del carattere.
' Es: Ciao,%D%A Come stai ?
' Equivale a "Ciao," & Chr$(13) & Chr$(10) & " Come stai ?"
' La funzione restituisce True in caso di successo, altrimenti False.
Dim Res As Long
Res = ShellExecute(0&, vbNullString, "mailto:" & EMailAddress & _
"?sublect=" & Subject _
& "&body=" & BODY _
& "&CC=" & sCC _
& "&BCc=" & sBCC, 0&, 0&, 1)
OpenMailProgram2 = (Res > 32)
End Function
'
Private Sub Command1_Click()
' Ecco un esempio di chiamata della funzione "OpanMailProgram2"
Me.OpenMailProgram2 "mbellinaso@vb2themax.com", "Send Mail Test", "This function works !!!" _
, "fbalena@vb2themax.com", "deposito@vb2themax.com"
End Sub
Ciao e buon lavoro
Simo