【发布时间】:2011-03-08 14:08:36
【问题描述】:
如何使用 Outlook 2010 发送带有附件(本地文件或 Intranet 中的文件)的电子邮件?
<a href="mailto:a@gmail.com?subject=my report&body=see attachment&attachment=c:\myfolder\myfile.txt">
好像没用。
【问题讨论】:
标签: html
如何使用 Outlook 2010 发送带有附件(本地文件或 Intranet 中的文件)的电子邮件?
<a href="mailto:a@gmail.com?subject=my report&body=see attachment&attachment=c:\myfolder\myfile.txt">
好像没用。
【问题讨论】:
标签: html
不,这根本不可能。 mailto: 协议中没有对此的规定,如果可能的话,这将是一个巨大的安全漏洞。
发送文件但让客户发送我能想到的电子邮件的最佳方法是:
mailto: 链接,其中包含指向消息正文中已上传文件的 URL 【讨论】:
?attach=... 直到 2019 年 12 月:nds.ruhr-uni-bochum.de/media/nds/veroeffentlichungen/2020/08/15/…。但现在它被删除了,原因很明显。
这在“mailto”功能中是不可能的。
请使用服务器端编码(C#)。确保打开与管理权限。
Microsoft.Office.Interop.Outlook.Application oApp = new Microsoft.Office.Interop.Outlook.Application();
Microsoft.Office.Interop.Outlook.MailItem oMsg = (Microsoft.Office.Interop.Outlook.MailItem)oApp.CreateItem(Microsoft.Office.Interop.Outlook.OlItemType.olMailItem);
oMsg.Subject = "emailSubject";
oMsg.BodyFormat = Microsoft.Office.Interop.Outlook.OlBodyFormat.olFormatHTML;
oMsg.BCC = "emailBcc";
oMsg.To = "emailRecipient";
string body = "emailMessage";
oMsg.HTMLBody = "body";
oMsg.Attachments.Add(Convert.ToString(@"/my_location_virtual_path/myfile.txt"), Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue, Type.Missing, Type.Missing);
oMsg.Display(false); //In order to displ
【讨论】:
如果你在桌面上使用c#,你可以使用SimpleMapi。这样它将使用默认邮件客户端发送,并且用户可以选择在发送前查看邮件,就像mailto:。
要使用它,请添加 Simple-MAPI.NET 包(它是 13Kb),然后运行:
var mapi = new SimpleMapi();
mapi.AddRecipient(null, address, false);
mapi.Attach(path);
//mapi.Logon(ParentForm.Handle); //not really necessary
mapi.Send(subject, body, true);
【讨论】:
这个呢
<FORM METHOD="post" ACTION="mailto:jburns@htmlgoodies.com" ENCTYPE="multipart/form-data">
Attachment: <INPUT TYPE="file" NAME="attachedfile" MAXLENGTH=50 ALLOW="text/*" >
<input type="submit" name="submit" id="submit" value="Email"/>
</FORM>
【讨论】:
attachedfile=filename.ext&submit=Email 预填充正文。它不附加任何数据。