将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时选择的文件

相关推荐
码农水水9 小时前
中国邮政Java面试:热点Key的探测和本地缓存方案
java·开发语言·windows·缓存·面试·职场和发展·kafka
沫离痕11 小时前
windows安装docker实例
windows·docker·容器
桌面运维家12 小时前
vDisk VOI架构IO瓶颈怎么办?Windows优化实战
windows·架构
非凡ghost14 小时前
MPC-QT视频播放器(基于Qt框架播放器)
开发语言·windows·qt·音视频·软件需求
ysy164806723914 小时前
Docker安装(Windows版)
windows·docker·容器
課代表17 小时前
bat 批处理中 FOR 命令的变量修饰符
脚本·bat·环境变量·批处理·路径·扩展名·短名称
珂玥c17 小时前
windows系统nfs挂载
运维·windows·ssh·remmina·cygwin
wok15717 小时前
Windows 上使用 Docker Desktop 教程
windows·docker·容器
希赛网18 小时前
网工备考,华为ENSP基础配置命令(下)
windows·计算机网络·网络工程师·华为认证·ensp·路由交换·网工备考
马踏岛国赏樱花18 小时前
Windows与Ubuntu双系统,挂载D/E盘到Ubuntu下时只能读的问题
linux·windows·ubuntu