Фильтр DASL в Outlook для выбора писем по их EntryID - PullRequest
0 голосов
/ 17 января 2012

Я пытаюсь применить фильтр DASL [настраиваемый вид] к папке поиска с этим запросом SQL:

"http://schemas.microsoft.com/mapi/proptag/0x0FFF0102" = '000000001CF4984B1BD06249A3C1E9DBBE2C6F65E4C82200'

Я хочу выбрать только письма по ихentryID, которые я нашел в предыдущем поиске.Папка поиска определенно содержит почту с этим entryID.

Применение sth как это к той же папке

"http://schemas.microsoft.com/mapi/proptag/0x10810003" = '102'

работает.

Разве это невозможно сделать?Или мой SQL-запрос неверен?

1 Ответ

1 голос
/ 17 января 2012

Если вы знаете EntryID, просто позвоните Namespace.GetItemfromID. Нет причин для поиска.

ОБНОВЛЕНИЕ: В более общем примечании, OOM не позволит вам искать в двоичном (PT_BINARY) свойстве. Если в качестве опции используется Redemption , ее версии RDOItems . Find/Restrict позволят вам указать двоичное свойство с использованием приведенного выше синтаксиса. Чтобы получить объект RDOFolder , создайте экземпляр объекта RDOSession и вызовите RDOSession.GetRDOObjectFromOutlookObject, передав экземпляр объекта MAPIFolder из OOM - вы получите обратно RDOFolder объект.

...