Prevent Windows Explorer from trying to extract metadata

6

Windows Explorer (Windows 7 x64) crashes when it sees allegedly corrupted .wav files. I'm dealing with this problem and the hotfix outlined in "High CPU usage in the Explorer.exe process when you open a folder that contains corrupted .wav files in Windows 7 or in Windows Server 2008 R2" doesn't work for me.

The hotfix says that this happens if the .wav file is corrupt (which I don't think it is). What makes this even worse is that I can't access the file in any program. As soon as the open dialog sees the file, Windows tries its metadata extraction trick and explorer.exe halts.

Can I by any means tell Windows to stop this "metadata extraction" action? I have seen multiple problems associated with it in the past.

olafure

Posted 2011-01-14T14:28:37.890

Reputation: 845

Can you rename the file using a cmd window? Doesn't fix the issue, but you could temporarily stop explorer trying to get metadata if the file extension was changed to something different. – DMA57361 – 2011-01-14T14:37:28.987

1I can access it from command prompt yes and rename it. That's what I did and would have solved the problem BUT ... there is an associated .sfk file to go with it that SoundForge reads. What i tried today was to rename the file as .raw, open it as raw in SoundForge and that worked fine - except I didn't get the extra data (regions that i have created) into the file, since that comes from the .sfk file. – olafure – 2011-01-14T19:35:10.967

1I found a way to open the file in SoundForge and get the .sfk contents too. File > Open, but don't browse to the actual folder. Instead type in the full (or relative) path to the file, including the filename. In that case windows leaves it alone. And btw, SoundForge doesn't have any problems with the file, even though Microsoft says in the hotfix that this only happens if the .wav file is corrupt. – olafure – 2011-01-15T20:53:32.480

Answers

9

Create a .reg file with content:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\PropertySystem\PropertyHandlers\.wav]
@="{#e46787a1-4629-4423-a693-be1f003b2742}"

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\PropertySystem\PropertyHandlers\.wav]
@="{#e46787a1-4629-4423-a693-be1f003b2742}"

and doubleclick the .reg file

For undo:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\PropertySystem\PropertyHandlers\.wav]
@="{e46787a1-4629-4423-a693-be1f003b2742}"

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\PropertySystem\PropertyHandlers\.wav]
@="{e46787a1-4629-4423-a693-be1f003b2742}"

and be sure to restart as this fix will not take effect until you do so.

Wojtek

Posted 2011-01-14T14:28:37.890

Reputation: 106

I wish I could give you more points for this answer than just one. At least I can accept it as the best one, since it fixed the problem for me! I had mopped the whole internet with google, only to find people with similar problems and useless answers and fixes from Microsoft that didn't work. Thanks a whole bunch! – olafure – 2011-01-21T09:20:39.620

Needless to say (well, depends on who you're speaking to) you need to reboot after this fix. – olafure – 2011-01-21T09:32:00.817

2Adding a bit of explanation: What this fix does is disable the "PropertyHandler" dll for files having a particular filename extension (here, '.wav.). The registry should already contain the mentioned keys, with the default value shown. In the .reg files shown here, '@=' means 'default value'. The '#' sign prepended to the GUID apparently just makes the GUID invalid, but preserves it for future reference. – gwideman – 2014-04-10T22:31:23.200