In Windows operating system such as Windows 7, Windows Vista, Windows XP, Windows Server 2008 R2, Windows Server 2008, Windows Server 2008, Windows 2000 or Windows Me, when user right clicks on a file with registered file type in Windows Explorer, user can use the “Open With” command to select an associated programs to open the file. Over the time, each program that user used to open the specific file extension is added to the Open With list for the file type, even if the program user is using is unable to or cannot open the selected file type, or has since been uninstalled.

For example, if user selects Microsoft Paint (MSPaint.exe) or Windows Media Player (wmplayer.exe) in the Open With dialog box when opening a text document (a file with a .txt extension), the Paint or WMP program is listed in the Open With list for all text documents, even though Paint is unable to open text documents.

If the users click on “Choose default program” option as the alternative to Open With program, the default Open With associated programs for the file type or extension will be listed as recommended programs. The Open With list is not only displayed on right click context menu, but it’s also been used on other programs that has Open With submenu such as Windows Photo Viewer in Windows 7 and Windows Photo Gallery in Windows Vista.

To make matter worse, some programs, such as Opera, Firefox, Microsoft Office Picture Manager (OIS.exe), and Windows Media Center (WMC) automatically associate themselves with certain filetypes and file extensions, especially for images and video files such as HTML, JPG, JPEG, PNG, GIF, BMP and etc, even if the users never use the program to open the file type. Some programs does not remove its entry in Open With recommended programs list when it’s been uninstalled, effectively mean that users have to manually remove and delete the entry in registry to clear and get rid of unwanted, unneeded or unused programs in Open With or Recommended Programs list.

Note: The programs on the Open With or Recommended Programs list for each file type are independent of that file’s registered or default associated program(s). Thus, deleting or removing a program from Open With list does not unassociate file type with its default program, nor affect the ability to automatically open the file in its default program when double click or click on Open command while right click. However, deletion of some registry keys does remove program’s default definition of file types and extensions it can handle at Default Programs.

There is no easy way or option to directly remove or delete an associated Open With recommended programs in Windows OS. Instead, Open With listing is registered on per file type (file extension) basis. And, there are many locations in system registry that the Open With programs list are defined, or populated from. So, in order to remove or clear Open With menu program entries, end-user has to check each and every possible registry keys for the registry key for the corresponding program, and delete its registry value data away.

How to Remove or Clear Programs in Open With Listing

Note: All operation below requires editing and/or deletion of system registry with Registry Editor (RegEdit). It’s recommended to backup the affected registry key by exporting it prior to modification.

Location 1: User-Specific Open With List (OpenWithList)


Open With Recommended Programs List

OpenWithList is a common location where file handlers (program) for the particular file extension is defined and stored. It’s also used to store program associated by user when he or she opens a file type with the particular extension. The OpenWithList registry key for a specific file extension contains a list of registry values which have value data of application executable name, that will display in the Open With menu or dialog box. For example, OIS.exe, mspaint.exe, notepad.exe, wordpad.exe, ehshell.exe, etc.

If the unwanted program entry in the Open With list appear in OpenWithList, just delete the value (i.e. a, b, c).

Tip: MRUList simply determines which applications is more recently used and appear nearer to top.

Location 2: User-Specific Open With List with ProgIDs (OpenWithProgIDs)


Open with Program Class for a File Type

Programmatic identifiers (ProgIDs) are friendly versions of ClassIDs that identify a version of an application or COM object, and is installed together with the application. OpenWithProgramIDs contains file handlers for the particular extension in the form of ProgIDs. The ProgID specified as the default value for the file extension is the default file handler, and thus will always show up in the Open With list (it’s not recommended to delete default value).

Any additional entry in OpenWithProgIDs is alternate ProgIDs associated with the file extension, and will appear in the Open With Product Name sub-menu, and can be removed if unwanted or unneeded. However, do note that some entries such as txtfile, pngfile, jpegfile, giffile, xmlfile and more, is system-created and used only for shell commands, and should NOT be deleted.

Location 3: All Users Root Open With List (OpenWithList)


Similar to “Location 1”, but the entries here will apply to all users on the local computer. Do note that associated program entries take the form of registry subkeys here. Thus, removal has to be done on registry sub-key or branch.

All User Profiles File Type Associations

Location 4: All Users Root Open With List with ProgIDs (OpenWithProgIDs)


Similar to “Location 2”, but the entries here will apply to all users on the local computer, and similar caveat emptor apply.

Reference: MSDN Library

Location 5: Default Programs Capabilities of File Associations

<Program Name>\Capabilities\FileAssociations

Default Programs File Type Associations

Windows has the ability to allow a program to set itself as the (or one of the) Default Programs for particular file type or file extension. When such Default Programs information exists, FileAssociations which is one of the Capabilities of Default Programs that can be defined. FileAssociations subkey contains specific file associations that are claimed by the application. These claims are stored as values, with one value for each extension, and will be displayed as one of the Recommended Programs in Open With list.

The most common application type that often cause “Open With” problem is web browser (such as Opera), which is declared within StartMenuInternet. To remove an association with the program, just delete the appropriate file extension registry values from FileAssociation branch.

Reference: MSDN Library

Location 6: Supported Types of Applications

Some applications such as mspaint.exe, ois.exe (Microsoft Office Picture Manager) and wmplayer.exe (Windows Media Player) may also associate their supported file type through the following registry key:

HKEY_CLASSES_ROOT\Applications\<application executable name>\SupportedTypes

Applications Supported Types

To remove the program from a particular file type Open With listing, just delete the corresponding supported registry values which specify the file extensions such as .bmp, .jpg, .jpeg, .gif and .png.

Location 7: System Files and File Type Fallback Association and Perceived Type

HKEY_CLASSES_ROOT\SystemFileAssociations\<Perceived Type>\OpenWithList

Perceived types, defined as PerceivedType values, are similar to file types except that they refer to broad categories of file format types rather than specific file types. For example, Image, Text, Audio, Video, Document and Compressed are perceived types. File types (generally public file types) can be assigned a perceived type, and should always be defined as such when appropriate. For example, the image file types .bmp, .png, .jpg, and .gif are also of perceived type image.

Subkeys registered under HKEY_CLASSES_ROOT\SystemFileAssociations exist to enable the Shell to define fallback attributes for file types and enable shared file associations. Thus, OpenWithList and OpenWithProgIDs may be implemented here, although unlikely it will show up in the actual Open With listing. This registry location should NOT be modified if not necessary.

Reference: MSDN Library