È possibile utilizzare il System.Net.Mail che ha la proprietà MailMessage.Attachments. Qualcosa di simile:
message.Attachments.Add(new Attachment(yourAttachmentPath));
O
Si può provare in questo modo:
using SendFileTo;
namespace TestSendTo
{
public partial class Form1 : Form
{
private void btnSend_Click(object sender, EventArgs e)
{
MAPI mapi = new MAPI();
mapi.AddAttachment("c:\\temp\\file1.txt");
mapi.AddAttachment("c:\\temp\\file2.txt");
mapi.AddRecipientTo("[email protected]");
mapi.AddRecipientTo("[email protected]");
mapi.SendMailPopup("testing", "body text");
// Or if you want try and do a direct send without displaying the
// mail dialog mapi.SendMailDirect("testing", "body text");
}
}
}
Il codice precedente utilizza la MAPI32.dll.
Source
Probabilmente non sarà allegare il documento perché si è in libertà del client di posta elettronica per implementare il protocollo mailto e includere analisi per la clausola allegato. Potresti non sapere quale client di posta elettronica è installato sul PC, quindi potrebbe non funzionare sempre - Outlook sicuramente non supporta gli allegati tramite mailto.
fonte
2015-12-24 07:00:29
perché non dovresti dare uno sguardo a System.Net.Mail, è possibile ottenere le cose in un modo molto più semplice, ha tutti classe richiesta implementato come mailAddress, e la classe di attacco a scopo di attacco – csharpcoder
Possibile duplicato: [C# MailTo con allegato?] (http://stackoverflow.com/questions/1195111/c-sharp-mailto-with-attachment) –