Batch file 命令提示自动确认消息弹出窗口

Batch file 命令提示自动确认消息弹出窗口,batch-file,cmd,Batch File,Cmd,我正在运行一个批处理文件,该文件运行一个命令行,在命令中间,会弹出一条消息,其中必须按“OK”才能继续处理命令。是否可以添加自动确认此弹出窗口的内容?检查此项。它接受两个参数-发送键的窗口标题和带有“按下”键的字符串(microsoft引用)。下面是如何使用它关闭是/否和确定弹出窗口的示例: C:\>start "" /min powershell [Reflection.Assembly]::LoadWithPartialName("""System.Windows.Forms""");

我正在运行一个批处理文件,该文件运行一个命令行,在命令中间,会弹出一条消息,其中必须按“OK”才能继续处理命令。是否可以添加自动确认此弹出窗口的内容?

检查此项。它接受两个参数-发送键的窗口标题和带有“按下”键的字符串(microsoft引用)。下面是如何使用它关闭
是/否
确定
弹出窗口的示例:

C:\>start "" /min powershell [Reflection.Assembly]::LoadWithPartialName("""System.Windows.Forms""");[Windows.Forms.MessageBox]::show("""HelloWorld""", """My PopUp Message Box""",4)
C:\>call sendkeys.bat "My PopUp Message" "Y"

编辑。未测试:

@echo off

:repeat
w32tm /stripchart /computer:localhost /period:1 /dataonly /samples:10  >nul 2>&1
call sendkeys.bat "Some Title" "Y" || (
    goto :repeat
)&&(
    goto :end
)
:end

这将尝试每10秒发送一次按键。

调用的具体命令是什么?按Enter键是否按OK按钮?使用
echo.
(无空格)相当于出于某些目的按Enter键。尝试
echo.|myfile.bat
从另一个bat文件调用myfile.bat?也许吧,但请先在命令行中键入该文件,看看它是否有效!如果弹出窗口出现时具有焦点,则可以使用VBScript或JScript或PowerShell命令使用
Wscript.Shell
COM对象的
SendKeys()
方法。我认为
powershell”(新对象-COM Wscript.Shell).SendKeys(“~”)“
会向活动窗口发送一个回车键,不管发生什么情况。如果这不起作用,您可以在那里的某个地方粘贴一个
AppActivate('titlebar text')
。只是出于好奇,您正在运行的命令是
psexec
?如果是这样,您可以添加一个注册表项,以编程方式接受EULA并绕过点击OK的需要。很好,但是如何设置批处理文件以捕获弹出窗口呢?弹出窗口在处理过程中显示。我应该为sendkeys设置一个计时器吗?@EM90210-检查我的编辑。它将尝试每10秒发送一次密钥,并在成功后停止。我想您可以调整此设置以更好地应用于您的需要。
@echo off

:repeat
w32tm /stripchart /computer:localhost /period:1 /dataonly /samples:10  >nul 2>&1
call sendkeys.bat "Some Title" "Y" || (
    goto :repeat
)&&(
    goto :end
)
:end