Достъп и управление на Outlook MAPI свойства
MAPI properties са метаданни, използвани в съобщения на Microsoft Outlook, определящи атрибути като подател, получател, тема, прикрепени файлове и персонализирани данни.
Aspose.Email for C++ позволява на разработчиците да достъпват, модифицират и премахват тези свойства програмено в MapiMessage обекти, прикрепени файлове и именовани свойства.
Този MapiProperty клас, представляващ MAPI свойство, което съдържа:
- Name – Низовият идентификатор на свойството.
- Tag – Числов идентификатор, използван за референция към свойството.
- Data – Масив от байтове, представляващ стойността на свойството.
Четене на MAPI свойства
Aspose.Email ви позволява да четете MAPI свойства, използвайки етикети за свойства.
Следният примерен код демонстрира как да прочетете и покажете свойството тема от MAPI съобщение файл (.msg).
- Получете директорията, където са съхранени Outlook съобщенията.
- Заредете Outlook съобщението ("message.msg") в MapiMessage обект.
- Достъпете колекцията от MAPI свойства от съобщението.
- Опитайте да извлечете свойството тема, използвайки
PR_SUBJECT (ANSI)етикет. - Ако ANSI свойството за тема не бъде намерено, опитайте да извлечете Unicode свойството за тема, използвайки
PR_SUBJECT_W. - Ако свойството тема съществува, изведете неговата стойност като низ в конзолата.
Задаване на MAPI свойства
MAPI свойства могат да се задават за съобщения или получатели, за да определят персонализирани атрибути, тип имейл или статус на синхронизация.
Следният примерен код демонстрира как да се създаде MAPI съобщение, да се зададат множество персонализирани MAPI свойства, включително данни за подателя и получателя, флагове на съобщението и време на модификация, след което да се запише съобщението във файл.
Note: Функцията ConvertDateTime() преобразува System::DateTime в масив от байтове тип filetime, съвместим с MAPI, за свойства от тип дата/време, по следния начин:
int64_t filetime = t.ToFileTime();
System::ArrayPtr<uint8_t> d = System::MakeArray<uint8_t>(8, 0);
d[0] = (uint8_t)(filetime & 0xFF);
d[1] = (uint8_t)((filetime & 0xFF00) >> 8);
d[2] = (uint8_t)((filetime & 0xFF0000) >> 16);
d[3] = (uint8_t)((filetime & 0xFF000000) >> 24);
d[4] = (uint8_t)((filetime & 0xFF00000000) >> 32);
d[5] = (uint8_t)((filetime & 0xFF0000000000) >> 40);
d[6] = (uint8_t)((filetime & 0xFF000000000000) >> 48);
d[7] = (uint8_t)(((uint64_t)filetime & 0xFF00000000000000) >> 56);
Четене на именовани MAPI свойства
Named MAPI properties са персонализирани свойства, добавени от потребители или приложения.
Aspose.Email позволява четенето на тези свойства от съобщения и прикрепени файлове.
Четене на именовани MAPI свойства от MSG файлове
Следният примерен код демонстрира как да се зареди MAPI файл със съобщение, да се извлекат всички негови именовани MAPI свойства и да се премине през тях, за да се намерят и покажат стойностите на конкретни именовани свойства ("TEST" и "MYPROP"). Той показва как да се достъпват персонализирани или разширени свойства в MAPI съобщение, като се изброява колекцията от свойства и се обработват условно според техните идентификатори на име.
Достъп до именовани MAPI свойства в прикрепени файлове
Именовани MAPI свойства в прикрепени файлове могат да бъдат извлечени по същия начин:
Премахване на MAPI свойства
Можете да премахнете както стандартни, така и именовани MAPI свойства от съобщения или прикрепени файлове, както е показано в примерния код по-долу: