Hi, Some time ago I wrote similiar DMS for some company, but my idea is slightly different than yours. Instead of passing document directly to the application which is associated as default, you could create another file as temporary with additional parameters (temporary, remove on file close, share read/write), copy content of original file to it, open the file with associated app (don't close its handle). Pros: - original file doesn't need to be locked, - you can track changes, - you can let user decide wheter the original file should be updated or not, - you don't have to care about temporary file, unless user closes it, - you can monitor changes made to that file, by using handle to it. Cons: - a bit more code to write, than in simple handle checking :D As for your way, there's a nice tool you can use: Sysinternals - Handle (by dumping its output to your redirected standard output). Regards