兑换文件夹上的ItemAdd事件-如何与控制台应用程序一起正确使用

时间:2019-01-31 17:12:09

标签: outlook-redemption

我有一个.Net控制台应用程序,可以通过Outlook的赎回功能通过电子邮件发送文档。我将“ Items.ItemAdd”事件附加到相关文件夹。该事件永远不会触发。

但是在我的WPF应用程序测试工具中,使用相同的方法和相同的引用等,它确实可以工作。

该事件实际上在控制台应用程序中起作用吗?是否有正确方法或替代方法的示例?

2 个答案:

答案 0 :(得分:0)

您的应用需要运行Windows消息循环,事件才能正常工作。

答案 1 :(得分:0)

好的,谢谢您的提示。我尝试了各种方法,最终似乎可以按以下方式工作:

DispatcherOperation op = System.Windows.Threading.Dispatcher.CurrentDispatcher.BeginInvoke((Action)(() => { SomeMethod(someArgs); }));
DispatcherOperationStatus status = op.Status;
while (status != DispatcherOperationStatus.Completed && status != DispatcherOperationStatus.Aborted)
{
    status = op.Wait(TimeSpan.FromMilliseconds(10000));
    if (status == DispatcherOperationStatus.Completed || status == DispatcherOperationStatus.Aborted)
    {
        // do your final code
    }
}