Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

My computer occasionally becomes terribly unresponsive. Opening Process Explorer reveals that it's explorer.exe hogging 100% of the CPU. I poked around until I found the thread id which was doing it, and monitored that thread with Process Monitor. There were many actions which the thread was attempting. Some of them resulted in "SUCCESS" and others resulted in "NOT FOUND". I have attached an Excel file with the logs, but I have also attached a screenshot with the actions and matching counts grouped/highlighted.

Any idea what this could be? I've run an AV scan (Microsoft Security Essentials), and it says I'm clean.

Log: https://www.dropbox.com/s/qk5y3hor4knsihh/processMonitor_Logfile.xlsx

screenshot

Per SLaks' question in the comments, Process Explorer shows the busy thread as SHLWAPI.dll; here is the stack:

ntkrnlpa.exe+0x6ea6b
ntkrnlpa.exe!MmIsDriverVerifying+0xbde
hal.dll+0x2ef2
ntdll.dll!RtlConvertSidToUnicodeString+0xa3
ntdll.dll!RtlFormatCurrentUserKeyPath+0xdb
ADVAPI32.dll!ImpersonateLoggedOnUser+0x6e7
ADVAPI32.dll!ImpersonateLoggedOnUser+0x6a7
ADVAPI32.dll!ImpersonateLoggedOnUser+0x4ba
ADVAPI32.dll!ImpersonateLoggedOnUser+0x7e5
ADVAPI32.dll!ImpersonateLoggedOnUser+0x825
ADVAPI32.dll!RegQueryValueExW+0x8c
SHLWAPI.dll!Ordinal128+0x59
SHLWAPI.dll!SHRegGetValueW+0x16a
SHLWAPI.dll!SHRegGetValueW+0x9a
SHLWAPI.dll!SHQueryValueExW+0x20
SHELL32.dll!SHChangeNotifyDeregister+0xb5d
SHELL32.dll!SHChangeNotifyDeregister+0xe8e
SHELL32.dll!SHChangeNotifyDeregister+0xd26
SHELL32.dll!SHGetPathFromIDListW+0x16a
SHELL32.dll!ILRemoveLastID+0x1c3
SHELL32.dll!SHGetPathFromIDListW+0x8e
SHELL32.dll!SHGetPathFromIDListW+0x12
SHELL32.dll!OpenRegStream+0xc5d
SHELL32.dll!OpenRegStream+0xbbb
SHELL32.dll!SHGetRealIDL+0x2470
SHELL32.dll!Ordinal7+0x1a87f
SHELL32.dll!Ordinal7+0x1a8f8
SHELL32.dll!Ordinal7+0x1ba56
SHELL32.dll!ILFindLastID+0xbea
SHELL32.dll!ILSaveToStream+0x69a
SHELL32.dll!ILFindLastID+0xc96
SHELL32.dll!SHGetSpecialFolderLocation+0xddf
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd3d
SHELL32.dll!SHGetSpecialFolderLocation+0xa90
SHELL32.dll!Ordinal7+0x1b6e7
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd3d
SHELL32.dll!SHGetSpecialFolderLocation+0xa90
SHELL32.dll!Ordinal7+0x1b6e7
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd3d
SHELL32.dll!SHGetSpecialFolderLocation+0xa90
SHELL32.dll!Ordinal7+0x1b6e7
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd3d
SHELL32.dll!SHGetSpecialFolderLocation+0xa90
SHELL32.dll!Ordinal7+0x1b6e7
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd3d
SHELL32.dll!SHGetSpecialFolderLocation+0xa90
SHELL32.dll!Ordinal7+0x1b6e7
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd70
SHELL32.dll!SHGetSpecialFolderLocation+0xe1b
SHELL32.dll!SHGetSpecialFolderLocation+0xd3d
SHELL32.dll!SHGetSpecialFolderLocation+0xa90
SHELL32.dll!Ordinal7+0x1b6e7
share|improve this question
    
What DLLs do you see in that thread's stack? –  SLaks Dec 31 '12 at 3:49
    
What is the value of the InprocServer32 value on top of the spreadsheet? –  SLaks Dec 31 '12 at 3:49
    
@SLaks: The DLL which is really chewing up the CPU is "SHLWAPI.dll" –  loneboat Dec 31 '12 at 4:59
    
@Slaks: For your question about the "InprocServer32", which one are you asking about? The first one (in red) or the second one (in green)? Also, by "value", do you mean the value of that key in the Windows Registry? The value of the first one is "%SystemRoot%\system32\SHELL32.dll" and the second one does not appear to exist. The following is as close as I can get: "HKEY_CURRENT_USER\Software\Classes\CLSID\" Under that, there is no entry for "{20D04...0309D}". –  loneboat Dec 31 '12 at 5:00
    
does it happen when you use the same directories repeatedly? if so, it may be a corrupt thumbs.db file screwing your explorer.exe - –  Lorenzo Von Matterhorn Dec 31 '12 at 21:23
show 2 more comments

1 Answer 1

I Used to experience this problem on my XP Rig, and I couldn't seem to prevent it from happening- the problem seems like an anomalous occurrence. The only solution I was able to find for it was killing Explorer.exe through the Task Manager, and then restarting it.

Simply open up the task manager (Ctrl+Alt+Delete), navigate to the Processes tab within Task Manager, find "Explorer.EXE" under the "Image Name" list, and once you have found it, select it and then press the "End Process" button at the bottom right of the window. This will Kill explorer.

Once this is done, navigate back to the "Applications" tab in the Task Manager, press the "New Task" button, and in the dialog that comes up, type in "Explorer.EXE". This will restart Explorer and should fix the problem.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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