ok alla fine ho risolto col mailTo.
Alla fine rispecchia benissimo quello che mi serviva! Ovvero la gestione di tutto col client di posta (che è la cosa migliore).
C'è solo un piccolo problema...io lancio il processo così:
codice:
System.Diagnostics.Process.Start(strMail)
dove strMail è la stringa mailTo
Per esigenze del server di posta in uscita ho diviso gli invii in blocchi da 97 destinatari, mi spiego meglio:
Il server di posta in uscita non accetta più di 100 destinatari alla volta quindi se io ho 200 destinatari il programma mi apre tot finestre quanti sono i multipli di 97 (in questo caso mi apre 3 finestre: 2 con 97 destinatari e una con i restanti 6).
Tutto questo ovviamente è affidato a un ciclo FOR che mi aggiunge le mail della listview alla stringa mailTo e quando arriva a 97 lancia il processo e passa alla creazione della nuova stringa.
Sul mio pc funziona benissimo però sull'altro pc (+ lento credo sia quello il problema) Mi da un eccezione...temo che il lancio del processo si accavalli al precedente (non essendo il pc abbastanza veloce) perchè se no non mi spiego come sul mio possa funzionare e su quello no!
Vi posto l'eccezione:
codice:
************** Testo dell'eccezione **************
System.ComponentModel.Win32Exception: Accesso negato
in System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo)
in System.Diagnostics.Process.Start()
in System.Diagnostics.Process.Start(ProcessStartInfo startInfo)
in System.Diagnostics.Process.Start(String fileName)
in agendaPCA.frmMailingList.bttSpedisci_Click(Object sender, EventArgs e)
in System.Windows.Forms.Control.OnClick(EventArgs e)
in System.Windows.Forms.Button.OnClick(EventArgs e)
in System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
in System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
in System.Windows.Forms.Control.WndProc(Message& m)
in System.Windows.Forms.ButtonBase.WndProc(Message& m)
in System.Windows.Forms.Button.WndProc(Message& m)
in System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
in System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
in System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Se il problema fosse questo dovrei trovare il modo di aprire i processi solo una volta che quello precedente è aperto credo..ma non so come ...