I had an interesting request. A user wanted to search their mailbox for all read/not read/delivery/non-delivery receipts in their mailbox. You would think that it should be as easy as searching for "READ:" in the subject line. Unfortunately, Outlook does a wild-card type search on what you enter. This means you may get read:, bread: and read:s.
What about using forms? Based on my previous Outlook-form-coding experience, I knew that Outlook used different standard forms for the various types of messages. IPM.Note for email messages, IPM.Contact for (well, gee) contacts, etc.. As long as the message didn't traffic the Internet, the default form should be used. So, what is the default form for Read Receipts??
What form? Opening up a read receipt, I checked the properties tab. Here I found that the message type was report. Cool, now I went back to my query and tried to search on the form type of "report", but when you add the form type "report" to your search query, it returns NONE as the options. Now I know that this means there are no readable fields on this form.
Final solution: Doing a quick Google search on Message Class, I determined that this was the field I needed. Common message classes are IPM.Note and IPM.Contact. So, I created a query for all messages, where the message class contains report.
My search folder returned several read receipts and an undeliverable response in my Inbox. I have not tested it with other response type messages, but believe it will find all message responses. Meeting responses will probably require a slightly different query.