1. Products
  2.   Aspose.Email
  3.   Aspose.Email FOSS for C++

Aspose.Email FOSS C++ kalbai

Skaitykite, kurkite ir apdorokite Outlook MSG failus bei CFB konteinerius iš C++ — nemokama ir atviro kodo, be Microsoft Outlook priklausomybės.

Atviro kodo C++ biblioteka MSG ir CFB failams

Aspose.Email FOSS for C++ yra MIT licencijuota, atviro kodo C++ biblioteka, skirta dirbti su Microsoft Outlook .msg failais ir Compound File Binary (CFB) konteineriais. Įtraukite antraštes per CMake ir iš karto pradėkite skaityti, kurti ir apdoroti el. laiškų žinutes be Microsoft Outlook įdiegimo ar bet kokios nuosavybinės vykdymo aplinkos.

Biblioteka suteikia du prieigos lygius. Žemo lygio cfb_reader ir cfb_writer suteikia visišką kontrolę CFB binarinėse konteineriuose — naršyti katalogų įrašus, skaityti ir rašyti saugojimo mazgus bei srauto duomenis, ir peržiūrėti neapdorotą sektorių išdėstymą. msg_reader ir msg_writer apdoroja MSG formatą ant CFB, atskleidžia MAPI savybių srautus, gavėjų lenteles ir priedų sub-saugojimus. Aukšto lygio mapi_message leidžia kurti naujas žinutes nuo nulio, skaityti temas, turinį, gavėjus ir priedus, bei konvertuoti tarp MSG ir EML formato. Biblioteka veikia bet kurioje platformoje su C++17 kompiliatoriumi ir neturi išorinių priklausomybių, todėl ji tinka Windows, Linux, macOS, Docker konteineriams ir įterptinėms sistemoms. Įmonės leidimas su papildomomis funkcijomis siūlomas kaip Aspose.Email for C++.

CFB konteinerio skaitymas ir rašymas

  • Open CFB files: Įkelkite esamus CFB konteinerius iš failo kelio, srauto arba baitų masyvo naudodami cfb_reader::from_file(), cfb_reader::from_stream() arba cfb_reader::from_bytes().
  • Naršyti katalogų medį: Išvardyti saugyklas ir srautus naudojant storage_ids(), stream_ids() ir child_ids(), bei naršyti įdėtines hierarchijas su resolve_path().
  • Patikrinkite mazgus: Patikrinkite mazgo tipą su cfb_node::is_storage() ir cfb_node::is_stream(), perskaitykite laiko žymas per creation_time() ir modified_time().
  • Rašyti CFB konteinerius: Sukurkite CFB dokumentus programiškai naudodami cfb_document ir serializuokite į baitus arba failą per cfb_writer::to_bytes() arba cfb_writer::write_file().

Kur naudojamas CFB Access

  • MSG failų patikrinimas: CFB yra konteinerio formatas Outlook .msg failams — tiesioginė CFB prieiga leidžia atlikti forensic patikriną ir taisymą.
  • Pasirinktiniai dvejetainiai formatai: Bet kokia senesnė programa, naudojanti CFB duomenų saugojimui, gali būti skaitoma arba rašoma be COM priklausomybės.
  • Duomenų atkūrimas: Naršykite visą katalogų medį ir išskirkite neapdorotus srauto baitus iš pažeistų arba nestandartinių CFB failų.

MSG failo skaitymas ir rašymas

  • Skaityti MSG failus: Atidarykite Outlook MSG failus naudodami msg_reader::from_file() arba msg_reader::from_stream() ir pasiekite pagrindinius MAPI savybių srautus bei priedų sub‑saugyklas.
  • Rašyti MSG failus: Gaukite MSG failus iš msg_document su msg_writer::to_bytes() arba msg_writer::write_file().
  • MSG dokumento patikrinimas: Pasiekite versijos metaduomenis per msg_document::major_version(), msg_document::minor_version() ir patikrinkite griežtumą su msg_document::strict().
  • Konvertuoti į CFB: Išgauti pagrindinį CFB dokumentą iš MSG failo per msg_document::to_cfb_document().

Kur naudojamas MSG apdorojimas

  • El. pašto archyvavimo konvejeriai: Masinis .msg failų skaitymas iš archyvų katalogų ir išskirti metaduomenis arba priedus.
  • Migracijos įrankiai: Konvertuokite MSG kolekcijas į standartinius formatus, kad jas būtų galima importuoti į ne‑Outlook sistemas.
  • Teisinis tyrimas: Išanalizuokite neapdorotus MAPI savybių srautus, kad išgautumėte visus pranešimo laukus, įskaitant nestandartines savybes.

Aukšto lygio MAPI žinučių API

  • Kurti pranešimus: Sukurkite pilną el. laišką su mapi_message::create(), tada nustatykite temą, turinį ir HTML turinį per set_subject(), set_body() ir set_html_body().
  • Nustatykite siuntėjo duomenis: Konfigūruokite set_sender_name(), set_sender_email_address() ir set_sender_address_type() išeinančiam pranešimui.
  • Valdyti priedus: Įkelti priedus iš baitų arba srautų naudojant mapi_attachment::from_bytes() ir mapi_attachment::from_stream(), ir patikrinti, ar yra įterptų pranešimų per is_embedded_message().
  • Išsaugoti ir pakrauti iš naujo: Serializuokite naudodami mapi_message::save() ir pakraukite iš naujo naudodami mapi_message::from_file() arba mapi_message::from_stream().

Kur naudojama aukšto lygio API

  • Automatinis el. laiškų generavimas: Generuokite tūkstančius suasmenintų MSG failų iš duomenų įrašų paketiniuose darbe.
  • Test fixture creation: Sukurkite patikimus MSG failus su prognozuojamu turiniu integracijos testų rinkiniams.
  • Priedų išskyrimas: Įkelkite MSG failą, peržvelkite priedus ir išsaugokite kiekvieną į diską.

EML ir MIME konvertavimas

  • Load EML into mapi_message: Išanalizuokite standartinį .eml failą (RFC 5322 / MIME) į pilną mapi_message objektą per mapi_message::load_from_eml().
  • Save mapi_message as EML: Serializuokite mapi_message atgal į MIME formatą naudodami save_to_eml().
  • Round-trip fidelity: Tema, turinys, siuntėjas, gavėjai ir priedai išlieka nepakitę per EML į MSG į EML keliones.

Kur naudojamas EML konvertavimas

  • Format bridging: Gaukite el. laiškus kaip EML iš pašto serverių ir konvertuokite į MSG, kad būtų suderinamas su Outlook saugojimas.
  • Standartų atitiktis: Konvertuokite nuosavybinius MSG failus į standartinį MIME, kad būtų galima pristatyti bet kuriam pašto transportui.
  • Archyvo normalizavimas: Normalizuokite mišrią archyvą, sudarytą iš .eml ir .msg failų, į vieną formatą.

Skaityti temą iš MSG failo

Atidarykite Outlook MSG failą iš srauto ir atspausdinkite temą — nereikia 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';
}

Sukurti ir išsaugoti MSG žinutę

Sukurkite pilną el. laišką su siuntėju, gavėju ir priedu, tada įrašykite jį į MSG ir EML formatus.

#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);
}
  

Support and Learning Resources

 Lietuvių