找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 30379|回复: 7

[注册表类] reg add无法正常添加注册表项是什么原因?

[复制链接]
发表于 2016-4-3 12:13:24 | 显示全部楼层 |阅读模式
我在网上找了清理桌面右键菜单的批处理。命令如下
  1. echo 清理桌面右键菜单
  2. reg delete HKEY_CLASSES_ROOT\Directory\Background\shellex\ContextMenuHandlers /f
  3. reg add "HKCR\Directory\Background\shellex\ContextMenuHandlers\New" /ve /t REG_SZ /d "{D969A300-E7FF-11d0-A93B-00A0C90F2719}" /f
复制代码
做成批处理执行的时候发现reg add这条命令(添加新建项)无法正常执行。会出现如下图卡死的情况,检查注册表也没有成功执行,注册表中显示还是空值。

我问过度娘了,发现命令应该是没问题的,而且我也测试了一下,进行CMD手动执行这两条命令的时候能够成功执行。如下图:

找了好多资料了,实在不明白是什么原因造成的,求高手解答一下,不胜感激。

评分

参与人数 1PB -2 收起 理由
pcl_test -2 未按版规发帖

查看全部评分

发表于 2016-4-3 12:23:14 | 显示全部楼层
权限
 楼主| 发表于 2016-4-3 12:29:31 | 显示全部楼层
感谢你的指导,版主的解答简明扼要,但我新手一个,还不太明白,还希望你能再详细指点一下。
是在注册表中手动去添加这个权限吗?还是我运行批处理的时候用“管理员的身份运行”?这两种办法我都试过了,不行。
发表于 2016-4-3 12:44:34 | 显示全部楼层
这样呢
  1. Windows Registry Editor Version 5.00
  2. ;cls&@echo off
  3. ;regedit /s "%~f0"
  4. ;echo;导入完成&ping -n 3 0 >nul&exit/b
  5. [HKEY_CLASSES_ROOT\Directory\Background\shellex\ContextMenuHandlers\New]
  6. @="{D969A300-E7FF-11d0-A93B-00A0C90F2719}"
复制代码

评分

参与人数 1技术 +1 收起 理由
codegay + 1 1

查看全部评分

 楼主| 发表于 2016-4-3 12:54:06 | 显示全部楼层
谢谢你,你给了一个注册表文件,这种方案我有考虑过,之前已封装到系统中。
但我现在就是不知道用批处理怎么把这个东西写进注册表,才来这里找高手学习的。
刚经过你的指点,我一直在找权限的问题,我也发现了,手动CMD的时候,前面有“管理员”的标识。正在度娘,还没有找到答案。
发表于 2016-4-3 12:58:49 | 显示全部楼层
回复 5# 睡在路边

4楼的就是批处理代码
 楼主| 发表于 2016-4-3 13:08:35 | 显示全部楼层
谢谢,我刚试了一下,可以。
发表于 2016-4-4 09:15:28 | 显示全部楼层
/t REG_SZ  参数是多余的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 09:16 , Processed in 0.011910 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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