中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-07-31 21:27
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 批处理如何添加右键菜单? 查看 8,833 回复 33
16 发表于 2006-09-30 06:33 ·  中国 上海 松江区 电信
铂金会员
★★★★
DOS一根葱
积分 5,493
发帖 2,315
注册 2006-05-01 10:41
20年会员
UID 54766
性别 男
来自 上海
状态 离线
这个貌似WIndows版块讨论的问题了
第一高手 第二高手

17 发表于 2006-09-30 07:06 ·  中国 上海 松江区 电信
铂金会员
★★★★
DOS一根葱
积分 5,493
发帖 2,315
注册 2006-05-01 10:41
20年会员
UID 54766
性别 男
来自 上海
状态 离线
再来个比较有用的

REGEDIT4


@="用 CHKDSK 磁盘检查(&K)"

@="cmd.exe /k color 0b&CHKDSK.exe&color 0e&echo.&echo 检查完毕,任意键退出...&pause>nul&exit"



[ Last edited by fastslz on 2006-9-30 at 07:14 ]
第一高手 第二高手

18 发表于 2006-09-30 11:59 ·  中国 上海 松江区 电信
铂金会员
★★★★
DOS一根葱
积分 5,493
发帖 2,315
注册 2006-05-01 10:41
20年会员
UID 54766
性别 男
来自 上海
状态 离线
Originally posted by pengfei at 2006-9-29 07:29:
鼠标右键菜单项加入后, 第一个字符会出现下划线, 版主有什么办法去掉吗?


哦之前还讨论菜单美观的问题,看下面的


REGEDIT4


@="命令提示符"

@="cmd.exe /k \"cd %L\""

@="命令提示符"

@="cmd.exe /k \"cd %L\""



说明:
(&A) 添加快捷键
Directory 是目录文件夹右菜单
Drive 磁盘设备右菜单
* 所有类型
SOFTWARE\Classes\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}我的电脑
cmd]红色cmd取值是随便的123也行,command值是必须的



REGEDIT4


@="服务(&F)..."

"SuppressionPolicy"=dword:4000003c

@=hex(2):25,00,77,00,69,00,6e,00,64,00,69,00,72,00,25,00,5c,00,73,00,79,00,73, 00,74,00,65,00,6d,00,33,00,32,00,5c,00,6d,00,6d,00,63,00,2e,00,65,00,78,00, 65,00,20,00,2f,00,73,00,20,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52, 00,6f,00,6f,00,74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00, 32,00,5c,00,73,00,65,00,72,00,76,00,69,00,63,00,65,00,73,00,2e,00,6d,00,73, 00,63,00,20,00,2f,00,73,00,00,00


@="管理(&G)..."
"SuppressionPolicy"=dword:4000003c


@=hex(2):25,00,77,00,69,00,6e,00,64,00,69,00,72,00,25,00,5c,00,73,00,79,00,73,\
00,74,00,65,00,6d,00,33,00,32,00,5c,00,6d,00,6d,00,63,00,2e,00,65,00,78,00,\
65,00,20,00,2f,00,73,00,20,00,25,00,77,00,69,00,6e,00,64,00,69,00,72,00,25,\
00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,63,00,6f,00,\
6d,00,70,00,6d,00,67,00,6d,00,74,00,2e,00,6d,00,73,00,63,00,00,00


@="控制(&C)..."

@="rundll32.exe shell32.dll,Control_RunDLL"


@="设备(&W)..."

@="mmc.exe %%SYSTEMDRIVE%%\\WINDOWS\\SYSTEM32\\devmgmt.msc"


@="策略(&Z)..."

@="mmc.exe %%SYSTEMDRIVE%%\\WINDOWS\\SYSTEM32\\gpedit.msc"



[ Last edited by fastslz on 2006-9-30 at 12:04 ]
第一高手 第二高手

19 发表于 2006-09-30 12:56 ·  中国 湖北 荆门 电信
荣誉版主
★★★
积分 2,013
发帖 718
注册 2006-02-18 07:07
20年会员
UID 50550
状态 离线

Windows Registry Editor Version 5.00




@="{7BA4C740-9E81-11CF-99D3-00AA004AE837}"


@="{C2FBB630-2971-11D1-A18C-00C04FD75D13}"


@="{C2FBB631-2971-11D1-A18C-00C04FD75D13}"


实用至上。
文件夹上右键试试。
20 发表于 2006-09-30 21:16 ·  中国 湖北 武汉 电信
中级用户
★★
积分 245
发帖 103
注册 2006-06-30 00:00
20年会员
UID 57801
性别 男
状态 离线
各位大大和版主真是让人望尘莫及啊……偶对阁下的佩服犹如滔滔江水连绵不绝!……
再请教一个问题,如何用批处理实现在资源管理器中的鼠标右键菜单中添加“反向选择”和“全部选定”两项?要求对文件和文件夹一样可用,这个可是相当实用的哟……

[ Last edited by flying008 on 2006-9-30 at 21:39 ]
21 发表于 2006-09-30 21:19 ·  中国 上海 松江区 电信
铂金会员
★★★★
DOS一根葱
积分 5,493
发帖 2,315
注册 2006-05-01 10:41
20年会员
UID 54766
性别 男
来自 上海
状态 离线
Originally posted by 3742668 at 2006-9-30 12:56:

Windows Registry Editor Version 5.00




...


3742668版主这个其实是网络上的误传,添加了复制移动到文件夹固然方便,但是喜欢听歌的朋友麻烦来了,当右键选中10首.mp3添加到播放列表会连续20次提问是否移动还是复制,选中100首的话麻烦大了,就我的电脑里安装的播放器来说,添加到千千静听,MPC播放器列表都一样,RealPlayer俄而也会出现。
第一高手 第二高手

22 发表于 2006-09-30 21:44 ·  中国 湖北 武汉 电信
中级用户
★★
积分 245
发帖 103
注册 2006-06-30 00:00
20年会员
UID 57801
性别 男
状态 离线
如何用批处理实现在资源管理器中的鼠标右键菜单中添加“反向选择”和“全部选定”两项?要求对文件和文件夹一样可用,这个可是相当实用的哟……
23 发表于 2006-10-01 03:59 ·  中国 四川 南充 电信
超级版主
★★★★
我爱DOS
积分 5,310
发帖 2,044
注册 2005-09-26 12:00
20年会员
UID 42843
性别 男
来自 四川南充
状态 离线
Originally posted by pengfei at 2006-9-29 07:29:
鼠标右键菜单项加入后, 第一个字符会出现下划线, 版主有什么办法去掉吗?

可以的!下面的第一个字符就没有下划线!
Windows Registry Editor Version 5.00


@="用cmd打开"


@="c:\\windows\\system32\\cmd.exe %1"


[ Last edited by qwe1234567 on 2006-10-3 at 00:40 ]
24 发表于 2006-10-01 04:03 ·  中国 湖南 娄底 新化县 电信
银牌会员
★★★
积分 1,218
发帖 485
注册 2006-07-21 21:24
20年会员
UID 58987
来自 湖南.娄底
状态 离线
Originally posted by qwe1234567 at 2006-10-1 03:59:

可以的!下面的第一个字符就没有下划线!


还是有下划线.
25 发表于 2006-10-01 04:20 ·  中国 四川 南充 电信
超级版主
★★★★
我爱DOS
积分 5,310
发帖 2,044
注册 2005-09-26 12:00
20年会员
UID 42843
性别 男
来自 四川南充
状态 离线
哦是忘了打个]再看!
Windows Registry Editor Version 5.00


@="用cmd打开"


@="c:\windows\system32\cmd.exe %1"
26 发表于 2006-10-01 05:57 ·  中国 湖南 娄底 新化县 电信
银牌会员
★★★
积分 1,218
发帖 485
注册 2006-07-21 21:24
20年会员
UID 58987
来自 湖南.娄底
状态 离线
怎么就行了, 和3楼的代码差不多, 只是加个句@="在cmd打开"

[ Last edited by pengfei on 2006-10-1 at 06:00 ]
27 发表于 2006-10-01 09:02 ·  中国 四川 南充 电信
超级版主
★★★★
我爱DOS
积分 5,310
发帖 2,044
注册 2005-09-26 12:00
20年会员
UID 42843
性别 男
来自 四川南充
状态 离线
28 发表于 2006-10-01 09:40 ·  中国 上海 松江区 电信
铂金会员
★★★★
DOS一根葱
积分 5,493
发帖 2,315
注册 2006-05-01 10:41
20年会员
UID 54766
性别 男
来自 上海
状态 离线
寒...18楼我已经说的非常详细了怎样去掉那个。
qwe1234567版主的代码只关联到文件,部分扩展名CMD是无法打开的,18楼的代码
只关联到文件夹和驱动器,cmd.exe /k \"cd %L\也就是命令提示符从这里开始,\"cd %L\"代码在CMD里是错误的,可在注册表里就是代表当前文件夹。

TO flying008
Originally posted by flying008 at 2006-9-30 21:16:
各位大大和版主真是让人望尘莫及啊……偶对阁下的佩服犹如滔滔江水连绵不绝!……
再请教一个问题,如何用批处理实现在资源管理器中的鼠标右键菜单中添加“反向选择”和“全部选定”两项?要求对文件和文件夹一样可用,这个可是相当实用的哟


鼠标右键菜单中添加“反向选择”和“全部选定”两项,只靠修改注册表实现不了,就是借助其它软件恐怕很难做到。
第一高手 第二高手

29 发表于 2006-10-01 11:59 ·  中国 湖北 荆门 电信
荣誉版主
★★★
积分 2,013
发帖 718
注册 2006-02-18 07:07
20年会员
UID 50550
状态 离线
3742668版主这个其实是网络上的误传,添加了复制移动到文件夹固然方便,但是喜欢听歌的朋友麻烦来了....

这就是个见仁见智的问题了,或许有些人不喜欢在右键中使用“复制到,移动到”功能,又或者有人习惯从播放器中添加曲目而不喜欢在右键中加入太多的东东。不过这些都不重要,重要的是多种方案在此,各取所需吧。
如何用批处理实现在资源管理器中的鼠标右键菜单中添加“反向选择”和“全部选定”两项?要求对文件和文件夹一样可用,这个可是相当实用的哟……

关于这两个功能,虽然暂时无法纯粹地通过修改注册表来实现,但是注册表+脚本,相信还是能够实现。(个人觉得还是用ctrl+A比较爽)
Part 全选:

1.保存下面的脚本为 *.reg,导入。

Windows Registry Editor Version 5.00


@="全选(&z)"


@="wscript.exe d:\\全选.vbs"


2.保持下面的代码为 d:\脚本.vbs

CreateObject("WScript.shell").SendKeys "^a"

time关系,没有把两个脚本用一个批处理来完成,自己搞定吧。



part 反选:

1.注册表部分:

Windows Registry Editor Version 5.00


@="反选(&x)"


@="wscript.exe d:\\反选.vbs"



2.vbs部分:

With CreateObject("WScript.shell")
.SendKeys "%e"
Wscript.Sleep 500
.SendKeys "i"
End With



ps:虽然基本上实现了“全选”与“反选”的功能,但是在“反选”部分,仍然存在不少意外,所以建议慎用。
30 发表于 2006-10-01 13:13 ·  中国 上海 松江区 电信
铂金会员
★★★★
DOS一根葱
积分 5,493
发帖 2,315
注册 2006-05-01 10:41
20年会员
UID 54766
性别 男
来自 上海
状态 离线
3742668版主的2个vbs学到了^_^

SendKeys "^a" Cttrl+A
SendKeys "%e"
Wscript.Sleep 500
SendKeys "i" Ait+E 延时500微秒 + I
第一高手 第二高手

论坛跳转: