【问题标题】:Access MS Outlook from Windows service从 Windows 服务访问 MS Outlook
【发布时间】:2014-10-16 11:52:33
【问题描述】:

我尝试通过这种方式从服务中访问 MS Outlook:

oApp = new Outlook.Application();
oNS = (Outlook._NameSpace)oApp.GetNamespace("MAPI");
oNS.Logon(Missing.Value, Missing.Value, false, true);
oFolder = oNS.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox);

如果将此代码作为 Windows 应用程序运行,则它可以正常工作。但是如果我尝试作为服务运行,我会得到错误

服务器不可用

排队

oNS.Logon(Missing.Value, Missing.Value, false, true);

从服务访问 MS Outlook 文件夹的正确方法是什么?

【问题讨论】:

    标签: c# service outlook outlook-2010


    【解决方案1】:

    Outlook 与任何其他 Office 应用程序一样,不能通过服务使用。您的选择是

    1. 如果是 Exchange 邮箱,您可以使用EWS 连接到特定邮箱

    2. Extended MAPI(仅限 C++ 或 Delphi)- 您可以动态创建配置文件,然后添加和配置 Exchange MAPI 服务 (MSEMS)。

    3. Redemption(任何语言 - 我是它的作者) - 它的 RDO 系列对象可以在服务中使用。您可以使用RDOSession.LogonExchangeMailbox / LogonHostedExchangeMailbox / LogonPstStore 使 Redemption 创建一个动态配置文件并登录到它。您也可以使用 RDOSession.Logon 并指定配置文件名称,但您的服务必须以拥有该配置文件的本地用户而不是服务帐户的身份运行。

    【讨论】:

      猜你喜欢
      • 2018-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-17
      • 2014-03-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多