Dostęp i zarządzanie właściwościami Outlook MAPI
MAPI properties to elementy metadanych używane w wiadomościach Microsoft Outlook, definiujące atrybuty takie jak nadawca, odbiorca, temat, załączniki i dane niestandardowe.
Aspose.Email for C++ umożliwia programistom dostęp, modyfikację i usuwanie tych właściwości programowo w MapiMessage obiekty, załączniki i nazwane właściwości.
Ten MapiProperty klasa reprezentuje właściwość MAPI, zawierającą:
- Name – Ciągowy identyfikator właściwości.
- Tag – Numeryczny identyfikator używany do odwoływania się do właściwości.
- Data – Tablica bajtów reprezentująca wartość właściwości.
Odczytaj właściwości MAPI
Aspose.Email umożliwia odczytywanie właściwości MAPI przy użyciu etykiet właściwości.
Poniższy przykład kodu pokazuje, jak odczytać i wyświetlić właściwość tematu z pliku wiadomości MAPI (.msg).
- Uzyskaj ścieżkę katalogu, w którym przechowywane są pliki wiadomości Outlook.
- Wczytaj plik wiadomości Outlook ("message.msg") do MapiMessage obiekt.
- Uzyskaj dostęp do kolekcji właściwości MAPI z wiadomości.
- Spróbuj pobrać właściwość tematu przy użyciu
PR_SUBJECT (ANSI)etykiety. - Jeśli nie znaleziono właściwości tematu ANSI, spróbuj pobrać właściwość tematu Unicode przy użyciu
PR_SUBJECT_W. - Jeśli właściwość tematu istnieje, wyświetl jej wartość tekstową w konsoli.
Ustaw właściwości MAPI
Właściwości MAPI można ustawiać dla wiadomości lub odbiorców w celu określenia niestandardowych atrybutów, typu e‑mail lub statusu synchronizacji.
Poniższy przykład kodu pokazuje, jak utworzyć wiadomość MAPI, ustawić wiele niestandardowych właściwości MAPI, w tym szczegóły nadawcy i odbiorcy, flagi wiadomości oraz czas modyfikacji, a następnie zapisać wiadomość do pliku.
Uwaga: Pomocnicza funkcja ConvertDateTime() konwertuje System::DateTime na tablicę bajtów filetime kompatybilną z MAPI dla właściwości daty/godziny w następujący sposób:
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);
Odczyt nazwanych właściwości MAPI
Named MAPI properties to niestandardowe właściwości dodawane przez użytkowników lub aplikacje.
Aspose.Email umożliwia odczyt tych właściwości z wiadomości i załączników.
Odczytywanie nazwanych właściwości MAPI z plików MSG
Poniższy przykład kodu demonstruje, jak wczytać plik wiadomości MAPI, pobrać wszystkie jego nazwane właściwości MAPI i iterować po nich, aby znaleźć i wyświetlić wartości konkretnych nazwanych właściwości ("TEST" i "MYPROP"). Pokazuje, jak uzyskać dostęp do niestandardowych lub rozszerzonych właściwości w wiadomości MAPI, enumerując kolekcję właściwości i warunkowo przetwarzając je na podstawie ich identyfikatorów nazw.
Dostęp do nazwanych właściwości MAPI w załącznikach
Nazwane właściwości MAPI w załącznikach można pobrać w podobny sposób:
Usuwanie właściwości MAPI
Możesz usunąć zarówno standardowe, jak i nazwane właściwości MAPI z wiadomości lub załączników, jak pokazano w poniższym przykładzie kodu: