PowerTCP Mail for .NET Features
Feature Overview
- Simple Mail Transfer Protocol (SMTP) and Post Office Protocol (POP3) components send and receive email, respectively.
- Internet Message Access Protocol (IMAP4) component manages email on IMAP4 servers (Office 365, Gmail, Yahoo, Exchange, etc.).
- Multipurpose Internet Mail Extensions (MIME) enable the encoding and decoding of non-ASCII data like international UNICODE text and binary data.
- Secure/Multipurpose Internet Mail Extensions (S/MIME) version 3.0, 3.1, 3.2 enable message signing (authentication) and encryption (privacy).
SMTP, POP3, IMAP4 components interact with servers
- Integrates .NET features, including generics, IPv6, dual-stack sockets and X509 certificates.
- Secure: Link-level encryption (SSL 2.0, SSL 3.0, PCT, TLS 1.0, 1.1, 1.2, 1.3) is controlled using simple session properties.
- Progress events report message upload/download activity.
- Log events report data for debugging and display purposes.
- Send any custom command using the exposed TCP connection.
MailMessage class at the core of the system
- Represents a decoded MIME, Secure MIME (S/MIME), or non-MIME (straight ASCII) Internet email message.
- Dynamic encoding occurs when the encoding stream is read from; dynamic decoding occurs when encoding stream is written to.
- Can be used independent of protocol components as a general-purpose MIME or S/MIME encoder/decoder.
- Rich object model represents each header, text, html, attachment, part, and resource element.
- Attachments are decoded and stored in temp files by default, but can optionally be stored in MemoryStreams if disk access is not desired.
- Fast on-the-fly message decoding eliminates intermediate files and delays by streaming encoded message data from the source server to the destination MailMessage.
Integrated security protects data at 3 levels
- Level 1: comprehensive login options authenticate the client to the server; OAuth 2.0 (XOAUTH2), GSSAPI, NTLM, APOP, CRAM-MD5, LOGIN, PLAIN, and clear-text.
- Level 2: SSL2, SSL3, PCT, TLS 1.0, 1.1, 1.2, 1.3 implements end-to-end encryption between your application and the email server.
- Level 3: S/MIME encoding/decoding authenticates the integrity and author of the message and encrypts the content.
- Included X509 certificate management support is used to manage security at levels 2 and 3.
Ease-of-Use and Efficiency
- Create HTML mail (MHTML) from HTML documents with one line of code.
- MailMessage class provides a nested hierarchy of MIME entities (parts) you can easily manipulate.
- Properties expose header labels and enumerate multipart content.
- IsMime property to control the use of MIME encoding on a per message basis.
- MailMessage.GetEncodingStream() returns a Stream that decodes when Write() is called (the MailMessage is incrementally populated with decoded content) and encodes when Read() is called (the user's buffer is filled with the next segment of the encoded MailMessage).
- Suitable for advanced WinForms applications as well as single-threaded services, console and web applications.
- Winform samples demonstrate robust multi-threading features and Task-based Asynchronous Pattern (TAP).
- .NET-centric, reusing classes from System.Net.Mail and System.Net.Mime.