• ベストアンサー

マクロについて

現在マクロを勉強しております。UWSCで勉強しています。 そこで質問なんですが、 Ifb Chkimg("対象.bmp") = true Then 対象.bmpを同じフォルダーにいれても認識してくれません。 対象をプリントして、それをペイントなどで切り取ったんですが、認証確認してもそのような画像はありませんとなります。 こういう、同じフォルダーに対象の画像があれば、それに対して動作を起こすようなことをしたいんですが、アドバイスを頂きたいです。 宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • 00PS
  • ベストアンサー率28% (4/14)
回答No.3

画像認識でしたか。全文読んでなかったみたいです。申し訳有りません。 画像認識ではありませんがこれでご勘弁を。 スタートボタンを押すスクリプトです。 画像認識でなければ記載の様な動きは出来ます。 他ボタン等の情報が必要な場合は下記URLにて 必要情報の取得が出来ます。 ID=getid("","Shell_TrayWnd",0.1) clkitem(ID,"スタート",clk_btn or clk_short,true,1)

参考URL:
http://park14.wakwak.com/~simizu/cgi-bin/uwscbbs2/cocoqa.cgi?log=45
ggghhh
質問者

お礼

ほんとうに有難うございます>< 親切にして頂いて心苦しいんですが、スタートボタンを押すっていうのは例で、画像認識で、スタートボタンに限らず出来るようになりたいんです;; 座標を取ったりするのではなくて、画像を認識してそれに対して動作を起こすというような感じです。 例えば、 物体が画面に現れれば、それに対して動作を起こす、その物体が現れるまで待ったり、その物体を探したりといった感じにしたいんです。 なにか知っていましたらどうか宜しくお願い致します。

その他の回答 (2)

  • 00PS
  • ベストアンサー率28% (4/14)
回答No.2

UWSC!またレアなもの使ってますね。 結構便利なので私も使ってました(過去形)。 Chkimgは表示している画像を見つけるコマンドですから ファイルの検索用ではないみたいです。 下記URLは私がUWSCを使用していた頃に良く 勉強させてもらった所です。 Chkimgも詳しく書いてますよ。

参考URL:
http://park14.wakwak.com/~simizu/
ggghhh
質問者

補足

こんなサイトがあったなんて^^ 有難うございます;; やり方をみたんですが、イマイチわからないです。 >調査範囲の左上隅と右下隅の対角座標をx1,y1,x2,y2で限定すると実行時間が短くなります。なお、MOUSEORGが実行されていれば相対座標になります。< これはどういうことでしょうか? アドバイス頂けませんですか>< 簡単な手順があれば助かるんですが、すいませんがお願いできませんでしょうか?申し訳ないです。 http://park14.wakwak.com/~simizu/uwsc/fruwsc.html

  • neKo_deux
  • ベストアンサー率44% (5541/12319)
回答No.1

マクロが動作している際のカレントフォルダが必ずしもマクロの元ファイルの場所にならないからだと思います。 デフォルトはマイドキュメントとかのハズ。 Chkimg("C:\Data\対象.bmp") とかで動作するのを確認してください。 対処方法としては、カレントディレクトリを変更するコマンド、マクロのある場所を取得する方法があると思いますので、マクロのリファレンスなどを参照してみて下さい。 ショートカット経由で呼び出すのなら、ショートカットのプロパティで作業フォルダが指定できますが…。

ggghhh
質問者

お礼

回答有難うございます^^ 対象.bmpを言われたとおりに確認しましたが、ダメでした。 自分が根本的になにか間違っているんでしょうか・・・ 自分はこういう風にしております。 例え 1、ウインドーズのデスクトップの左下のスタートボタンを画像認識してクリックしたい こういう時は、まずデスクトップの画面ごとプリントして、そしてそのプリントされた物を、ペイントでスタートボタンのところの枠組みごと切り取り、それをマイドキュメントや、Cドライブの中に何点か置きました。 それで試して見ましたが、そういう画像ファイルはみつかりませんとなります。 根本的になにか間違っていますでしょうか??;; 宜しくお願い致します。どうしても出来るようになりたいんですが、なかなか道は開けません、助けてください><

関連するQ&A

  • 画像認識したい!!!

    ほんとうに宜しくお願いします。 Ifb Chkimg("対象.bmp") = true Then 対象.bmpを同じフォルダーにいれても認識してくれません。 例えば、 物体が画面に現れれば、それに対して動作を起こす、その物体が現れるまで待ったり、その物体を探したりといった感じにしたいんです。 しかし、何度やっても認識してくれない、なにか間違ってるかと思うんですが、その答えが全くわかりません。 マジで助けてください。

  • uwscについて

    画像認識で質問があります。 画像Aがあった場合画像Aをクリックするのは出来るのですが 画像Aがあった場合画像Bをクリックする場合どのようにすればいいのでしょうか? IFB (CHKIMG("A.bmp")=TRUE) THEN SLEEP(0.3) //B、C出現までの間を調整 IFB (CHKIMG("B.bmp")=TRUE) THEN BTN(LEFT, CLICK, G_IMG_X, G_IMG_y) ELSEIF (CHKIMG("C.bmp")=TRUE) THEN BTN(LEFT, CLICK, G_IMG_X, G_IMG_y) ENDIF しらべてこのとおりやってみたら 最初のIFBに対してENDIFがないと言われてうまくいきません ちょっと調べたのですが分からなかったので助けてください

  • UWSCのプログラムについての質問

    UWSCのプログラムについての質問 ◆質問内容◆ ある画像例えば「1画像」があるとします。次に「2画像」があるとします。 画像の種類は「.bmp」だとする 1画像がある場合は「Alt」+「←」を一回押す とゆうマクロを作成したいわけなのですが IF関数を用いて 1画像(1.bmp)がある場合は「Alt」+「←」を一回押す 2画像(2.bmp)がある場合には「F5」を一回押す とゆうマクロをUWSCで作りたいのですが・・・。 ------------------------------------------------------------- While True IF chkimg("1.bmp")=true then KBD(VK_RALT,CLICK,10) KBD(VK_LEFT,CLICK,15 endif IF chkimg("2.bmp")=true then KBD(VK_F5,CLICK,10) endif Wend ---------------------------------------------------------------- では組めないので正しい組み方親切に教えて下さいお願いします。 あと、もう一つ質問したいことがあり図々しくおもわれるかも知りませんが・・・。 ◆質問内容◆ 先ほどの例題と同じように画像1と画像2を用いての質問。 ・1画像(.1bmp)と2画像(2.bmp)がある場合は3画像(3.bmp)の画像を画像認証で左クリックしたい。 ・1画像(.1bmp)はあるが2画像(.bmp)はない場合は4画像(4.bmp)を画像を画像認証で左クリックしたい。 のプログラム方は全く分からないので解説付きもしくはプログラムを書いて参考にしたいと思いますので、勉強させて頂きたく長文ではありますがよろしくお願い申し上げます。

  • UWSCで次のように処理したいのですが、どうしたらよろしいでしょうか?

    UWSCで次のように処理したいのですが、どうしたらよろしいでしょうか? 1.Ifb ChkImg("xxxx.bmp") で画像認証する 2.その画像が同じ場合に、その画像のファイル名をブラウザのキーボード入力が可能な場所に入力する どうかよろしくお願いします…

  • UWSCについて

    UWSCでマクロを使い画像判断検索?をしたいのですが While true  // 繰り返し ここから if GETKEYSTATE(VK_ESC) then exit // Escapeキーでスクリプト停止 Ifb chkimg("aiueo.bmp") = true then // 画像判定 // ここから あった時 sleep(1) // 待ち時間 // ここまで あった時 // ここから なかった時 else  sleep(1) // 待ち時間 // ここから なかった時 BTN(LEFT,CLICK,74,60,1217) Endif // 画像判定 終了 wend //繰り返し ここまで これで画像ファイルの名前を uwsc_aiueo.uws にしてくださいとあったのでそのままファイル名に使ってるのですがうまくいってません。 初心者ですが教えていただけないでしょうか?

  • UWSC 用のマクロコードを教えてください

    UWSC を使ったプログラムを作成しています。 黄色い部分の push ボタンを左クリックすると 赤いラインが上昇します。 それを決められた色のところまで自動で動くようにしたいのです。 今ある赤色ラインで止めたいのです。 黄色いpushは 10種類ほどあり 色が多数あります。 画像を習得してどの画像にも対応できるようにしたい。 赤いラインを止める場所を 色を指定して止める RGB値を設定して 毎回ここでクリックが外れるような設定 現在設定している状況は 1組のみの設定なのでこれを多数に対応できるように組み替えたいのです。 ************************************************ RGBcolor(x2+17,y4+40) ifb R >255 and G < 255 and B < 51 then u = true elseif R > 100 and G < 100 and B > 177 then u = true endif RGBcolor(x2-17,y4+40) ifb R >255 and G < 255 and B < 51 then u = true elseif R > 100 and G < 100 and B > 177 then u = true endif ifb peekcolor(x2,y4-100) = 0 then ifb chkimg("push1.bmp",-1,0,0,yoko-10,tate-10,1) then elseif chkimg("push01",1,0,0,yoko-10,tate-10,1,IMG_MSK_BGR2) then elseif chkimg("push02.bmp",1,0,0,yoko-10,tate-10,1,IMG_MSK_BGR2) then endif x4 = G_IMG_X + 6 //押すの上端 y4 = G_IMG_Y - 1 //押すの上端 RGBcolor(x4,y4) ifb R>255 and G>200 and G<255 and B>30 and B<70 then turiage() endif endif *************************************************** この部分を変更したいのですが よくわからなくて。 どうかお力をお貸しください。

  • UWSCを使って画像リンクをクリックするとき???

    UWSCを使って画像リンクをクリックするとき??? 先日UWSCをダウンロードし、画像リンクを自動でクリックするスクリプトを作りました。 インターネット上で、商品を選んで「予約購入する」という画像リンクをクリックしたいのですが Ifb CHKIMG("予約購入する.bmp") = TRUE THEN   BTN(LEFT,CLICK,G_IMG_X,G_IMG_Y) Endif のように作っても全く動きません。 UWSC40ファイルの中に予約購入する.bmpを保存してます。 うーん一体どうして?昨日から調べているけど全くわかりません。 回答よろしくお願い致します。

  • UWSCで画像が消えた場合に動作せるやり方

    ある画像 aaa.bmp だったとします この画像があるときは なにもせず なくなった場合(画像が消えるまで繰り返す)に ENTER ENTER と 押すようなスプリクト を 書いて頂けないでしょうか? While true if GETKEYSTATE(VK_ESC) then exit If ChkImg("aaa.bmp")=TRUE  ←画像があるとき? Ifb and ChkImg("aaa.bmp")=FALSE ←画像が消えた時? kbd(VK_ENTER) kbd(VK_ENTER) endif wend なんとか こんな感じまで 出来ました よろしくお願いいたします

  • UWSCの画像認識について

    質問させていただきます ifb CHKIMG("画像.bmp",) BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y) endif これを複数の画像でやりたいときは ifb CHKIMG("画像.bmp",) BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y) endif ifb CHKIMG("画像.bmp",) BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y) endif のようにしないとだめなのでしょうか? それとも ifb CHKIMG("画像.bmp",) CHKIMG("画像.bmp",) CHKIMG("画像.bmp",) CHKIMG("画像.bmp",) BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y) endif こんな感じにまとめる事はできるのでしょうか? 例として教えてもらえると助かります。 よろしくお願いします

  • UWSCのプログラミングついて教えてください。

    UWSCについてです。 私は、UWSCをまだ1週間ほどしか触っていない超初心者です。 下記のようなプログラミングを組みたいと思っているので、プログラミング初挑戦なので右も左も良く分かっていません。 UWSCのプログラミングに詳しい方助けてください。 私の組みたいプログラミングは ("A.BMP",0)を無制限ループしつつ、("B.BMP",0)は2時間おきにループしつつ、("C.BMP",0)を30分間に30回実行する 場合のプログラミングです。【3つ同時進行です。】 宜しくお願いします。 while True ifb CHKIMG("A.BMP",0) x=G_IMG_X // 画像の座標をxへ代入 y=G_IMG_Y // 画像の座標をyへ代入 BTN(LEFT, CLICK, x, y, 80) endif ifb CHKIMG("B.BMP",0) x=G_IMG_X // 画像の座標をxへ代入 y=G_IMG_Y // 画像の座標をyへ代入 BTN(LEFT, CLICK, x, y, 80) endif ifb CHKIMG("C.BMP",0) x=G_IMG_X // 画像の座標をxへ代入 y=G_IMG_Y // 画像の座標をyへ代入 BTN(LEFT, CLICK, x, y, 80) endif wend