VB6、Win98SE環境です。よろしくお願いいたします。
ディスプレイに表示されている画像(ポインターは除外)の変更を取得したいため、
次のような検索・思考を行ってみましたがよい方法を見つけ出すことができません
でした。
1 SCREENオブジェクトにchangeイベントのようなものは無いのか。
2 画面表示の変更、もしくは画像の情報を含んだ画面情報を取得できるような
APIは無いのか。
定期的に画面全体のビットデータを取得し、個々のビットデータを直前に取得した
データと比較するようなプログラムを書けば出来そうにも思うのですが、当方の場
合1秒間に数回の比較を行わなければならないため、他のタスクへの影響を考えると
採用しかねます。
どうかお知恵をお貸しください。
VBでは無理です
用途によると思われます。
たとえば、監視カメラの画像を監視し、
「動き」をみつけたら警告を出す、というのなら、
精度が高すぎると警告出しっぱなしになりますから、
サンプリングして大雑把に監視すればいいでしょうから、
場合によってはVBで耐えられる情報量に落ち着くかもしれません。
ポイントは「いかに単位時間あたりの情報処理量をへらすか」です。
試したわけじゃないけど、
WS_EX_TRANSPARENTを設定した枠無しのFormを最大化しておけば、
もしかしたら、上のウィンドウの描写後にPaintイベントが発生してくれるかもしれません。
ツイート | ![]() |