Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > it.comp.lang.visual-basic > #19910
| Newsgroups | it.comp.lang.visual-basic |
|---|---|
| Date | 2021-07-13 00:20 -0700 |
| References | <72251dc4-141e-4310-8e54-183dc6c2dc17n@googlegroups.com> <scf9j0$4m1$1@gioia.aioe.org> <0cbf94bc-41ab-437f-83b0-d573b78e5592n@googlegroups.com> <sch2l7$eav$1@gioia.aioe.org> |
| Message-ID | <59d1dd85-5326-4b80-9569-0ae662d12ed2n@googlegroups.com> (permalink) |
| Subject | Re: vb6 e outlook |
| From | gaetano cala <calabresega@gmail.com> |
Il giorno lunedì 12 luglio 2021 alle 11:39:56 UTC+2 RobertoA ha scritto:
> Il 12/07/2021 09:24, gaetano cala ha scritto:
> > Il giorno domenica 11 luglio 2021 alle 19:25:59 UTC+2 RobertoA ha scritto:
> >> Il 11/07/2021 14:10, gaetano cala ha scritto:
> >>> buongiorno,è da molto che non programmo in vb6,perdonatemi per la mia richiesta:in una form ho scritto un codice che tramite la pressione di un commandbutton mi esegue una ricerca ed invia la stessa email a tutti i destinatari. Il codice va bene : fa la ricerca,apre outlook,mi mostra la email ed i destinatari e mi da la possibilita di inviare la email,solo che questa viene spedita solo se io riapro outlook e mi collego con il mio account. come posso evitare questo ultimo passaggio ? questo è il codice :
> >>> Private Sub Command1_Click()
> >>> Dim OutApp As Object
> >>> Dim OutMail As Object
> >>>
> >>> Dim destinatari As String
> >>>
> >>>
> >>> Dim cn As ADODB.Connection
> >>> Dim rs As ADODB.Recordset
> >>> Dim database As String
> >>>
> >>> database = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
> >>> database = database & App.Path & "\" & "ospiti.mdb"
> >>>
> >>> Set cn = New ADODB.Connection
> >>> Set rs = New ADODB.Recordset
> >>>
> >>> cn.Open database
> >>>
> >>> rs.Open "Select EMAIL from ANAGRAFICA where MID (DATANASCITATESTO,1,5) = '" & Text1.Text & "'", cn, 3, 3#
> >>>
> >>>
> >>> rs.MoveFirst
> >>> Do Until rs.EOF
> >>> destinatari = (destinatari & ";") & rs.Fields("EMAIL")
> >>> rs.MoveNext
> >>>
> >>>
> >>> Loop
> >>> Set OutApp = CreateObject("Outlook.Application")
> >>> Set OutMail = OutApp.CreateItem(0)
> >>> With OutMail
> >>> .To = ""
> >>> .CC = destinatari
> >>>
> >>> .Display
> >>> End With
> >>>
> >>> Set OutMail = Nothing
> >>> Set OutApp = Nothing
> >>>
> >>>
> >>> End Sub
> >>>
> >> L'invio email e' una funzionalita' che dipende fortemente da come e'
> >> preparato il pc sul quale si sta lavorando
> >> Ti consiglio di slegarti dal client attualmente installato
> >> Magari su un pc hai Outlook, su altro hai Thunderbird e cosi via, e
> >> quindi se realizzi tutto 'cablato' su Outlook, poi capita che se non ti
> >> funziona piu' l'invio email
> >> Per sganciarti dal client email installato, e garantirti la perfetta
> >> funzionalita' su tutte le installazioni che avrai, puoi usare Swithmail
> >> oppure Blat
> >> Sono dei programmi che avvii a riga di comando e puoi inviare messaggi a
> >> chi vuoi, anche loggando eventuali errori che potrai poi leggere
> >> Destinatari multipli, allegati, log errori, testo messaggio anche in
> >> html, fanno di tutto
> >
> > Grazie ma penso di aver risolto con queste linee di programma :
> >
> > Dim MailDestinatario As String
> > Dim IDTuoAccountGmail As String
> > Dim PasswordTuoAccountGmail As String
> > Dim Oggetto As String
> > Dim CorpoMessaggio As String
> > Set iMsg = CreateObject("CDO.Message")
> > Set iConf = CreateObject("CDO.Configuration")
> > Set Flds = iConf.Fields
> >
> > schema = "http://schemas.microsoft.com/cdo/configuration/"
> > Flds.Item(schema & "sendusing") = 2
> > Flds.Item(schema & "smtpserver") = "smtp.gmail.com"
> > Flds.Item(schema & "smtpserverport") = 465
> > Flds.Item(schema & "smtpauthenticate") = 1
> > Flds.Item(schema & "sendusername") = "tuaemail"
> > Flds.Item(schema & "sendpassword") = "password" 'bisogna generare una password per applicazione in google,io la password l'ho
> > 'chiamata vb6
> >
> > Flds.Item(schema & "smtpusessl") = 1
> > Flds.Update
> >
> > With iMsg
> > .to = destinatari
> > .From = "tuaemail"
> > ''.Sender = ""
> > '.ReplyTo = ""
> > .Subject = Oggetto
> > .HTMLBody = CorpoMessaggio
> >
> > Set .Configuration = iConf
> >
> > sendemailgmail = .Send
> >
> > End With
> >
> > Set iMsg = Nothing
> > Set iConf = Nothing
> > Set Flds = Nothing
> >
> > Aggiungo queste linee alle mie precedenti,opportunamente modificate, e tutto funziona; solo che i destinatari vedono anche gli indirizzi email degli altri,non so come risolvere.
> >
> Quel 'destinatari' mettilo su .ccn al posto del .to
> Fossi in te, meterei l'invio delle email dentro al ciclo che raccoglie i
> destinatari, e manderei un'email per ognuno
> Se qualcuno rispondesse, avresti la possibilita' di comunicare con
> maggior precisione solamente con illo
Si grazie,cosi ho fatto.
Back to it.comp.lang.visual-basic | Previous | Next — Previous in thread | Find similar
vb6 e outlook gaetano cala <calabresega@gmail.com> - 2021-07-11 05:10 -0700
Re: vb6 e outlook "Freccia (VegetaSSj)" <NIENTESPAMfreccia_vegetassj@hotmail.invalid> - 2021-07-11 15:33 +0200
Re: vb6 e outlook RobertoA <amorosik@tiscalinet.it> - 2021-07-11 19:25 +0200
Re: vb6 e outlook gaetano cala <calabresega@gmail.com> - 2021-07-12 00:24 -0700
Re: vb6 e outlook RobertoA <amorosik@tiscalinet.it> - 2021-07-12 11:39 +0200
Re: vb6 e outlook gaetano cala <calabresega@gmail.com> - 2021-07-13 00:20 -0700
csiph-web