Toegang tot en beheer van Outlook‑MAPI‑eigenschappen
MAPI properties zijn metadata-items die worden gebruikt in Microsoft Outlook-berichten en attributen definiëren zoals afzender, ontvanger, onderwerp, bijlagen en aangepaste gegevens.
Aspose.Email for C++ stelt ontwikkelaars in staat deze eigenschappen programmatisch te benaderen, te wijzigen en te verwijderen in MapiMessage objecten, bijlagen en benoemde eigenschappen.
De MapiProperty klasse vertegenwoordigt een MAPI‑eigenschap, die bevat:
- Name – De tekenreeksidentifier van de eigenschap.
- Tag – Een numerieke identificatiecode die wordt gebruikt om naar de eigenschap te verwijzen.
- Data – Een byte-array die de waarde van de eigenschap vertegenwoordigt.
MAPI‑eigenschappen lezen
Aspose.Email maakt het mogelijk MAPI‑eigenschappen te lezen met eigenschap‑tags.
De volgende codevoorbeeld laat zien hoe u de onderwerp‑eigenschap leest en weergeeft uit een MAPI‑berichtbestand (.msg).
- Haal het mappad op waar de Outlook‑berichtbestanden zijn opgeslagen.
- Laad het Outlook‑berichtbestand ("message.msg") in een MapiMessage object.
- Toegang tot de collectie MAPI‑eigenschappen van het bericht.
- Probeer de onderwerp‑eigenschap op te halen met
PR_SUBJECT (ANSI)tag. - Als de ANSI‑onderwerp‑eigenschap niet wordt gevonden, probeer dan de Unicode‑onderwerp‑eigenschap op te halen met
PR_SUBJECT_W. - Als de onderwerp‑eigenschap bestaat, geef dan de tekenreekswaarde weer op de console.
MAPI‑eigenschappen instellen
MAPI-eigenschappen kunnen worden ingesteld voor berichten of ontvangers om aangepaste attributen, e‑mailtype of synchronisatiestatus te definiëren.
Het volgende codevoorbeeld toont hoe een MAPI-bericht te maken, meerdere aangepaste MAPI-eigenschappen in te stellen, inclusief afzender- en ontvangergegevens, berichtvlaggen en wijzigingstijd, en vervolgens het bericht op te slaan in een bestand.
Opmerking: De ConvertDateTime() helper converteert System::DateTime naar een MAPI-compatibele filetime-byte‑array voor datum/tijd‑eigenschappen op de volgende manier:
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);
Benoemde MAPI‑eigenschappen lezen
Named MAPI properties zijn aangepaste eigenschappen die door gebruikers of applicaties worden toegevoegd.
Aspose.Email maakt het mogelijk deze eigenschappen te lezen uit berichten en bijlagen.
Lezen van benoemde MAPI-eigenschappen uit MSG-bestanden
Het volgende codevoorbeeld toont hoe een MAPI-berichtbestand te laden, al zijn benoemde MAPI-eigenschappen op te halen en er doorheen te itereren om de waarden van specifieke benoemde eigenschappen ("TEST" en "MYPROP") te vinden en weer te geven. Het laat zien hoe toegang te krijgen tot aangepaste of uitgebreide eigenschappen in een MAPI-bericht door de eigenschapencollectie te enumereren en eigenschappen conditioneel te verwerken op basis van hun naamidentificatoren.
Toegang tot benoemde MAPI-eigenschappen in bijlagen
Benoemde MAPI-eigenschappen in bijlagen kunnen op vergelijkbare wijze worden opgehaald:
MAPI-eigenschappen verwijderen
U kunt zowel standaard als benoemde MAPI-eigenschappen uit berichten of bijlagen verwijderen, zoals getoond in het onderstaande codevoorbeeld: