Many file extension not registered in Windows 11 and no way to fix this

I have installed IrfanView (for browsing images) and VLC VideoLAN (for watching video) — my “default pack” on freshly installed Windows 11 Pro. It turned out that many common file extensions (like .gif, .png, .jpg, .mp4, .mkv and .avi) are not registered with the corresponding applications. While all others (like .bmp, .mp3, .wav, etc.) are registered correctly.

Microsoft has messed things up even further with Windows 11 so the regular methods of manually registering these file extensions (that were working just perfectly in Windows 10) are not working anymore.

If you’re struggling with this or similar problem then you may find certain solutions in this blog post.

The nature of the problem

In my case it turned out that:

  • Certain image file extensions are incorrectly bind — opens Photos instead of IrfanView
  • Certain video file extensions are not bind at all — displays warning or does nothing

Here you have an example warning message displayed when trying to execute these files in Total Commander:

Back in old-good Windows 10 day we had at least three methods of fixing such problem manually:

  • Use Default Apps component out of Settings
  • Double-click file and select an application + check to use this binding every time
  • Right-click a file, pick Properties and click Change button.

In Windows 11 this doesn’t work anymore, because there is no checkbox:

There is no Change button:

And when trying to find given extension in Default Apps it supposedly gone from your system:

So you cannot bind it using Default Apps (the most obvious way).

Methods that I have tried

Before giving you the ultimate solution (next chapter) I want to briefly discuss everything that I have tried, in hope that maybe any of these methods will be successful for you.

For image file extensions (.gif, .jpg and .png) I truly don’t know what has fixed my problem! What magic has happened. I used IrfanView settings to register extensions about 3-5 times and at some point this started to work. Refer to the next chapter, if this doesn’t work on your side.

For video files (namely: .mp4, .avi and .mkv), first of all I have uninstalled and installed again the newest version of VLC VideoLAN. In both cases (uninstall and install) I check the option to purge cache and settings of VLC. No effect.

I managed to figure out that these file extensions were previously registered by Films & TV application, which I have uninstalled as a part of removing garbage from my Windows 11. Hoping that this removal has left some garbage in Windows registry, I have installed and uninstalled this app again.

At first, I thought that nothing has changed, because again Default Apps component wasn’t able to find any of the file extensions in question. But then… it turned out that another magic has happened (Windows 11 must be truly a magical operating system) and for some reason now I see Change button in file properties and I see Always use this app to open… checkbox after double-clicking any video file.

Assuming that you’re not so lucky and magic may not happened in your case, I have wrote two following chapters to provide you with some other methods.

Using SetUserFTA utility

You can use this methods, if other fails or if you’re struggling with the Windows constantly resetting your file extension binding to default one (this happens due to incorrect file type hash, as discussed in this article).

The SetUserFTA command line utility is a very cool program, because its author managed to reverse-engineer Microsoft hash algorithm (mentioned above). Meaning that, if this program will not only register selected file extension with the application of your choice, but it will also generate required hash thus preventing Windows from resetting this binding.

You must run this from either cmd, PowerShell or Windows Terminal (new toy in Windows 11).

For registering .avi, .mp4, .mpg and .mkv video file extensions with VLC run these commands one-by-one:

SetUserFTA .avi VLC.avi.Document
SetUserFTA .mkv VLC.mkv.Document
SetUserFTA .mpg VLC.mpg.Document
SetUserFTA .mp4 VLC.mp4.Document

For registering .gif, .jpg, and .png image file extensions with IrfanView run these commands one-by-one:

SetUserFTA .gif, IrfanView.GIF
SetUserFTA .jpe, IrfanView.JPG
SetUserFTA .jpeg, IrfanView.JPG
SetUserFTA .jpg, IrfanView.JPG
SetUserFTA .png, IrfanView.PNG

For other file types and applications I advice you to run SetUserFTA.exe get once and carrefuly check, if you don’t have some other bindings incorrect or messed up.

Note that SetUserFTA accepts all three methods of specifying destination application (second parameter):

  • File type — i.e. .mpg VLC.mpg.Document
  • Path — .txt, Applications\notepad++.exe
  • Hash — .ogv, AppX6eg8h5sxqq90pv53845wmnbewywdqq5h

To learn which application belongs to given hash, simply do the Google search and you should get an answer (for example the AppX6eg8h5sxqq90pv53845wmnbewywdqq5h belongs to Movies & TV application from Microsoft, which is now know as Films & TV).

If you want to generate hash for an application of your choice then read more in here or in here.

The SetUserFTA utillity may become handy in future, so I’d consider copying it to c:\Windows\System32 or to any other location listed in your PATH environment variable, so you have access to it from command line in any folder or disk.

Resetting default application

It is said that the problem of not having Always use this app to open… checkbox or Change button comes from the fact that certain file types in Windows 11 has the NoOpenWith registry value set. It is also said that you can reset or remove this value in at least three different ways:

  • Using UI
  • Using PowerShell
  • Changing Registry values

All three methods are described in here.

For example, to reset default file type binding for Microsoft Photos, Groove Music and Films & TV (which would allow you to pick your own applications instead) you can execute these commands (again, one-by-one) in PowerShell:

Get-AppxPackage Microsoft.Windows.Photos | Reset-AppxPackage
Get-AppxPackage Microsoft.ZuneVideo | Reset-AppxPackage
Get-AppxPackage Microsoft.ZuneAudio | Reset-AppxPackage

As I said before, this did not work in my case, because I already had these three apps uninstalled.

Leave a Reply