如何在Python中创建shell扩展上下文菜单(如dropbox)

zen*_*poy 5 python windows-shell win32com

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

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

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

Meh*_*Meh 4

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

大多数具有 shell 扩展的应用程序(例如 Dropbox)都会安装两个单独的 shell 扩展,一种用于 32 位进程,另一种用于 64 位进程。

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