FTYPE – Windows CMD Command

Display or change the link between a FileType and an executable program

More than one file extension can be associated with the same File Type.
e.g. both the extension.JPG and the extension.JPEG can be associated with the File Type “jpeg file”

File Types can be displayed in the Windows Explorer GUI under Options, File Types however the naming used is not consistent e.g. the File Type “txt file” is displayed in the GUI as “Text Document” and “jpeg file” is displayed as “image/jpeg”

Several FileTypes can be linked to the same executable application.

FTYPE filetype will display the current executable program for that file type e.g. FTYPE jpeg file.

FTYPE without any parameters will display all FileTypes and the executable program for each.

Defining command line parameters

It is almost always necessary to supply command line parameters so that when a document is opened not only is the relevant application loaded into memory but the document itself also loaded into the application. To make this happen the filename of the document must be passed back to the application.

Command-line parameters are exactly like batch file parameters, %0 is the executable program, and %1 will reference the document filename

so a simple command-line might be:

MyApplication.exe “%1”

If any further parameters are required by the application they can be passed as %2, %3. To pass ALL parameters to an application use %*. To pass all the remaining parameters starting with the nth parameter, use %~n where n is between 2 and 9.

The FileType should always be created before making a File Association

Switch between multiple applications

If you have multiple applications that use the same file extension, the ASSOC command can be used to switch the file extension between the different FileTypes.

Delete a FileType

Specify executable_path=nothing and the FTYPE command will delete the executable_path for that FileType.
For example:
FTYPE htmlfile=

This will recreate the CLASS id’s in the registry at HKey_Classes_Root\. If you put the commands above in a batch file change the %G to be %%G Use file associations at the command line

note that the file extension must be supplied for this to work


When CMD Command Extensions are enabled (the default):

If the File Type Association was successfully changed %ERRORLEVEL% = unchanged, typically this will be 0 but if a previous command set an errorlevel, that will be preserved (this is a bug).

If the File Type Association could not be changed %ERRORLEVEL% = 1

FTYPE is an internal command.
If Command Extensions are disabled, the FTYPE command will not function.

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *