Finding a PIM Item Within a Collection

A version of this page is also available for

Windows Embedded CE 6.0 R3


Locating a particular PIM item within the Outlook Mobile database involves calling the IPOutlookItemCollection::Find method on the collection.

The Outlook Mobile database consists of three separate PIM item lists contained in the three OlDefaultFolders: the Appointments folder, the Tasks folder, and the Contacts folder.

To find a task by subject

  1. Create an instance of the Outlook Mobile application object and then use it to establish a POOM session. For more information, see Establishing a POOM Session.

  2. Declare a reference to a generic PIM item collection:

    IPOutlookItemCollection *pItems;
  3. Declare a reference to a generic PIM item folder:

    IFolder *pFolder;
  4. Declare a reference to a Task item:

    ITask *pFoundTask;
  5. Use the generic PIM item folder to get the Tasks folder:

    polApp->GetDefaultFolder(olFolderTasks, &pFolder);
  6. Use the Tasks folder to get the collection of Task items:

  7. Search the collection of Task items for an item that matches your search criteria:

    pItems->Find(_T("[Subject] = \"meeting\""), reinterpret_cast<IDispatch **>(&pFoundTask));


The following code example demonstrates how to retrieve a Task item from the Tasks folder, based on the information in its Subject property.

BSTR restriction = "[Subject] = \"meeting\"";

void FindTask(IPOutlookApp *polApp, ITask *pFoundTask, BSTR restriction)
    IPOutlookItemCollection * pItems;
    IFolder                 * pFolder;

    polApp->GetDefaultFolder(olFolderTasks, &pFolder)
    pItems->Find(_T(restriction), reinterpret_cast<IDispatch **>(&pFoundTask));

To make the code example easier to read, security checking and error handling are not included.

This code example should not be used in a release configuration unless it has been modified to include them.

Compiling the Code

  • Include Header File: PimStore.h
  • Linker Dependency: PimStore.lib

See Also



Other Resources

Pocket Outlook Object Model Common Tasks
Pocket Outlook Object Model Application Development