Saturday, November 17, 2007

Vista Mail Using 100% of CPU?

When I got my new Dell Inspirion 1501 laptop, one of the first things I did was port my email from Outlook Express that was on my old Windows XP desktop.

Ever since, every time I open Vista Mail, the CPU shoots up to 100%, and stays there for hours. I finally, accidentally, figured out the cause. I was looking for certain files on my hard drive, and noticed I had hundreds and hundreds of zero-byte EML files. So I searched for all EML files (using Agent Ransack), and found 41,000 of them - 30,000 of which were zero-byte!

After I deleted the empty ones, Mail immediately started behaving normally. Of course, that was three days ago, and when I checked just now, I see I have 284 empty EML files. Haven't Googled to see what may be going on, but I'm just glad for now Mail works correctly. For a while, at least. Now if I could just get any screen saver to start working again...

1 comments:

Larry Leonard said...

Here's a batch file to delete these files. Use at your own risk.

@echo off

rem ---------------------------------------------------------------------------
rem Delete all empty Vista Mail files so it doesn't peg the CPU.
rem ---------------------------------------------------------------------------

@echo ==================================================================== > %temp%\~DeleteZeroByteEmlFilesLog.txt
@echo Starting >> %temp%\~DeleteZeroByteEmlFilesLog.txt
date /t >> %temp%\~DeleteZeroByteEmlFilesLog.txt
time /t >> %temp%\~DeleteZeroByteEmlFilesLog.txt

c:

cd c:\Users\Larry\AppData\Local\Microsoft\Windows Mail\Local Folders\Inbox
for /R %%A in (*.eml) do if %%~zA EQU 0 del %%~sA >> %temp%\~DeleteZeroByteEmlFilesLog.txt

cd c:\Users\Larry\AppData\Local\Microsoft\Windows Mail\Local Folders\Deleted Items
for /r %%A in (*.eml) do if %%~zA EQU 0 del %%~sA >> %temp%\~DeleteZeroByteEmlFilesLog.txt

cd c:\Users\Larry\AppData\Local\Microsoft\Windows Mail\Local Folders\Junk E-mail
for /r %%A in (*.eml) do if %%~zA EQU 0 del %%~sA >> %temp%\~DeleteZeroByteEmlFilesLog.txt

@echo Finished >> %temp%\~DeleteZeroByteEmlFilesLog.txt
date /t >> %temp%\~DeleteZeroByteEmlFilesLog.txt
time /t >> %temp%\~DeleteZeroByteEmlFilesLog.txt
@echo ==================================================================== >> %temp%\~DeleteZeroByteEmlFilesLog.txt

Post a Comment