• 締切済み

UWSCによる色識別がWin7だとできない

UWSCでPEEKCOLORを使い、指定した座標の色を識別して、キーを押すといった動作をさせたいのですが、 XPのPCだと正常に動作するのに、Win7のPCになると何も動作が起きず上手くいきません。 同じスクリプト文を使用しているにも関わらず、Win7だと動作起きないのは、色を識別する方法が異なるのでしょうか? 動作文は以下の通りです。 While True ifb PEEKCOLOR(198,68) = $845539 then   Kbd(VK_F4,DOWN,30)   Kbd(VK_F4,UP,30) else   Endif ifb PEEKCOLOR(198,56) = $845539 then   Kbd(VK_F5,DOWN,30)   Kbd(VK_F5,UP,30) else Endif WEND 色を調べる方法として、WinXP・7共に次のものを使用しました。 OLD_X = 0 OLD_Y = 0 OLD_COLOR = 0 while TRUE   WIN_ID = GetID(GET_ACTIVE_WIN)   MOUSEORG(WIN_ID)   BASE_X = STATUS(WIN_ID, ST_X)   BASE_Y = STATUS(WIN_ID, ST_Y)   ifb GETKEYSTATE(VK_LBUTTON) then     NEW_X = G_MOUSE_X; NEW_Y = G_MOUSE_Y     OFF_X = NEW_X - BASE_X; OFF_Y = NEW_Y - BASE_Y     c=PeekColor(OFF_X, OFF_Y)     ifb NEW_X <> OLD_X OR NEW_Y <> OLD_Y OR c <> OLD_COLOR then       PRINT "X="+(OFF_X)+"/Y="+(OFF_Y)+"/赤="+(c and $FF)+"/緑="+((c and $FF00)/$100)+"/青="+((c and $FF0000)/$10000)+"/BGR値=$"+FORMAT( c,6,-1 )     endif     OLD_X = NEW_X; OLD_Y = NEW_Y; OLD_COLOR = c   endif   sleep(1) wend 色々調べてみましたが、やはりWin7でのみ動作しなくて困っています。 原因が分かる方、助言お願いします。

みんなの回答

  • annys2000
  • ベストアンサー率48% (255/523)
回答No.1

UWSCの掲示板で質問したほうが早いのでは? http://www3.bigcosmic.com/board/s/board.cgi?id=umiumi

関連するQ&A

専門家に質問してみよう