Quickstart
Quickstart: أول ملف MSG الخاص بك في C++
يخلق هذا الدليل مثالًا كاملًّا قابلًى للتنفيذ - يقوم بتكوين رسالة بريد إلكتروني ، ويحفظها كملف MSG ، ويتم تحميلها مرة أخرى ، وتحويلها إلى EML - باستخدام مكتبة C++ القياسية فقط و Aspose.Email FOSS لـ C ++ .
المعايير
| مطلوب | التفاصيل |
|---|---|
| الكوميديا | C++17 أو أعلى (GCC 9+، Clang 10+ و MSVC 2019+) |
| بناء النظام | كوميديا 3.26 أو أحدث |
| مكتبة | أضف تعليق حول GitHub (انظر التثبيت) |
| الاعتماد | لا أحد |
الخطوة 1: قم بتثبيت CMakeLists.txt الخاص بك
cmake_minimum_required(VERSION 3.26)
project(email_quickstart)
add_subdirectory(Aspose.Email-FOSS-for-Cpp)
add_executable(quickstart main.cpp)
target_link_libraries(quickstart PRIVATE AsposeEmailFoss::AsposeEmailFoss)
set_target_properties(quickstart PROPERTIES CXX_STANDARD 17)الخطوة 2: إنشاء وتخزين ملف MSG
إنشاء ملف MSG جديد مع موضوع، جسم، المرسل، المستلم، ومرفق:
#include <fstream>
#include <vector>
#include "aspose/email/foss/msg/mapi_message.hpp"
int main()
{
// Compose the message
auto message = aspose::email::foss::msg::mapi_message::create(
"Hello from Aspose.Email FOSS",
"This message was created programmatically — no Outlook required.");
message.set_sender_name("Alice");
message.set_sender_email_address("alice@example.com");
message.add_recipient("bob@example.com", "Bob");
message.add_attachment(
"readme.txt",
std::vector<std::uint8_t>{'H', 'e', 'l', 'l', 'o', '\n'},
"text/plain");
// Save to MSG file
std::ofstream out("hello.msg", std::ios::binary);
message.save(out);
return 0;
}بناء وتشغيل:
cmake -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build
./build/quickstartالملفات hello.msg يتم إنشاؤه في دليل العمل.فتحها في Outlook للتحقق من،, أو استمر في الخطوة 3 لقراءةها مرة أخرى برمجة.
الخطوة 3: اقرأ ملف MSG مرة أخرى
تحميل الملف الذي قمت بإنشائه للتو وطباعته خصائصه:
#include <fstream>
#include <iostream>
#include "aspose/email/foss/msg/mapi_message.hpp"
int main()
{
std::ifstream input("hello.msg", std::ios::binary);
const auto message = aspose::email::foss::msg::mapi_message::from_stream(input);
std::cout << "Subject: " << message.subject() << '\n';
std::cout << "From: " << message.sender_name()
<< " <" << message.sender_email_address() << ">\n";
std::cout << "Body: " << message.body() << '\n';
std::cout << "Recipients: " << message.recipients().size() << '\n';
std::cout << "Attachments: " << message.attachments().size() << '\n';
for (const auto& a : message.attachments())
std::cout << " - " << a.filename << " (" << a.data.size() << " bytes)\n";
return 0;
}الناتج المتوقع :
Subject: Hello from Aspose.Email FOSS
From: Alice <alice@example.com>
Body: This message was created programmatically — no Outlook required.
Recipients: 1
Attachments: 1
- readme.txt (6 bytes)الخطوة 4: تحويل إلى EML
تحويل ملف MSG إلى تنسيق RFC 5322 / MIME مع save_to_eml():
#include <filesystem>
#include <iostream>
#include "aspose/email/foss/msg/mapi_message.hpp"
int main()
{
const auto message = aspose::email::foss::msg::mapi_message::from_file(
std::filesystem::path("hello.msg"));
message.save_to_eml(std::filesystem::path("hello.eml"));
std::cout << "Saved hello.eml\n";
return 0;
}موضوع، الجسم، المرسلين، المستلمين والملصق كلها محمية في إصدار EML.
الخطوات التالية
- التثبيت - إعداد المشروع الكامل لـ CMake والمنصات المدعومة
- مميزات - إشارة كاملة إلى الميزات مع أمثلة C++
- دليل المطور - MSG، EML، CFB، و MAPI الممتلكات المشي
- FAQ - الترخيص، دعم النموذج، القيود المعروفة