批处理脚本中的 SendKeys
作者:迹忆客
最近更新:2024/03/15
浏览次数:
这是一个有趣的话题。在本文中,我们将从批处理脚本生成按键。
为此,我们不需要按键盘上的键。我们的脚本将以编程方式自动生成按键。
我们还将看到一个带有解释的示例,以使该主题易于理解。
批处理脚本中的 SendKeys
下面的示例将打开一个浏览器窗口并按 Tab 键在输入字段上移动。我们示例的代码如下所示。
@if (@CodeSection == @Batch) @then
@echo off
SET SendKeys=CScript //nologo //E:JScript "%~F0"
START chrome -new-window --incognito "https://google.com/"
TIMEOUT /t 3
%SendKeys% "%USERNAME%"
%SendKeys% "{TAB}"
GOTO :EOF
@end
// JScript section
var WshShell = WScript.CreateObject("WScript.Shell");
WshShell.SendKeys(WScript.Arguments(0));0
在上面的例子中,通过 SET SendKeys=CScript //nologo //E:JScript "%~F0"
这一行,我们使用%SendKeys%
将键发送到键盘缓冲区。此脚本将打开一个浏览器窗口。
通过 TIMEOUT /t 3
这一行,我们设置了一个计时器来等待网络加载。我们使用 Tab 键在不同的字段上移动。
因此,我们将按下 Tab 键来移动批处理脚本中的字段。记住,这个例子是 JScript 的组合。
JScript 是 Microsoft 的 Internet Explorer 中使用的旧版 ECMAScript 方言。
一些重要的键
键 | 代码 |
---|---|
BACKSPACE | {BACKSPACE} , {BS} , or {BKSP} |
BREAK | {BREAK} |
CAPS LOCK | {CAPSLOCK} |
DEL or DELETE | {DELETE} or {DEL} |
DOWN ARROW |
{DOWN} |
END | {END} |
ENTER | {ENTER} or ~ |
ESC | {ESC} |
HELP | {HELP} |
HOME | {HOME} |
INS or INSERT | {INSERT} or {INS} |
LEFT ARROW |
{LEFT} |
NUM LOCK | {NUMLOCK} |
PAGE DOWN | {PGDN} |
PAGE UP | {PGUP} |
PRINT SCREEN | {PRTSC} |
RIGHT ARROW |
{RIGHT} |
SCROLL LOCK | {SCROLLLOCK} |
TAB | {TAB} |
UP ARROW |
{UP} |
F1 | {F1} |
F2 | {F2} |
F3 | {F3} |
F4 | {F4} |
F5 | {F5} |
F6 | {F6} |
F7 | {F7} |
F8 | {F8} |
F9 | {F9} |
F10 | {F10} |
F11 | {F11} |
F12 | {F12} |
F13 | {F13} |
F14 | {F14} |
F15 | {F15} |
F16 | {F16} |