Το FOSS για C++ είναι μια βιβλιοθήκη ανοικτού κώδικα με άδεια χρήσης του MIT, που λειτουργεί με τα αρχεία Microsoft Outlook .msg και τους περιέκτες Compound File Binary (CFB). Συμπεριλάβετε τις επικεφαλίδες μέσω CMake και ξεκινήστε αμέσως την ανάγνωση, τη δημιουργία και επεξεργασία μηνυμάτων ηλεκτρονικού ταχυδρομείου χωρίς να εγκαταστήσετε το Microsoft Excel ή οποιοδήποτε ιδιόκτητο χρόνο εκτέλεσης.
Η βιβλιοθήκη παρέχει δύο επίπεδα πρόσβασης. Στο χαμηλό επίπεδο, το cfb_reader και τοcfb_writer δίνουν πλήρη έλεγχο πάνω σε δυαδικά περιέκτες CFB διαδρομικές καταχωρίσεις κατάλογος, διαβάζουν και γράφουν κόμβους αποθήκευσης και δεδομένα ροής, και επιθεωρούν την πρώτη διάταξη του τομέα. Το msg_reader και msg_writer χειρίζονται τη μορφή MSG στην κορυφή της CF B, εκθέτοντας τις ροές ιδιοτήτων MAPI, τα πίνακα παραλήπτη και τις υπο-θεματολογίες προσαρτήσεων. στο υψηλό level, η mapi_message σας επιτρέπει να δημιουργείτε νέα μηνύματα από την αρχή, να διαβάζετε θέματα, δέκτη και σώματα και να μετατρέπετε μεταξύ μορφότυπου MS G και EML.
Η βιβλιοθήκη βασίζεται σε οποιαδήποτε πλατφόρμα με συντάκτη C++17 και δεν έχει εξωτερικές εξαρτησίες, καθιστώντας την κατάλληλη για Windows, Linux, macOS, Docker containers και ενσωματωμένα συστήματα.
Μια έκδοση επιχειρήσεων με πρόσθετα χαρακτηριστικά προσφέρεται ως Aspose.Email for C++.
cfb_reader::from_file(), cfb_reader::from_stream() ή cfb_reader::from_bytes().storage_ids(), stream_ids() και child_ids() και πλοηγηθείτε στις ενσωματωμένες ιεραρχίες με την επιλογή resolve_path().cfb_node::is_storage() και cfb_node::is_stream(), διαβάστε τα χρονοσήματα μέσω creation_time() ή modified_time().cfb_document και serialize σε bytes ή αρχείο μέσω cfb_writer::to_bytes() ή cfb_writer::write_file()..msg Η άμεση πρόσβαση στο CF B επιτρέπει τη δικαστική εξέταση και επισκευή.msg_reader::from_file() ή τοmsg_reader::from_stream() και αποκτήστε πρόσβαση στις υποκείμενες ροές ιδιοτήτων MAPI και τις υπο αποθήκες προσαρτήσεων.msg_document με το msg_writer::to_bytes() ή τοmsg_writer::write_file().msg_document::major_version(), msg_document::minor_version() και επαλήθευση αυστηρότητας με το msg_document::strict().msg_document::to_cfb_document()..msg που διαβάζονται κατά μάζα από καταλόγους αρχείων και εκχύνονται μεταδεδομένα ή συνημμένα.mapi_message::create(), στη συνέχεια ορίστε θέμα, σώμα και HTML μέσω των set_subject(), set_body() και set_html_body().set_sender_name(), set_sender_email_address() και set_sender_address_type() για το εξερχόμενο μήνυμα.mapi_attachment::from_bytes() και mapi_attachment::from_stream(), και ελέγξτε για ενσωματωμένα μηνύματα μέσω του is_embedded_message().mapi_message::save() και επανειλημμένα με το mapi_message::from_file() ή τοmapi_message::from_stream()..eml (RFC 5322 / MIME) σε πλήρες αντικείμενο mapi_message μέσω του mapi_message::load_from_eml().mapi_message σε μορφή MIME με το save_to_eml()..eml και .msg σε μία ενιαία μορφή.Ανοίξτε ένα αρχείο MSG του Outlook από μια ροή και εκτυπώστε το θέμα δεν απαιτείται Microsoft Outlook.
#include <fstream>
#include <iostream>
#include "aspose/email/foss/msg/mapi_message.hpp"
int main()
{
std::ifstream input("sample.msg", std::ios::binary);
auto message = aspose::email::foss::msg::mapi_message::from_stream(input);
std::cout << message.subject() << '\n';
}
Δημιουργήστε ένα πλήρες email με αποστολέα, παραλήπτη και συνημμένο κείμενο, στη συνέχεια γράψτε το τόσο σε μορφές MSG όσο και EML.
#include <fstream>
#include "aspose/email/foss/msg/mapi_message.hpp"
int main()
{
auto message = aspose::email::foss::msg::mapi_message::create("Hello", "Body");
message.set_sender_name("Alice");
message.set_sender_email_address("alice@example.com");
message.add_recipient("bob@example.com", "Bob");
message.add_attachment("note.txt", std::vector<std::uint8_t>{'a', 'b', 'c'}, "text/plain");
std::ofstream msg_output("hello.msg", std::ios::binary);
message.save(msg_output);
std::ofstream eml_output("hello.eml", std::ios::binary);
message.save_to_eml(eml_output);
}