问题标签 [windows-shell-extension-menu]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
539 浏览

.net - 添加到 Windows Shell 扩展上下文菜单

我读过这些:

将项目添加到 Windows 中的桌面上下文菜单

http://www.informit.com/articles/article.aspx?p=169474

http://msdn.microsoft.com/en-us/library/bb776852(VS.85).aspx

但是我找不到有关如何创建上下文菜单项的最新且直接的信息。

我确定它在某个地方的 msdn 中,但我找不到它。

谢谢。

0 投票
2 回答
1015 浏览

c# - Shell 菜单项分隔符

我的问题可能是这里重复的问题,但即使在谷歌搜索之后我还没有得到解决方案。

我为文件添加了一个 shell 上下文菜单项,即当您在资源管理器中右键单击文件时,菜单会显示我的自定义菜单项。

我用过 -

HKLM\Software\Classes*\shell\myappname HKLM\Software\Classes*\shell\myappname\command

但我不能做的是在该上下文菜单中添加一个分隔符。

我正在使用 C# 2005 创建我的 Windows 应用程序。

有人可以帮助解决我的问题。

感谢您分享您宝贵的时间。

0 投票
2 回答
13946 浏览

windows - 如何将多个文件名传递给上下文菜单 Shell 命令?

将单个文件名传递给上下文菜单 shell 命令很简单:

但是,如果我选择多个文件,program.exe则会为每个这样的选定文件调用。

我想做的只是调用program.exe一次,将当前选择的所有文件名传递给它。

这个怎么做?

0 投票
1 回答
118 浏览

winapi - 资源管理器中的选择性上下文菜单

我想添加一个上下文菜单选项以更深入地集成我的一个程序。但是,我讨厌这个频繁使用的菜单中有 20 多个项目 - 所以我不会让我的最终用户也忍受这种情况。

我知道上下文菜单可以按文件类型自定义,但 Tortoisegit 能够自定义通用文件夹。

Tortoisegit 能够检测何时在由 Tortoisegit 控制的文件夹中打开上下文菜单并显示带有其他项目的不同菜单。

这是怎么做到的?这是由 Tortoisegit 在后台以某种方式运行的,还是上下文菜单的注册表设置,或其他什么?

0 投票
5 回答
116980 浏览

contextmenu - 如何将上下文菜单项添加到 Windows 资源管理器的文件夹

我发现了如何通过向注册表添加键来将右键单击上下文菜单项添加到 Windows 资源管理器上的文件中。即我可以右键单击资源管理器中的文件并针对该文件运行自定义应用程序。

我想对文件夹做同样的事情,但还没有找到方法(还)。我看到有关创建/编写自定义上下文菜单处理程序的文章,但我不想去那里。

我在这里找到了一篇关于如何将级联上下文菜单项添加到桌面和资源管理器中的“计算机”的文章,但这不适用于任何文件夹。

我希望能够将我的自定义应用程序添加到上下文菜单并让它在文件和文件夹上工作。有没有办法在不编写上下文菜单处理程序的情况下做到这一点?


我在下面的文章中找到了解决方案,该文章描述了如何通过注册表对文件以及文件夹执行此操作:

以下两篇文章提供了其他信息和选项:

0 投票
16 回答
172774 浏览

git - 如何在 Windows 资源管理器中添加“在此处打开 git-bash ...”上下文菜单?

如何向 Windows 资源管理器添加上下文(也称为右键单击)菜单,单击该菜单时,会在当前资源管理器文件夹中打开 git-bash 控制台?

0 投票
1 回答
98 浏览

c# - SHGetInstanceExplorer 函数返回 E_FAIL

当我尝试使用SHGetInstanceExplorer函数时,它返回一个E_FAIL HRESULT

我已经用不同的参数定义了这两个函数(以测试它们),两个定义都返回相同的错误:

我不太确定哪种组件比shell ext 更多。允许使用此功能,我从WinForms应用程序中尝试过,也许问题出在哪里?

0 投票
0 回答
135 浏览

contextmenu - 有什么方法可以在没有代码库的情况下通过 Regasm.exe 注册 shell 扩展?

这是问题。我开发了外壳上下文菜单的外壳扩展。(使用 SharpShell,在此处输入链接描述

我可以通过使用带有“/codebase”属性的 regasm.exe 来注册它。如果没有这个属性,shell 扩展就不起作用。但是这个属性让我无法在没有重启资源管理器的情况下更新 .dll 文件。更糟糕的是,在未注册并重新启动 PC 后无法删除 .dll 文件(在 Windows 8 中)。

那么,有没有办法解决这个问题呢?顺便说一句,如果有人能告诉我“/codebase”实际上在做什么?(我已经看过 MSDN,但完全看不懂。)

0 投票
1 回答
53 浏览

c# - 消歧:为 Windows Explorer.exe 的上下文菜单编写 Shell 扩展与在您的应用程序中使用 Shell ContextMenu

我挣扎了几个小时试图找到关于第二点的信息:在您的应用程序中使用 Shell ContextMenu。关于如何编写 Shell Extensions 并将其添加到 Explorer.exe 的上下文菜单中有大量讨论。

那么,我在哪里可以找到关于这两种不同东西的信息呢?

0 投票
1 回答
43 浏览

winapi - FILE_ATTRIBUTE_OFFLINE 的带有动态动词的快捷菜单

我希望通过 QueryContextMenu 方法(动态动词)的快捷菜单对于“占位符”也可见。占位符是仅在本地虚拟存在的文件,需要从云同步提供商处下载,然后才能读取文件。

出于这个原因,我通过以下方式注册了我的快捷菜单:

如果该文件确实存在于本地,将显示我的上下文菜单条目。但如果它被脱水(转换为占位符),我的上下文菜单条目将不会显示。如何注册我的 ShellExtension,以便它始终显示?我需要设置哪种标志?可悲的是,互联网对此一无所知。

我试图从 Microsoft 的 ClourMirror 示例中学习,它提供了自定义上下文菜单条目,但遗憾的是它们不起作用:https ://github.com/microsoft/Windows-classic-samples/issues/156 。同时,我尝试从“始终保留在此设备上”和“释放空间”上下文菜单条目中学习,这些条目使用标志SkipCloudDownload(value: 0) 和StorageProviderFlagsRequired(value:2) 进行注册,看起来很有希望。特别是SkipCloudDownload,但我在不同的位置设置了这个标志,没有改变。

在项目的当前状态下,由于跨平台兼容性,需要动态动词。感谢任何提示。