Câu hỏi thường gặp — Aspose.Email FOSS cho C++

Câu hỏi thường gặp — Aspose.Email FOSS cho C++

Cấp phép

Aspose.Email FOSS cho C++ sử dụng giấy phép nào?

Giấy phép MIT. Không cần khóa giấy phép. Sử dụng tự do trong các dự án cá nhân, thương mại và mã nguồn mở. Nghĩa vụ duy nhất là bao gồm thông báo bản quyền và văn bản giấy phép trong các bản sao của phần mềm.

Tôi có thể sử dụng nó trong các sản phẩm thương mại không?

Có. Giấy phép MIT cho phép sử dụng thương mại không hạn chế, bao gồm việc nhúng vào các ứng dụng độc quyền, mà không có phí bản quyền.


Cài đặt

Làm thế nào để tôi cài đặt Aspose.Email FOSS cho C++?

Sao chép kho lưu trữ và thêm nó như một thư mục con của CMake:

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

Trong CMakeLists.txt của bạn:

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

Các phiên bản trình biên dịch nào được hỗ trợ?

Bất kỳ trình biên dịch C++17 nào: GCC 9+, Clang 10+, hoặc MSVC 2019+. Thư viện được xây dựng trên Windows, Linux và macOS.

Có bất kỳ phụ thuộc bên ngoài nào không?

Không. Thư viện không có bất kỳ phụ thuộc bên ngoài nào. Nó chỉ sử dụng thư viện chuẩn C++.


Hỗ trợ định dạng

Các định dạng email nào được hỗ trợ?

Định dạngĐọcGhi
MSG (Outlook Message)
EML (RFC 5322 / MIME)
CFB (Compound File Binary)

Tôi có thể chuyển đổi giữa MSG và EML không?

Vâng. Tải tệp EML bằng mapi_message::load_from_eml() và lưu dưới dạng MSG với
mapi_message::save(). Chuyển đổi ngược lại bằng mapi_message::from_file()
tiếp theo là save_to_eml().


Sử dụng API

Làm sao để tôi đọc tệp MSG?

Sử dụng mapi_message::from_file() hoặc 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';
}

Làm sao để tạo một tệp MSG mới từ đầu?

Sử dụng mapi_message::create() để tạo một tin nhắn, đặt các trường và lưu:

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

Làm sao tôi truy cập vào container CFB cấp thấp?

Sử dụng cfb_reader để mở tệp CFB và duyệt cây thư mục của nó:

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

Bạn cũng có thể điều hướng theo đường dẫn bằng resolve_path() hoặc tìm một phần tử con theo tên bằng find_child_by_name().

Làm thế nào để tôi ghi một tệp CFB?

Xây dựng một cfb_document, thêm các kho lưu trữ và luồng, sau đó tuần tự hoá với 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");

Các hạn chế đã biết

Thư viện này có hỗ trợ IMAP, SMTP hoặc POP3 không?

Không. Aspose.Email FOSS cho C++ chỉ đọc và ghi các tệp cục bộ. Nó không kết nối tới máy chủ email.

TNEF (winmail.dat) có được hỗ trợ không?

Không. Transport Neutral Encapsulation Format không được phân tích hoặc tạo ra.

Có API lịch hoặc cuộc hẹn không?

Không. Các thuộc tính MAPI đặc thù cho lịch có thể được truy cập một cách chung thông qua các phương thức thuộc tính, nhưng không có API lịch riêng.

Phiên bản phát hành hiện tại là gì?

Phiên bản 0.1.0 — bản phát hành công khai đầu tiên. API có thể sẽ phát triển trong các phiên bản tiếp theo.

 Tiếng Việt