2009-10-14 6 views
2

В COM-addin для Outlook (с использованием Redemption) Мне нужно определить, было ли получено или отправлено заданное сообщение, которое я ищу, (я только хочу действовать на входящих). Просто просмотр родительской папки или получателей или отправителей не будет работать в моем случае, так как входящие и исходящие сообщения могут быть сгруппированы в одной и той же (общедоступной) папке и могут быть несколько допустимых отправителей. Кроме того, могут быть внутренние сообщения, отправленные от одного действительного отправителя к другому.Как узнать, является ли данное сообщение MAPI входящим или исходящим?

не Проверка PR_RECEIVED_BY_* или PR_RCVD_REPRESENTING_* идентифицировать входящие письма также не полное решения для меня, потому что эти свойства устанавливаются только в хранилищах почтовых ящиков и сообщения, я имею дело с наиболее часто находиться в хранилище общих папок (точнее : в общедоступных папках с включенной поддержкой почты, где также отправляются сообщения, отправленные от имени этой папки).

Я уже использовал OutlookSpy для сравнения свойств MAPI различных типовых сообщений и думал несколько раз, что я нашел что-то, но до сих пор ничего не найдено оказалось окончательно стабильным решением (например, сначала PR_MESSAGE_RECIP_ME, по-видимому, когда-либо устанавливался на входящий сообщений и никогда на исходящих, но затем я нашел входящие сообщения, где это свойство также отсутствовало).

По существу, я ищу какое-то имущество (или его стоимости), которая всегда набор на входящих или исходящих сообщений только.

Это необходимо, по крайней мере, работать с Exchange 2003 и 2007 и Outlook 2003 и 2007

Любые идеи?

+0

Я не знаю, возможно ли это даже возможно - я бы скорее попробовал группы новостей: microsoft.public.office.developer.com.add_ins или одну из групп mapi. –

ответ

1

Само по себе электронное письмо не имеет понятия о входящем или исходящем. Нам нужно применить к нему систему отсчета. Входит ли входящее сообщение в вашу организацию или в почтовый ящик? Большинство систем, которые вычисляют «направление» электронной почты, имеют 3 категории: входящие, исходящие и внутренние.

Если вы не можете использовать получателей сообщений для определения потока сообщения, вам может понадобиться лучше объяснить ситуацию, потому что это будет лучший метод.

+0

Основная проблема заключается в том, что 'PR_RECEIVED_BY_ *' и 'PR_RCVD_REPRESENTING_ *' не установлены для сообщений, полученных через общедоступные папки. Если бы они были, я был бы на 100% удовлетворен. –

+0

Лучше всего посмотреть таблицу получателей (получатели - это под-объекты сообщения, а не свойства) и посмотреть, кто получил копию сообщения. Если ни один внутренний не существует, это исходящее сообщение. В противном случае, я думаю, вам нужно лучше объяснить, как электронная почта попадает в общую папку. Перемещается ли туда или доставляется туда? –

+0

сообщения перемещаются и отправляются туда. перемещение происходит как вручную, так и автоматически через добавление. –