Saturday, June 23, 2007

Click Handler - Hanging

Sometime back in my office PC, double click and right click on any file type (except exe and dll) started to hang and used to return back after over a minute. Right click on folders was fine. It started to get annoying. If i open the files by double clicking from other apps (started to use total commander and 7z file manager more), they open properly. By mistake, if i do it from explorer -- boom -- it hangs.

So I started to use drag and drop. To open a excel file, i would open excel first. Then drag and drop the files onto excel window. This continued for a while. I was getting used to it that i started to do it while on my laptop as well.

After some time i was getting to use "drag and drop" instead of just double click or press enter to open file. I was desperate to find the reason and fix it.

I knew this was due to the context menu handlers in shell but could not find the culprit menu handler which was hanging.

I used filemon and regmon to see which was the one which was causing the issue but there was no trace of any issue but just it hangs. I have many context menu handlers and i know all of them are proper and they dont hang. Wanted to debug the explorer process as well !!

I googled on right click handlers and landed on a page which suggested i might be accessing an unavailable network resource. I read it and disabled my lan card and tried to open files by double-click and wow !! it responded so fast. So now i knew that something on the network was being accessed which was not there (possibly). so i opened my registry and searched for network resources - "\\" -- guess what , i found that the culprit. It was a program (docsopen.exe) which was being accessed from the network and it was in the "open with" list of programs for man file types. Also some file types were to be openend by docsopen. I got rid of all entries of docsopen and used ccleaner to clean up any missing references and other stuff from registry. Now my PC responds back normally !

Now I can interact normally with it. One more problem solved !!

No comments: