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

Aspose.Email FOSS C++:lle

Lue, luo ja käsittele Outlook MSG -tiedostoja ja CFB-säiliöitä C++:lla — 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-lisenssillä julkaistu, avoimen lähdekoodin C++-kirjasto, jonka avulla voidaan työskennellä Microsoft Outlook .msg -tiedostojen ja Compound File Binary (CFB) -konttien kanssa. Sisällytä 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ääsyä. Alhaisella tasolla cfb_reader ja cfb_writer antavat täyden hallinnan CFB‑binäärikonttien — selaa hakemistomerkintöjä, lue ja kirjoita tallennus solmuja ja virtaustietoja, ja tarkastele raaka sektori layoutia. 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ä, ja muuntaa MSG‑ ja EML‑muodon välillä. Kirjasto toimii kaikilla alustoilla, joissa on C++17-kääntäjä, eikä sillä ole ulkoisia riippuvuuksia, mikä tekee siitä sopivaksi Windowsille, Linuxille, macOSille, Docker-kontteihin ja sulautettuihin järjestelmiin. Yritysversion, jossa on lisäominaisuuksia, tarjotaan Aspose.Email for C++.

CFB-säiliön luku ja kirjoitus

  • Avaa CFB-tiedostoja: Lataa olemassa olevat CFB-säiliöt tiedostopolusta, virtauksesta tai tavutaulukosta käyttäen cfb_reader::from_file(), cfb_reader::from_stream() tai cfb_reader::from_bytes().
  • Selaa hakemistopuun läpi: Luettele tallennustilat ja virrat käyttäen storage_ids(), stream_ids() ja child_ids(), ja navigoi sisäkkäisissä hierarkioissa käyttäen resolve_path().
  • Tarkastele solmuja: Tarkista solmun tyyppi cfb_node::is_storage():lla ja cfb_node::is_stream():lla, lue aikaleimat creation_time():n ja modified_time():n avulla.
  • Kirjoita CFB-säiliöt: Rakenna CFB-asiakirjoja ohjelmallisesti käyttäen cfb_document ja sarjoita tavuiksi tai tiedostoon käyttäen cfb_writer::to_bytes() tai cfb_writer::write_file().

Missä CFB-pääsyä käytetään

  • MSG-tiedoston tarkastus: CFB on Outlook .msg -tiedostojen säiliömuoto — suora CFB-pääsy mahdollistaa rikostutkintatarkastuksen ja korjauksen.
  • Mukautetut binäärimuodot: Mikä tahansa vanha sovellus, joka käyttää CFB:tä tietojen tallennukseen, voidaan lukea tai kirjoittaa ilman COM-riippuvuutta.
  • Data recovery: Selaa koko hakemistopuu ja poimi raakavirran tavut vaurioituneista tai ei‑standardin CFB‑tiedostoista.

MSG-tiedoston luku ja kirjoitus

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

Missä MSG‑käsittelyä käytetään

  • Sähköpostien arkistointiputket: Lue massana .msg-tiedostoja arkistokansioista ja poimi metatietoja tai liitteitä.
  • Migraatiotyökalut: Muunna MSG-kokoelmat standardimuotoihin, jotta ne voidaan tuoda ei-Outlook-järjestelmiin.
  • Oikeudellinen tiedonhankinta: Jäsennä raakat MAPI-ominaisuusvirrat poimiaksesi kaikki viestikentät, mukaan lukien ei-standardiominaisuudet.

Korkean tason MAPI-viestirajapinta

  • Luo viestejä: Rakenna täydellinen sähköposti mapi_message::create():n avulla, sitten aseta aihe, runko ja HTML runko set_subject(), set_body() ja set_html_body() kautta.
  • Aseta lähettäjän tiedot: Määritä set_sender_name(), set_sender_email_address() ja set_sender_address_type() lähtevälle viestille.
  • Hallinnoi liitteitä: Lataa liitteet tavuista tai virroista käyttäen mapi_attachment::from_bytes() ja mapi_attachment::from_stream(), ja tarkista upotetut viestit käyttäen is_embedded_message().
  • Tallenna ja lataa uudelleen: Sarjoita käyttäen mapi_message::save() ja lataa uudelleen käyttäen mapi_message::from_file() tai mapi_message::from_stream().

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

  • Automaattinen sähköpostin luominen: Luo tuhansia personoituja MSG-tiedostoja tietueista eräajossa.
  • Testirakenteen luominen: Rakenna luotettavia MSG-tiedostoja ennustettavalla sisällöllä integraatiotestisettejä varten.
  • Liitteiden poiminta: Lataa MSG-tiedosto, käy läpi liitteet ja tallenna jokainen levylle.

EML- ja MIME-muunnos

  • Load EML into mapi_message: Jäsennä standardi .eml -tiedosto (RFC 5322 / MIME) täydeksi mapi_message -objektiksi mapi_message::load_from_eml() :n kautta.
  • Tallenna mapi_message EML-muodossa: Sarjoita mapi_message takaisin MIME-muotoon käyttäen save_to_eml().
  • Kierrosmatkan tarkkuus: Aihe, runko, lähettäjä, vastaanottajat ja liitteet säilyvät EML:stä MSG:hen ja takaisin EML:iin tehtävissä kierrosmatkoissa.

Missä EML‑muunnosta käytetään

  • Formaattisiltauksen: Vastaanota sähköpostit EML-muodossa postipalvelimilta ja muunna ne MSG-muotoon Outlook-yhteensopivaa tallennusta varten.
  • Standardien noudattaminen: Muunna proprietaariset MSG-tiedostot standardiksi MIME-muodoksi toimitettavaksi mihin tahansa postiliikenteeseen.
  • Arkistojen normalisointi: Normalisoi sekoitettu arkisto, jossa on .eml ja .msg -tiedostoja, yhdeksi formaatiksi.

Lue aihe MSG‑tiedostosta

Avaa Outlook MSG -tiedosto virrasta ja tulosta aihe — Microsoft Outlookia ei tarvita.

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

Luo ja tallenna MSG‑viesti

Luo täydellinen sähköposti lähettäjän, vastaanottajan ja liitteen kanssa, ja tallenna se sekä MSG- että EML-muotoihin.

#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