Tony,
Have I got a deal for you! Sysinternals has a utility called handle.exe that will list all the files that are open and who has them open. You can pipe the display out to a file.
http://www.microsoft.com/technet/sysinternals/ProcessesAndThreads/Handle.mspxFrom the Microsoft site where the tools are hosted:
"Ever wondered which program has a particular file or directory open? Now you can find out. Handle is a utility that displays information about open handles for any process in the system. You can use it to see the programs that have a file open, or to see the object types and names of all the handles of a program."
Steve