java监听outlook新邮件,监听outlook新邮件

usingSystem;usingSystem.Linq;usingMicrosoft.Office.Interop.Outlook;usingSystem.Collections.Generic;namespaceEmailReceiver

{classProgram

{static ApplicationClass outlookApp = newMicrosoft.Office.Interop.Outlook.ApplicationClass();staticNameSpace ns;static void Main(string[] args)

{

Console.WriteLine("start to monitor new emails");

ns= outlookApp.GetNamespace("MAPI");

outlookApp.NewMailEx+= newApplicationEvents_11_NewMailExEventHandler(outlookApp_NewMailEx);

outlookApp.NewMail+= newApplicationEvents_11_NewMailEventHandler(outlookApp_NewMail);while (true)

{

}

}static voidoutlookApp_NewMail()

{

Console.WriteLine("a new message comes: new email");

}static void outlookApp_NewMailEx(stringEntryIDCollection)

{

Console.WriteLine("a new message comes");

AnalyzeNewItem(EntryIDCollection);

}private static void AnalyzeNewItem(stringentry)

{var inbox =ns.GetDefaultFolder(OlDefaultFolders.olFolderInbox);

List allmails = new List();foreach (var item ininbox.Items)

{if (item isMailItem)

{var mail = item asMailItem;

allmails.Add(mail);

}

}var latest = allmails.Max(s =>s.ReceivedTime);var latestMailItem = allmails.FirstOrDefault(s => s.ReceivedTime ==latest);if (latestMailItem != null)

{

Console.WriteLine(latestMailItem.Subject);

Console.WriteLine(latestMailItem.To);

Console.WriteLine(latestMailItem.SenderName);

Console.WriteLine(latestMailItem.ReceivedTime);

Console.WriteLine(latestMailItem.Body);

}

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值