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

Aspose.Email FOSS for C++

Lue, luo ja käsittele Outlook MSG -tiedostoja ja CFB-säiliöitä C++:sta — ilmainen ja avoimen lähdekoodin, ilman Microsoft Outlook -riippuvuutta.

Avoimen lähdekoodin C++ -kirjasto MSG- ja CFB-tiedostoille

Aspose.Email FOSS for C++ on MIT-lisenssi, avoimen lähdekoodin C++-kirjasto Microsoft Outlook .msg -tiedostojen ja Compound File Binary (CFB) -konttien kanssa työskentelemiseen. Lisää otsikot CMake:n kautta ja aloita heti sähköpostiviestien lukeminen, luominen ja käsittely asentamatta Microsoft Outlookia tai mitään proprietaarista suoritusaikaympäristöä.

Kirjasto tarjoaa kaksi tasoa pääsyyn. Alhaisella tasolla cfb_reader ja cfb_writer antavat täyden hallinnan CFB-binäärikonteille — selaa hakemistomerkintöjä, lue ja kirjoita tallennussolmuja ja virtaustietoja, ja tarkastele raakasektorirakennetta. msg_reader ja msg_writer käsittelevät MSG-muotoa CFB:n päällä, paljastaen MAPI-ominaisuusvirrat, vastaanottajataulukot ja liitteiden alitallennukset. Korkeammalla tasolla mapi_message antaa sinun luoda uusia viestejä alusta alkaen, lukea aiheita, runkoja, vastaanottajia ja liitteitä, sekä muuntaa MSG- ja EML-muotojen välillä.

Kirjasto toimii kaikilla alustoilla, joissa on C++17-kääntäjä, eikä sillä ole ulkoisia riippuvuuksia, mikä tekee siitä sopivan Windowsille, Linuxille, macOSille, Docker-kontteille ja sulautetuille järjestelmille.

Yritysversio, jossa on lisäominaisuuksia, on tarjolla nimellä Aspose.Email for C++.

CFB-säiliö Lukea ja kirjoita

  • Avaa CFB-tiedostot: Ladata olemassa olevat CF B -säiliöt tiedostopolulta, virratta tai byte-arjesta cfb_reader::from_file(), cfb_reader::from_stream() tai cfb_reader::from_bytes().
  • Lähtää hakemistopuun läpi: Luetteloida tallennuksia ja virtoja käyttämällä storage_ids(), stream_ids() ja child_ids() sekä navigoida solmuttuneisiin hierarkioihin käyttäen resolve_path().
  • ** Tarkista solmuja:** Tarkasta solmustyyppi cfb_node::is_storage() ja cfb_node::is_stream(), lue aikaleikkeet creation_time() tai modified_time().
  • Kirjoita CFB-säiliöt: Rakenna CF B -asiakirjat ohjelmoidusti cfb_document ja sarjataan byteihin tai tiedostoon cfb_writer::to_bytes() tai cfb_writer::write_file().

CFB-yhteyden käyttöpaikat

  • MSG-tiedoston tarkastus: CFB on Outlook .msg -tiedoille tarkoitettu kontineriformaatti. Suora CFb-yhteys mahdollistaa rikostutkintatarkastuksen ja korjaamisen.
  • Säännölliset binäärit: Kaikki vanhat CFB-käyttöön tarkoitetut sovellukset voidaan lukea tai kirjoittaa ilman COM-riippuvuutta.
  • Tatien palauttaminen: Käytä koko luettelon puuta ja poista raaka-ainevirran bytejä vahingoittuneista tai epäsäännöllisistä CFB-tiedostoista.

MSG-tiedostoa lukea ja kirjoittaa

  • Lue MSG-tiedostoja: Avaa Outlook MSG -tiedostoja msg_reader::from_file() tai msg_reader::from_stream() avulla ja käytä taustalla olevia MAPI-ominaisuusvirtoja ja liitteiden alitallennustiloja.
  • Kirjoita MSG-tiedostoja: Luo MSG-tiedostoja msg_document käyttäen msg_writer::to_bytes() tai msg_writer::write_file().
  • MSG-dokumentin tarkastus: Pääse versio‑metatietoihin msg_document::major_version(), msg_document::minor_version() kautta ja tarkista tiukkuus msg_document::strict() avulla.
  • Muunna CFB:ksi: Pura taustalla oleva CFB-dokumentti MSG-tiedostosta msg_document::to_cfb_document() avulla.

Missä MSG:n käsittelyä käytetään

  • E-mail arkkitehtuurin johdot: Paljonlukeminen .msg tiedostoja arkistointikäsikirjoista ja metatietojen tai liitteiden poimitus.
  • Siirtymätyökalut: Muunta MSG-keräykset standardimuotoihin, jotta ne voidaan tuoda muille kuin Outlookin järjestelmiin.
  • Lisää: Parseeraa raaka MAPI-ominaisuuksien virrat, jotta kaikki viestikentät voidaan poistaa, mukaan lukien epäsäännölliset ominaisuudet.

Korkean tason MAPI-viestien API

  • ** Luoda viestejä:** Luo täydellinen sähköposti mapi_message::create() -sovelluksella, sitten asettaa aihe, ruumis ja HTML-ruumiin set_subject() , set_body() ja set_html_body().
  • ** Määritä lähettäjän tiedot:** Säästä set_sender_name(), set_sender_email_address() ja set_sender_address_type() lähteväksi viestiksi.
  • ** Hallinnoi liitteitä:** Laita liitetiedostoja byteistä tai virroista mapi_attachment::from_bytes() ja mapi_attachment::from_stream(), ja tarkista sisältyvät viestit is_embedded_message().
  • Säästä ja lata: Serialisaa mapi_message::save() -sovelluksella ja lataa uudelleen mapi_message::from_file() tai mapi_message::from_stream().

Missä korkean tason API: tä käytetään

  • Automaattinen sähköpostien tuottaminen: Tuottaa tuhansia henkilökohtaisia MSG-tiedostoja tietoihin ryhmätehtävissä.
  • Kokeiluvalmisteiden luominen: Rakenna tunnetut hyvät MSG-tiedostot ennakoitavalla sisällöllä integrointitestilaitteille.
  • Liitteiden poisto: Lataa MSG-tiedosto, iteraatio liitetiedostot ja tallenna jokainen levylle.

EML- ja MIME-muuntaminen

  • Laad EML mapi_message: Parse standardin .eml tiedosto (RFC 5322 / MIME) täysimääräinen mapi_message -objekti kautta mapi_message::load_from_eml().
  • ** Säilytä mapi_message EML:näisenä. * Seerisoi mapi_message takaisin MIME-muodoksi save_to_eml() avulla.
  • Käynti- ja takaisinmatko: Kohde, ruumis, lähettäjä, vastaanottajat ja liitteet säilytetään EML:stä MSG:ään EMl:lle kierroskäynneissä.

Missä EML-muuntamista käytetään

  • Formatti siltaaminen: Vastaanotetaan sähköpostiviestejä EML-muodossa postiseverien kautta ja muunnellaan MSG:ksi Outlookin yhteensopiva tallennus.
  • Standardin noudattaminen: Muunta omistettuja MSG-tiedostoja standardiksi MIME:ksi toimitettavaksi mihin tahansa postitukseen.
  • Arkivointi normaali: Normaalita .eml - ja .msg -tiedostojen sekoitettu arkisto yhdelle muodolle.

Lue aihe MSG-tiedostosta

Avaa Outlook MSG-tiedosto virrattaessa ja tulosta aihe ei tarvitse Microsoft Outlookia.

#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-viestin luominen ja tallentaminen

Rakenna täydellinen sähköposti lähettäjälle, vastaanottajalle ja liitteelle. Kirjoita se sitten sekä MSG- että EML-muodossa.

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

Tuki- ja oppimisresurssit

 Suomi