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

Thi*_*ilo 18 java windows contextmenu windows-explorer

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

Jay*_*den 16

我知道有两种方法可以做到这一点.花哨的方式是编写一个windows shell扩展,这就是powerarchiver,winzip等我认为这样做(这涉及运行代码来确定上下文菜单项将取决于所选择的文件).

简单的方法,对于简单的功能,您可以在注册表中添加一个条目:

HKEY_CLASSES_ROOT\<file type>\shell\<display text>\command
Run Code Online (Sandbox Code Playgroud)

<file type>此上下文菜单应该应用于*,.mdb,.doc的文件在哪里

<display text> 你想在上下文菜单中显示什么.

然后将默认字符串添加为要从上下文菜单中启动的应用程序的路径,并且可以使用%1来引用当前选定的文件,即对于我使用的MS Access:

HKEY_CLASSES_ROOT\*\shell\MS Access 2000\command
"C:\Program Files\Microsoft Office\Office\MSACCESS.EXE" "%1"
Run Code Online (Sandbox Code Playgroud)

然后,为我选择的任何文件(因此*)添加上下文菜单项,这允许我在MS Access 2000中启动它.

当然,在黑客攻击之前总是备份你的注册表.

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

  • 如何为文件夹和所有文件(*.*)添加此类注册表项? (3认同)
  • @Jayden在我的JAVA程序中,如何确定正在使用此应用程序打开哪个文件? (2认同)