Accedi e gestisci le proprietà MAPI di Outlook
MAPI properties sono elementi di metadati usati nei messaggi di Microsoft Outlook, definendo attributi come mittente, destinatario, oggetto, allegati e dati personalizzati.
Aspose.Email for C++ consente agli sviluppatori di accedere, modificare e rimuovere queste proprietà programmaticamente in MapiMessage oggetti, allegati e proprietà con nome.
Il MapiProperty la classe rappresenta una proprietà MAPI, che contiene:
- Name – L’identificatore stringa della proprietà.
- Tag – Un identificatore numerico usato per fare riferimento alla proprietà.
- Data – Un array di byte che rappresenta il valore della proprietà.
Leggi proprietà MAPI
Aspose.Email consente di leggere le proprietà MAPI usando i tag delle proprietà.
Il seguente esempio di codice dimostra come leggere e visualizzare la proprietà dell’oggetto da un file messaggio MAPI (.msg).
- Ottieni il percorso della directory dove sono memorizzati i file messaggi Outlook.
- Carica il file messaggio Outlook ("message.msg") in un MapiMessage oggetto.
- Accedi alla collezione di proprietà MAPI del messaggio.
- Prova a recuperare la proprietà dell’oggetto usando
PR_SUBJECT (ANSI)tag. - Se la proprietà dell’oggetto ANSI non viene trovata, prova a recuperare la proprietà dell’oggetto Unicode usando
PR_SUBJECT_W. - Se la proprietà dell’oggetto esiste, stampa il suo valore stringa sulla console.
Imposta le proprietà MAPI
Le proprietà MAPI possono essere impostate per messaggi o destinatari per definire attributi personalizzati, tipo di email o stato di sincronizzazione.
Il seguente esempio di codice mostra come creare un messaggio MAPI, impostare più proprietà MAPI personalizzate inclusi i dettagli di mittente e destinatario, i flag del messaggio e il tempo di modifica, quindi salvare il messaggio in un file.
Nota: L’helper ConvertDateTime() converte System::DateTime in un array di byte filetime compatibile MAPI per le proprietà data/ora nel modo seguente:
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);
Leggere proprietà MAPI nominate
Le proprietà MAPI con nome sono proprietà personalizzate aggiunte da utenti o applicazioni.
Aspose.Email consente la lettura di queste proprietà da messaggi e allegati.
Lettura di proprietà MAPI con nome da file MSG
Il seguente esempio di codice mostra come caricare un file di messaggio MAPI, recuperare tutte le sue proprietà MAPI con nome e iterare su di esse per trovare e visualizzare i valori di proprietà con nome specifiche ("TEST" e "MYPROP"). Dimostra come accedere a proprietà personalizzate o estese in un messaggio MAPI enumerando la collezione di proprietà e processando condizionalmente le proprietà in base ai loro identificatori di nome.
Accesso a proprietà MAPI con nome negli allegati
Le proprietà MAPI con nome negli allegati possono essere recuperate in modo simile:
Rimozione di proprietà MAPI
È possibile rimuovere sia le proprietà MAPI standard che quelle con nome da messaggi o allegati come mostrato nell’esempio di codice seguente: