ArrayCount = 0
Loop, Read, Times.txt ; This loop retrieves each line from the file.
{
ArrayCount += 1 ; Keep track of how many items are in the array.
ArrayTime%ArrayCount% := A_LoopReadLine
}
WinGetTitle, Title, A
Loop %ArrayCount%
{
element := ArrayTime%A_Index%
Time = %A_WDay%%A_Hour%%A_Min%
msgbox %Time% , %element%
if (Time=%element%)
{
IfWinExist, Test.txt
{
WinActivate
Sleep 500
Send Hi{enter}
msgbox %Time% , %element%
Sleep 500
WinActivate, %Title%
}
}
}
好的,所以主要问题是这部分:
如果(时间=%element%)
我也试过
if (%Time%=%element%)
if (A_WDay . A_Hour . A_Min=%element%)
而且我认为其他一些类似的变化,我得到的问题是它要么总是正确的,要么总是错误的,这取决于我是如何写的。文本文件内部是这样的列表:
10000
10700
11400
20400
21100
我添加了一个包含当前测试时间的额外行,并添加了 msgbox 进行比较,我可以清楚地看到它们在它不起作用时是相同的,或者在它起作用时它们是不同的。对于这样一个基本问题,我感到很抱歉,但我觉得我已经尝试了很长时间,并阅读了关于变量和 IF 语句的所有内容,感谢您的帮助。
还有一点是我需要它从周日午夜开始每 7 小时关闭一次,这就是我想出的,如果总体上可能有更好的方法,我也会很高兴听到这个消息。