获取mailitem的完成日期时间

时间:2012-04-16 11:01:27

标签: c# outlook

当您在Outlook中标记要跟进的邮件时,会出现一个红色标记。再次标记时,标志会变为刻度标记,并显示任务完成时间。如何从C#应用程序获取/设置此时间?

我尝试过使用mailitem的TaskCompletedDate,但它只返回日期(不是时间)。我还试图找到分配给标记消息的任务,但也没有管理。我究竟做错了什么?我应该在哪里寻找它?

我正在使用Outlook 2007和2010。

提前感谢您的答案。

2 个答案:

答案 0 :(得分:0)

我不确定您需要的实际属性,但MSDN上记录了大多数mailitems属性和方法:

http://msdn.microsoft.com/en-us/library/aa210946(v=office.11).aspx

注意:请务必检查您要定位的Outlook版本。 2007 +还有其他属性。

修改

根据MSDN,此属性确实是DateTime

http://msdn.microsoft.com/en-us/library/microsoft.office.interop.outlook._mailitem.taskcompleteddate.aspx

至于为什么它只记住日期部分我无法解释。仅供参考我认为TaskCompleteDate是UTC。

答案 1 :(得分:0)

我找到了解决方法。我仍然不知道Outlook保留了与给定消息相关的taksitem,但是我使用Outlook Tables来显示必要的数据。表格可以为我检索所需的数据,然后从表格的单元格中检索它。

帮助我解决这个问题的代码在这里: http://msdn.microsoft.com/en-us/library/ff184632.aspx

存储完成日期的列(单元格)称为“标记完成日期”。它显示整个日期时间值,而不仅仅是日期。

此方法的缺点是您仍然无法直接访问该值,也无法设置它,只能获取它。