Aspose.Email FOSS for C++ MIT-licensed, open-source C++ kütüphanesidir Microsoft Outlook .msg dosyaları ve Compound File Binary (CFB) kapsayıcılarıyla çalışmak için. Başlıkları CMake ile ekleyin ve Microsoft Outlook ya da herhangi bir tescilli çalışma zamanı kurmadan e-posta mesajlarını okumaya, oluşturmaya ve işlemeye hemen başlayın.
Kütüphane iki erişim seviyesi sağlar. Düşük seviyede, cfb_reader ve cfb_writer CFB ikili kapsayıcıları üzerinde tam kontrol sunar — dizin girişlerini dolaşın, depolama düğümlerini ve akış verilerini okuyun ve yazın, ve ham sektör düzenini inceleyin. msg_reader ve msg_writer CFB üzerine MSG formatını işler, MAPI özellik akışlarını, alıcı tablolarını ve ek alt‑depolamalarını ortaya çıkarır. Yüksek seviyede, mapi_message yeni mesajları sıfırdan oluşturmanıza, konu, gövde, alıcılar ve ekleri okumanıza ve MSG ile EML formatı arasında dönüştürmenize olanak tanır.
Kütüphane, C++17 derleyicisine sahip herhangi bir platformda çalışır ve harici bağımlılıkları yoktur, bu da Windows, Linux, macOS, Docker konteynerleri ve gömülü sistemler için uygun olmasını sağlar.
Ek özelliklere sahip bir kurumsal sürüm Aspose.Email for C++ olarak sunulmaktadır.
cfb_reader::from_file(), cfb_reader::from_stream() veya cfb_reader::from_bytes() ile yükleyin.storage_ids(), stream_ids() ve child_ids() kullanarak depolamaları ve akışları listeleyin ve resolve_path() ile iç içe hiyerarşileri gezin.cfb_node::is_storage() ve cfb_node::is_stream() ile kontrol edin, zaman damgalarını creation_time() ve modified_time() aracılığıyla okuyun.cfb_document ile oluşturun ve cfb_writer::to_bytes() veya cfb_writer::write_file() aracılığıyla baytlara veya dosyaya serileştirin..msg dosyaları için kapsayıcı formatıdır — doğrudan CFB erişimi, adli inceleme ve onarımı mümkün kılar.msg_reader::from_file() veya msg_reader::from_stream() ile açın ve temel MAPI özellik akışlarına ve ek alt depolarına erişin.msg_document ile msg_writer::to_bytes() veya msg_writer::write_file() kullanarak MSG dosyaları oluşturun.msg_document::major_version(), msg_document::minor_version() aracılığıyla erişin ve katılığı msg_document::strict() ile kontrol edin.msg_document::to_cfb_document() aracılığıyla bir MSG dosyasından temel CFB belgesini çıkarın..msg dosyalarını toplu olarak okuyun ve meta verileri veya ekleri çıkarın.mapi_message::create() ile, ardından konu, gövde ve HTML gövdesini set_subject(), set_body() ve set_html_body() aracılığıyla ayarlayın.set_sender_name(), set_sender_email_address() ve set_sender_address_type() yapılandırın.mapi_attachment::from_bytes() ve mapi_attachment::from_stream() ile yükleyin ve gömülü mesajları is_embedded_message() aracılığıyla kontrol edin.mapi_message::save() ile serileştir ve mapi_message::from_file() veya mapi_message::from_stream() ile yeniden yükle..eml dosyasını (RFC 5322 / MIME) mapi_message::load_from_eml() aracılığıyla tam bir mapi_message nesnesine ayrıştır.mapi_message‘i save_to_eml() ile MIME formatına geri serileştirin..eml ve .msg dosyalarından oluşan arşivi tek bir formata normalleştirin.Bir akıştan Outlook MSG dosyasını açın ve konuyu yazdırın — Microsoft Outlook gerekmez.
#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';
}
Gönderen, alıcı ve ek içeren tam bir e-posta oluşturun, ardından hem MSG hem de EML formatlarında yazın.
#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);
}