2017-06-05 67 views
0

我试图让它自己做,但它不起作用,因为我没有足够的经验足够使用.bat来使它工作。如何在循环中每10800秒创建一个按Enter键的.bat(批处理)文件?

所以我需要的只是一个.bat文件,我只需要点击一次,它将“模拟”我在循环中每隔10800秒(3小时)点击一次'输入'键,这样它就不会'不要停止点击'回车'键,回车时间为10800秒,请有人帮助我! :)

+2

“每三个小时”肯定需要一个计划任务... – Stephan

+1

批处理文件不能做这样的事情。也许你对[AutoIt](http://autoitscript.com)或[AutoHotkey](http://autohotkey.com)感兴趣? – aschipfl

+0

哈哈!当然,Windows可以在本地执行此操作......您无需安装其他工具 – varlogtim

回答

1

您可以使用VBScript和WScript的主机做到这一点:

保存此为 “press_enter.vbs”,并从CLI与 “WScript的press_enter.vbs”

Dim WshShell, FSO, secs 

Set WshShell = WScript.CreateObject("WScript.Shell") 
Set FSO = CreateObject("Scripting.FileSystemObject") 

secs = 10800 
kill_file = "C:\Users\Public\Documents\kill_switch.txt" 

Do While true 
    WScript.Sleep(secs * 1000) ' this is in milliseconds, multiple by 1000 
    WshShell.SendKeys "{ENTER}" 
    if FSO.FileExists(kill_file) then exit do 
Loop 

由于运行你可能会猜到,程序会一直运行,直到它检测到文件“C:\ Users \ Public \ Documents \ kill_switch.txt”的存在。

您也可以通过打开任务管理器并杀死“Microsoft Windows基于脚本的主机“,它将被列在”Ba ckground进程“部分...

请记住,如果使用”kill_switch.txt“文件停止应用程序,则需要在再次启动应用程序之前将其删除。也许最好只是用任务管理器杀死它...

+0

另外...你可能想要多看看WshShell。你可以用它做一些非常干净的东西。我用它来自动打开一系列应用程序和输入数据。这对于不提供API的遗留应用程序很有用。 – varlogtim

相关问题