6

我想创建一个上下文菜单外壳扩展,以配合我用 Python 编写的程序。

我尝试使用pywin32\Lib\site-packages\win32comext\shell\demos\servers\context_menu.py中的演示(这里是文件),但它在我的 Win7 x64 上不起作用:它注册正常并添加了注册表项,但上下文菜单没有显示(即使经过重启)。所以我又搜索了一些,并记得 Dropbox 说只使用 Python 进行开发,我查看了他们的上下文菜单注册表项。我发现他们使用了:在他们的(虽然我已经阅读了这个和其他一些资源,但我仍然不太了解 shell 扩展)。所以看起来他们将 ac/c++ 代码编译为 dll 并使用它来调用 python 代码。DropboxExt64.15.dllInProcServer32

我的问题是他们是怎么做到的?我在哪里可以找到有关如何使用此方法的资源(示例、指南等)?在 中使用该方法有什么缺陷context_menu.py

4

1 回答 1

4

您的扩展程序必须是 64 位才能显示在 Windows 7 x64 的资源管理器中。所以你需要使用 64 位 Python 和 64 位 pywin32。

大多数带有外壳扩展的应用程序,如 Dropbox,安装两个单独的外壳扩展,一个用于 32 位进程,一个用于 64 位进程。

在 Windows 7 64 位中使用 32 位 shell 扩展

于 2013-03-11T01:39:43.240 回答