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 firstname.lastname@example.org -server mail.domain.com -u email@example.com -pw password
(Replace the first "firstname.lastname@example.org" with your sending address, "mail.domain.com" with your SMTP server, the second "email@example.com" 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 firstname.lastname@example.org
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@example.com 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.
[*] Completely removed "reply-type=original" from the source, so it cannot be added to any message headers. No reference to this text was found in any RFC at ietf.org.
[*] Add the whole server name/address to the Message-ID header. Before, only the domain portion of the server name was added to the header. In testing a multithreaded program, the routine that attempted to identify the domain was causing a crash. The crash condition goes away if I just use the server name as given by the user.
[-] When checking user input for Unicode, the buffer length should already be set, therefore set the buffer length only if not already set. This allows users to send binary files as their message body like older versions.