0

我正在尝试为 Outlook 开发一个带有 vc++ 的 COM 插件,它从非交换服务器接收数据并将它们保存到 Outlook PST 文件。

我正在使用 Outlook 对象模型和 MAPI API 将约会对象保存在消息存储中。我使用 Outlook::_AppointmentItem::save() 方法保存项目。在此之后,我通过 IMessage 接口为此设置了一些属性并在其上调用 savechanges()。

它在正常情况下工作正常。但是,如果在添加事件后立即终止 Outlook 进程,则重新启动时所做的更改将丢失。看起来 Outlook 需要一些时间来保存对磁盘的更改。这种行为会产生一些其他问题。

有什么方法可以在保存后立即将更改刷新到磁盘。在这方面需要帮助

4

1 回答 1

0

PST 提供程序会在它认为合适的时候刷新更改。强制刷新的唯一方法是使用IMAPIClientShutdown接口,但在你这样做之后,整个 MAPI 系统将关闭,因此在进程重新启动之前什么都不会工作。

于 2012-08-07T06:09:49.820 回答