Blat is a simple command line utility which sends email via SMTP.

Why? For regular messaging it's plainly easier to use your standard email client. But what Blat allows you to do is send emails from scripts and batch files, so you can have messages sent automatically as an alert for whatever situation you like.

First you must set up Blat, though. Launching the program from the command line will display the various switches and settings you'll need to apply, but a minimal setup will look something like this:

Blat -SaveSettings -f [email protected] -server -u [email protected] -pw password

(Replace the first "[email protected]" with your sending address, "" with your SMTP server, the second "[email protected]" with your user name, and "password" with, well, your password.)

With that done you can then probably send an email like this:

Blat filename.txt -to [email protected]

Where "filename.txt" is a text file containing whatever you'd like to send (it transmits the contents of the file rather than sending it as an attachment, so it must be plain text), and [email protected] is the email address where you're sending the message.

But if you need more flexibility then there are additional switches you can use, for example specifying the port to use for transmission. And you can optionally add extra switches to the sending line, so for instance you can have different scripts send messages via different servers and email accounts. Enter Blat at the command line to see the full syntax.

[-] Changed X- header processing to use Buf definition rather than a fixed array.  The change is made to organization and aheaders, to prevent memory overruns.
[-] If using alternate text, such as when sending plain text and HTML, and if that alternate text is Unicode, be sure to set the charset for the alternate text section and set Content-Transfer-Encoding: 7BIT or 8BIT as needed and available.
[-] If the message body charset is UTF-8 or UTF-7, and MIME is expected, set Content-Transfer-Encoding: 7BIT or 8BIT as needed and available instead of setting Content-Transfer-Encoding: quoted-printable.  The Unicode message body can then be sent as-is, if 8-bit is allowed, or sent as UTF-7 if 8-bit is not available from the server.
[-] Ensure message headers are properly sent when sending multiple attachments across multiple messages, and the charset is UTF-8 or UTF-7.
[-] Ensure the closing boundary marker is sent, when needed.


It's a little cumbersome to configure, but once set up Blat sent all our test emails without problems.