是否建议在Windows服务中运行Visual Studio Tools for Office



我收到了将旧版 Outlook 加载项(需要活动登录用户)升级到独立微服务(使用 NServiceBus 实现)的要求。

插件的目标是监控符合某些预设条件的传入电子邮件(通过与交易所通信)并对其进行操作。

VSTO 是否足够健壮,可以在 Windows 服务中运行?

  • 它是否足够线程安全?
  • 它是否会锁定邮箱,使其无法通过人工交互访问?
  • VSTO 是否会使服务崩溃?
  • 更糟糕的是,VSTO会导致交易所锁定/崩溃吗?

如果这些担忧中的任何一个是真实的,是否有其他选择?

我想

说的是,在Windows服务中运行VSTO是不明智的。在 VSTO 中编写某些内容对于其 UI 组件、向用户呈现某些内容、与用户交互非常有用,这意味着您需要启动 Outlook 实例才能加载外接程序。在服务器上安装 Office 通常不受欢迎,以多线程方式使用时会产生问题,并且会产生大多数开发人员没有准备好处理的问题。

您可能还想探索其他途径,因此您可以通过 EWS 托管 API 使用 Exchange Web 服务 (EWS),而不是直接使用 Outlook 库,或者如果您不是本地,请使用 REST 或图形 API。

最新更新