Outlook MailItem открыт из автономного файла или нет? - PullRequest
0 голосов
/ 10 сентября 2010

Я занимаюсь разработкой надстройки для Outlook на C #, и у меня возникла проблема при различении писем, открытых из папки (Входящие, Отправленные и т. Д.), И писем, открытых из отдельного MSG-файла.

Я попытался проверить свойство Parent, но оно показывает Входящие для обоих видов.

Есть идеи?

/ Sam

1 Ответ

1 голос
/ 10 сентября 2010

Просматривая свойства, мне кажется, что свойство .EntryID является пустым, если MailItem открывается из файловой системы, и имеет значение, если файл открывается из папки. Это имеет смысл, основываясь на справочной записи для него; одно предостережение заключается в том, что вы также ожидаете, что это свойство будет пустым, если сообщение является новым сообщением (т.е. не было сохранено в папке, но также не существует в файловой системе).

Из справки по поводу пустых значений:

Следовательно, свойство EntryID не является установить для элемента Outlook, пока он не будет сохранено или отправлено

Вы хотели бы поэкспериментировать с ним и убедиться, что он определенно ведет себя правильно, прежде чем его реализовать:)

Если все это не выполнить, следующий шаг может быть сложным; Одним из подходов будет проверка дескрипторов, открытых Outlook. Проверка их (в непривилегированном контексте) через Process Explorer показывает, что для каждого сообщения есть дескриптор; имя дескриптора соответствует теме сообщения, путь - это путь к файлу. Одно из решений перечислить их в этом ответе .

НТН, Geoff

...