Åtkomst till och hantera Outlook‑MAPI‑egenskaper
MAPI-egenskaper är metadataobjekt som används i Microsoft Outlook-meddelanden och definierar attribut såsom avsändare, mottagare, ämne, bilagor och anpassade data.
Aspose.Email för C++ låter utvecklare att komma åt, modifiera och ta bort dessa egenskaper programmässigt i MapiMessage objekt, bilagor och namngivna egenskaper.
Den MapiProperty klassen representerar en MAPI‑egenskap, som innehåller:
- Name – Egenskapens strängidentifierare.
- Tag – En numerisk identifierare som används för att referera till egenskapen.
- Data – En bytearray som representerar egenskapens värde.
Läs MAPI‑egenskaper
Aspose.Email låter dig läsa MAPI‑egenskaper med hjälp av egenskapstaggar.
Följande kodexempel visar hur man läser och visar ämnesegenskapen från en MAPI‑meddelandefil (.msg).
- Hämta katalogsökvägen där Outlook‑meddelandefilerna lagras.
- Läs in Outlook‑meddelandefilen ("message.msg") i en MapiMessage objekt.
- Åtkomst till samlingen av MAPI‑egenskaper från meddelandet.
- Försök att hämta ämnesegenskapen med
PR_SUBJECT (ANSI)tag. - Om ANSI‑ämnesegenskapen inte hittas, försök att hämta Unicode‑ämnesegenskapen med hjälp av
PR_SUBJECT_W. - Om ämnesegenskapen finns, skriv ut dess strängvärde till konsolen.
Ange MAPI‑egenskaper
MAPI-egenskaper kan sättas för meddelanden eller mottagare för att definiera anpassade attribut, e-posttyp eller synkroniseringsstatus.
Följande kodexempel demonstrerar hur man skapar ett MAPI-meddelande, sätter flera anpassade MAPI-egenskaper inklusive avsändar- och mottagardetaljer, meddelandeflaggor och modifieringstid, och sedan sparar meddelandet till en fil.
Obs: Hjälpmedlet ConvertDateTime() konverterar System::DateTime till en MAPI-kompatibel filetime-bytearray för datum/tids‑egenskaper på följande sätt:
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);
Läs namngivna MAPI‑egenskaper
Namngivna MAPI-egenskaper är anpassade egenskaper som läggs till av användare eller applikationer.
Aspose.Email möjliggör läsning av dessa egenskaper från meddelanden och bilagor.
Läsa namngivna MAPI-egenskaper från MSG-filer
Följande kodexempel demonstrerar hur man laddar en MAPI-meddelandefil, hämtar alla dess namngivna MAPI-egenskaper och itererar igenom dem för att hitta och visa värdena för specifika namngivna egenskaper ("TEST" och "MYPROP"). Det visar hur man får åtkomst till anpassade eller utökade egenskaper i ett MAPI-meddelande genom att enumerera egenskapskollektionen och villkorligt bearbeta egenskaper baserat på deras namnidentifierare.
Åtkomst till namngivna MAPI-egenskaper i bilagor
Namngivna MAPI-egenskaper i bilagor kan hämtas på liknande sätt:
Ta bort MAPI-egenskaper
Du kan ta bort både standard- och namngivna MAPI-egenskaper från meddelanden eller bilagor som visas i kodexemplet nedan: