Getting handle of the file in use
I am working a .NET windows application using C#. I have placed a
web browse control in my Windows Form in order to show many types of documents like word doc, text file, ms excel sheet, images or even flash animation etc. There are three panels in this Form. On the left panel there's a Directory tree just like we see in Windows Explorer. The Top panel contains a list of documents in the currently selected directory. I have placed the web browser control in the third panle which is right below the top panel. When the user selects a document (word, excel etc.) it is opened and viewed in the browser control. So far so good. Now the problem occurs when the user selects a document and it is opened for view and he wants to delete it by using the shortcut menu option which is provided by me. The system throws
an exception when i attempt to delete this document from the os directory and says like "The file is in use by another process.". This occurs even if the user selects another document and the application attempts to delete the 'previously' selected document again. This is for sure that the process which is running my app has not yet destroyed the handle of the document, but i don't know how to destory it. I guess the only solution could be P/Invoke but don't know which API functions have to be used. Anybody could help getting rid of this?