A substantial part of my work on Developing Applications for Microsoft Exchange with C++ involved creating suitable sample and demonstration code. Where possible, I made those samples useful applications, releasing them here as the Widgets.
You are free to copy these widget binaries as you wish for your own personal use after reading and agreeing to the disclaimer below. I of course retain all copyrights, both to these binaries and their sources.
During the course of their development, I frequently released new versions of all my Widgets. Many freeware repositories and book companion CD-ROMs still carry versions from late 1995. Make sure that you have the latest version by comparing the version number of the Widget (available on the About button of some add-ins, or via File.Properties in the Explorer on the main DLL or EXE file) against the version number of the most recent change listed in the Widget's Change History on this site.
Annoucements of interest to all Widgets users I place in the News Bulletins section below.
Contents | Runtime Requirements | News Bulletins | Disclaimer of Warranty
These constitute all the useful working samples of my book to date. Rest assured, there are plenty of the traditional useless samples as well.
MAPI Logon (version 0.2.5, 26 October 1996) lets a user launch the Exchange mail client, specifying the profile on the command line.
MAPI Download (version 0.1.6, 26 October 1996) lets a user download messages from an installed transport without running Exchange or Outlook. Supports Microsoft Outlook 97.
Janitor in a DLL (version 0.2.2, 24 March 1997) adds a command to Exchange (or Outlook) to purge old messages from the Deleted Items folder or set a limit on the number and age of messages therein. Supports Microsoft Outlook 97.
Internet Idioms (version 0.4.8, 16 March 1998) lets a user specify the font to read incoming messages, append boilerplate "signature" text to outgoing messages, change the format of replies to use traditional ">" prefixes, and watch outgoing messages for rich text accidentally sent to Internet recipients.
Rich Text Sentry (version 0.1.5, 4 November 1996) watches outgoing messages sent from Exchange or Outlook for rich text accidentally sent to Internet recipients. (This is the same function as included in Internet Idioms. If you run Idioms, you don't need Sentry.) Supports Microsoft Outlook 97.
Forward as Attachment (version 0.2.2, 22 November 1996) lets you forward a single message as an embedded attachment in the same manner that Exchange forwards multiple messages. It also lets you conveniently forward a message as a link, useful on Exchange Server networks.
Every tool on this page runs on Windows 95 and Windows NT 4.0; some of them run on Windows NT 3.51 as well. For NT users, I have binaries for both the DEC Alpha and Intel X86 platforms. (All Windows 95 users use Intel binaries. If you don't know whether you have an Alpha or an Intel system, then you have an Intel system.)
On Windows 95, you must have installed Microsoft Exchange, or else have installed the Windows 95 Messaging upgrade. Windows NT 4.0 installs all necessary support by default.
Several of the Widgets run within Microsoft Outlook 97 successfully. The rest don't.
All of these tools require a runtime support package from some version of MSVC, which may or may not already be on your system. (If you've installed MSIE 4.01, you already have the very latest runtime.) To check your system for the presence this package, examine your system directory (\windows\system on Windows 95, \windows\system32 on Windows NT) for the following files; if you find the necessary file missing, download it from this web page, unzip it, and move the resulting extracted file into the system directory.
Since my book has fallen out of print, I am releasing all of the Widgets sources for the world's free perusal. Have fun with them.
Internet Idioms finally supports a proper Uninstall sequence, i.e., the Add/Remove Programs icon in Control Panel, and disables itself when it detects that Outlook has loaded it. Please note that the installation sequence has changed as well.
Mind you, this patch is a year overdue, and in any case won't help the eleventy score hundred users who (apparently) are still running versions dating from 1995.
(As you may have gathered from the recent lack of activity on this page and the various change logs, I have ceased all development on these Widgets, moving on to other projects. Thank you all for your support!)
The forthcoming Internet Mail Enhancement Patch will effectively render Rich Text Sentry obsolete, and should solve any need for a version of Internet Idioms for Outlook users.
The combination of Microsoft Outlook and the IE4 Preview is unstable, and may cause otherwise Outlook-friendly Widgets such as Janitor in a DLL or MAPI Download to fail.
Die Internet Idioms sind jetzt auch in Deutsch erhältlich.
Many Widgets work as "client extensions" - i.e. add-ins - within the Microsoft Exchange (or Windows Messaging) mail client. When you start the mail client, my add-ins will check their environment to see whether I have tested them on the current version of Exchange that you are running; should they find a version later than that of my last test, they will present the following prompt:
You are starting a version of Exchange (or Windows Messaging) that postdates the last version officially tested with name. Do you wish to load name?
You may respond Yes, to load and use the Widget, or No, to decline its use. You may also set the checkbox Don't show me this message again, which will record your decision, preventing the add-in from needing to present this prompt the next time that you start Exchange.
Most version changes in the mail client have absolutely no effect on my add-ins. I present this warning only as an additional margin of safety, to warn you that I have not tested the add-in on your version of Exchange. To be cautious, try the add-in once or twice before setting Don't show me this message again.
Should you see this prompt, you may want to check this site to see whether I have released a new version of the add-in.
In the face of the recently released Microsoft Office 97, let me announce: many Widgets do not support the Outlook 97 mail client. In particular, Internet Idioms, MAPI Logon, and the link function of Forward as Attachment all do not work with Outlook 97. However, MAPI Download, Rich Text Sentry, and Janitor in a DLL should all work normally.
I do not plan to correct Idioms to work with Outlook.
On Intel platforms, all of the Widgets now require the new MSVC 4.2 runtimes. (The versions for DEC Alpha still use the old runtimes.)
I have signed the program binaries of all of the Widgets with Authenticode signatures, authenticating them as coming from me.
When upgrading a Widget from an older version, be sure to install the new version of the program completely. In particular, if the program has accompanying registry data (i.e., a reg file), be sure to merge that data into the registry anew by double-clicking the reg file. Otherwise you may miss changes in the program's registration.
I have revised all of my Exchange Widgets to work correctly with the recent Windows Messaging upgrade. Please get the latest versions from this site. (If you haven't yet installed this release, and are considering doing so, please first read Sue Mosher's FAQ describing this release. The headache you save may be your own.)
Note that by default Windows Messaging uses a simplified send note that does not support client extensibility. You will need to eschew using this note by clearing the Tools - Options - Send - Use simplified send note option before Internet Idioms and other such utilities will work.
If, after upgrading Exchange either to Windows Messaging or the Microsoft Exchange Server trial client, you see Exchange fail with a mysterious error message Assertion failed: file extprsht.cpp, line 220 (FALSE), then you have a very old (pre December 1995) version of Internet Idioms, which is objecting to certain aspects of the new version of Exchange, To correct this, either upgrade Idioms to the most recent version, or else remove it from the offending workstation.
Please note:
THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL BENJAMIN D. GOETTER BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF THIRD PARTIES, WHETHER OR NOT MR. GOETTER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE.
Sorry. I wish I didn't have to include that, but I do.
Last modified: 17 March 1999
Copyright 1996-1999 Ben Goetter. All rights reserved.