C# 使用C访问挂起的Microsoft Outlook电子邮件#
我目前正在使用一个应用程序,该应用程序以Outlook作为默认值发送本地电子邮件。我遇到的问题是,应用程序打开电子邮件对话框,用户必须手动单击发送按钮,这正是我试图避免的。我已经能够成功访问收件箱和草稿中的项目,但是当应用程序打开对话框时,Outlook不会自动另存为草稿,并且我无法访问挂起的电子邮件。以下代码是我用来访问收件箱和草稿项目的代码。如果有人遇到类似的情况和建议,将不胜感激C# 使用C访问挂起的Microsoft Outlook电子邮件#,c#,email,outlook,C#,Email,Outlook,我目前正在使用一个应用程序,该应用程序以Outlook作为默认值发送本地电子邮件。我遇到的问题是,应用程序打开电子邮件对话框,用户必须手动单击发送按钮,这正是我试图避免的。我已经能够成功访问收件箱和草稿中的项目,但是当应用程序打开对话框时,Outlook不会自动另存为草稿,并且我无法访问挂起的电子邮件。以下代码是我用来访问收件箱和草稿项目的代码。如果有人遇到类似的情况和建议,将不胜感激 Microsoft.Office.Interop.Outlook.Application ap
Microsoft.Office.Interop.Outlook.Application app;
Microsoft.Office.Interop.Outlook.Items items;
Microsoft.Office.Interop.Outlook.Items draftItems;
Microsoft.Office.Interop.Outlook.NameSpace ns;
Microsoft.Office.Interop.Outlook.MAPIFolder inbox;
Microsoft.Office.Interop.Outlook.MAPIFolder drafts;
Microsoft.Office.Interop.Outlook.Application application = new Microsoft.Office.Interop.Outlook.Application();
app = application;
ns = application.Session;
drafts = ns.GetDefaultFolder(Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderDrafts);
inbox = ns.GetDefaultFolder(Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderInbox);
items = inbox.Items;
draftItems = drafts.Items;
string test;
foreach (Object _obj in draftItems)
{
if (_obj is Microsoft.Office.Interop.Outlook.MailItem)
{
Microsoft.Office.Interop.Outlook.MailItem blah = ((Microsoft.Office.Interop.Outlook.MailItem)_obj);
blah.Send();
}
}
foreach (Object _obj in items)
{
if (_obj is Microsoft.Office.Interop.Outlook.MailItem)
{
Microsoft.Office.Interop.Outlook.MailItem blah = ((Microsoft.Office.Interop.Outlook.MailItem)_obj);
if (blah.UnRead)
{
test = blah.Subject.ToString();
test = blah.Body.ToString();
}
}
}
我不确定我是否理解问题所在。调用application.CreaateItem(0)(返回MailItem对象),设置主题和正文,添加收件人,然后调用MailItem.Send Microsoft对此有自己的看法。您是希望不使用Outlook发送电子邮件,还是Outlook是必需的第三方,还是我完全忽略了这个问题?我希望使用c#发送电子邮件,Outlook作为默认电子邮件客户端。使用System.Net.Mail.SmtpClient是一个选项,还是您一直在使用第三方依赖项(即展望)?是的,这将是一个选项。问题是访问挂起的电子邮件。有关更多上下文,我正在使用live pdf发送电子邮件。问题是,它只是打开默认客户端,而没有实际发送电子邮件。换句话说,用户必须手动单击“发送”。我想我被您问题中挂起的电子邮件部分卡住了。W当使用SmtpClient时,您可以指定服务器详细信息和消息详细信息,它会在后台发送消息,没有用户交互,也没有挂起的消息。