FAQ — Aspose.Email FOSS для C++

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 для C++ читает и записывает только локальные файлы. Он не подключается к почтовым серверам.

Поддерживается TNEF (winmail.dat)?

Нет. Transport Neutral Encapsulation Format не анализируется и не генерируется.

Есть ли API календаря или встреч?

Нет. Специфические для календаря свойства MAPI можно получить универсально через методы свойств, но специализированного API календаря нет.

Какова текущая версия выпуска?

Версия 0.1.0 — первый публичный релиз. API может изменяться в последующих версиях.

 Русский