有没有办法从 Redemption 运行 NameSpace.SendAndReceive() ?不打开 Outlook 对象模型?

问题描述 投票:0回答:1

我正在使用 WPF 应用程序循环访问约会并进行一些处理。如果 Outlook 未打开,有时日历不是最新的。所以,我正在运行这个方法:

 private void SendAndReceive()
    {
        Microsoft.Office.Interop.Outlook.Application OutlookApp = new Microsoft.Office.Interop.Outlook.Application();
        Microsoft.Office.Interop.Outlook._NameSpace mapiNameSpace = OutlookApp.GetNamespace("MAPI");
        Outlook.NameSpace ns = OutlookApp.GetNamespace("MAPI");
        ns.SendAndReceive(false);
        if (ns != null) Marshal.ReleaseComObject(OutlookApp);
        if (ns != null) Marshal.ReleaseComObject(mapiNameSpace);
        if (ns != null) Marshal.ReleaseComObject(ns);
    }

这工作正常,但我不想打开 Outlook。它在系统托盘上可见一段时间然后消失。

想知道是否有办法使用救赎来完成同样的事情? 如果您还可以提供一段示例代码,那将会很有帮助。

outlook-redemption
1个回答
0
投票

您无能为力 - Microsoft 从 Outlook 2002 中删除了 MAPI 假脱机程序,因此

MAPIUtils.DeliverNow
从那时起就不再工作,并且它甚至没有被(较新的)
RDOSession
对象公开。

唯一的解决方法列于https://www.dimastr.com/redemption/faq.htm#1

© www.soinside.com 2019 - 2024. All rights reserved.