吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1863|回复: 42
收起左侧

[其他原创] 【批处理】添加右键再添加右键

  [复制链接]
hualy 发表于 2024-6-8 11:39
本帖最后由 hualy 于 2024-6-8 11:48 编辑

基础
1. 注册表的结构
Windows注册表由多个层次结构的键(Key)和值(Value)组成。
主要的顶层键(也叫根键)包括:
•        HKEY_CLASSES_ROOT(HKCR):存储文件类型和文件扩展名关联。
•        HKEY_CURRENT_USER(HKCU):存储当前用户的配置。
•        HKEY_LOCAL_MACHINE(HKLM):存储所有用户和系统级别的配置。
•        HKEY_USERS(HKU):存储所有用户的配置。
•        HKEY_CURRENT_CONFIG(HKCC):存储当前硬件配置文件信息。


2. 键(Keys)和子键(Subkeys
每个键类似于文件系统中的文件夹,可以包含子键。子键可以嵌套多层,形成一个树状结构。


3. 值(Values
每个键可以包含一个或多个值,每个值有一个名称和数据类型。
常见的数据类型包括:
•        REG_SZ:字符串值
•        REG_DWORD32位数字值
•        REG_QWORD64位数字值
•        REG_BINARY:二进制数据
•        REG_MULTI_SZ:多字符串值
•        REG_EXPAND_SZ:可扩展的字符串值(包含环境变量)


4. 注册表编辑器
Windows提供了一个图形界面工具注册表编辑器Regedit),用于查看和编辑注册表。你可以通过以下方式打开注册表编辑器:
1.      按下 Win + R 打开运行对话框。
2.      输入 regedit 并按下 Enter 键。


5. 常见操作
•        查看键和值:在注册表编辑器中浏览树状结构,展开键查看子键和值。
•        创建键和值:右键点击任意键,选择新建来创建新的键或值。
•        修改值:双击某个值,编辑其数据内容。
•        删除键和值:右键点击需要删除的键或值,选择删除


6.右键菜单位置
  情形  
注册表位置
右键空白区域
桌面空白区域
HKEY_CLASSES_ROOT\DesktopBackground\Shell
一般空白区域
管理员
HKEY_CLASSES_ROOT\Directory\Background\shell
普通用户
HKEY_CURRENT_USER\Software\Classes\directory\Background\shell
右键文件夹
管理员
HKEY_CLASSES_ROOT\Directory\shell
普通用户
HKEY_CLASSES_ROOT\Directorylshell
右键文件
管理员
HKEY_CLASSES_ROOT\*\shell
普通用户
HKEY_CURRENT_USER\Software\Classes\*\shell
参考:
win10 给右键文件、文件夹、桌面菜单添加程序(项)
使用注册表编辑win10鼠标右键菜单,详细解释(右键文件夹、文件以及右键空白区域下三种情况)


相关文件内容
add_context_menu.bat
[Shell] 纯文本查看 复制代码
@echo off
:: 关闭命令回显
echo Checking if "Add to Context Menu" option exists...

:: 检查是否存在右键菜单项
REG QUERY "HKCU\Software\Classes\*\shell\AddToContextMenu" >nul 2>&1
if %errorlevel%==0 (
    echo "Add to Context Menu" option already exists.
) else (
    echo Adding "Add to Context Menu" option...

    :: 添加右键菜单项
    REG ADD "HKCU\Software\Classes\*\shell\AddToContextMenu" /ve /d "Add to Context Menu" /f
    REG ADD "HKCU\Software\Classes\*\shell\AddToContextMenu\command" /ve /d "\"%~dp0handle_add_to_context_menu.bat\" \"%%1\"" /f

    echo "Add to Context Menu" option added successfully.
)

pause



handle_add_to_context_menu.bat
[Shell] 纯文本查看 复制代码
  @echo off
  :: 关闭命令回显
  if "%1"=="" (
      echo No file specified.
      pause
      exit /b
  )
  
  :: 获取传递的文件路径
  set "filePath=%1"
  :: 获取文件名(不含路径)
  set "fileName=%~nx1"
  :: 获取文件的目录路径
  set "fileDir=%~dp1"
  
  :: 输出将要添加到注册表的信息
  echo Adding file information to the registry: %filePath%
  
  :: 添加文件路径到注册表
  REG ADD "HKCR\*\shell\%fileName%" /ve /d "%fileName%" /f
  REG ADD "HKCR\*\shell\%fileName%" /v "icon" /t REG_SZ /d  "%filePath%" /f
  REG ADD "HKCR\*\shell\%fileName%\command" /ve /d  "\"%filePath%\" \"%%1\"" /f
  
  echo File information added successfully
  :: 输出提示信息,告知用户文件信息已成功添加到注册表
  pause


用法
放在同一文件夹
image.png

1、成功运行add_context_menu.bat
双击add_context_menu.bat
image.png
运行成功后,右键任意文件会出现zadd contextmenu选项:
image.png

2、添加自己需要的常用.exe
如下步骤:
image.png
弹出以下情况为添加成功:
image.png
此时右键文件会出现自己添加的.exe文件:python.exe

image.png
3、尝试能否正常使用
使用我之前写的python签到脚本来试验一波
image.png

image.png

image.png
签到成功,说明所添加的python.exe能够正常使用

扩展
如果想在其他地方右键添加,如文件夹、空白区域、桌面的右键添加,只要把handle_add_to_context_menu.bat用编辑器打开,选中HKCR\*\shell然后Ctrl + H,再将替换的内容设置为下表的位置,然后点击全部替换即可
  情形  
注册表位置
右键空白区域
桌面空白区域
HKEY_CLASSES_ROOT\DesktopBackground\Shell
一般空白区域
管理员
HKEY_CLASSES_ROOT\Directory\Background\shell
普通用户
HKEY_CURRENT_USER\Software\Classes\directory\Background\shell
右键文件夹
管理员
HKEY_CLASSES_ROOT\Directory\shell
普通用户
HKEY_CLASSES_ROOT\Directorylshell
右键文件
管理员
HKEY_CLASSES_ROOT\*\shell
普通用户
HKEY_CURRENT_USER\Software\Classes\*\shell



土豪通道: 添加右键.zip (1.56 KB, 下载次数: 35)
密码:52pojie

免费评分

参与人数 11吾爱币 +18 热心值 +9 收起 理由
苏紫方璇 + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
Ller52 + 1 + 1 学习了
bdcpc + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
lcg2014 + 1 + 1 用心讨论,共获提升!
grrr_zhao + 1 + 1 谢谢@Thanks!
chizha + 1 谢谢@Thanks!
MYPcodcsja + 1 + 1 谢谢@Thanks!
Cool_Breeze + 2 + 1 谢谢@Thanks!
detas + 1 + 1 谢谢@Thanks!
woyucheng + 1 + 1 谢谢@Thanks!
我是一个外星人 + 1 谢谢@Thanks!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

magiclyan 发表于 2024-6-9 17:04
春天的萌动 发表于 2024-6-8 18:07
写的非常详细。有心了。有没有什么办法能强制删除AMD显卡的桌面右键菜单亚。设置过后,开机重启又出现了。

找到对应的路径将相关项改名并且取消权限,嫌麻烦的也可以使用诸如:EasyMenu、ContextMenuManager、甚至是HiBitUninstaller等进行相关注册表项的删除

另外告诉你个曲线的方法,可以在同级键值中加入
“Extended”这个空键值;这是告诉系统只有当我按下SHIFT键时才显示该快捷菜单否则一律隐藏
ZhjhJZ 发表于 2024-6-8 11:48
rhci 发表于 2024-6-8 11:50
学习了,已记录,下次需要时,就可以用了。
BonnieRan 发表于 2024-6-8 11:55
强啊~ 这样电脑上的绿色版软件也可以添加到右键了
我是一个外星人 发表于 2024-6-8 12:12
这个好 用得到
hangjiasoft 发表于 2024-6-8 12:15
感谢分享,学习了
long88888888 发表于 2024-6-8 12:28
已使用,添加不成功,为什么BAT提示已存在一个问题
 楼主| hualy 发表于 2024-6-8 12:33
long88888888 发表于 2024-6-8 12:28
已使用,添加不成功,为什么BAT提示已存在一个问题

你可以看一下注册表的位置,是不是已经存在了,如果不行,可以删除再添加一下
cxqdly 发表于 2024-6-8 12:55
能否反过来搞一个查询exe文件已经创建的右键注册表位置,方便删除多余的右键菜单
 楼主| hualy 发表于 2024-6-8 12:57
cxqdly 发表于 2024-6-8 12:55
能否反过来搞一个查询exe文件已经创建的右键注册表位置,方便删除多余的右键菜单

其实直接在注册表那就可以删的,明白他们在哪个位置就行了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-22 02:18

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表