我应该使用什么命令来使用Windows注册表从上下文菜单中启动jar文件?

问题描述 投票:0回答:1

我目前正试图通过右键单击文件夹的背景来启动jar文件。

我已经找到了上下文菜单启动(不记得在哪里,但基本上添加到HKEY_CLASSES_ROOT/Directory/Background/shell作为新密钥,然后在其中添加一个命令键,并执行点击操作)。

在超级用户的这个类似问题上,项目位置为%1:https://superuser.com/questions/444726/windows-how-to-add-batch-script-action-to-right-click-menu

但我坚持使用启动程序并将其传递给目录的代码。

我最近的尝试是:java -jar "fullpath\program.jar" "%1"

java -jar运行它,位置的路径,%1希望通过目录路径。

我也试过了很多变种,但是无法让它运转起来。有任何想法吗?

编辑:我到底做了什么。

我创建了一个bat文件并在其中写道:

start javaw "%~dp0/program.jar" "%cd%"

这将运行java文件并将其发送给用户工作目录。在启动java程序后,使用start javaw代替java使命令行关闭。 %~dp0获取bat文件的目录。

java command registry contextmenu
1个回答
1
投票

"%1"部分不适用于目录后台,但程序启动时将该目录作为工作目录。 (如果命令中包含“%1”,则Windows 7会出错。)

使用

System.getProperty("user.dir");

为拿到它,为实现它。

如果您无法更改代码,请编写一个获取此目录的*包装器*并调用原始类的main方法,将该目录作为参数传递(或编写一个shell脚本来执行此操作并使用参数调用java)

© www.soinside.com 2019 - 2024. All rights reserved.