Newsgroup: it.comp.appl.access
Titolo: Invio e-mail da codice vba, client predefinito Outlook si rifiuta di inviare

Win8 64bit, Access2013 (32bit), Outlook configurato come client email 
predefinito, procedura per invio posta elettronica, col classico codice:
-------------------------
Dim SendMail As modClsMAPISendMail
Set SendMail = New modClsMAPISendMail
SendMail.Clear
SendMail.AddTo "", DESTINATARIO
SendMail.Subject = Oggetto
SendMail.Body = MESSAGGIO
SendMail.FileAdd (ALLEGATO)
SendMail.SendImmediately = True
SendMail.Send
Set SendMail = Nothing
-------------------------
 
Dove il modClsMAPISendMail e' questo:
http://www.vbsimple.net/index.htm?/howto/ht_020-2.htm
 
 
Se tento di inviare a posta, mi viene restituito un errore 2
 
Allora ho provato a verificare se su Outlook e' consentito l'accesso 
programmatico (File/Opzioni/Centro Protezione/Impostazioni/Accesso 
Programmatico) e tutto il tab e' in grigetto come disabilitato, pallino 
da nessuna parte
Cercando un po' in rete vedo che anche da registry si puo' modificare,
 
https://www.slipstick.com/developer/change-programmatic-access-options/
 
 
provo, ma niente, non si abilita il tab Accesso Programmatico di Outlook 
ne' si attiva l'opzione per disabilitare il controllo sull'invio email 
da esterno
Provato anche ad entrare in modalita' amministratore (tasto destro sopra 
eseguibile Outlook, avvia come amministratore), niente
 
La domanda e':  sapete come abilitare Outlook a modificare opzioni 
relativamente all'accesso programmatico (a parte le prove descritte sopra)?
 
 


Cancellato tutte le voci registry del tipo Outlook/Security
Rientrato in Outlook in modalita amministratore
Ora il tab Accesso Programmatico e' attivo e modificabile
Ma la spedizione via mapi continua a restituirmi errore 2 al comando di 
invio
Oltre al fatto che ad ogni tentativo invio appare il pannellino
"..il programma sta tentando di inviare....."
Qualche idea sul motivo errore 2 (MAPI_E_FAILURE) e su come eliminare il 
pannellino di attesa interattivo?

Vado a memoria. C'era un sw "clickyes" che faceva quello

 
 
Si, ma da quel che ricordo l'attivazione arrivava dopo quei 5 secondi 
che Outlook impiega per accendere il tasto PROSEGUI
Una ciofeca
Neanche lo considero come possibile soluzione

Il 07/09/2019 12:34, RobertoA ha scritto:

perchè non usi le librerie office in late binding per toglierti ogni 
fastidio?
 
BFS


Vorrei (potendo) non legarmi ad Outlook
Ma sparare verso il client email predefinito
 


io in uno singolo pc salvo un file di configurazione, dove uno dei 
parametri è il client di posta usato
in questo modo all'apertura del programma so che client usa quel pc e di 
conseguenza attivo per l'invio mail la routine dedicata a outlook oppure 
quella dedicata a Thunderbird e Live mail oppure CDO per chi non ha un 
client oppure le api HmailServer per chi lo usa come server mail
 
ad oggi non ho fastidi con nessun client di posta
 
ciao
BFS
 
 
 


Si, credo che pensare alla routine generica sia utopia
Realisticamente bisogna usare metodi diversi in funzione del client 
email installato di volta in volta
Interessante le api Hmail, lo uso anch'io ma non ho mai provato a 
mandargli qualcosa via api

 mandargli qualcosa via api
 
sono comode perchè ti permettono oltre che inviare mail anche di gestire 
le rubriche e tutte le parti di HmailServer
 
ciao
BFS

 quella dedicata a Thunderbird e     Live mail 
 
 
Live Mail mi manca: che codice utilizzi per gestirlo?  (invio mail con allegati ovviamente).
 
Saluti


Windows Live Mail(WLM), mi pare abbia sostituito Windows Mail dal 2007.
Da quanto ne so non espone interfaccia COM specifica, motivo per cui credo nessuno lo possa usare da Automazione.
Tuttavia se impostato come DEFAULT, viene usato automaticamente da DOCMD.SENDOBJECT.
 
Credo che ci possa essere un po di confusione, molti dicono di usare WLM, ma alla fine usano CDO, o MAPI o magari OUTLOOK, e questo perchè non è istanziabile ne referenziabile.
 
Magari le cose sono cambiate... sono curioso pure io a questo punto.
 
@Alex

 Magari le cose sono cambiate... sono curioso pure io a questo punto.
 
 
Infatti m'ha stupito l'affermazione di BFS e oltretutto non ho trovato nulla sul web.
Ma è pur vero che le sue risorse non hanno limiti (come le tue del resto), quindi la curiosità è grande.
 
Saluti di fine estate!  
 
 
 
 


non sarò in italia fino al 24 quindi non ho modo di recuperarti il codice.
cmq è lo stesso che uso per inviare le mail da TB
se WLM è il client predefinito funziona alla perfezione.
 
ciao
BFS
 
 
 

 se WLM è il client predefinito funziona alla perfezione.
 
 
Ah, io utilizzo MAPI per inviare mail da Thunderbird ma pareva non andasse con WLM
 
Saluti