How to add a UserProperty to a MAPIFolder?

J

Jeff

I want to be able to use MAPIFolder.Items.Restrict() to return me a
collection of items that my program has not yet processed. After I
process items, I mark them w/ a custom string UserProperty that I set
to a GUID.

"If you are trying to use the Find or Restrict methods with
user-defined fields, the fields must be defined in the folder,
otherwise an error will occur."-MSDN
(http://msdn.microsoft.com/library/d...-us/vbaol11/html/olmthRestrict_HV05247704.asp)

What is the proper way to add my UserProperty to the MAPIFolder such
that I can use the Restrict method to return me the results I'm looking
for?

What query string should I pass to Restrict() that would get me all
Items that are not marked w/ my string GUID?

Thanks!
Jeff
 
S

Sue Mosher [MVP-Outlook]

Create a new PostItem in the folder.
Add a property to it with UserProperties.Add. (The default is to add it to the folder as well)
Delete the PostItem.

--
Sue Mosher, Outlook MVP
Author of Configuring Microsoft Outlook 2003

and Microsoft Outlook Programming - Jumpstart for
Administrators, Power Users, and Developers
 
G

Guest

What exactly need to be done to the MailItem for this to work?

I have the following code (C#):
dummyMailItem.UserProperties.Add("Dummy", Outlook.OlUserPropertyType.olText,
true, System.Type.Missing);
dummyMailItem.Subject = "Dummy";
dummyMailItem.Body = "Dummy";
dummyMailItem.To = "(e-mail address removed)";
dummyMailItem.Save();
//dummyMailItem.Delete();

However, the mail item isn't added to the folder, and the user property
isn't added as user propertiy column.

Why not?
 
S

Sue Mosher [MVP-Outlook]

Create a PostItem in the folder, not a MailItem, and use True for the third parameter of UserProperties.Add.

--
Sue Mosher, Outlook MVP
Author of Configuring Microsoft Outlook 2003

and Microsoft Outlook Programming - Jumpstart for
Administrators, Power Users, and Developers
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top