挂在邮件正文上的Outlook Interop

问题描述

我创建了一个Windows服务,该服务读取用户的收件箱并保存找到的所有附件。然后将其存档。此过程已经进行了两年,没有任何问题。

现在,我需要实现一些新功能,因此需要阅读邮件主题和正文。该程序可以访问和使用主题,但是在读取身体时会冻结。

该服务的规格为:

  • 在VS 2019中构建,目标是.Net Framework 4.5.2
  • 它使用Microsoft.Office.Interop.Outlook版本= 15.0.0.0进行读取 收件箱
  • 启动outlook.application没问题(服务帐户为 与邮件配置文件用户帐户相同)
  • 阅读邮件和访问附件都没问题

简而言之,代码如下:

application = Marshal.GetActiveObject("outlook.application") as Microsoft.Office.Interop.outlook.application;
NameSpace nameSpace = application.GetNamespace("MAPI");
outlookNamespace.logon("","",false,System.Reflection.Missing.Value);
inBox = outlookNamespace.GetDefaultFolder(OlDefaultFolders.olFolderInBox);
foreach (MailItem mailItem in inBox.Items)
{
    string subject = mailItem.Subject // OK
    string body = mailItem.Body // Hanging
}

所有邮件项目都具有非常简单明了的文本正文。 创建交互式测试程序时,我没有任何问题。

有任何想法为什么服务在访问邮件正文时会出现问题?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)