如何避免上下文菜单处理程序的应用程序阻止浏览器?

我已经创build了一个应用程序,可以通过从IContextMenu和IShellExtInit派生通过上下文菜单来调用。 我注册DLL,当我右键单击应用程序被调用。

但是,问题是直到我的应用程序结束,我不能访问该资源pipe理器中的任何其他文件。 资源pipe理器被有效阻止,直到我的申请结束

WinZip,WinRar等其他应用程序中也没有反映相同的行为。

如何避免我的应用程序阻止资源pipe理器?

任何指向这个方向的指针都会很有帮助。

我找到了解决方案。 当浏览器调用我的DLL时,我应该产生一个进程,以便我的进程可以单独继续,而资源管理器可以继续执行,而不会阻止我的逻辑。

感谢Paul Betts最初的建议。

将调试器附加到资源管理器,并查找在调用堆栈中有DLL的线程,然后查看它被阻塞的内容