在Win 7中,这是程序:
# TestArg.pl
print "\nin TestArg.pl, \$ARGV[0]=$ARGV[0], \$ARGV[1]=$ARGV[1], \$ARGV[2]=$ARGV[2]";
当我在命令行运行TestArg.pl 1 2 3
时
我得到:在TestArg.pl中,$ARGV[0]= 1 2 3, $ARGV[1]=, $ARGV[2]=
而不是分发它们。
在注册表中:
HKEY_USERS\...\Software\Classes\pl_auto_file\shell\open\command is:
Default REG_SZ "C:\Perl\bin\perl.exe" "%1" "%*"
我尝试将REG_SZ
更改为REG_MULTI_SZ
,但它不会让我,尽管我是管理员。
如果我可以编辑它,那会解决问题吗?
如果是这样,我如何获得访问权限?
如果它没有帮助,那会是什么?
答案 0 :(得分:1)
假设是%*
,而不是"%*"
答案 1 :(得分:0)
我在上面的评论中留下的答案离显示的线程太远,所以我会在这里重复一遍,可以看到。
正如Kenosis所说,这个问题在4年前问题1695188得到解答。
在Applications \ perl.exe \ shell \ open \ command注册表字段的末尾需要%*。
我有%*,但仅限于pl_auto_file \ shell \ open \ command字段。
有趣的是,无论是谁设置该领域至少4年都做错了!