If you find a file that you cannot delete because it is in use by an unknown process or program you can use this tool to see exactly what is using it.

(perfect for finding out why you can't delete those nasty temp files)

Introduction

Ever wondered which program has a particular file or directory open? Now you can find out. Process Explorer shows you information about which handles and DLLs processes have opened or loaded.

The Process Explorer display consists of two sub-windows. The top window always shows a list of the currently active processes, including the names of their owning accounts, whereas the information displayed in the bottom window depends on the mode that Process Explorer is in: if it is in handle mode you’ll see the handles that the process selected in the top window has opened; if Process Explorer is in DLL mode you’ll see the DLLs and memory-mapped files that the process has loaded. Process Explorer also has a powerful search capability that will quickly show you which processes have particular handles opened or DLLs loaded.

The unique capabilities of Process Explorer make it useful for tracking down DLL-version problems or handle leaks, and provide insight into the way Windows and applications work.

Get it here,
http://www.sysinternals.com/ntw2k/fr.../procexp.shtml

Here is how find the bugger,

Open Process Explorer, go to Find - Find handle menu. Put in the name of the file that is currently locked and press the "Search" button.

This is going to list the process that has the file opened right now. If you then select the process in the "Process Explorer Search" window, you will be able to see the exact open file handles in the bottom pane and by right-clicking on it - you will have an option to CLOSE the specific file handle thus releasing your file from the grip of that evil process!

cheers
egghead