我正在使用OOM使用 parentFolder.Folders.Add
调用创建文件夹( parentFolder
是 Outlook.Folder
实例) . 文件夹创建得很好 . 但是,在Outlook崩溃后不久(例如,某些其他代码导致致命错误发生)或只是计算机's power was lost. Anyway, the MAPI session was terminated unexpectedly. In this case, next time I start Outlook I often don't看到创建的文件夹 . 看起来我使用OOM所做的更改有时不会传播到基础.PST文件 . 即使使用普通的非Exchange帐户也会出现这种情况(因此Exchange缓存模式不是问题) .
对我而言,了解文件夹是否实际已被保存至关重要(因为如果我下次没有看到它,代码会认为此文件夹被故意删除并从远程服务器中删除其对应文件) .
也许有一些属性或方法调用来检查使用OOM进行的更改是否实际上已传播到持久存储?
2 回答
不,除非您使用连接到Exchange邮箱的在线(而不是缓存)配置文件,否则不能这样做 .
如果对PST存储或缓存的Exchange邮箱(OST)进行更改,则无法确保提交更改 - Outlook会定期或在关闭时刷新对本地PST / OST文件的更改 . 如果Outlook处理崩溃,则所有投注均已关闭 .
正如德米特里所说,没有具体的方法或属性 .
要确保有意删除文件夹,您可以处理从指定的文件夹集合中删除文件夹时触发的Folders.FolderRemove事件 . 在所有其他情况下,如果文件夹尚不存在,您可以在启动时重新创建该文件夹 .