1. Προϊόντα
  2.   Aspose.Email
  3.   Aspose.Email FOSS for C++

Aspose.Email FOSS για C++

Ανάγνωση, δημιουργία και επεξεργασία αρχείων Outlook MSG και κοντέινερ CFB από C++ — δωρεάν και ανοιχτού κώδικα, χωρίς εξάρτηση από Microsoft Outlook.

Ανοιχτού κώδικα βιβλιοθήκη C++ για αρχεία MSG και CFB

Aspose.Email FOSS για C++ είναι μια βιβλιοθήκη C++ αδειοδοτημένη MIT, ανοιχτού κώδικα, για εργασία με αρχεία .msg του Microsoft Outlook και δοχεία Compound File Binary (CFB). Συμπεριλάβετε τις κεφαλίδες μέσω CMake και ξεκινήστε αμέσως την ανάγνωση, δημιουργία και επεξεργασία μηνυμάτων email χωρίς την εγκατάσταση του Microsoft Outlook ή οποιουδήποτε ιδιόκτητου χρόνου εκτέλεσης.

Η βιβλιοθήκη παρέχει δύο επίπεδα πρόσβασης. Σε χαμηλό επίπεδο, cfb_reader και cfb_writer δίνουν πλήρη έλεγχο πάνω σε δυαδικά κοντέινερ CFB — περιήγηση στις καταχωρήσεις καταλόγου, ανάγνωση και εγγραφή κόμβων αποθήκευσης και δεδομένων ροής, και επιθεώρηση της ακατέργαστης διάταξης τομέων. msg_reader και msg_writer διαχειρίζονται τη μορφή MSG πάνω από CFB, εκθέτοντας ροές ιδιοτήτων MAPI, πίνακες παραληπτών και υπο‑αποθηκεύσεις συνημμένων. Σε υψηλό επίπεδο, mapi_message σας επιτρέπει να δημιουργήσετε νέα μηνύματα από το μηδέν, να διαβάσετε θέματα, σώματα, παραλήπτες και συνημμένα, και να μετατρέψετε μεταξύ μορφών MSG και EML. Η βιβλιοθήκη δημιουργείται σε οποιαδήποτε πλατφόρμα με μεταγλωττιστή C++17 και δεν έχει εξωτερικές εξαρτήσεις, καθιστώντας την κατάλληλη για Windows, Linux, macOS, Docker containers και ενσωματωμένα συστήματα. Μια έκδοση Enterprise με πρόσθετες λειτουργίες προσφέρεται ως Aspose.Email for C++.

Ανάγνωση και εγγραφή κοντέινερ CFB

  • Άνοιγμα αρχείων CFB: Φορτώστε υπάρχοντα CFB containers από διαδρομή αρχείου, ροή ή byte array μέσω 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: Δημιουργήστε έγγραφα CFB προγραμματιστικά με cfb_document και σειριοποιήστε σε bytes ή αρχείο μέσω cfb_writer::to_bytes() ή cfb_writer::write_file().

Πού χρησιμοποιείται η πρόσβαση CFB

  • Έλεγχος αρχείου MSG: CFB είναι η μορφή δοχείου για αρχεία Outlook .msg — η άμεση πρόσβαση σε CFB επιτρέπει τη δικανική επιθεώρηση και επισκευή.
  • Προσαρμοσμένες δυαδικές μορφές: Οποιαδήποτε παλαιότερη εφαρμογή που χρησιμοποιεί CFB για αποθήκευση δεδομένων μπορεί να διαβαστεί ή να γραφτεί χωρίς εξάρτηση από COM.
  • Data recovery: Περιηγηθείτε σε όλο το δέντρο καταλόγου και εξάγετε ακατέργαστα bytes ροής από κατεστραμμένα ή μη‑τυπικά αρχεία CFB.

Ανάγνωση και εγγραφή αρχείου MSG

  • Διαβάστε αρχεία MSG: Ανοίξτε αρχεία MSG του Outlook με msg_reader::from_file() ή msg_reader::from_stream() και αποκτήστε πρόσβαση στις υποκείμενες ροές ιδιοτήτων MAPI και στις υπο-αποθηκεύσεις συνημμένων.
  • Γράψτε αρχεία MSG: Δημιουργήστε αρχεία MSG από ένα msg_document με msg_writer::to_bytes() ή msg_writer::write_file().
  • Έλεγχος εγγράφου MSG: Πρόσβαση στα μεταδεδομένα έκδοσης μέσω msg_document::major_version(), msg_document::minor_version(), και έλεγχος της αυστηρότητας με msg_document::strict().
  • Μετατροπή σε CFB: Εξάγετε το υποκείμενο έγγραφο CFB από ένα αρχείο MSG μέσω msg_document::to_cfb_document().

Πού χρησιμοποιείται η επεξεργασία MSG

  • Διαδρόμους αρχειοθέτησης email: Μαζική ανάγνωση αρχείων .msg από καταλόγους αρχείου και εξαγωγή μεταδεδομένων ή συνημμένων.
  • Εργαλεία μετεγκατάστασης: Μετατρέψτε τις συλλογές MSG σε τυπικές μορφές για εισαγωγή σε συστήματα που δεν είναι Outlook.
  • Legal discovery: Αναλύστε ακατέργαστες ροές ιδιοτήτων MAPI για να εξάγετε όλα τα πεδία μηνύματος, συμπεριλαμβανομένων των μη τυπικών ιδιοτήτων.

API μηνύματος MAPI υψηλού επιπέδου

  • Create messages: Build a complete email with mapi_message::create(), then set subject, body, and HTML body via set_subject(), set_body(), and set_html_body().
  • Ορίστε τα στοιχεία αποστολέα: Διαμορφώστε set_sender_name(), set_sender_email_address() και set_sender_address_type() για το εξερχόμενο μήνυμα.
  • Διαχείριση συνημμένων: Φορτώστε συνημμένα από bytes ή streams με mapi_attachment::from_bytes() και mapi_attachment::from_stream(), και ελέγξτε για ενσωματωμένα μηνύματα μέσω is_embedded_message().
  • Αποθήκευση και επαναφόρτωση: Σειριοποιήστε με mapi_message::save() και επαναφορτώστε με mapi_message::from_file() ή mapi_message::from_stream().

Πού χρησιμοποιείται το API υψηλού επιπέδου

  • Αυτοματοποιημένη δημιουργία email: Δημιουργήστε χιλιάδες εξατομικευμένα αρχεία MSG από εγγραφές δεδομένων σε εργασίες δέσμης.
  • Δημιουργία fixture δοκιμής: Δημιουργήστε γνωστά-καλά αρχεία MSG με προβλέψιμο περιεχόμενο για σύνολα δοκιμών ενσωμάτωσης.
  • Εξαγωγή συνημμένων: Φορτώστε ένα αρχείο MSG, διατρέξτε τα συνημμένα και αποθηκεύστε το καθένα στο δίσκο.

Μετατροπή EML και MIME

  • Φόρτωση EML σε mapi_message: Ανάλυση ενός τυπικού .eml αρχείου (RFC 5322 / MIME) σε ένα πλήρες mapi_message αντικείμενο μέσω mapi_message::load_from_eml().
  • Αποθήκευση mapi_message ως EML: Σειριοποιήστε ένα mapi_message σε μορφή MIME με save_to_eml().
  • Ακρίβεια κυκλικής μετατροπής: Το θέμα, το σώμα, ο αποστολέας, οι παραλήπτες και τα συνημμένα διατηρούνται κατά τις μετατροπές από EML σε MSG σε EML.

Πού χρησιμοποιείται η μετατροπή EML

  • Διασύνδεση μορφής: Λάβετε email ως EML από διακομιστές αλληλογραφίας και μετατρέψτε τα σε MSG για αποθήκευση συμβατή με το Outlook.
  • Συμμόρφωση με πρότυπα: Μετατρέψτε ιδιόκτητα αρχεία MSG σε τυπικό MIME για παράδοση σε οποιαδήποτε μεταφορά αλληλογραφίας.
  • Κανονικοποίηση αρχείου: Κανονικοποιήστε ένα μικτό αρχείο .eml και .msg σε μια ενιαία μορφή.

Ανάγνωση θέματος από αρχείο MSG

Ανοίξτε ένα αρχείο Outlook MSG από ροή και εκτυπώστε το θέμα — δεν απαιτείται το 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';
}

Δημιουργία και αποθήκευση μηνύματος MSG

Δημιουργήστε ένα πλήρες 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);
}
  

Υποστήριξη και Πόροι Μάθησης

 Ελληνικά