I believe that the problem is due to the fact that the project is written in C#/.NET. When a .NET Assembly is registered as a COM object, it uses mscoree.dll as the in-process server to handle communication between COM clients and the .NET Assembly. I suspect that
I have taken this opportunity to dust off my C++/WIN32 skills. I am rewriting the entire application in C++ (the way it should have been done in the first place). In a few weeks, I expect to have a working 64-bit version of the shell extension. I am also going to further investigate problems people have had with it not working in versions of Windows prior to XP (I know what the problem is, but I never could get it resolved).
Along with these new upgrades, I am playing with the idea of moving the project to CodePlex. It's kind of ironic that I would let Microsoft host a project I stole from them, but SourceForge is a nightmare to deal with these days.