Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 我能';登录时,不要通过任务计划程序运行autoit脚本。既不是蝙蝠,也不是exe。他们自己跑_Batch File_Cmd_Minecraft_Autoit_Taskscheduler - Fatal编程技术网

Batch file 我能';登录时,不要通过任务计划程序运行autoit脚本。既不是蝙蝠,也不是exe。他们自己跑

Batch file 我能';登录时,不要通过任务计划程序运行autoit脚本。既不是蝙蝠,也不是exe。他们自己跑,batch-file,cmd,minecraft,autoit,taskscheduler,Batch File,Cmd,Minecraft,Autoit,Taskscheduler,我正在尝试创建一个在凌晨1:00运行的任务,该任务运行一个autoit脚本,停止我的minecraft服务器。当我点击运行任务调度器时,它什么也不做(但我注意到任务栏上的cmd以黄色高亮显示) 我已经试着把它编译成exe,还试着做一个bat(bat只是说“cd[位置]”,下面是au3。我还试着让bat运行exe) 任务调度器可以处理其他任务和bat(我有一个bat在登录后启动服务器),但由于某些原因,它无法运行au3或exe 这是密码 If WinExists("C:\Windows\s

我正在尝试创建一个在凌晨1:00运行的任务,该任务运行一个autoit脚本,停止我的minecraft服务器。当我点击运行任务调度器时,它什么也不做(但我注意到任务栏上的cmd以黄色高亮显示)

我已经试着把它编译成exe,还试着做一个bat(bat只是说“cd[位置]”,下面是au3。我还试着让bat运行exe)

任务调度器可以处理其他任务和bat(我有一个bat在登录后启动服务器),但由于某些原因,它无法运行au3或exe

这是密码

    If WinExists("C:\Windows\system32\cmd.exe") Then
WinActivate("C:\Windows\system32\cmd.exe")
Send("sr save")
Send("Say El servidor se cerrara en 10 minutos. Ultimo backup")
Sleep(1000000)
Send("say El servidor cerrara en 1 minuto, ultimo guardado pronto")
Send("{Enter}")
Sleep(30000)
Send("say El servidor cerra en 30 segundos")
Sleep(20000)
Send("say El servidor cierra en 10 segundos.")
Sleep(10000)
Send("stop")
Send("{Enter}")
Sleep(10000)
Send("A")
EndIf
编辑:我的错

任务计划程序设置为打开autoit脚本(或我尝试过的批处理或exe)(C:/Users/Username/Downloads/Server/Shutdown Server.au3(或批处理或exe)),单击“运行”按钮将不起作用,因此我设置的时间与此无关(凌晨1:00)。我尝试以最高权限运行任务计划程序,并使任务计划程序在windows 10模式下运行

我可能会尝试降低服务器的ram量,看看这是否是ram过载的问题。但我对此表示怀疑。如果我在服务器打开时使用microsoft edge,计算机甚至可以平稳运行(java参数设置为服务器从我的计算机中获取3GB。我的计算机是4GB。我注意到,由于它只是三个朋友之间的一个小型创意服务器,所以大多数情况下所需的时间都不到2GB)。注意:这是一台计算机,除了我的minecraft服务器之外,我什么都不用


编辑2:编辑,这不是我的代码。我从reddit上的某个提供给人们使用它的人那里得到的。但我确实理解它(虽然我对编码知之甚少)

首先,如何正确创建任务:

任务计划程序->创建任务->

名称:AutoitServer

配置:<您的操作系统>

然后设置应该触发它的内容(在您的案例时间凌晨1:00)

单击触发器->新建触发器

按时开始任务

选择:每日->开始2019年7月31日01:00:00 AM

最后,该任务应该做什么(您必须将au3脚本编译为EXE)

单击操作->新建

行动:启动一个程序

程序/脚本:COMPILEDautoit>
示例:C:\Users\Bob\Desktop\myAutoitServer.exe

…并最终创建

我还对您的代码进行了一些更改:

$cmdPath= "C:\Windows\system32\cmd.exe"

if(Not WinExists($cmdPath)) Then
   Run($cmdPath)
Else
      WinActivate($cmdPath)
EndIf

WinWaitActive("[CLASS:ConsoleWindowClass]", "", 20)
If Not @error Then
   Send("sr save")
   Send("Say El servidor se cerrara en 10 minutos. Ultimo backup")
   Sleep(1000000)
   Send("say El servidor cerrara en 1 minuto, ultimo guardado pronto")
   Send("{Enter}")
   Sleep(30000)
   Send("say El servidor cerra en 30 segundos")
   Sleep(20000)
   Send("say El servidor cierra en 10 segundos.")
   Sleep(10000)
   Send("stop")
   Send("{Enter}")
   Sleep(10000)
   Send("A")
EndIf
PS:为什么那个脚本没有像.au3那样工作?!我认为即使安装了autoit,任务调度器也无法识别这种类型的脚本,因此最好将au3编译为exe并使用该exe