中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-10 17:39
47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行
DOS批处理 & 脚本技术(批处理室) » [已结]reg add 遇到的问题:双引号转义
可打印版本  2,345 / 15
第1楼 sany217 发表于 2008-11-18 23:17
新手上路 发帖 9 积分 11 来自 湖北武汉
[已结]reg add 遇到的问题:双引号转义
请教高手

比如要在HKEY_CLASSES_ROOT\batfile\shell\runas\command 键下添加一个值

名称:默认
类型:REG_SZ
数据:"%1" %*
就是那个数据,带引号的变量,中间还有空格,最后一个是通配符

效果见图片


[ Last edited by HAT on 2008-11-19 at 12:33 ]
第2楼 HAT 发表于 2008-11-18 23:40
版主 发帖 5,017 积分 9,023
你的代码是什么?遇到的问题是什么?
第3楼 sany217 发表于 2008-11-18 23:43
新手上路 发帖 9 积分 11 来自 湖北武汉
我是这么写的,可是不行
reg add HKEY_CLASSES_ROOT\batfile\shell\runas\command /ve /d ^"%%1^" %%* /f
第4楼 HAT 发表于 2008-11-18 23:45
版主 发帖 5,017 积分 9,023
“不行”的具体表现是什么?
你是在命令行解释器中运行的?还是在批处理中运行的?
第5楼 sany217 发表于 2008-11-18 23:51
新手上路 发帖 9 积分 11 来自 湖北武汉
我是用的批处理,我在后面加了个pause参数
看到的结果是
"错误:命令行参数太多“
第6楼 HAT 发表于 2008-11-19 00:04
版主 发帖 5,017 积分 9,023
下次提问,建议把问题描述(如3 、5楼)在顶楼发帖时就一次性讲清楚。而不是别人问一句,自己再答一句。
第7楼 sany217 发表于 2008-11-19 00:12
新手上路 发帖 9 积分 11 来自 湖北武汉
Originally posted by HAT at 2008-11-19 12:04 AM:
下次提问,建议把问题描述(如3 、5楼)在顶楼发帖时就一次性讲清楚。而不是别人问一句,自己再答一句。
第8楼 HAT 发表于 2008-11-19 00:26
版主 发帖 5,017 积分 9,023
@echo off
reg add HKEY_CLASSES_ROOT\batfile\shell\runas\command /ve /d """"%%1""" %%*" /f
这样清楚了没?

[ Last edited by HAT on 2008-11-19 at 00:28 ]
第9楼 sany217 发表于 2008-11-19 00:36
新手上路 发帖 9 积分 11 来自 湖北武汉
Originally posted by HAT at 2008-11-19 12:26 AM:
这样清楚了没?

[ Last edited by HAT on 2008-11-19 at 00:28 ]


这个我看得懂,就是想问一下,那对蓝色引号和其外的一对红引号的意思或者说是作用吧!
我只知道可用一对引号是定界符,可是那么两对是....?
第10楼 yishanju 发表于 2008-11-19 00:36
银牌会员 发帖 1,357 积分 1,488
光给代码是没用的
没有相关文字说明-_-等于专门义务给人写代码的
第11楼 HAT 发表于 2008-11-19 10:05
版主 发帖 5,017 积分 9,023
Re 10楼
讲解的重任就交给你了
来吧大侠
第12楼 Saber 发表于 2008-11-19 10:21
初级用户 发帖 14 积分 26
这样写应该更清楚了吧。

[ Last edited by Saber on 2008-11-19 at 10:24 ]
第13楼 HAT 发表于 2008-11-19 10:27
版主 发帖 5,017 积分 9,023
Re 12楼
批处理中的转义方法和命令行中的转义方法是不一样的,你试试就知道了,呵呵。
第14楼 sany217 发表于 2008-11-19 12:30
新手上路 发帖 9 积分 11 来自 湖北武汉
好像是了解了,
先谢谢大家了。

这批处理中的符号还真是博大精深啊。
学了这么长时间批处理,还是没完全搞明白这些,
像^、%、之类的东西已经是够呛了
现在怎么又跑出来这些引号和斜杠了啊?
有没有高手给个这方面的教程啊?
第15楼 tireless 发表于 2008-11-19 13:20
银牌会员 发帖 1,122 积分 2,025
@echo off
reg add HKEY_CLASSES_ROOT\batfile\shell\runas\command /ve /d """"%%1""" %%*" /f

最外面的黑色双引号,是必须的,因为字符串包含空格;
用两个双引号(红色)括起一个双引号(蓝色),来表示一个双引号。
——————————————————————————————————————
更新:

可以用 \ 来转义



[ Last edited by tireless on 2009-5-28 at 08:50 ]
1 2  下一页
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023