One day you might be using your computer, and after installing a piece software or you are recovering and trying to cleanup the system from a malware attack, there might be a few issues which stop the computer running properly. One of the common problems which malicious software or a faulty install can leave behind is the system not being able to run any programs, and you receive an error when you try to launch a program such as your web browser or Word etc.
Windows can’t open this file:
This happens when your system no longer recognizes that when you double click on an executable (.EXE) file it should launch the program and not be opened by another program like a text file or image would for example. A corrupted .EXE association will then stop you running any programs until the system has been told to execute the file when you open it. Another related common error message you could receive is:
This file does not have a program associated with it for performing this action…
Because these errors can stop you running tools such as Regedit, Task Manager and even the Command Prompt as they’re all executable .EXE files, fixing it is quite often not as easy as it might seem. Sometimes other associations may also have been affected, so you may not be able to import something like a .REG file into the registry to fix it. Obviously, the first and most important file extension to fix is the .EXE extension. Once this sorted and working, you are able to run the registry editor and other tools to start repairing other broken extensions. Here’s a selection of ways for fixing .EXE extension issue and get your programs launching properly again.Getting to the Command Prompt
If you are trying any of the fixes below that require the use of the Command Prompt, you might not be able to get to it because you would obviously have to type cmd.exe into a Run dialog or run the cmd.exe shortcut from the Accessories Start menu. There is however, a simple trick to get around this without needing to do anything like renaming files in the Windows folder. Follow the instructions below.
1. Press Ctrl+Shift+Esc simultaneously to bring up the Windows Task Manager.
2. XP users can skip to step 3. The extra step needed for Vista, 7 and 8 is to run an elevated Command prompt or you will receive an “Access denied” message when typing in the commands. In Task Manager click the Processes tab, then click on the “Show processes from all users” button at the bottom. If you don’t have the button and only a tick box you should already have administrator rights.
3. Click the File menu and move the mouse cursor over to New Task (Run…), but DON’T click it yet. Now press and hold the Ctrl key while left clicking on New Task (Run…) to bring up the Command Prompt.
Tip: The method of using Ctrl+Shift+Esc to access Task Manager is also quite helpful when you have a rogue antivirus program on the system that launches itself every time you try to run an executable. Running a program via the New Task (Run…) option will let you run an executable file even though the rogue is intercepting file executions. As Task Manager is also usable, any suspicious or known processes can be killed and then one of the below files to restore the executable file type or a malware removal tool can be used.
1. Repair using a .REG file
If the EXE association is not too badly damaged, you may be able to repair it by importing the correct values into the registry. Simply download the below file (make sure you right click and select Save As) for your o/s and double click it to import into the registry.
If you cannot import the .REG file because Windows cannot find the registry editor, then try importing from the Command Prompt using the method above to open a CMD window. Type the following command:
REG IMPORT [drag and drop the .reg file onto the CMD window]
Now try out your .EXE files, a reboot won’t be needed to see if it has worked or not.
2. Repair using Another Executable File
Although it may seem counter intuitive to most people, executable files can still be launched even though the EXE association and file type might be broken. This is because there are other types of executable file such as .COM and .SCR which could still have working associations and therefore files with those extensions will still launch.
The files below were created from the .REG files in the previous solution with a handy little tool called Reg2Exe which we’ve written about before that simply turns a .REG file into an executable. There will be no interaction after you run one of these files, simply try an executable .EXE file afterwards.
Alternatively, the people over at BleepingComputer have created a utility called FixExec that will fix the .EXE, .BAT and .COM file associations in Windows XP up to Windows 8. It will also terminate any malicious processes found in typical areas where malware might launch from which could try to reset the associations back again to non default.
Simply run the tool and if it detects any wrong associations, FixExec will repair them for you. There are separate 32-bit and 64-bit versions available along with pre-named .COM, .PIF and .SCR versions.
There are several more solutions for broken file associations on Page 2.
3. Using a Microsoft Fix It
Microsoft has created a Fix It utility that automates the repairing of the EXE association problem, and although listed as for Vista only, it works fine in Windows 7 as well. Simply download the Microsoft Fix it 50194 file and run it following the prompts. This program gets around the EXE association problem by being an MSI installer file, so should work unless the MSI file type is corrupted as well. The tool will ask to reboot before changes take effect, but you will be able to tell if the fix has worked by trying to run an executable file.
4. Symantec Reset Shell Open Command Script
This next fix is from Symantec and takes another different approach to repairing executable associations. This is done using a Windows Setup Information file, or .INF file for short, which is commonly used to install system drivers. The handy thing about this is you can execute an INF file directly because when you right click on one, there is an option in the context menu to “Install” the file. This will fix the association in HKLM/Software/Classes for EXE, BAT, COM, PIF, REG and SCR files.
To use the INF file, simply download it using right click -> Save as (left clicking will open it as a text file in your browser), right click on the UnHookExec.inf and select Install from the context menu.
5. Fix the .EXE File Association From Command Prompt
This method is quite useful if you have problems not just with launching EXE executable files, but maybe others such as .BAT, .REG or .COM files cannot be executed either. In this case, importing files into the registry or running renamed files won’t work because the corruption has affected more than just executable files. The below commands also work in Windows XP. Firstly, launch the Command Prompt using the instructions above.
1. Type the following command and hit Enter.
That will fix the EXE extension. Now try to run an executable file, leave the Command Prompt open while you test it. If you still cannot run a program go to step 2 and repair the file type.
Here is a list of other common file extensions that you might need to restore to at least get the system back to a functioning state. It is recommended to restore just whatever you need and not everything at once.
2. If you still cannot run an executable file after fixing the file association, there may also be a problem with the file type association as well. The .EXE extension is associated to the exefile file type, but the exefile file type may itself be incorrect or corrupted so files will still not execute. Thankfully this is simply another line in the Command Prompt. Type the following exactly as shown and hit Enter:
ftype exefile="%1" %*
This tells Windows that when you double click the file, the file itself will be executed including any additional arguments. You can also do this and use the same command for batfile, cmdfile and comfile to change their filetypes to the default. Simply exchange the word exefile in the command line above for batfile, cmdfile or comfile, don’t change anything else.
After Fixing the EXE Association
Even though you may have repaired the EXE problem and can now run executable files again, there may still be some others which need fixing such as batch files, screensaver files, icon files etc. A little portable utility from The Windows Club is able to repair up to 26 file associations for Vista and 7, resetting them to the default action.
Simply launch the program and click on the the type of file you’re having trouble with. A reboot may be required depending on which one’s you restore.