WScript SendKeys转义特殊字符

问题描述 投票:2回答:1

我想制作一个蝙蝠文件来提示用户一个默认值。很好,我找到了一种CScript方式。

但是我对像pharanteses这样的特殊字符有问题。

bat文件是

set "mysql_password="
title MyUniqueTitle
CScript //E:JScript //Nologo "%cscripts_path%\sendkeys.js" "MyUniqueTitle" "&GS)u**,o7,r"
set /p "mysql_password=> Enter new MySQL Password: "

和sendkeys.js

try
{
    var WshShell = WScript.CreateObject('WScript.Shell');
    var Title = WScript.Arguments.Item(0);
    var Message = WScript.Arguments.Item(1);
    WshShell.AppActivate(Title);
    WshShell.SendKeys(Message)
    WScript.Quit(0);
}
catch(e)
{
    WScript.Echo(e);
    WScript.Quit(1);
}
WScript.Quit(2);

问题出在WshShell.SendKeys(Message)上,在这里我应该使用转义功能,将bracets放在特殊字符上。

有人知道从SendKeys逃逸消息代码的方法吗?

谢谢!

我想制作一个蝙蝠文件来提示用户一个默认值。很好,我找到了一种CScript方式。但是我有像pharanteses这样的特殊字符的问题。bat文件设置为“ mysql_password =” ...

batch-file vbscript wsh
1个回答
1
投票

只需在批处理文件中先使用字符串替换来转义特殊字符。

© www.soinside.com 2019 - 2024. All rights reserved.