Тема: AHK: почему скрипт закрывается не закончив работу
Неожиданно на WinXP скрипт начал закрываться не закончив работу.
Программа вызывает MouseRobot и передает ему данные. Есть еще окно которое стремится занять передний план, именно поэтому столько активаций переднего окна.
Скрипт закрывается на
SendInput C:\Documents and Settings\Admin\Desktop\Mouse robot\1.Ytro\1-9 (Ytro).xtsk{Enter}
Причем не дописав строку, просто прерывается и из трея значок исчезает. Ни разу с таким не сталкивался.
Может есть блокировка закрытия программы?
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn ; Enable warnings to assist with detecting common errors.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
DetectHiddenText, on
IfWinNotExist, MouseRobot
{
Run "C:\Documents and Settings\All Users\Application Data\AutomationBox\MouseRobot2\Application\MouseRobot.exe"
Sleep, 3000
WinSet, AlwaysOnTop, on, MouseRobot
Sleep, 3000
WinActivate, MouseRobot
Sleep, 3000
WinWaitActive, MouseRobot, , 9
if ErrorLevel
{
MsgBox, Истёк срок ожидания (Запуск MouseRobot).
return
}
WinSet, AlwaysOnTop, off, MouseRobot
SendInput ^o
}
;WinSet, AlwaysOnTop, on, Open
;Sleep, 3000
WinActivate, Open
Sleep, 3000
FormatTime, TimeCurrent,, yyyyMMddHHmmss
FormatTime, TimeObed,, yyyyMMdd130000
FormatTime, TimeSegodnia,, yyyyMMdd060000
FormatTime, TimeString, R
If ( TimeCurrent < TimeObed )
{
WinWaitActive, Open, , 9
if ErrorLevel
{
MsgBox, Истёк срок ожидания (Запуск Open ytro).
return
}
SendInput C:\Documents and Settings\Admin\Desktop\Mouse robot\1.Ytro\1-9 (Ytro).xtsk{Enter}
}
else
{
WinWaitActive, Open, , 9
if ErrorLevel
{
MsgBox, Истёк срок ожидания (Запуск Open vecher).
return
}
SendInput C:\Documents and Settings\Admin\Desktop\Mouse robot\2.Vecher\1-9 (Vecher).xtsk{Enter}
}
;SendInput {Raw} C:\Documents and Settings\Admin\Desktop\Mouse robot\2.Vecher\1-9 (Vecher).xtsk{Enter}
WinSet, AlwaysOnTop, off, Open
;Sleep, 1000
;SetTitleMatchMode 2 ; заголовок окна должен начинаться со значения, заданным в WinTitle
SetTitleMatchMode 2 ; заголовок окна должен частично содержать со значением, заданным в WinTitle
WinSet, AlwaysOnTop, on, MouseRobot
;Sleep, 2000
WinActivate, MouseRobot
;Sleep, 2000
WinWaitActive, MouseRobot, , 9
if ErrorLevel
{
MsgBox, Истёк срок ожидания (Запуск MouseRobot F5).
return
}
;Sleep, 1000
SendInput {F5}
WinSet, AlwaysOnTop, off, MouseRobot