Delphi和Outlook任务项:如何知道DueDate是否为空?

Delphi和Outlook任务项:如何知道DueDate是否为空?,delphi,outlook,automation,date,Delphi,Outlook,Automation,Date,这看起来很简单,但我在上面找不到任何东西 如何检测Outlook中的日期变量是否为“空”?例如TaskItem.DueDate-不一定要填写DueDate 如果未填充,Outlook将返回“4501.01.01”-我可以测试该值,但这似乎不够“优雅” 谢谢 如果这是未填写日期时返回的结果,那么这可能是最简单的测试方法。如果这意味着你的代码没有它应有的优雅,(我同意,这是),那么,那是微软的错,不是你的错 使代码看起来更好的一件事是将4501.01.01声明为const。将其称为EMPTY\u D

这看起来很简单,但我在上面找不到任何东西

如何检测Outlook中的日期变量是否为“空”?例如TaskItem.DueDate-不一定要填写DueDate

如果未填充,Outlook将返回“4501.01.01”-我可以测试该值,但这似乎不够“优雅”


谢谢

如果这是未填写日期时返回的结果,那么这可能是最简单的测试方法。如果这意味着你的代码没有它应有的优雅,(我同意,这是),那么,那是微软的错,不是你的错


使代码看起来更好的一件事是将
4501.01.01
声明为const。将其称为
EMPTY\u DATE
或类似的东西,然后根据
EMPTY\u DATE
而不是文本进行代码测试。通过这种方式,当您阅读代码时,很明显您在检查什么。

1/1/4501是Outlook用于DATE\u NONE的值。关于MSDN,请参阅此实施细节