Windows XP and earlier Operating Systems include the most useful File Types tab in the Folder Options applet. This tab was removed in Windows Vista and Windows 7 and replaced by Default Programs, which lacks many features that the File Types tab has. This forced users to look for third-party utilities to manage file type associations and customize the icons. This article provides information on how to manually change the icon for file types in Windows 7 and Vista.

Tired of editing the registry? You can automate the following task using Default Programs Editor. See our recent article Using Default Programs Editor to Change File Type Icons in Windows 7 and Windows Vista

Customizing the Icon for a File Type

(For illustrative purposes, let’s assume that you have a custom file type .abc (for purposes of illustration) for which you want to change the icon.

1. Click Start, type Regedit.exe and press ENTER

2. Navigate to the following branch:

HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ FileExts \ .abc \ UserChoice

3. In the right-pane, note down the value data for Progid (e.g. abcfile). This is the user chosen (via Default Programs) Programmatic Identifier for the file extension.

4. If the UserChoice branch does not exist, navigate to the following branch:

HKEY_CLASSES_ROOT \ .abc

5. In the right-pane, note down the (default) value data (e.g. abcfile). This is the Prog ID for the file extension.

6. Navigate to the following key (where abcfile is the Prog ID noted in Step 2 or Step 4 above):

HKEY_CLASSES_ROOT \ abcfile \ DefaultIcon

Note: If the DefaultIcon key does not exist by default, you need to create it manually.

7. In the right-pane, double-click (default) and mention the path to your custom icon (.ico file or reference to an icon resource from a EXE/DLL file).

Hint: You may use the icon picker dialog box to choose an icon from a EXE/DLL file. To launch the icon picker dialog, right-click on a folder in your system, click Properties. Click the Customize tab, and click Change Icon… button. Use the icon picker to choose the icon and make a note of the index. The index starts from "0" and you need to proceed vertically when counting (top to bottom.)

Once noted down the icon index, simply cancel the icon picker dialog and close folder properties dialog.

For example, to set the 260th icon in Shell32.dll (contains a text pad icon), type the following path:

C:\Windows\System32\Shell32.dll,260

8. Exit the Registry Editor.

Restart Windows for the icon change to take effect. In case it doesn’t, you can force a icon refresh manually, or try rebuilding the icon cache using Disk Cleanup.


Related Posts


Email SubscriptionPrefer an E-mail subscription?

Enter your email address:

Delivered by FeedBurner

18 Comments

  1. Paul
    said this on Thursday, December 8th 2011 2:56 am

    Everything works, got mp3, m3u, and flac with different icons, all opening in Winamp, thanks!
    I didn’t feel like restarting, so as in the link I pressed start…default programs…set your default programs… and made firefox my default, which it already is.

  2. Paul
    said this on Monday, December 5th 2011 5:20 pm

    .jpg and .png have different icons, but both open with Windows Photo Viewer.
    This is what I would like: .m3u and .flac to have different icons, but both open in winamp.

  3. Marie
    said this on Thursday, December 1st 2011 11:56 pm

    Thanks, this was a big help. But you should add an explanaition on how to “manually add the DefaultIcon key.” I decided to right click on the abcfile and found I could choose Key as an option.

    Also, my Windows 7 doesn’t have a Change Icon option on the Customize tab. There is a section for “Folder pictures” with Choose File that lets you browse for a file.

    I used this as a workaround by copying the image I wanted into the Pictures folder and using that path in step 7.

  4. Charlie
    said this on Tuesday, November 8th 2011 10:05 pm

    A little help please. I want to use the XP icon for a .cfg file in Win7. Where is it in XP and where do I put it in Win 7 [when I have found it in XP]? This is for MSFSX .cfg files. Thanks, Charlie.

  5. SLN
    said this on Wednesday, September 14th 2011 3:26 pm

    hi! where do i go if UserChoice says “Application/SomethingInstalled.exe”? thanks!

  6. James
    said this on Friday, July 1st 2011 12:56 pm

    VB6? You need an upgrade, my friend.

    From VB6 IDE menu “Project\ Properties”, select “Make”-tab”. There’s “Icon”-drop down, select the form which has the icon you want for your EXE-file.

  7. Sean
    said this on Sunday, June 12th 2011 3:09 am

    Is there any way to change the icon of just one file? I made a program and compiled it to an .exe and I don’t want it being the VB6 icon(i know, it’s old). But I have windows 7. I could do it on my old windows XP computer, but not on my new one

  8. said this on Sunday, May 8th 2011 11:32 pm

    .abc is a fictitious file type extension given as an example.

Leave a Reply