Получить вложение ContentID - PullRequest
3 голосов
/ 03 апреля 2012

Я пытаюсь получить идентификаторы содержимого вложений писем в outlook. Я использую Add-In Express для своей надстройки, но она не имеет функции для ее получения.

Я знаю библиотеку Redemption, но она не бесплатна и, следовательно, не подходит для меня.

В Outlook 2007+ есть PropertyAccessor, который должен позволять мне это делать, но я не могу заставить его работать.

Вот мой код:

string uniqueId = "";
object props = a.GetType().InvokeMember("PropertyAccessor", BindingFlags.Public | BindingFlags.GetField | BindingFlags.GetProperty, null, a, null);
object[] args = new object[1];
args[0] = @"urn:schemas:mailheader:content-id";
object value = props.GetType().InvokeMember("GetProperty", BindingFlags.Public | BindingFlags.InvokeMethod, null, props, args);
if ((string)value != null) {
    uniqueId = (string)value;
}

«a» - это вложение, полученное из Надстройки Express MailItem.

Он просто выдает следующее исключение: «Исключение было сгенерировано целью вызова».

Может ли кто-нибудь мне помочь?

1 Ответ

1 голос
/ 05 февраля 2018

Я тоже попробовал ваш URN, и он не сработал.

При использовании DASL это работает: http://schemas.microsoft.com/mapi/proptag/0x3712001F

Outlook Spy имеет бесплатный пробный период.Я хотел бы скачать это в то же время (где я нашел это значение).И даже когда он истекает, этот ценный инструмент меньше, чем само Погашение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...