It used to be in Windows XP that I could make Warcraft III files load automatically into the game by double clicking on them. This association was made by going to file associations ADVANCED area and using this line:

"C:\Program Files\Warcraft III\War3.exe" -loadfile "%1"

Note that it takes an argument and an option.

However, in Windows 7, the "Default Programs" > "Set Associations" area doesn't seem to have this advanced area.

Can I still get these files to open automatically?


I'd recommend Default Programs Editor, which can do this and more.

It has full context menu editing, which would allow you to change the command parameters. Plus, it was designed for Vista/7 with UAC support.

Default Programs Editor Context Menu Editing

Default Programs Editor command details

| improve this answer | |
  • 5
    a little more clicking, but I actually like this better than my answer +1! – Jay Wick Feb 17 '13 at 8:41
  • 1
    It worked for me, and it is portable! – sancho.s ReinstateMonicaCellio Jul 30 '15 at 12:06
  • The images in answer doesn't open! – zar Mar 14 '17 at 21:00
  • Note that this program is freeware but mostly closed source (I was not able to find any kind of license on the website and there's no "about" box), the author mentions that it might be steadily released as open source over time. The portions of the code that have been released publicly are released under the BSD license, it's unclear if the rest of the application is under that license as well, but I'd guess that's the case. Also the last activity on his repos was 7/9/2016. – jrh Jul 5 '18 at 17:13
  • Unfortunately, it seems that on Windows 10, OS updates may undo everything this utility does. – jrh Jul 23 '18 at 20:49

It's probably because I had to much caffeine but.. In command prompt:

 ftype w3file="C:\Program Files\Warcraft III\War3.exe" -loadfile "%1"
 assoc .your_extension=w3file
 regsvr32 /i shell32.dll

:) .. just change the names of the type and extension to the one you need :)

| improve this answer | |
  • 11
    It's worth checking in HKEY_CURRENT_USER\Software\Classes too because user set associations override those set using ftype and assoc :-( SO ANNOYED with Micro$oft for removing the GUI for this. There are some REALLY common file extensions which require parameters. Java JAR files for example. – mjaggard Jul 26 '12 at 13:18
  • You can also look at HKEY_CLASSES_ROOT\SystemFileAssociations\.<extension>\shell\<program>\command which is where I found the commands were stored when I did a find in the registry. – Mark Ireland Nov 27 '15 at 15:56
  • I also had to remove HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.<extension> to get the ftype to work – Carl Walsh Jul 18 '17 at 20:14
  • Can you add some more information on this especially around what the regsvr32 command does? – busfault Aug 2 '17 at 15:05
  • regsvr32 is used for registering and unregistering dll libraries, /i parameter means 'install' and shell32.dll contains Windows Shell API functions that are used while opening files and URLs. In short, we are setting the new association and then re-registering the library responsible for opening files so it takes into account our new associations. – kyrisu Aug 4 '17 at 17:15

What you are looking for is File Type Doctor from Creative Element Power Tools.

You get everything back that they, for some reason, removed from Windows Vista onwards.

File Type Doctor preview

Update: for a more modern and simpler solution check out Factor Mystic's answer!

| improve this answer | |
  • Oh my, that software looks like it would be extremely useful! +1 – afrazier Apr 29 '10 at 23:08
  • Creative Element seem to have some cool tools. Thanks for the link :) – kyrisu Apr 29 '10 at 23:22
  • 1
    Just note that this is Shareware. Check @Factor Mystic's Answer for a free program. – yakatz Apr 26 '12 at 18:25

From what I can tell there is no 'easy' way to set file associations in windows. It has always been a pain because you have system level associations and user level associations for EVERY USER on the system... anyway lets stop Windows Media Player for GOOD.

Sick of Windows Media Player always popping up when you click any media? Maybe you have more than one login or app that constantly tries to take over your file associations? Use this script to set them right!

Run as administrator to reset Windows Media Player extensions it hijacks:

These include: .MMS,.WTV,.3G2,.3GP,.ADTS,.AIFF,.ASF,.ASX,.AU,.AVI,.CDA,.M2TS,.m3u,.M4A,.MIDI,.mov,.mp3,.mp4,.MPEG,.TTS,.WAV,.WAX,.wma,.WMD,.WMS,.WMV,.WMZ,.WPL,.WVX

Example of command line I use to set file associations:

Source code to the binary that is just a 7-zip SFX Self Extracting zip with a Windows Batch file in it :

https://rmccurdy.com/.scripts/ ftype_wipe.bat.txt

            @echo off
            echo ------------------------------------------------
            echo * THIS MUST BE RUN AS SYSTEM ( you need administrator)
            echo * example :   psexec -c -i -s ftype_wipe.bat ) 
            echo * be VERY carful when editing/adding extensions
            echo * a backup of the registry is performed just in case too
            echo ------------------------------------------------
            echo This will wipe all users and reg keys for Windows Media Player because ... when has windows media player ever played anything but windows media ...stop jacking what you cant play!
            echo ------------------------------------------------
            echo This is and example command line I use to set VLC as my player for .MOV files
            echo assoc .mov=mov
            echo ftype mov=%CD%\media\VLCPortable\VLCPortable.exe "%%1"
            echo ------------------------------------------------
            echo "rmccurdy.com"


            echo Backing up registry to %SystemRoot%\temp\

            REG EXPORT HKCR %SystemRoot%\temp\HKCR_%date:~-4,4%%date:~-7,2%%date:~-10,2%.reg
            REG EXPORT HKU  %SystemRoot%\temp\c:\HKU_%date:~-4,4%%date:~-7,2%%date:~-10,2%.reg

            for   %%j IN (.MMS,.WTV,.3G2,.3GP,.ADTS,.AIFF,.ASF,.ASX,.AU,.AVI,.CDA,.M2TS,.m3u,.M4A,.MIDI,.mov,.mp3,.mp4,.MPEG,.TTS,.WAV,.WAX,.wma,.WMD,.WMS,.WMV,.WMZ,.WPL,.WVX) do (

            for /f  %%i IN ('wmic path win32_useraccount where "name like '%%'" get sid') do (
            echo wiping %%i %%j 
            reg delete "HKCR\%%j" /f 2> %temp%\null
            reg delete "HKU\%%i\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\%%j" /f 2> %temp%\null
            reg delete "HKU\%%i\%%j" /f 2> %temp%\null


*edit because I got a -1 vote ...

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.