X


UWSC初心者用スレ

■ このスレッドは過去ログ倉庫に格納されています
2018/09/24(月) 12:13:49.92ID:an35jPjo
UWSC初心者用スレです

わかってる人はこっち
自動化ツールUWSC使いよ集まれ21
http://egg.5ch.net/test/read.cgi/software/1533818531/

降臨される神々においては相手を人と思わず猿と思し召されるよう
何卒お願い申し上げます
2020/10/02(金) 14:26:32.02ID:fC3or5Mo
ある期間からある期間の月数って、
どうやったら求められる?
例えば2019年10月から2020年3月は6ヶ月。
これを求めたい。
2020/10/02(金) 14:38:31.92ID:b1fFJk4v
検索したけど分からんかった
年×12+月で引き算+1したら?
2020/10/02(金) 15:37:29.99ID:fC3or5Mo
なるほど!
頭、いいね。
やってみる
2020/10/03(土) 09:16:10.12ID:A1z8cMTv
autoitを使ってる人いる?
2020/10/09(金) 00:15:11.67ID:fWH520+c
>>711
今は使ってないが、前は結構使ってた。
2020/11/06(金) 23:06:53.83ID:362vvKB1
2つのスクリプトを同時に実行したいのですがどのような処理を書くべきでしょうか?

//同時.uwsの内容
call 処理1.uws
call 処理2.uws

こんな感じで書いても処理1.uwsが動くだけです
処理1.uwsが終わったら処理2.uwsが動くと思うのですがそうではなく1と2を同時に実行して別々の動きをして欲しいです
uwscの実行ファイルとそれぞれのスクリプトファイルは全て同一フォルダにあるものとします
よろしくお願いします
2020/11/06(金) 23:09:52.79ID:oall+sef
thread 処理1.uws
thread 処理2.uws
2020/11/07(土) 20:04:03.01ID:vukJSlcq
thread が実行できるのは関数なので
処理1.uws, 処理2.uws を関数化したあとで
call 処理1.uws
call 処理2.uws
thread 処理1()
thread 処理2()
とする必要がある

しかしそれだけだと、これを実行しているメインのプロセス自体が
thread を2つ起動した直後に終わってしまう
なのでフラグなどを使っていつまで実行すればいいのか
コントロールする必要がある

thread にする必要がとくになければ
uwsc を2つ実行すればいい
TEST.BAT ---
start C:\uwsc\UWSC.exe C:\uws\処理1.uws
start C:\uwsc\UWSC.exe C:\uws\処理2.uws
---

あと複数のuwsを実行する場合はマウスカーソルや
キーボードは1つしかないので
そういう操作がある場合は
奪い合いが起こることを意識する必要がある
2020/11/08(日) 09:07:47.79ID:96WGa2GX
>>714
>>715
試行錯誤してて返事が遅くなりました
スクリプトの挙動が少しおかしいですが目的通りに動いてくれるようになりました
なんか変だけど動いてるからまあええかとなってしまうから進歩しないんだなと実感しました
ありがとうございました
2020/11/15(日) 21:51:04.27ID:PgpnhPdo
参考にしようと思って開いたnaverまとめが9月末で閉鎖してる…
2020/11/25(水) 11:53:39.76ID:Qh6houu2
>>716
同時に実行されると困るような関数使ってたりするとはまるので注意
719デフォルトの名無しさん
垢版 |
2020/12/26(土) 22:00:19.24ID:60sfrFxz
NoxPlayerでuwscを利用していて質問です

IFB CHKIMGX( "1.bmp", winid, x1, y1, x2, y2, Detect_num, Threshold_delta, Target_color)
DOSCMD
SLEEP(2)
IF CHKIMG( "2.bmp",,,,,,,IMG_MSK_BGR6)
DOSCMD
ELSE
DOSCMD
DOSCMD
ENDIF
ELSE
ENDIF

このような記述にしたのですが、アクティブ中だと2.bmpを認識するのに裏マクロ中だと認識してくれません
2.bmpはPrintScreenからトリミングしたもので、動きなどない固定画像です

CHKIMGX( "2.bmp", winid, x1, y1, x2, y2, Detect_num, Threshold_delta, Target_color)
当初はこのように記述していたのですが、これだとアクティブ中でも見つけてくれなかったのでCHKIMGの記述にしてみました

アクティブではない状態で2.bmpを認識するにはどうすればよろしいのでしょうか
2020/12/26(土) 23:50:39.26ID:c93B7w+q
>>719
SAVEIMGのIMG_BACKで取得できなかったら
アプリ自体が非アクティブ時の描画をサボってるから
どうやっても取得できない
2020/12/27(日) 00:47:30.15ID:n8fvXRaD
>>719
VMware等仮想OSの方でNOXを動作させてアクティブにすれば
Vmwareを最小化にしても内部ではアクティブですからね
こういうときは多コアのCPUが有利なので8コアや16コアのCPUを買おう!
722デフォルトの名無しさん
垢版 |
2020/12/27(日) 01:23:55.59ID:2030r+Fs
>>720-721
たしかにそのやり方は強引にできそうですが、調べてたらWindows10では無理だったみたいです

ただアクティブ状態でも
IF CHKIMGX( "2.bmp", winid, x1, y1, x2, y2, Detect_num, Threshold_delta, Target_color)
これだと画像認識せず
IF CHKIMG( "2.bmp",,,,,,,IMG_MSK_BGR6)
これだと画像認識されるのはどういうことでしょうか

ちなみに画像は異なりますが
IFB CHKIMGX( "1.bmp", winid, x1, y1, x2, y2, Detect_num, Threshold_delta, Target_color)
こちらは認識してくれているので、記述のミスはないと思います
2020/12/27(日) 06:46:05.34ID:ILpVLMzN
画像が異なるが答えなのでは…?
実物も見せず言うだけ言われても何も分からんがな
2020/12/27(日) 11:11:31.79ID:Go+qnVGA
画像が異なるってことはチェックしてる画面が違うわけで
画像以外のパラメータがどれか合ってないのでは
2020/12/27(日) 13:39:37.49ID:Xj0rz7S9
よく知らないけど、X版とCHKIMGでは判定方法が違うんじやないの?
X版は、かなり暗くても高スコアでヒットするから
2020/12/27(日) 13:58:17.99ID:lIVD6Aho
CHKIMGX( "2.bmp", winid, x1, y1, x2, y2, Detect_num, Threshold_delta, Target_color)
これのx1,y1,x2,y2を使ってsaveimgしたbmpを2.bmpに差し替えてどうか
PrintScreenから作ったbmpがおかしいか、座標がおかしいかわかるでしょ
727デフォルトの名無しさん
垢版 |
2020/12/27(日) 15:35:17.18ID:2030r+Fs
>>723-728
いろいろと勘違いさせてしまいました

まず2.bmpの部分はCHKIMGを用いれば画像認識されているので現状意図した動作はされています
ですので、PrintScreenしたbmpがおかしいということもないと思います
疑問なのは、あいまい画像認識のCHKIMGXの方が高確率で認識されると思うのですが、
なぜあいまい画像認識のCHKIMGXでは認識せずにCHKIMGの方でないと認識しないのかとういことです

1.bmpは関係ありません
ただ1.bmpと2.bmpでは認識してもらいたい画像の部分だけ変えてる以外にCHKIMGXの記述を変えてないので、
記述間違いなら1.bmpも画像認識されないから2.bmpが画像認識されないのも理解できるけどっていうことです
728デフォルトの名無しさん
垢版 |
2020/12/27(日) 16:00:49.64ID:2030r+Fs
IFB CHKIMGX( "1.bmp", winid, x1, y1, x2, y2, Detect_num, Threshold_delta, Target_color)
DOSCMD
SLEEP(2)
IF CHKIMG( "2.bmp",,,,,,,IMG_MSK_BGR6)
DOSCMD
ELSE
DOSCMD
DOSCMD
ENDIF
ELSE
ENDIF

これだと2.bmpを認識して動作しますが、

IFB CHKIMGX( "1.bmp", winid, x1, y1, x2, y2, Detect_num, Threshold_delta, Target_color)
DOSCMD
SLEEP(2)
IFB CHKIMGX( "2.bmp", winid, x1, y1, x2, y2, Detect_num, Threshold_delta, Target_color)
DOSCMD
ELSE
DOSCMD
DOSCMD
ENDIF
ELSE
ENDIF

これだと2.bmpを認識しないので動作しないということです
2020/12/27(日) 16:46:19.54ID:Go+qnVGA
PC一回再起動したら?
2020/12/27(日) 19:14:21.24ID:ILpVLMzN
>>728
だから判定したい場面も判定画像も上げずに目隠しで言われてもエスパー回答しかできねーのよ
ゲームの絵貼りたくないならマス目画像とか適当な背景画像で状況再現したセットをくれ
2020/12/27(日) 19:37:44.59ID:majDbP6B
>>728
X版はデバッグモードあるから有効にしてみたら何かわかるかも知れない
732デフォルトの名無しさん
垢版 |
2020/12/28(月) 15:08:59.57ID:Btd6jx/E
自己解決しました、お騒がせしました
2020/12/28(月) 15:12:22.09ID:bQ1hkiX8
原因はなんだった?
2020/12/28(月) 15:20:34.10ID:A2LpudMi
>>732
実際に起きてた問題と原因と解決した方法を報告してね
2020/12/28(月) 19:16:35.66ID:lHgMwOra
>>732
ネットでの質問は、自己解決した場合もその内容を具体的に報告することがマナーとなっていますのよー

そうしないと情報の共有が出来なくて回答者は無駄足になるし、
聞き逃げが続くと誰も答えなくなるかもしれないからね
2020/12/28(月) 19:31:08.48ID:RUvOsexB
自己解決したんだから回答者は答えてないのと同じだと思いますが
2020/12/28(月) 19:36:28.69ID:rQ8H54wA
まー多分つまんない勘違いか思い込みだったんだろう
んなもん共有されても参考にならないしいんじゃね
738デフォルトの名無しさん
垢版 |
2020/12/29(火) 02:36:48.48ID:HcXyWfHn
仰る通り、回答者もいなかったので記載するほどでもないと思っていました

CHKIMGで認識できて、あいまい認識できるCHKIMGXが認識されなかった問題ですが、CHKIMGXでの認識は無理だと判断しました
SAVEIMGで画像取得しても特に画像に違いが見当たらず、
認識する範囲を画面全体から、認識してもらいたい画像がある範囲のみに絞っても無理
判定閾値の条件を緩くしたら、今度は画像が表示されていないのに認識してしまうほどでした
CHKIMGXでは色幅が利用できないようなので、一見わかりづらいですがおそらくそこに問題があったのではないかと思います
2020/12/29(火) 08:14:52.64ID:VfYR7jYh
CHKIMGXの着目する色では対応できなかったということか

最終的に原因を書いてくれたのだからいいけど
>>719>>722にいくつか回答がついたのだから原因は書くべきでしょう
例え回答が役に立たなかったとしても、回答者は質問に対して時間を割いたのだから
それは質問者の最低限のマナーだとおもうよ
そうでなければ見返りもなく回答する人がいなくなって質問スレは成り立たくなる
2020/12/29(火) 09:42:18.91ID:kNpkOyS+
>>738
>回答者もいなかったので記載するほどでもないと思っていました

うん。それ間違いだから直そうね
それはさておき、範囲の比較じゃ無駄が多いから、peekColorでfunction作ったほうが速いんじゃね
何に使うのか知らんが、ゲームの画面監視でHP・MP・敵と第三者を常時監視して完全な自動戦闘するなら断然軽かったぜ
2020/12/29(火) 14:54:12.96ID:4L/gF/i1
昔mixiゲームにあったクライムワールドで
格下相手に粘着して5万勝以上稼いだのは僕です
マクロ様々でしたね〜!
2020/12/29(火) 15:00:52.48ID:PT/2WgOq
それって金もうかるん?
2020/12/29(火) 20:59:49.89ID:/PhRpDJG
>>738
CHKIMGXはモノクロに変換して比較するから色違いの画像とかには向いてないよ
2020/12/30(水) 14:54:33.60ID:lWlFiWq8
>>738
chkimgxで認識できなくてchkimgだと認識する画像パターンは存在するからね
chkimgxっていうか使ってるOpenCVライブラリの問題だと思う。もしかしたら、こっちのバージョン上げて作り直したら解消するかもしれない
2020/12/30(水) 15:51:05.24ID:jnop5f2w
もう書かれてる通り色の扱いでしょ
2020/12/31(木) 09:53:15.79ID:q35RE35p
windows10の1909から20H2へアップデートしたらブラウザの描画が変わって画像取得をやり直す羽目になった…
フォントはブラウザ毎で異なるのは許容できるけど画像の描画も変わるのは解せない
普段chkimgしか使ったことないけどこういうのはchkimgxで解決できるのかな?
2020/12/31(木) 16:07:02.38ID:898M8IM/
>>746
画像の大きさが同じならある程度吸収するけど
基本はRPAスレでも散々言われてるように環境変わったらその環境用に作り直すしかないよ
2021/01/18(月) 00:47:00.68ID:3GwAoqNL
こういう処理をさせたいのですが、変数?の使い方が違っていてエラー吐いて動きません
どなたか教えていていただけないでしょうか。

マクロ1
for kaisu = 1 to 10
もし、この条件を満たすなら、「処理AA」をCall
next

マクロ2 
処理AA
k=k+1  ←「処理AA」が行われた回数のカウントをしたい
※マクロ1へ戻る

マクロ3
if k = 1 then 操作B
if k = 2 then 操作C
2021/01/18(月) 00:48:56.41ID:3GwAoqNL
↑のようなものを作っても
k=k+1 
これが「変数kが定義されていません」エラーを吐いて動きません
2021/01/18(月) 00:55:11.99ID:zDdtgKlc
マクロ2の変数をマクロ3では参照できない
詳しくは変数のスコープでググってくれ
2021/01/18(月) 20:36:52.82ID:3GwAoqNL
できない理由の回答ありがとう
PUBLICを使うことでなんとかなりそうです
2021/01/20(水) 13:52:57.09ID:op6U359o
excel2013以降全般でUWSCでexcelファイルをオープンにする場合と
デスクトップ上からexecelファイルをクリックしてopenする場合では何かexcelの認識が変わるのでしょうか?
excelに後から入れたアドインが上記の場合だとアドインを認識してくれず
下記の場合だとアドインを認識してくれる状態で困っています
2021/02/02(火) 19:37:28.21ID:lhBS5kaI
お気に入りだったのがサービス終了したもんで
マクロ使ってプレイすると面白いゲーム教えて下さい
2021/02/02(火) 20:24:46.86ID:CvaL/gK2
クッキークリッカーでも極めたら如何か
2021/02/05(金) 12:52:44.92ID:CE/PVw/N
裏マクロでの画像認識について質問です

w_id = getid( "エミュレーター" )
mouseorg( w_id ,2 ,MORG_BACK )
を利用した裏マクロを作り、再生してみたのですが
オンマウス状態にしないと画像認識が働かず
困っています。

【現在の状況やその具体例】
・単純なクリック操作は裏マクロとして正常に動作する
・エミュレータの外側にマウスカーソルがあると画像認識がまったく働かない
・エミュレータの内側にマウスカーソルをもっていくと即座に画像認識が行われる
・エミュレータがアクティブ状態か非アクティブ状態かは関係なく
 オンマウスかどうかで画像認識の「働く/働かない」が決まる状況
 (PC画面の最前面はメモ帳やブラウザ。裏で開いているエミュレータの先っぽだけを
 ブラウザの上にハミ出させて、そのハミ部分にマウスカーソルを移動させると画像認識動く)

この「オンマウスでないと画像認識が動かない」状況を解消する方法を知りたいです
よろしくお願いします。
2021/02/05(金) 14:06:50.35ID:CE/PVw/N
>>755
すみません。質問者です
>単純なクリック操作は裏マクロとして正常に動作する
↑これもオンマウス状態でないと動作していませんでした。勘違いしていたようです
根本的に裏マクロの作成に失敗してる気がします
もうちょっと自分で試行錯誤してから質問しなおします。
2021/02/05(金) 14:38:29.04ID:8IWMGH1a
数回滞納したら信用機関のブラックリストに載るんだろ
これ最悪じゃん
2021/02/05(金) 14:39:01.10ID:8IWMGH1a
誤爆でした
2021/02/05(金) 14:57:30.51ID:yiuLSrin
((((;゚Д゚))))
2021/02/05(金) 15:26:56.29ID:3x1rEHtV
滞納ってのは金払いますって約束を破ってるんだから信用に傷付くのは当然だと思うんだが
遅れても払えば問題ないって意識が根本的におかしい
uwscで自動化しろ
2021/02/06(土) 14:27:30.37ID:NphD2JzZ
IEでサイトをよんだら、Edgeが起動した。
もうだめだ。オレの人生はおわった。

変わりの自動化ツールを教えて下さい
2021/02/06(土) 14:37:42.46ID:e0Fl/dIF
edgeで動作するように作り直した方が早い
2021/02/06(土) 15:00:10.50ID:NphD2JzZ
>>762
そんなことできるんですか 朗報!
2021/02/06(土) 15:30:39.13ID:xKFqhvrl
ieでそのまま開くみたいな設定がedge側にあったと思うけど
2021/02/06(土) 20:25:34.70ID:+9Nz3gBm
>>764
ありがとうございます。
設定を変更してできました。

前日にはIEで表示できたのに、今朝になって突然代替表示されるようになって動転してしまいました。
2021/02/08(月) 18:06:22.89ID:sakamvjP
adbを利用したマクロのタップ位置をちょっとだけランダム化したいです

表マクロで座標(20,50)の周辺をランダムタップする場合は
20+RANDOM(1),50+RANDOM(1)
↑みたいにすれば出来ていたのですが、
adb版の裏マクロだとどういう記述にすればいいのでしょうか
2021/02/08(月) 19:54:11.87ID:rDadBMP6
>>674-675辺りを見て
2021/02/08(月) 21:20:12.83ID:sakamvjP
返答ありがとうございます
括弧でくくるとはどこをどのようにくくればいいのでしょうか…
具体例を書いていただけるとありがたいです。 頭が弱くて申し訳ない泣
下記を試してみたのですが一番上のやつだけが正常に動きます

成功(ランダム化無し)
DOSCMD("cd C:\LDPlayer\LDPlayer4.0 & adb shell input tap 20 50")

失敗(ランダム化有り)
DOSCMD("cd C:\LDPlayer\LDPlayer4.0 & adb shell input tap 20+RANDOM(1) 50+RANDOM(1)")

失敗(ランダム化有り_座標を括弧で括る)
DOSCMD("cd C:\LDPlayer\LDPlayer4.0 & adb shell input tap (31+ RANDOM(1)) (50+ RANDOM(1))")

失敗(ランダム化有り_座標を括弧で括る2)
DOSCMD("cd C:\LDPlayer\LDPlayer4.0 & adb shell input tap 31(+ RANDOM(1)) 50(+ RANDOM(1))")

また>>674の書き方は
doscmd(" ")の「")」の箇所が「)」になっていて「" "」で最後のY座標を覆えていないのですが
これは書き込みミスですか?それとも何か意図があるでしょうか
2021/02/09(火) 02:13:50.42ID:HgHOGPAh
DOSCMDで送信するのは文字列
下3つはRANDOM関数がダブルクォーテーションで囲われてるから関数ではなく文字列として認識されてる
文字列は結合が出来る

str = "aaa" + "bbb"
print str
> aaabbb
2021/02/09(火) 02:58:31.43ID:Yx4rnzv/
>>768
文法適当だけどこう
doscmd("adb shell input tap" + " " + (10 + rnd(10)) + " " + (20 + rnd(20)))
数値の加算としてて扱いたいところを括りなさいということ

doscmdで失敗したらdoscmdの返り値を吹き出しとかログに出して確認するとコマンドプロンプト上のメッセージ見れるよ
まあ、あとdoscmdで構文組み立てると使い回し的に微妙だし外で組み立ててデバッグ表示とか確認してから文字列の変数で渡す方がいいかな
2021/02/09(火) 10:28:45.04ID:w8MMFkxC
>>769
>>770
返答ありがとうございます。
教えていただいたルールと実例を見て少しずつわかってきた気がします
「+ " " +」の箇所が不思議な並びに見えていたのですが、「" +」で一塊の記号
と捉える(?)ということが何となくわかってきました。
「" +」と「関数」の組み合わせで、関数部分は括弧で両脇ガードするイメージかな、て。
理解が追いつきそうな気がします。ありがとうございます
2021/02/09(火) 12:59:51.00ID:Yx4rnzv/
いや変な理解してるよw
プログラム知識どのくらいあるか知らんけど、要はdoscmdは最少だと文字列1つが引数なのが大前提
次にuwscは文字列に対して+すると左辺右辺を文字列とし結合する
この時、数値も文字列になるし、関数は返り値が文字列になる
なのでdoscmdの1番外の括弧の中の+は基本的に文字列の結合をしている
括弧の中にある括弧内は先に数値の計算がされる

doscmd(10 + 10)
だと1010になって
doscmd((10 + 10))
だと20になる
doscmd(a + " " + b)
これはなんのことはなく単にaとbの間にスペースいれてるだけだ
2021/02/10(水) 08:32:17.00ID:JYL+31L1
ありがとうございます。今度こそわかりました
つまり、doscmd(a + " " + b)のaとbとにランダム数値を代入する、みたいな式を
これの前に書けば晴れてランダム座標の完成となるわけですね
ちなみにお察しの通りプログラムの知識はなく
録画した表マクロが読める程度です… 回答ありがとうございます
2021/02/10(水) 16:14:00.55ID:mYgax70j
>>763
IE専用ツールじゃないから、EdgeでもChromeでも動くよ
2021/02/12(金) 20:13:05.76ID:74skEOdG
>>774
それがですね問題なのは、IEの場合、ページが読み込み完了になるまで待っててくれる関数があるじゃなんですか。
ああいうことができないと、例えばボタンを押すタイミングが早すぎたとかいうことになって先へ進めなくなるんです。

他のRPAでしたっけか、そういったもので、ブラウザの読み込み完了になるまで待機するようなものが見つけられなくて
UWSCでIEをそのまま使いたいと思ってしまっているわけなんです。
2021/02/13(土) 11:45:04.70ID:ZGnem3aY
Seleniumは?
2021/02/13(土) 12:07:26.24ID:dZ6ue5BC
Seleniumでもpuppeteerでも好きなもの使え
2021/02/15(月) 20:45:26.14ID:fa+YzTlt
webdriver使えば?
2021/02/16(火) 15:50:22.10ID:+7e6mc9m
UWSCのスクリプト集が死んでるサイトしかないけど、見る方法は・・・
http://canal22.org/qanda/uwsc_script/
2021/02/16(火) 23:02:31.35ID:N5xcmHzO
archiveでどーぞー
2021/02/28(日) 12:00:54.27ID:zlvqXFLj
Aという動作をループさせながら、Bという画像が現れたら数分後にBをクリックするとかできますか?スリープだとAの動作が止まってしまうので…
2021/02/28(日) 12:04:06.87ID:Gf8vzNDu
gettimeを使うかthreadで別処理にする
2021/02/28(日) 13:15:04.71ID:rSDXD4Hw
Aを内包する大ループ作るだけでよくね
正攻法はthreadでいいと思うが
2021/02/28(日) 17:45:14.82ID:zlvqXFLj
ありがとうございます。早速試してみます。
2021/03/02(火) 13:39:10.84ID:JZpUb5F1
難しく考えすぎなのでは?

DIM Flag = False //B画像検出フラグ

//Aという動作をループ
While True
//B画像が現れたらxに現在時刻を記録しFlagをTrueにする
IFB CHKIMG("B.bmp") and (Flag = False);x = GETTIME();Flag = True;ENDIF
//B画像検出して60秒経過したら、B画像をクリックしてループを抜ける
IFB ((GETTIME() - x) > 60) and (Flag = True);BTN(LEFT,CLICK,(G_IMG_X+5),(G_IMG_Y+5));BREAK;ENDIF
//B画像が現れず、120秒経過したらループを抜ける
IFB ((GETTIME() - x) > 120) and (Flag = False);BREAK;ENDIF
Wend

IFB Flag = True;msgbox("B画像検出");ENDIF
IFB Flag = False;msgbox("B画像未検出");ENDIF
2021/03/02(火) 14:30:33.02ID:mCqWIBDx
782:gettimeかthread
785:考えすぎでは?gettime使え
2021/03/02(火) 18:36:17.07ID:JZpUb5F1
xの初期値を入れてなかったから修正

DIM Flag = False,x = GETTIME() //B画像検出フラグ,xに現在時刻を入れる

//Aという動作をループ
While True
//B画像が現れたら、現れた時刻をxに入れてFlagをTrueにする
IFB CHKIMG("B.bmp") and (Flag = False);x = GETTIME();Flag = True;ELSE;ENDIF
//B画像検出して 60秒経過したら、B画像をクリックしてループを抜ける
IFB ((GETTIME() - x) > 60) and (Flag = True);BTN(LEFT,CLICK,(G_IMG_X+5),(G_IMG_Y+5));BREAK;ENDIF
//B画像が現れずに120秒経過したらループを抜ける
IFB ((GETTIME() - x) > 120) and (Flag = False);BREAK;ENDIF
Wend

IFB Flag = True;msgbox("B画像検出");ENDIF
IFB Flag = False;msgbox("B画像未検出");ENDIF
2021/03/03(水) 00:31:34.71ID:UoOyY0IM
>>787
素人考えですが
画像検出のIFブロックで発見したらBTNの第五引数で実行待ち時間を指定すればフラグ要らないような
2021/03/03(水) 00:39:48.25ID:eEFRPXrG
>>788
BTNって非同期なの?
2021/03/03(水) 20:36:38.79ID:yubedTmO
BTN(LEFT,CLICK,(G_IMG_X+5),(G_IMG_Y+5),600000) とすると、クリックするまでループ処理が止まる
止まるとA動作のループが動かない
791デフォルトの名無しさん
垢版 |
2021/03/03(水) 20:58:42.86ID:gkb1jlIk
MSがなにやら簡単ツールを提供するようだ
自動化が簡単になる
2021/03/03(水) 22:02:40.43ID:g0RIT2ce
ソースは?
UWSCみたいには使えないと思うが・・・
793デフォルトの名無しさん
垢版 |
2021/03/03(水) 22:08:57.07ID:gkb1jlIk
https://www.itmedia.co.jp/news/articles/2103/03/news096.html
2021/03/03(水) 22:20:08.14ID:g0RIT2ce
コードを書かずに〜と書いてあることから凝った設定はできないとも読めるよ?
まあ仮に自動化できたとしてもUWSCと同等のことが出来なければ用が無い
2021/03/03(水) 22:25:44.81ID:V8Bi7ith
これとUWSCを組み合わせて使えば自動化が簡単にできるようになるんじゃないかと期待してみる
2021/03/03(水) 22:41:06.95ID:W0isZ3pe
ブラウザの読み込み完了になるまで待つ機能があるかどうかですお。
797デフォルトの名無しさん
垢版 |
2021/03/04(木) 08:23:11.29ID:RtzC2UYg
そりゃ自動化ツールなんだから
クリックした結果を見る前に次の動作するわけなかろうw
艦これの自動化くらいすぐ出来そう
2021/03/04(木) 14:16:32.07ID:U4nDCxwI
//IE以外で読み込み完了まで待機が出来ないとか何とか・・・?

DOSCMD("start microsoft-edge:http://www.google.co.jp/";) //Edgeを起動してGoogleを表示
ID = GETID("Edge", "", -1)
Stand-by(ID,ITM_BTN,"Google 検索")

SENDSTR(id,"屋久島", 1, True) // 屋久島と入力してEnter
SCKEY(ID, VK_RETURN)
Stand-by(ID, ITM_LINK, "地図")
CLKITEM(ID, "地図", CLK_LINK) // 地図をクリック

//指定アイテムの文字が確認できるまで待機
Procedure Stand-by(ID, kind, ITM)
While True
Sleep(0.4)
for n in GETITEM(ID, kind)
if n = ITM then Exit
next
wend
Fend
2021/03/08(月) 11:11:54.09ID:r1yNd/Vf
>>793の続きが紹介されていた
windows10homeの場合は使えない機能があるとのことProを使うのは当たり前なんで気にしたことなかったが。
homeの人はproへグレードアップしてほしい。約1万5000円支払えば可能だから当たり前にやっておこう。
また、ブラウザの自動操作は拡張機能が必要とのことだ。
800デフォルトの名無しさん
垢版 |
2021/03/08(月) 13:19:35.29ID:p+9eWZvC
やるかボケ
2021/03/08(月) 13:36:33.15ID:r1yNd/Vf
あっそうですか
でしたら使えない機能は諦めていただく他はないですね
2021/03/08(月) 13:54:11.38ID:1eIB7vrT
マイクソからも提供されてるのか
試してみるかな
2021/03/12(金) 15:13:37.21ID:ZRLAvOku
printで表示させる文字の位置を設定する方法はありますか?
サイズも設定できるとなお良いです
2021/03/13(土) 13:10:54.59ID:cA/ebhRB
//面倒くさいやり方もあるが、無駄な労力なのでLOGPRINTを使うと良い
//なぜかx座標が7ピクセルずれるから指定座標から引く事

x = 500;y= 500

FUKIDASI("表示位置テスト1",x,y) 

LOGPRINT(TRUE,x-7,y,250,100)
PRINT "表示位置サイズ変更テスト2"

sleep(10)
2021/03/14(日) 19:17:10.26ID:MdoUOPO+
凄い初心な質問ですんません。

ID = EXEC("C:\Program Files (x86)\cameeze\cameeze.exe")
SLEEP(1.5)
ACW(GETID("cameeze","TfrmMain.UnicodeClass"),1583,450,460,300,0)

5回繰り返し(座標だけ違う)

こんな感じで作ったのですが、UWSCから設定ファイルを実行すると動くのですが、
設定ファイルから実行すると失敗してしまいます。(アクティブなウィンドウが切り替わらずにパッパッと動いてる)
重複起動していて同名なので、名前の後に(1)みたいな風に付ける方法はありませんでしょうか…
2021/03/14(日) 19:20:27.96ID:MdoUOPO+
あれ、なんでだろ書き込めない・・・
2021/03/14(日) 19:25:57.43ID:MdoUOPO+
くっそ初心者ですんません。

ID = EXEC("あああ")
SLEEP(1.5)
ACW(GETID("あああ","TfrmMain.UnicodeClass"),1583,450,330,460,0)

座標変えて5回繰り返し

こんな感じで同じソフトを多重起動させて並べようとしたのですが、失敗してしまいます。
ウィンドウタイトルが同じで同じウィンドウを色々な座標に持っていこうとしてるだけみたいな感じなのですが
ソフト名の後ろに(1)みたいなのを付けたりする方法はありませんでしょうか…
(なぜか書けなかったのであああにしてます)
■ このスレッドは過去ログ倉庫に格納されています