使用批处理命令发送键盘输入

时间:2017-02-12 14:11:19

标签: batch-file cmd colors echo enter

我们希望我们的.bat文件每秒发送一次“Enter”键。可能吗?如果是这样,我们该怎么做呢?

%SendKeys% {ENTER}会工作吗?

我们的代码目前:

@echo off
cls
color 0a
:loop
%SendKeys% {ENTER}
timeout /t 1 /nobreak >nul
goto :loop

2 个答案:

答案 0 :(得分:3)

如果不使用第三方实用程序或VBScript,则无法在批处理文件中发送密钥。这是一个混合VBScript批处理文件,每隔1秒发送 Enter 键。

@if (@CodeSection == @Batch) @then

@echo off
    set SendKeys=CScript //nologo //E:JScript "%~F0"
    cls
    color 0a
    :loop
        %SendKeys% "{ENTER}"
        timeout /t 1 /nobreak >nul
    goto :loop

@end

var WshShell = WScript.CreateObject("WScript.Shell");
WshShell.SendKeys(WScript.Arguments(0));

注意:要更改输入的密钥,只需更改{enter}值。

答案 1 :(得分:1)

首先从这里下载nircmd:http://nircmd.nirsoft.net/
在nircmd所在的同一目录中创建一个批处理文件,然后键入:

@echo off
:loop
nircmd sendkeypress enter
timeout /t 1 /nobreak >nul
goto :loop