如何为Java应用程序向Windows资源管理器添加上下文菜单?

如何为Java应用程序向Windows资源管理器添加上下文菜单?,java,windows,contextmenu,windows-explorer,Java,Windows,Contextmenu,Windows Explorer,如何将子菜单项添加到Java应用程序的windows资源管理器上下文菜单(例如7-Zip)中?我知道有两种方法。最奇特的方法是编写一个WindowsShell扩展,我相信powerarchiver、winzip等就是这样做的(这涉及运行代码来确定上下文菜单项将依赖于所选的文件) 为了实现简单的功能,您可以在注册表中添加一个条目: HKEY_CLASSES_ROOT\<file type>\shell\<display text>\command 然后,这会为我选择的任何

如何将子菜单项添加到Java应用程序的windows资源管理器上下文菜单(例如7-Zip)中?

我知道有两种方法。最奇特的方法是编写一个WindowsShell扩展,我相信powerarchiver、winzip等就是这样做的(这涉及运行代码来确定上下文菜单项将依赖于所选的文件)

为了实现简单的功能,您可以在注册表中添加一个条目:

HKEY_CLASSES_ROOT\<file type>\shell\<display text>\command
然后,这会为我选择的任何文件(因此为*)添加一个上下文菜单项,允许我在MS Access 2000中启动它

当然,在破解注册表之前一定要备份它


您的程序可以在安装期间或第一次运行时执行此操作。

您还可以将java程序打包到类似NSIS的安装程序中,并可以使用NSIS脚本生成浏览器上下文菜单,这似乎很简单,谢谢。此方法是否也支持将多个条目分组到子菜单中?如何编写windows shell扩展名来执行此操作?如何为文件夹和所有文件(.)添加此类注册表条目?@Tom您可能想在我的JAVA程序中签出此项@Jayden,如何确定使用此应用程序打开的文件?
HKEY_CLASSES_ROOT\*\shell\MS Access 2000\command
"C:\Program Files\Microsoft Office\Office\MSACCESS.EXE" "%1"