Rebex SMTP

SMTP, MIME, S/MIME libraries for .NET

Download 30-day free trial Buy from $99
More .NET libraries

Back to feature list...

Compatibility

See also platforms and standards the mail library is compliant with.

XCOPY deployment 

When distributing an application using Rebex SMTP library, simply copy the following DLL files (.NET assemblies) with your application:

  • Rebex.Common.dll
  • Rebex.Networking.dll
  • Rebex.Mail.dll
  • Rebex.Smtp.dll

There is no need to install, configure or distribute anything else to make them work.

Rebex SMTP license is royalty-free - you can distribute your application to unlimited number of users or computers without any additional fees.

Supported SMTP servers 

Rebex SMTP library works with all standard-compliant SMTP, IMAP and POP3 servers.

Recommended and tested mail servers:

Also works with:

  • XMail
  • Yahoo mail server
  • Dovecot
  • Postfix
  • Courier mail server
  • All other standard-compliant SMTP, IMAP, POP3 servers

Fine-tuning client behavior 

The Smtp object make it possible to adjust various client settings and workarounds. Most of them are available through Settings property (see the next section for details).

Some settings are available at the Smtp object itself. This includes the Encoding property that specifies a charset to be used when encoding commands and decoding responses. However, since all of those should normally use ASCII, changing the default value is seldom needed.

// create client instance
// ...

// set encoding to UTF-8
client.Encoding = Encoding.UTF8;
' create client instance
' ...

' set encoding to UTF-8
client.Encoding = Encoding.UTF8

The common settings include a Timeout property as well. Use it to change the default timeout value of 60,000 milliseconds.

Workarounds for common server issues 

Workarounds for some server issues are not enabled by default because detecting them automatically would be troublesome. They can be changed through properties of Smtp.Settings object.

List of common tweaks and workarounds:

Property Purpose
AllowNullSender Allows null sender (<>) to be specified in Smtp.Send call. Used when sending delivery status notifications.

Back to feature list...