Windows Icons

Introduction

Back in the days of Windows 3.11, around 1993, I got interested in the icon files that Windows contained. I remember spending a lot of time exploring what was was kept in the system DLLs (Dynamic Link Libraries) the various program files and changing the icons used for various links, programs, files and folders.

I'd almost forgotten about them then in July 2025, a post on Reddit, reminded me of them, so I set out to explore how things had changed in the last 30 years.


Files Containing Icon Files

On my Windows 11 system, the following files contain more than 3 icons. There are many more .exe and .dll files that contain just a single icon.

Unless otherwise stated the root of these files is %systemroot% which is usually C:\Windows. Your system may contain different files containing icons or the same files with a different number of icons.


Using the Icon Files

It may be my memory, but Microsoft seems to limited the changing of icons over the last few iterations of Windows.

It is not possible to change the icon used for many programs or files. For example, .bat files, in a forum someone wrote that, "There is no working method or even a registry hack to change the icon on batch files, it can only have the command processor icon."

One way around these limitations is to create a shortcut to the program or file and change the icon on that.

Creating a Shortcut

Method 1

In File Explorer, right click on the file you want to create a shortcut for:

Creating a shortcut - step 1

Creating a shortcut - step 1

Once the dialog box opens, click on "Show more options" When the new dialog box opens, click on "Create shortcut"

Creating a shortcut - step 1

Creating a shortcut - step 2

Method 2

In an empty part of File Explorer, right click and then choose "New" from the dialog box and then "Shortcut" from the second dialog box that appears:

Creating a shortcut - step 1

Creating a shortcut - step 1

In the dialog box that opens, choose "Browse" and navigate to the file you want to create the shortcut for. Then click "Next" and name the shortcut to be created.

Creating a shortcut - step 2

Creating a shortcut - step 2

Changing the Shortcut Icon

In File Manager, right click on the shortcut you want to change the ion for and choose "Properties". From the dialog box that opens choose "Change Icon..."

Creating a shortcut - step 2

Changing an icon - step 1

From the dialog box that opens, browser to any filethat contains the icon you want to use and then click on "OK"

Creating a shortcut - step 2

Changing an icon - step 2

If all went well you should now have the original file and a shortcut to it with a new icon. The shortcuts can be moved to wherever you want on your computer.

Completed shortcuts

Completed shortcuts


Extracting the Icon Files

Here is a list of the programs that can extraact the icon files from the files that contain them:

BeCyIconGrabber (internet Archive) - The program can search multiple files for icons and produces a list of the files and the number of icons found which unfortunately cannot be copy and pasted.
Icon Editor Pro - This program can open icons from various files and contains a good editor for them.
Icon Explorer
Icons from File - The program can search multiple files for icons. This program needs to be installed, it is not portable.
IconsExtract - The prgram can search multiple files for icons


Sources and Resources

I want to change a .bat file's icon to a custom icon. How? (Microsoft Community)
Icon time capsule in Windows 11 MORICONS.DLL (Reddit) - The post that started this page
What were the MS-DOS programs that the moricons.dll icons were intended for? (Microsoft Dev Blog)
What were the MS-DOS programs that Windows used the progman.exe stock icons for? (Microsoft Dev Blog)
Which Windows 98 files contain icons? (Aha Soft)