November 10th, 2025
0 reactions

How did Windows 3.1 distinguish two different programs that happened to share the same executable name?

Some time ago, I described the purpose of the icons in the moricons.dll and progman.exe icon libraries, along with a list of which programs Windows automatically associated the icons with. (moricons.dll, progman.exe).

One common problem is that multiple programs share the same executable name, so if you find an executable named MAIL.EXE, you aren’t sure whether that’s PATHWORKS Mail or cc:Mail or XcelleNet X/Mail.

What did Windows 3.1 do when it saw these ambiguous files?

It simply asked the user for help.

Setup Applications
Setup needs to know the application name for:
C:\MAIL\MAIL.EXE
Select the application name from the following list, and choose
OK, or press ENTER to continue.
Microsoft Mail
PATHWORKS Mail for MS-DOS
cc:Mail for MS-DOS
XcelleNet X/Mail for MS-DOS
None of the above
OK
Cancel
Help

The information for this came from the APPS.INF file, the format of which is documented in the Windows Resource Kit. (It starts on page 121.)

Next time, we’ll see how Windows 95 improved on this in its application compatibility database.

Topics
History

Author

Raymond has been involved in the evolution of Windows for more than 30 years. In 2003, he began a Web site known as The Old New Thing which has grown in popularity far beyond his wildest imagination, a development which still gives him the heebie-jeebies. The Web site spawned a book, coincidentally also titled The Old New Thing (Addison Wesley 2007). He occasionally appears on the Windows Dev Docs Twitter account to tell stories which convey no useful information.

0 comments