FAQ — Aspose.Email FOSS для C++
Ліцензування
Яка ліцензія використовується в Aspose.Email FOSS for C++?
MIT ліцензія. Ключ ліцензії не потрібен. Використовуйте вільно в особистих, комерційних та відкритих проєктів. Єдина вимога — включити повідомлення про авторські права та текст ліцензії у копії програмного забезпечення.
Чи можу я використовувати його в комерційних продуктах?
Так. Ліцензія MIT дозволяє необмежене комерційне використання, включаючи вбудовування в пропрієтарні застосунки, без роялті.
Встановлення
Як встановити Aspose.Email FOSS для C++?
Клонувати репозиторій і додати його як підкаталог CMake:
git clone https://github.com/aspose-email-foss/Aspose.Email-FOSS-for-Cpp.gitУ вашому CMakeLists.txt:
add_subdirectory(Aspose.Email-FOSS-for-Cpp)
target_link_libraries(your_target PRIVATE aspose_email_foss)Які версії компілятора підтримуються?
Будь‑який компілятор C++17: GCC 9+, Clang 10+ або MSVC 2019+. Бібліотека збирається на Windows, Linux та macOS.
Чи є зовнішні залежності?
Ні. Бібліотека не має зовнішніх залежностей. Вона використовує лише стандартну бібліотеку C++.
Підтримка форматів
Які формати електронної пошти підтримуються?
| Формат | Читання | Запис |
|---|---|---|
| MSG (Outlook Message) | Так | Так |
| EML (RFC 5322 / MIME) | Так | Так |
| CFB (Compound File Binary) | Так | Так |
Чи можу я конвертувати між MSG і EML?
Так. Завантажте файл EML за допомогою mapi_message::load_from_eml() і збережіть як MSG за
mapi_message::save(). Перетворіть у зворотному напрямку за допомогою mapi_message::from_file()
після чого save_to_eml().
Використання API
Як прочитати файл MSG?
Використовуйте mapi_message::from_file() або mapi_message::from_stream():
#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 з нуля?
Використайте mapi_message::create() для створення повідомлення, встановіть поля та збережіть:
#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");
std::ofstream output("hello.msg", std::ios::binary);
message.save(output);
}Як отримати доступ до низькорівневого контейнера CFB?
Використайте cfb_reader, щоб відкрити файл CFB і пройти його дерево каталогів:
#include "aspose/email/foss/cfb/cfb_reader.hpp"
auto reader = aspose::email::foss::cfb::cfb_reader::from_file("file.msg");
auto storages = reader.storage_ids();
auto streams = reader.stream_ids();Ви також можете навігувати за шляхом за допомогою resolve_path() або знайти дочірній елемент за іменем за допомогою find_child_by_name().
Як записати файл CFB?
Створіть cfb_document, додайте сховища та потоки, а потім серіалізуйте за допомогою cfb_writer:
#include "aspose/email/foss/cfb/cfb_writer.hpp"
auto bytes = aspose::email::foss::cfb::cfb_writer::to_bytes(document);
// Or write directly to a file:
aspose::email::foss::cfb::cfb_writer::write_file(document, "output.cfb");Відомі обмеження
Чи підтримує ця бібліотека IMAP, SMTP або POP3?
Ні. Aspose.Email FOSS for C++ читає та записує лише локальні файли. Він не підключається до поштових серверів.
Чи підтримується TNEF (winmail.dat)?
Ні. Transport Neutral Encapsulation Format не аналізується і не генерується.
Чи існує API календаря або запису?
Ні. Властивості MAPI, специфічні для календаря, можна отримати загальним способом через методи властивостей, проте спеціального API календаря не існує.
Яка поточна версія випуску?
Версія 0.1.0 — перший публічний випуск. API може розвиватися у наступних версіях.