我有一个WinForms应用程序,点击一个按钮会自动生成一个Outlook邮件,如下所示:
public static void CreateOutlookEmail(string pFileName, string pCaseFolder, string pEmail, string pSubject, string pMessage)
{
try
{
Outlook.Application outlookApp = new Outlook.Application();
Outlook.MailItem mailItem = (Outlook.MailItem)outlookApp.CreateItem(Outlook.OlItemType.olMailItem);
mailItem.Subject = pSubject;
mailItem.To = pEmail;
mailItem.Body = pMessage;
mailItem.Importance = Outlook.OlImportance.olImportanceNormal;
mailItem.Display(false);
string fileDetails = pCaseFolder + "\\" + pFileName + @".eml";
mailItem.SaveAs(fileDetails);
}
catch (Exception eX)
{
throw new Exception("cDocument: Error occurred trying to Create an Outlook Email"
+ Environment.NewLine + eX.Message);
}
}
代码成功打开一个新的Outlook电子邮件,并使用发送到方法中的详细信息填充它。电子邮件地址,主题和信息正文。
此外,当我找到文件夹(以参数形式发送)时,我可以看到电子邮件文档已保存。
问题是,当我从文件夹中打开电子邮件时,电子邮件文档完全是空白的。没有电子邮件地址,主题或消息。
我做错了什么?
答案 0 :(得分:0)
你的代码很好。只需使用扩展名“.msg”而不是“.eml”。 Outlook.OlSaveAsType
下也不存在eml格式