explorer.exe 100% CPU continually reading PNIDUI.dll
hi.
i've had a very stable vista installation since RTM. but recently
SearchIndexer.exe started maxing out my CPU, as discussed on this
thread: http://forums.microsoft.com/MSDN/Sho...97269&SiteID=1
Many other users have the same problem, it's a widespread stability
problem with Search. i've since disabled the search service but
explorer has now taken to maxing out the CPU instead. explorer.exe is
responsive for the first few minutes after log in, but then the
taskbar and start menu stop responding completely and one of the CPU
cores goes to max. i've tried disabling all unnecessary services but
that not improved anything.
i ran ProcMon with a filter on explorer.exe and i see about 3 or 4
entries every second referencing c:\windows\system32\pnidui.dll. it
follows a pattern of CreateFile, QueryBasicInformationFile and
CloseFile. i've included the output from ProcMon below for these
entries. i understand this file simply contains the networking icons,
can anyone explain why explorer should be querying this file in an
infinite loop? i've run virus scans etc., windows defender scans and
everything is fine. i have even installed SP1 RC1 refresh 2 but it
hasn't changed anything.
thanks to anyone who can help me out, i'm dreading the prospect of a
re-install, and since i never even had to re-install XP in its
lifetime that would be a major disappointment for Vista.
tim
Sequence: 1202566
Date & Time: 27/01/2008 11:41:34
Event Class: File System
Operation: CreateFile
Result: SUCCESS
Path: C:\Windows\System32\pnidui.dll
TID: 2720
Duration: 0.0000175
Desired Access: Read Attributes
Disposition: Open
Options: Open Reparse Point
Attributes: n/a
ShareMode: Read, Write, Delete
AllocationSize: n/a
OpenResult: Opened
Sequence: 1202567
Date & Time: 27/01/2008 11:41:34
Event Class: File System
Operation: QueryBasicInformationFile
Result: SUCCESS
Path: C:\Windows\System32\pnidui.dll
TID: 2720
Duration: 0.0000028
CreationTime: 27/01/2008 02:53:08
LastAccessTime: 27/01/2008 02:53:08
LastWriteTime: 19/01/2008 07:36:07
ChangeTime: 27/01/2008 10:03:45
FileAttributes: A
Sequence: 1202568
Date & Time: 27/01/2008 11:41:34
Event Class: File System
Operation: CloseFile
Result: SUCCESS
Path: C:\Windows\System32\pnidui.dll
TID: 2720
Duration: 0.0000054
Re: explorer.exe 100% CPU continually reading PNIDUI.dll
hi. just replying to myself here. resetting my user profile did the
trick, it must have got corrupt. i followed the instructions on this
blog post: http://blog.tiensivu.com/aaron/archi...-contents.html
i still can't use Search or else the CPU problems come back, but at
least Vista holds itself together well enough.
Re: explorer.exe 100% CPU continually reading PNIDUI.dll
If you right click the network icon, and turn off animation, all
activity on PNIDUI.dll stops.
(I assume the high activity is due to it constantly reading the file to
change the image as activity occurs on the network.
Maybe this is a side effect of something else constantly using the
network, and not the problem in itself?)
Re: explorer.exe 100% CPU continually reading PNIDUI.dll
hi sam. many thanks for explaining this, i thought this file was the
source of the problem but you're right i'm sure it was just a lot of
network IO.
thanks
tim
Re: explorer.exe 100% CPU continually reading PNIDUI.dll
I am afraid this does happen in Windows Vista!
Suddenly my Vista computer had a very bad performance and everything
started to work
very slowly, especially windows mail.
The Task manager showed that CPU was constantly at 50% - 80% even if I
was
not doing anything and let the computer untouched for a few hours.
Most of the CPU time was taken by explorer.exe.
After trying many things and struggeling with this issue for many many
hours,
I slowly got some idea.
Appearently something under water goes wrong with your user profile and
the search
index settings of the files in your USER folder. Vista tries to index
stuff in this folder
and gets completely crazy. It keeps on trying and trying and eating up
most of
your CPU time (explorer.exe).
The only lasting working solution, I found was to make a completely new
User Account.
After making the new User Account, you can only copy a limited number
of stuff
from your original User Account. Some stuff when copied to your new
User Account
will again make your new User Account go crazy.
Also, I turned off the search indexing for the new User Account,
including all subfolders.
Here is what I did:
SOLUTION:
* Backup your original User Account, Mails and any other critical
files.
* Make a new user and make an extra help account (for example called:
admin with Administrator rights).
* Make sure that the search indexing for the new User folder is TURNED
OFF
(via properties of the folder -> Advanced)
* Manually and carefully only copy back stuff you really need.
* Use Command line with Administrator rights to copy User stuff step by
step.
The moment you see the CPU getting crazy again, delete the last User
stuffs you just copied.
To restore your e-mails:
1 - copy the e-mail folder to another partition in folder mail2 (for
example: f:/mail2).
2 - in the new user login, set the archive folder of Windows mail to
f:/mail.
3 - delete f:/mail and rename f:/mail2 to f:/mail (BE CAREFULL! make
sure you have a backup).
It's quite a headacke, but it will bring down your CPU to 2% - 10% when
you are idle.