How to Change DOS App Icons in Windows 3.11
In Microsoft Windows 3.11, users frequently ran MS-DOS programs alongside native Windows software, but DOS shortcuts defaulted to a generic MS-DOS prompt graphic. To improve desktop organization and visual appeal, Windows 3.11 included a built-in feature inside Program Manager that allowed users to assign custom icons to any DOS executable or Program Information File (.PIF). This article explains the exact process Windows 3.11 used to select, browse, and assign custom icons to MS-DOS applications.
Accessing Program Item Properties
Customizing an icon began in Program Manager, the primary shell of Windows 3.11. To modify a DOS application shortcut:
- Click once on the DOS application's icon inside its program group to highlight it.
- Open the properties window by navigating to the menu bar and selecting File > Properties, or by pressing the keyboard shortcut Alt + Enter.
- In the resulting Program Item Properties dialog box, locate and click the Change Icon... button.
If the DOS program did not have an embedded icon—which was true for virtually all standard DOS binaries (.EXE, .COM, or .BAT)—Windows displayed a warning stating that there were no icons available in the specified file and that an icon from a default shell library would be used instead. Clicking OK dismissed this prompt and opened the icon selection browser.
Selecting Icons from Built-in Libraries
Once inside the Change Icon window, users could scroll horizontally through available graphics or manually browse to a different file using the File Name field.
While the default fallback was PROGMAN.EXE, Microsoft
bundled a dedicated library specifically designed for DOS software
called MORICONS.DLL (short for "More
Icons"), located in the C:\WINDOWS directory. Entering
MORICONS.DLL into the file path gave users access to dozens
of pre-drawn 32x32 pixel, 16-color icons representing popular DOS
software of the era, including:
- Word processors such as WordPerfect and Microsoft Word for DOS
- Spreadsheets such as Lotus 1-2-3 and Quattro Pro
- Database engines such as dBASE, FoxPro, and Paradox
- Utilities and games like MS-DOS Editor, flight simulators, and BASIC compilers
Other default sources for icons included SHELL.DLL and
COMMDLG.DLL.
Using Standalone .ICO Files
Windows 3.11 also supported third-party and custom-made icons. If a
user had created an icon using an icon editor or downloaded a package,
they could click the Browse button in the Change Icon
dialog, change the file filter to look for Icon Files
(*.ICO), and navigate to their custom file.
Saving and Managing the PIF Association
After choosing an icon, the user clicked OK to return to the Program Item Properties dialog, followed by OK again to apply the change. Program Manager immediately refreshed the group window, displaying the newly selected graphic.
If the shortcut launched a Program Information File
(.PIF), the custom icon remained tied to the Program
Manager shortcut rather than the .PIF file itself. This
allowed users to create multiple shortcuts pointing to the same
underlying DOS batch file or executable while distinguishing between
them visually using different icons and runtime parameters.