gpt4 book ai didi

c++ - PST 文件中的日历消息在哪里存储约会时间和日期?

转载 作者:行者123 更新时间:2023-11-30 03:40:08 24 4
gpt4 key购买 nike

我正在使用 PST File Format SDK尝试从 Outlook PST 导出中提取一些约会项目数据:

int main()
{
pst myfile(L"export.pst");
folder calendar = myfile.open_folder(L"Calendar");
for (folder::message_iterator msg = calendar.message_begin(); msg != calendar.message_end(); ++msg)
{
message m = *msg;
wstring subject = L"";
if (m.has_subject())
subject = m.get_subject();
wstring body = L"";
if (m.has_body())
body = m.get_body();
wstring htmlbody = L"";
if (m.has_html_body())
htmlbody = m.get_html_body();
size_t num_attachments = m.get_attachment_count();
size_t num_recipients = m.get_recipient_count();
property_bag bag = m.get_property_bag();
vector<prop_id> propertyList = bag.get_prop_list();
for (vector<prop_id>::iterator prop = propertyList.begin(); prop != propertyList.end(); ++prop)
{
if (bag.get_prop_type(*prop) == prop_type_systime)
FILETIME property = bag.read_prop<FILETIME>(*prop);
}
break; // Just try the first message for now.
}
return 0;
}

Outlook 如何存储约会数据?我的意思是,我怎样才能至少获得预约开始时间和持续时间(或结束时间)?我一直在尝试搜索 PST file format specification from Microsoft但我似乎找不到我需要的信息!

编辑:我现在可以像上面的代码一样解析FILETIME 对象,但问题是,我如何区分它们所指的时间?我的意思是,我怎么知道这是事件日期的时间,还是事件日期的结束时间等等?他们应该有名字来区分他们,不是吗?我如何使用 pstsdk 获取它?

最佳答案

这些(以及更多)属性存储为命名的 MAPI 属性。它们的标签在不同商店之间会有所不同,因此您不能对它们进行硬编码。在我的网站上查看命名属性的解释:https://www.dimastr.com/redemption/utils.htm#named-props

查看 OutlookSpy 中的现有约会(我是它的作者)- 点击 IMessage 按钮。

关于c++ - PST 文件中的日历消息在哪里存储约会时间和日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38231790/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com