In Exchange 2000, it is quite easy. You create a Transport Event Sink that adds your message to the end of every SMTP message. See http://support.microsoft.com/support/kb/articles/Q288/0/98.ASP for some sample code in VC++ on how to do this.
In Exchange 5.5, you use a DLL called IMSEXT.DLL. Details for installing the DLL can be found at http://support.microsoft.com/support/kb/articles/Q258/2/06.ASP. Additional usage information can be found at http://support.microsoft.com/support/kb/articles/Q262/0/97.ASP.
This was first published in August 2001