Erstellt eine Prüfsumme für einen Bereich von Pixeln.
PixelChecksum ( left, top, right, bottom [, step = 1 [, hwnd [, mode = 0]]] )
left | linke Koordinate des Rechtecks. |
top | obere Koordinate des Rechtecks. |
right | rechte Koordinate des Rechtecks. |
bottom | untere Koordinate des Rechtecks. |
step | [optional] Anstatt jedes Pixel in die Prüfsumme einzubeziehen, kann man einen Wert größer als 1 verwenden, um Pixel zu überspringen (schneller), z.B. wird ein Wert von 2 nur jedes zweite Pixel prüfen. Standard ist 1. Es wird nicht empfohlen, eine Schrittweite größer als 1 anzuwenden. |
hwnd | [optional] Handle des zu durchsuchenden Fensters. Standard ist der Desktop. Siehe Bemerkungen. |
mode | [optional] Standard 0 ADLER Prüfsumme, 1 CRC32 Prüfsumme. |
Erfolg: | die Prüfsumme des Bereichs. |
Fehler: | 0. |
Eine Prüfsumme erlaubt nur festzustellen, dass sich "etwas" in einem Bereich geändert hat - aber nicht, was genau.
CRC32 Prüfsumme ist etwas langsamer als ADLER. Jedoch werden Pixelunterschiede besser erkannt.
Wenn PixelCoordMode auf den Standardmodus SCREEN (1) eingestellt ist, wird der Parameter hwnd ignoriert. Nur wenn PixelCoordMode auf WINDOW (0) oder CLIENT (2) eingestellt ist, wird er beachtet.
PixelCoordMode (Option), PixelGetColor, PixelSearch
#include <MsgBoxConstants.au3>
; Wartet bis sich im Bereich 0,0 bis 50,50 was verändert
; Startwert der zu prüfenden Checksumme ermitteln
Local $iCheckSum = PixelChecksum(0, 0, 50, 50)
; Wartet, bis sich die Region verändert. Die Region wird alle 100ms überprüft, um die CPU-Last niedrig zu halten.
While $iCheckSum = PixelChecksum(0, 0, 50, 50)
Sleep(100)
WEnd
MsgBox($MB_SYSTEMMODAL, "", "In der Region trat eine Änderung auf!")