Wpis z mikrobloga

Cześć, napisałem w AutoHotKey skrypt który ma odpalić jeden plik wsadowy po zmaksymalizowaniu okna z nazwą "Battlefield 4" i włączyć inny po jego zminimalizowaniu. Problem jaki napotkałem polega na tym że pętla odpala pliki cały czas (jeśli okno jest zminimalizowane to cały czas włącza się drugi plik wsadowy, non-stop). Nie wiem dlaczego tak się dzieje, IF'a decydującego o odpaleniu pliku napisałem tak żeby włączał się tylko przy zmianie stanu.

Załączam kod, jest prosty, starałem się go dokładnie opisać: http://pastebin.com/vxN4YtvZ

MyVar = 0
Loop{
WinGet, Is , PID, Battlefield 4 //pobiera ID procesu okna o nazwie Battlefield 4
if(Is>0)
WinGet, IsMax , MinMax, Battlefield 4 //jeżeli jest takie ID to sprawdza czy okno jest zmaksymalizowane i zapisuje '-1' lub '1' do IsMax

If(IsMax != MyVar) //jeżeli IsMax i MyVar są różne
{
MyVar = IsMax //to przyrównuje MyVar do IsMax, żeby loop się powtarzał tylko przy zmianie stanu

If (IsMax = 1) //jeśli jest zmaksymalizowane to odpalamy skrypt zawieszający niektóre procesy
run C:\Users\remek4x4\Desktop\Suspend.bat

If (IsMax = -1) //...a jak już nie jest to włączamy je z powrotem.
run C:\Users\remek4x4\Desktop\Resume.bat
}
Sleep 50
}

halp.
#programowanie #autohotkey
  • 1