将jar添加到文件的右键菜单

复制代码
如题,将自己开发的jar文件添加到右键菜单里面,从而对任何文件右键点击都可以以自己的jar进行处理

创建一个.bat后缀的文件,将下面代码复制进去。

注意将MENU_NAME、JAR_PATH、JAR_ICON、JAVA_BIN_PATH这四个变量修改正确

保存后,选中这个文件,右键选择以管理员身份运行

复制代码
@echo off
set "MENU_NAME=菜单名称"
set "JAR_PATH=jar的文件绝对路径"
set "JAR_ICON=ico格式图片绝对路径"
set "JAVA_BIN_PATH=本地的jdk的bin目录绝对路径"

:: 空白区域的右键菜单 HKEY_CLASSES_ROOT\Directory\Background\shell
:: 任意文件夹的右键菜单 HKEY_CLASSES_ROOT\Directory\shell
:: 任意文件的右键菜单 HKEY_CLASSES_ROOT\*\shell
set "REGEDIT_PATH=HKEY_CLASSES_ROOT\*\shell"

::上面的需要根据自己的实际情况修改,下面的基本不用该

:: 占位符,使文件右键选择菜单时能将文件的路径传入Main方法的 String[] args
set "SELECTED_FILE=%%1"


:: 查询是否存在菜单项   
reg query "%REGEDIT_PATH%\%MENU_NAME%" > nul 2>&1
if %errorlevel% equ 0 (
    echo 删除已存在的菜单
    :: 如果存在,删除菜单项
    reg delete "%REGEDIT_PATH%\%MENU_NAME%" /f
)

:: 添加右键菜单项
reg add "%REGEDIT_PATH%\%MENU_NAME%" /t REG_SZ /v "" /d "%MENU_NAME%" /f
:: 设置菜单项的图标
reg add "%REGEDIT_PATH%\%MENU_NAME%" /t REG_SZ /v "Icon" /d "%JAR_ICON%" /f
:: 设置菜单项的启动程序,如果使用java.exe会多出现一个弹出框,所有使用javaw.exe
reg add "%REGEDIT_PATH%\%MENU_NAME%\command" /t REG_SZ /v "" /d "\"%JAVA_BIN_PATH%\javaw.exe\" -jar \"%JAR_PATH%\"  \"%SELECTED_FILE%\"" /f

pause

在java主程序的main方法的args里面就可以得到你启动jar时选择的文件

相关推荐
吳所畏惧4 小时前
NVM踩坑实录:配置了npm的阿里云cdn之后,下载nodejs老版本(如:12.18.4)时,报404异常,下载失败的问题解决
前端·windows·阿里云·npm·node.js·batch命令
leese2334 小时前
FreeMarker模板引擎
windows
love530love5 小时前
命令行创建 UV 环境及本地化实战演示—— 基于《Python 多版本与开发环境治理架构设计》的最佳实践
开发语言·人工智能·windows·python·conda·uv
呉師傅5 小时前
佳能iR-ADV C5560复印机如何扫描文件到电脑
运维·网络·windows·计算机外设·电脑
程序视点5 小时前
【最新专业评测】PDF Reducer专业版:85%超高压缩率的PDF压缩神器|Windows最佳PDF压缩工具推荐
windows
qyhua9 小时前
Windows 平台源码部署 Dify教程(不依赖 Docker)
人工智能·windows·python
女程序猿!!!10 小时前
网址收集总结
windows
love530love13 小时前
Windows 如何更改 ModelScope 的模型下载缓存位置?
运维·人工智能·windows·python·缓存·modelscope
weixin_3077791318 小时前
Windows 11下纯软件模拟虚拟机的设备模拟与虚拟化(仅终端和网络)
windows·系统架构
程序员黄老师1 天前
在 Windows 使用 Nginx/HAProxy 实现负载均衡
windows·nginx·负载均衡