Akses dan Kelola Properti MAPI Outlook
MAPI properties adalah item metadata yang digunakan dalam pesan Microsoft Outlook, yang menentukan atribut seperti pengirim, penerima, subjek, lampiran, dan data khusus.
Aspose.Email for C++ memungkinkan pengembang mengakses, memodifikasi, dan menghapus properti ini secara programatis di MapiMessage objek, lampiran, dan properti bernama.
The MapiProperty kelas mewakili properti MAPI, yang berisi:
- Name – Identifier string properti.
- Tag – Identifier numerik yang digunakan untuk merujuk properti.
- Data – Array byte yang mewakili nilai properti.
Baca Properti MAPI
Aspose.Email memungkinkan Anda membaca properti MAPI menggunakan tag properti.
Contoh kode berikut menunjukkan cara membaca dan menampilkan properti subjek dari file pesan MAPI (.msg).
- Dapatkan jalur direktori tempat file pesan Outlook disimpan.
- Muat file pesan Outlook ("message.msg") ke dalam sebuah MapiMessage objek.
- Akses koleksi properti MAPI dari pesan.
- Coba mengambil properti subjek menggunakan
PR_SUBJECT (ANSI)tag. - Jika properti subjek ANSI tidak ditemukan, coba untuk mengambil properti subjek Unicode menggunakan
PR_SUBJECT_W. - Jika properti subjek ada, keluarkan nilai stringnya ke konsol.
Atur Properti MAPI
Properti MAPI dapat disetel untuk pesan atau penerima untuk mendefinisikan atribut kustom, jenis email, atau status sinkronisasi.
Contoh kode berikut menunjukkan cara membuat pesan MAPI, menetapkan beberapa properti MAPI kustom termasuk detail pengirim dan penerima, flag pesan, dan waktu modifikasi, lalu menyimpan pesan ke file.
Catatan: Helper ConvertDateTime() mengonversi System::DateTime menjadi array byte filetime yang kompatibel dengan MAPI untuk properti tanggal/waktu dengan cara berikut:
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);
Membaca Properti MAPI Ber‑nama
Properti MAPI bernama adalah properti kustom yang ditambahkan oleh pengguna atau aplikasi.
Aspose.Email memungkinkan pembacaan properti ini dari pesan dan lampiran.
Membaca Properti MAPI Bernama dari File MSG
Contoh kode berikut memperlihatkan cara memuat file pesan MAPI, mengambil semua properti MAPI bernama, dan iterasi untuk menemukan serta menampilkan nilai properti bernama tertentu ("TEST" dan "MYPROP"). Ini memperlihatkan cara mengakses properti kustom atau ekstensi dalam pesan MAPI dengan menelusuri koleksi properti dan memproses properti berdasarkan identifier nama mereka.
Mengakses Properti MAPI Bernama dalam Lampiran
Properti MAPI bernama dalam lampiran dapat diambil dengan cara yang sama:
Menghapus Properti MAPI
Anda dapat menghapus baik properti MAPI standar maupun bernama dari pesan atau lampiran seperti yang ditunjukkan dalam contoh kode di bawah ini: