Outlook互操作-邮件项目.发件人正在挂起冻结

本文关键字:挂起 冻结 项目 互操作 Outlook | 更新日期: 2023-09-27 18:00:48

我使用下面msdn链接中的代码,它在我的系统中可以很好地获取发件人的电子邮件地址。然而,当我将相同的代码部署到我们的一个开发服务器时,下面的代码行无限期地挂起''冻结,没有任何响应。在跟踪之后,我发现如果sender对象的一个属性被访问,它将永远挂起。缓存交换模式打开了邮箱,它在outlook 2010中运行。我也从outlook手动下载了通讯录,但它没有帮助。我相信这不是一个代码问题。有人能帮忙吗?

https://msdn.microsoft.com/en-us/library/office/ff184624.aspx

sender.AddressEntryUserType==Outlook.OlAddressEntryUser类型。olExchangeUserAddressEntry||发件人。AddressEntryUserType==Outlook.OlAddressEntryUserType。olExchangeRemoteUserAddressEntry

Outlook互操作-邮件项目.发件人正在挂起冻结

Microsoft目前不建议也不支持从任何无人参与的非交互式客户端应用程序或组件(包括ASP、ASP.NET、DCOM和NT服务)自动化Microsoft Office应用程序,因为在这种环境中运行Office时,Office可能会表现出不稳定的行为和/或死锁

如果您正在构建一个在服务器端上下文中运行的解决方案,则应该尝试使用那些可以安全执行无人参与的组件。或者,您应该尝试找到至少允许部分代码运行客户端的替代方案。如果使用服务器端解决方案中的Office应用程序,则该应用程序将缺乏成功运行所需的许多功能。此外,您将在整体解决方案的稳定性方面承担风险。请参阅"Office服务器端自动化的注意事项"一文中的更多内容。

Outlook所基于的低级别API支持从服务运行代码。你可以使用任何语言(C#和VB.NET)来实现这个任务。但微软官方不支持这样的解决方案/代码。如果你遇到任何问题,你将独自一人,但托管代码是一种魅力。

另请参阅Exchange中的EWS托管API、EWS和web服务。