如何迭代存储在MAPIFolder对象中的文件夹?

时间:2017-12-06 11:43:41

标签: c++ com outlook-addin atl

我正在研究用COM / ATL / C ++开发的Outlook加载项,我想迭代特定Outlook文件夹的所有子文件夹,这些子文件夹作为MAPIFolder object传递。

根据Microsoft的文档,MAPIFolder对象包含一个Folders property,其中包含Folders collection,它代表文件夹树一级特定子集中的所有可用Outlook文件夹。然而,我还没有找到关于如何迭代这些集合的任何参考。微软的文档实际上是不存在的,尽管有一些例子涵盖了C#中的类似功能,例如MS DevCenter How to: Get a Default Folder and Enumerate Its Subfolders,但微软并未提供有关如何使用C ++实现相同目标的任何信息。

有没有人知道如何通过调用MAPIFolder和/或Folders对象来遍历所有文件夹?

1 个答案:

答案 0 :(得分:0)

使用for循环(从1到Count)。或者在每次迭代时调用Folders.GetFirst并使用while循环调用Folders.GetNext