Viki, on Mar 8 2006, 10:00 PM, said:
Tracks Eraser Pro (NOT FREE) will remove everything in the index.dat file without needing a reboot. So it can be done.

I'm afraid it cannot be done. I have seen programs like this before, and all they actually do is 'trick' the system into reading another part of the disk, so it appears the file is deleted. Try for yourslef - take a copy of your index.dat before running your program (save it somewhere else on your harddrive), run the program that 'wipes' the index file. Don't use any other cleaner stuff, and reboot the system.
Now compare your index.dat file to the one you saved earlier - very similar aren't they ?
Windows has exclusive access to the index.dat file at a very low level, and nothing can write to that file other than windows. There is a very small period of time during reboot that windows relinquishes its grip on it - it can then (and only then) be deleted. (Windows rebuilds the 'missing' file as it then continues to boot)
All CCleaner does is set a key that the OS looks for at reboot to delete (it was I believe designed for installers that require multiple reboots to delete leftover files), and it is ...
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SessionManager, and the key is PendingFileRenameOperations
(look at this key before and after CCleaner has ran)
If deleting the index.dat file was actually 'do-able' in realtime, do you not think all cleanup apps would do it ?
The end-result is you will have to reboot to erase index.dat - period.
B.