Sinceramente non ho provato, ma ho visto guide dove è possibile inviare una mail direttamente da c#
.net mette a disposizione System.Net.Mail, che permette di inviare mail, basta avere una account mail, ed utilizzare il server smtp e le credenziali di accesso.
Il problema è che in questo modo la mail non viene inviata con il programma di posta predefinito, e si rischia di perderne traccia una volta inviata.
In realtà il modo per aprire il programma di posta predefinito, lo avevo già pure trovato, basta utilizzare la solita sintassi che si utilizza ad esempio con i link mailto del html.
System.Diagnostics.Process.Start(@"mailto:mail@mail.com?subject=Test invio&body=prova invio email&attachment="c:\miofile.txt"");
Funziona quasi tutto, il programma predefinito si apre, l'indirizzo email viene correttamente già inserito, l'oggetto della mail anche, e il corpo del messaggio correttamente inserito.
Il problema è che non viene allegato il file, ma da una ricerca ho capito che a causa di nuove implementazioni di sicurezza, non è più possibile allegare file con la procedura mailto.
Quindi speravo che con c# fosse possibile fare qualcosa di più che con il semplice html.