Aspose.Email FOSS for C++ ir MIT licences, atvērtā koda C++ bibliotēka, kas ļauj strādāt ar Microsoft Outlook .msg failiem un Compound File Binary (CFB) konteineriem. Iekļaujiet galvenes, izmantojot CMake, un uzreiz sāciet lasīt, izveidot un apstrādāt e-pasta ziņojumus, neinstalējot Microsoft Outlook vai kādu proprietāru izpildlaiku.
Bibliotēka nodrošina divus piekļuves līmeņus. Zemējā līmenī cfb_reader un cfb_writer sniedz pilnīgu kontroli pār CFB binārajiem konteineriem — pārlūko direktoriju ierakstus, lasa un raksta glabāšanas mezglus un plūsmas datus, un pārbauda neapstrādāto sektoru izkārtojumu. msg_reader un msg_writer apstrādā MSG formātu virs CFB, atklājot MAPI īpašību plūsmas, saņēmēju tabulas un pievienojumu apakšglabāšanas vietas. Augstākajā līmenī mapi_message ļauj izveidot jaunas ziņas no nulles, nolasīt tēmas, ķermeņus, saņēmējus un pievienojumus, kā arī konvertēt starp MSG un EML formātu.
Bibliotēka tiek izveidota jebkurā platformā ar C++17 kompilatoru un tai nav ārējām atkarībām, padarot to piemērotu Windows, Linux, macOS, Docker konteineriem un iegultām sistēmām.
Uzņēmuma izdevums ar papildu funkcijām tiek piedāvāts kā Aspose.Email for C++.
cfb_reader::from_file(), cfb_reader::from_stream() vai cfb_reader::from_bytes().storage_ids(), stream_ids() un child_ids(), un pārvietoties caur ligzdotām hierarhijām ar resolve_path().cfb_node::is_storage() un cfb_node::is_stream(), nolasiet laika zīmes caur creation_time() un modified_time().cfb_document un serializējiet uz baitiem vai failu, izmantojot cfb_writer::to_bytes() vai cfb_writer::write_file()..msg failiem — tieša CFB piekļuve ļauj veikt forensisku pārbaudi un labošanas darbus.msg_reader::from_file() vai msg_reader::from_stream() un piekļūstiet pamatā esošajiem MAPI īpašību plūsmām un pievienojumu apakšglabātuviem.msg_document ar msg_writer::to_bytes() vai msg_writer::write_file().msg_document::major_version(), msg_document::minor_version(), un pārbaudiet stingrību ar msg_document::strict().msg_document::to_cfb_document()..msg failu no arhīva direktorijām un izguve metadatus vai pielikumus.mapi_message::create(), pēc tam iestatiet tematu, saturu un HTML saturu, izmantojot set_subject(), set_body() un set_html_body().set_sender_name(), set_sender_email_address() un set_sender_address_type() izejošajam ziņojumam.mapi_attachment::from_bytes() un mapi_attachment::from_stream(), un pārbaudiet, vai ir iegultas ziņas, izmantojot is_embedded_message().mapi_message::save(), un pārlādēt, izmantojot mapi_message::from_file() vai mapi_message::from_stream()..eml failu (RFC 5322 / MIME) par pilnu mapi_message objektu, izmantojot mapi_message::load_from_eml().mapi_message atpakaļ uz MIME formātu ar save_to_eml()..eml un .msg failus, uz vienu formātu.Atveriet Outlook MSG failu no plūsmas un izdrukājiet tematu — nav nepieciešams 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';
}
Izveidojiet pilnīgu e-pastu ar sūtītāju, saņēmēju un pielikumu, pēc tam ierakstiet to gan MSG, gan EML formātos.
#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);
}