Microsoft Mail

Microsoft Mail (or MSMail/MSM) was the name given to several early Microsoft e-mail products for local area networks, primarily two architectures: one for Macintosh networks, and one for PC architecture-based LANs. All were eventually replaced by the Exchange and Outlook product lines.

Mac Networks
The first Microsoft Mail product was introduced in 1988 for AppleTalk Networks. It was based on InterMail, a product that Microsoft purchased and updated. An MS-DOS client was added for PCs on AppleTalk networks. It was later sold off to become Star Nine Mail, then Quarterdeck Mail, and has long since been discontinued.

PC Networks
The second Microsoft Mail product, Microsoft Mail for PC Networks v2.1, was introduced in 1991. It was based on Network Courier, a LAN email system produced by Consumers Software of Vancouver BC, which Microsoft had purchased. Following the initial 1991 rebranding release, Microsoft issued its first major update as Version 3.0 in 1992. This version included Microsoft's first Global Address Book technology and first networked scheduling application, Microsoft Schedule+.

Versions 3.0 through 3.5 included email clients for MS-DOS, OS/2 1.31, Mac OS, Windows (both 16 and 32-bit), a separate Windows for Workgroups Mail client, and a DOS-based Remote Client for use over pre-PPP/pre-SLIP dialup modem connections. A stripped-down version of the PC-based server, Microsoft Mail for PC Networks, was included in Windows 95 and Windows NT 4.0. The last version based on this architecture was 3.5; afterwards, it was replaced by Microsoft Exchange Server, which started with version 4.0.

The client software was also named Microsoft Mail, and was included in some older versions of Microsoft Office such as version 4.x. The original "Inbox" (Exchange client or Windows Messaging) of Windows 95 also had the capability to connect to an MS Mail server.

Microsoft Mail Server was eventually replaced by Microsoft Exchange; Microsoft Mail Client, Microsoft Exchange Client, and Schedule+ were eventually replaced by Outlook (Windows and Mac).

Server Architecture
Microsoft Mail was a shared-file mail system; the "postoffice" was a passive database of files which could reside on any file server. Clients used mapped network drives and file sharing to write mail to the postoffice. Clients also acted as Message Transfer Agents (MTAs) for their own postoffices, moving around messages on the postoffice as needed, including queueing messages for outbound delivery to other postoffices, and processing messages queued as arriving from external sources.

Mail that needed to travel between postoffices were moved by an external MTA called External (external.exe), which originally ran on MS-DOS. A version of External for OS/2 1.31 was added with Microsoft Mail for PC Networks version 3.2, and a multitasking MTA for Windows NT was added with version 3.5. This ran in the OS/2 subsystem of Windows NT and Windows 2000, and consisted mostly of the Version 3.2a External with wrappers containing hooks allowing control by NT administration utilities.

The database design and passive nature of the server both created several weakness. A complete lack of distinction between "header" and "envelope" addressing data meant that now-standard functionality such as Bcc: could not be implemented. Mailing lists were similarly problematic. Also, a single postoffice was limited to 500 mailboxes; a large enterprise would require many postoffices and many MTAs to connect these postoffices. Since scheduling data and address lists were also stored locally in these postoffices, moving schedule and global address book information required yet more, separate agents called Dispatch and Microsoft Schedule+ Distribution Agent. Dispatch would synchronise the various copies of the Global Address List using MSMail 3.x Directory Synchronization Protocol.

Client Architecture
Client handling of messages remained inconsistent through the life of the product. Clients for MS-DOS, dialup, and Mac OS left messages stored on server; the Windows and OS/2 clients downloaded the messages instead, using a local file (.MMF) as storage. While this storage could be located on a file server, the various file locking issues meant a user could only login to their mail from a single PC at a time.

Further, the differing storage mechanisms made using MSMail across multiple client architectures problematic at best. While the inbox could be synchronised, other folders could not be, meaning that only inbox messages could be accessed across the two client architectures. Plans to create a Mac OS client which could access .MMF storage were abandoned before version 3.0 shipped, though working - if buggy - versions did exist.

The Windows and OS/2 clients were built around an early version of MAPI called MAPI 0, and could in theory enable the client to talk to any server by replacing the MAPI DLL with a fully compliant DLL for the appropriate system. Unlike the Microsoft Mail 3.x server product, the clients could support Bcc: functionality. This functionality was not exposed to Microsoft Mail for PC Networks users due to limitations in the server architecture, but the corporate internal MAPI.DLL enabling these particular clients to talk to Xenix-based mail transport systems utilised this functionality. The first and almost immediately recalled version of the Microsoft Press book on using Microsoft Mail accidentally used screenshots from the Xenix backend, revealing this concealed capability of the client.

Gateways
Connections to other email systems were made possible by gateways to "foreign mail systems". Microsoft shipped gateways to PROFS, SNADS (Office Vision), SMTP, X.400 over X.25, Novell's Message Handling System (MHS), MCI Mail, AT&T Mail, and others. Many companies running these gateways quickly replaced them with Microsoft Exchange Server connectors once Microsoft Exchange 4.0 shipped. In particular an early part of a migration from MSMail to Exchange included replacing the Microsoft Mail for PC Networks Gateway to SMTP to the Microsoft Exchange Internet Mail Connector, later renamed to the Microsoft Exchange Internet Mail Service.

Connection to UUCP-based email systems were supported indirectly, using the Microsoft Mail Gateway to SMTP client combined with a Unix system, typically running sendmail as a smarthost. SCO Unix and Interactive Unix were both recommended products for this structure, though any SMTP-UUCP smarthost-capable system would work.