Function Reference

PixelChecksum

ピクセル領域のチェックサムを生成します。

PixelChecksum ( left, top, right, bottom [, step [, hwnd [, mode]]] )

 

パラメータ

left 長方形の左部座標
top 長方形の上部座標
right 長方形の右部座標
bottom 長方形の下部座標
step [オプション] 全てのピクセルではなく、与えられた1より大きい値おきにスキップした位置のピクセルを使ってチェックサムを計算します(高速化のため)。例えば、2を指定すると1つおきにピクセルをチェックします。デフォルトは1。1より大きい値を使うことはおすすめできません。
hwnd [オプション] 使用されるウィンドウのハンドル
mode [オプション] (デフォルト) 0 : ADLERチェックサム、1 : CRC32チェックサム

 

返し値

成功 領域のチェックサム値を返します。
失敗 0を返します。

 

注意

チェックサムでわかることは領域で"なにか"変化が起きたかどうかだけです - どのような変化が起きたかは知ることができません。

この関数は以前のバージョンでは非常に遅かったですが現在は比較的高速になっています。stepパラメータを使用することは現在はおすすめできません。関数が大幅に高速化されたため、大きなステップ値を使った時のパフォーマンスの向上はほとんどありません。また領域の小さな変化を調べる時には、大きなステップ値を使うことはチェックサムの信頼度が低下することにつながります。

CRC32チェックサムはADLDERよりも若干遅いですがより正確にピクセルの変化を検出します。

 

関連

PixelGetColor, PixelCoordMode (Option), PixelSearch

 


; 0,0 から 50,50で指定される領域になにか変化が起きるまで待ちます

; 初期のチェックサムを取得します
$checksum = PixelChecksum(0,0, 50,50)

; 領域に変化が起きるのを待ちます。CPUの負荷を減らすため領域は100ミリ秒ごとに調べます。
While $checksum = PixelChecksum(0,0, 50, 50)
  Sleep(100)
WEnd

MsgBox(0, "", "Something in the region has changed!")