FAQ — Aspose.Email FOSS para C++

FAQ — Aspose.Email FOSS para C++

Licenciamento

Qual licença o Aspose.Email FOSS para C++ usa?

Licença MIT. Não é necessária chave de licença. Use livremente em projetos pessoais, comerciais e de código aberto.
A única obrigação é incluir o aviso de direitos autorais e o texto da licença nas cópias do software.

Posso usá-lo em produtos comerciais?

Sim. A licença MIT permite uso comercial irrestrito, incluindo a incorporação em aplicações proprietárias, sem taxas de royalties.


Instalação

Como instalo o Aspose.Email FOSS para C++?

Clone o repositório e adicione‑o como um subdiretório CMake:

git clone https://github.com/aspose-email-foss/Aspose.Email-FOSS-for-Cpp.git

No seu CMakeLists.txt:

add_subdirectory(Aspose.Email-FOSS-for-Cpp)
target_link_libraries(your_target PRIVATE aspose_email_foss)

Quais versões do compilador são suportadas?

Qualquer compilador C++17: GCC 9+, Clang 10+ ou MSVC 2019+. A biblioteca funciona no Windows, Linux e macOS.

Existem dependências externas?

Não. A biblioteca não tem dependências externas. Ela usa apenas a biblioteca padrão do C++.


Suporte a Formatos

Quais formatos de e‑mail são suportados?

FormatoLeituraGravação
MSG (Outlook Message)SimSim
EML (RFC 5322 / MIME)SimSim
CFB (Compound File Binary)SimSim

Posso converter entre MSG e EML?

Sim. Carregue um arquivo EML com mapi_message::load_from_eml() e salve como MSG com mapi_message::save(). Converta na outra direção com mapi_message::from_file() seguido por save_to_eml().


Uso da API

Como leio um arquivo MSG?

Use mapi_message::from_file() ou 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';
}

Como criar um novo arquivo MSG do zero?

Use mapi_message::create() para construir uma mensagem, definir campos e salvar:

#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);
}

Como acesso o contêiner CFB de baixo nível?

Use cfb_reader para abrir um arquivo CFB e percorrer sua árvore de diretórios:

#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();

Você também pode navegar por caminho com resolve_path() ou encontrar um filho por nome com find_child_by_name().

Como escrevo um arquivo CFB?

Construa um cfb_document, adicione armazenamentos e fluxos, então serialize com 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");

Limitações Conhecidas

Esta biblioteca suporta IMAP, SMTP ou POP3?

Não. Aspose.Email FOSS for C++ lê e grava apenas arquivos locais. Não se conecta a servidores de e‑mail.

O TNEF (winmail.dat) é suportado?

Não. Transport Neutral Encapsulation Format não é analisado nem gerado.

Existe uma API de calendário ou de compromissos?

Não. As propriedades MAPI específicas de calendário podem ser acessadas genericamente via os métodos de propriedade, mas não há uma API de calendário dedicada.

Qual é a versão de lançamento atual?

Versão 0.1.0 — o primeiro lançamento público. A API pode evoluir em versões subsequentes.

 Português