NOXで画像認識でマクロ使っているのですが、
NOX解像度の設定が720x1280でモニタ解像度が1920x1280のためNOXの実際のウィンドウサイズは581x1060なっているため
画像認識をしても座標がずれてしまいます。今は画像認識したら予め決めた座標をクリックするようにしています
NOXの解像度を540x960にすると問題なく動きます
NOXの解像度を変更しないで、座標のズレを直す方法はないでしょうか?
探検
UWSC初心者用スレ
レス数が1000を超えています。これ以上書き込みはできません。
342デフォルトの名無しさん
2019/06/30(日) 13:11:18.40ID:7IuFi4Dp343デフォルトの名無しさん
2019/06/30(日) 13:48:02.61ID:LiwPiLEo344デフォルトの名無しさん
2019/06/30(日) 16:35:49.95ID:9VVtcacA ゲームの座標はクリックしてそこのドットの座標とカラーなりなんなりを記憶・登録するようにすると便利だよ
どのゲームやアプリでも使いまわしが利くしね
今のところメジャーな3Dゲーム4作品程度にしか使ってないけど、自動戦闘はすべてpeekcolorで済んでる
このスレで人気?のchkimgはいかにも遅そうなので出番がない
どのゲームやアプリでも使いまわしが利くしね
今のところメジャーな3Dゲーム4作品程度にしか使ってないけど、自動戦闘はすべてpeekcolorで済んでる
このスレで人気?のchkimgはいかにも遅そうなので出番がない
345デフォルトの名無しさん
2019/06/30(日) 16:56:27.56ID:VDp+hLNV Botかよ。
そんな使われ方じゃ作者が可哀想だな。
そんな使われ方じゃ作者が可哀想だな。
346デフォルトの名無しさん
2019/06/30(日) 17:10:40.85ID:9VVtcacA347デフォルトの名無しさん
2019/06/30(日) 19:45:50.69ID:VDp+hLNV >>346
それとBotと何の関係が?
それとBotと何の関係が?
348デフォルトの名無しさん
2019/06/30(日) 20:46:18.95ID:a2qR2cp+ >>347
役立たずは黙ってろ
役立たずは黙ってろ
349デフォルトの名無しさん
2019/06/30(日) 21:32:04.04ID:nMEM26ki 仮想マシンでUWSCを使う際に
uwsファイルや画像認識用の画像がネットワークドライブにある場合
フルパス指定しても、「Not found 中断しますか?」と聞かれ
画像認識ができません。パスにはスペースは入っていませんが、日本語は入っています。
コマンドプロンプトでネットワークドライブをZに割り当てるなど
いろいろ試してみましたが、解決には至りませんでした。
ファイルが大量かつ、仮想マシンが何台もあるので、コピーなどはできません。
どなたか解決策を教えていただけないでしょうか。よろしくお願いいたします。
uwsファイルや画像認識用の画像がネットワークドライブにある場合
フルパス指定しても、「Not found 中断しますか?」と聞かれ
画像認識ができません。パスにはスペースは入っていませんが、日本語は入っています。
コマンドプロンプトでネットワークドライブをZに割り当てるなど
いろいろ試してみましたが、解決には至りませんでした。
ファイルが大量かつ、仮想マシンが何台もあるので、コピーなどはできません。
どなたか解決策を教えていただけないでしょうか。よろしくお願いいたします。
350デフォルトの名無しさん
2019/06/30(日) 21:40:49.75ID:nMEM26ki >>349 です。
書き忘れていました。仮想1台1台別のuwsを使用しています。
使う画像はすべて同じなので、画像をまとめているファイルは別にあり
パスを指定しなければなりません。uwsと画像が同じフォルダにある場合でも
同じような現象が起きます。
書き忘れていました。仮想1台1台別のuwsを使用しています。
使う画像はすべて同じなので、画像をまとめているファイルは別にあり
パスを指定しなければなりません。uwsと画像が同じフォルダにある場合でも
同じような現象が起きます。
351デフォルトの名無しさん
2019/07/01(月) 02:10:35.83ID:BhUQI10d 試してみて
ネットワークをドライブ名にマップした場合でも
そのパス名に日本語が入っていても(表のように0x5Cが含まれている文字も含め)
問題は起こらななかった
CHKIMG()に渡すパス名が "\\machine\folder\表現\a.bmp"
のようなネットワークパスだとしても有効だった
なにか勘違いしているだけで
単純にパス名が間違っているのではないか
ネットワークをドライブ名にマップした場合でも
そのパス名に日本語が入っていても(表のように0x5Cが含まれている文字も含め)
問題は起こらななかった
CHKIMG()に渡すパス名が "\\machine\folder\表現\a.bmp"
のようなネットワークパスだとしても有効だった
なにか勘違いしているだけで
単純にパス名が間違っているのではないか
352デフォルトの名無しさん
2019/07/01(月) 02:48:36.99ID:g5QsZuxD 例の記事でnoxマクロが誰でも組めるようになったせいでレベルの低下が著しいな
353デフォルトの名無しさん
2019/07/01(月) 07:49:38.60ID:O1pDJEnN ファイルパス・ユーザー名など、システム関係に、ASCII 以外を使ったらダメ!
半角英数字(英小文字のみ)と、アンダーバーだけを使うと安全
外人の作ったアプリは、sjis を想定していないから!
半角英数字(英小文字のみ)と、アンダーバーだけを使うと安全
外人の作ったアプリは、sjis を想定していないから!
354デフォルトの名無しさん
2019/07/01(月) 09:50:46.62ID:Ud6nL9Ft ネットワークドライブでも問題ないし、Googleドライブでも問題ない
ただ意識せずに毎秒画像見に行ってたせいで転送量がすごい
ただ意識せずに毎秒画像見に行ってたせいで転送量がすごい
355デフォルトの名無しさん
2019/07/05(金) 12:06:58.79ID:alcGemYM はじめまして、このミジンコ誰か教えてください。
noxにてadbを使ってバックグラウンドにて動作するマクロを作成しようと思っております。
単純なタップやスワイプ等のコマンド送信は出来たのですが、画像認識(chkimg)のような仕組みは可能なのでしょうか?
また可能ならどのようなソースの書き方をすればいいのか教えて頂けませんでしょうか?
よろしくお願いします
noxにてadbを使ってバックグラウンドにて動作するマクロを作成しようと思っております。
単純なタップやスワイプ等のコマンド送信は出来たのですが、画像認識(chkimg)のような仕組みは可能なのでしょうか?
また可能ならどのようなソースの書き方をすればいいのか教えて頂けませんでしょうか?
よろしくお願いします
356デフォルトの名無しさん
2019/07/05(金) 12:10:55.06ID:S/iigIKp このスレもしくは前スレに同じような質問や実践的内容が書いてあるよ
357デフォルトの名無しさん
2019/07/06(土) 11:03:00.32ID:szQx9Drp すいません!pro版でRECIEを使おうとしたらL18が存在しません とでるのは、割れだからでしょうか?それとシリアルは必ず17桁でしょうか?
358デフォルトの名無しさん
2019/07/06(土) 14:57:38.96ID:s7rosYjh >>357
割れだから
割れだから
359デフォルトの名無しさん
2019/07/06(土) 15:40:43.73ID:szQx9Drp360デフォルトの名無しさん
2019/07/06(土) 15:48:34.88ID:6ShlGEgv よくまあ割れの質問なんかするな
361デフォルトの名無しさん
2019/07/06(土) 16:19:04.02ID:f5b28dyd 割れ割れによる割れ割れのための割れ割れの政治
362デフォルトの名無しさん
2019/07/06(土) 16:30:15.77ID:1YLcU5Mg 割れだからって言われて、それに対して正式な登録が〜って聞く意味が分からん
正式な登録してから出直してこい
正式な登録してから出直してこい
363デフォルトの名無しさん
2019/07/06(土) 16:33:01.72ID:o0MaAedS どうせ釣りだろ
はい釣れた釣れた
はい釣れた釣れた
364デフォルトの名無しさん
2019/07/06(土) 18:05:48.63ID:aan9FGim えっ、釣りだったの!?
もう通報しちゃった…
もう通報しちゃった…
365デフォルトの名無しさん
2019/07/19(金) 17:51:44.45ID:+VZsoYG6 noxのadbって別窓でフルスクリーンにすると数字がガッツリ変わるんですけど、noxの座標をどうやって調べればいいか教えてくださいお願いします
366デフォルトの名無しさん
2019/07/19(金) 18:04:34.79ID:TdSe3tZb windowID取得してstatusで取れない?
367デフォルトの名無しさん
2019/07/19(金) 19:08:09.92ID:eawjkefv 話が見えないなあ
数字ってのは座標?
別窓ってのはまさかサブディスプレイ?
adbというかAndroid内で座標なんかズレやしないんだから外側からの与え方、取得の仕方に問題があるだろう
ウインドウ指定で取らずデスクトップ基準で取ってるのでは?
何言ってるのかわからんレベルならスクリプト貼ってくれた方が話しがはやい
数字ってのは座標?
別窓ってのはまさかサブディスプレイ?
adbというかAndroid内で座標なんかズレやしないんだから外側からの与え方、取得の仕方に問題があるだろう
ウインドウ指定で取らずデスクトップ基準で取ってるのでは?
何言ってるのかわからんレベルならスクリプト貼ってくれた方が話しがはやい
368デフォルトの名無しさん
2019/07/20(土) 06:23:49.81ID:5yy6Rgji369デフォルトの名無しさん
2019/07/29(月) 10:35:08.27ID:OnS04pQR UWSC総合スレという名でディスコードのコミュニティを作ってみました。
これから仕事なのでまだ何も記載してませんが、よかったらどうぞ
https://t.co/R0e07jjoOZ 👀
Rock54: Caution(BBR-MD5:b73a9cd27f0065c395082e3925dacf01)
これから仕事なのでまだ何も記載してませんが、よかったらどうぞ
https://t.co/R0e07jjoOZ 👀
Rock54: Caution(BBR-MD5:b73a9cd27f0065c395082e3925dacf01)
370デフォルトの名無しさん
2019/07/29(月) 20:31:52.42ID:nFx6ozTz メアド集めて何する気だよ?
371デフォルトの名無しさん
2019/07/29(月) 21:41:55.00ID:CSar0obt372デフォルトの名無しさん
2019/07/30(火) 20:50:17.33ID:P8HnQUDX LDplayerでゲームを起動し、バックグラウンドで画像認識した場所をクリックという動作をしたいのですがうまくいきません。
ゲームが前面に来ている時は、画像認識して座標は取ってるがクリックせず
ブラウザなどで隠れ裏面に来ている時は画像認識を失敗しています。
IDが取れてないか最初のMOUSEORG指定がおかしいのかとおもうのですが、見てもらえないでしょうか
w_id = getid( GET_ACTIVE_WIN )
mouseorg( w_id ,2 ,MORG_BACK )
と
w_id = getid( "ウィンドウ名" ) //w_id にアクティブウィンドウを格納
Hnd = GETCTLHND( w_id, "RenderWindow")
MOUSEORG(Hnd, MORG_DIRECT, MORG_FORE)
どちらを使っても上記と同じ症状です
OSはWindows10 画像認識にはchkimgxを使っています。
似たような処理を作ったことある方、解決策ご教授頂けないでしょうか。
ゲームが前面に来ている時は、画像認識して座標は取ってるがクリックせず
ブラウザなどで隠れ裏面に来ている時は画像認識を失敗しています。
IDが取れてないか最初のMOUSEORG指定がおかしいのかとおもうのですが、見てもらえないでしょうか
w_id = getid( GET_ACTIVE_WIN )
mouseorg( w_id ,2 ,MORG_BACK )
と
w_id = getid( "ウィンドウ名" ) //w_id にアクティブウィンドウを格納
Hnd = GETCTLHND( w_id, "RenderWindow")
MOUSEORG(Hnd, MORG_DIRECT, MORG_FORE)
どちらを使っても上記と同じ症状です
OSはWindows10 画像認識にはchkimgxを使っています。
似たような処理を作ったことある方、解決策ご教授頂けないでしょうか。
373デフォルトの名無しさん
2019/07/30(火) 20:58:37.57ID:tS2fmUug LDplayerは使ったことがないからわからないけど
バックグラウンド操作が効かないソフトもある
似たような過去スレに似たような質問たくさんあるから一読してみて
バックグラウンド操作が効かないソフトもある
似たような過去スレに似たような質問たくさんあるから一読してみて
374デフォルトの名無しさん
2019/08/02(金) 18:41:27.29ID:R+vlhR/4 NOX用のマクロを作ろうと思ってるのですが、画像認識でつまづいています。
>>244のサイトを参考にテスト用のuwsファイル
https://dotup.org/uploda/dotup.org1911694.png
を走らせた結果が
https://dotup.org/uploda/dotup.org1911695.png
です。
bmpファイルはsaveimgで取得したもので、PCの解像度は1920×1080、NOXの解像度は540×960、ウィンドウサイズの復元もしてあります。
この場合画像認識が上手くいかない原因としてどのような事が考えられますか?
>>244のサイトを参考にテスト用のuwsファイル
https://dotup.org/uploda/dotup.org1911694.png
を走らせた結果が
https://dotup.org/uploda/dotup.org1911695.png
です。
bmpファイルはsaveimgで取得したもので、PCの解像度は1920×1080、NOXの解像度は540×960、ウィンドウサイズの復元もしてあります。
この場合画像認識が上手くいかない原因としてどのような事が考えられますか?
375デフォルトの名無しさん
2019/08/02(金) 19:40:31.57ID:R+vlhR/4 >>374
ちなみに
IFB CHKIMG("テスト用.bmp")
MSGBOX("画像認識に成功しました。<#CR>G_IMG_X = " + G_IMG_X + "<#CR>G_IMG_Y = " + G_IMG_Y)
で画面全体を検索するとNOX上の画像がきちんと認識されます。
ちなみに
IFB CHKIMG("テスト用.bmp")
MSGBOX("画像認識に成功しました。<#CR>G_IMG_X = " + G_IMG_X + "<#CR>G_IMG_Y = " + G_IMG_Y)
で画面全体を検索するとNOX上の画像がきちんと認識されます。
376デフォルトの名無しさん
2019/08/02(金) 20:36:33.96ID:zrwPHBgv あのさあ
コード画像で貼るとか、試すのに全部手打ちさせる気?
判定画像もどんなのか分からんし
なので全く試してないが単に縦横間違ってるとかそんなレベルじゃなかろうね
コード画像で貼るとか、試すのに全部手打ちさせる気?
判定画像もどんなのか分からんし
なので全く試してないが単に縦横間違ってるとかそんなレベルじゃなかろうね
377デフォルトの名無しさん
2019/08/02(金) 21:02:16.41ID:R+vlhR/4 >>376申し訳ないです。
長くなってしまうので画像でと思ったのですが、言われてみれば仰るとおりでした。
改行数の関係で少し変わりますが下のコードです。
winid = getid("NoxPlayer") //ゲームウィンドウを名前で検索して取得
winPosX = STATUS(winid,ST_X)
winPosY = STATUS(winid,ST_Y)
winsizeX = STATUS(winid,ST_WIDTH)
winsizeY = STATUS(winid,ST_HEIGHT)
print "位置X 位置Y 幅 高さ"
print winPosX + " " + winPosY + " " + winsizeX + " " + winsizeY
CALL ChkImgX.uws
x1 = 0
y1 = 0
x2 = 540
y2 = 994
Detect_num = 1
Threshold_delta =20
Target_color = -1
startup_chkimgx() //CHKIMGX関数開始
While True //Wendまでの処理を繰り返す
ifb CHKIMGX("テスト用.bmp", winid, x1, y1, x2, y2, Detect_num, Threshold_delta, Target_color)
print "テスト用を発見しました。" //画像を発見したらログに表示
else //上記の条件全てに当てはまらなかった場合
print "画像が見つかりません" //メッセージを出す。
endif //ifbの処理の終了地点
sleep(3) //()内の秒数待機
Wend
長くなってしまうので画像でと思ったのですが、言われてみれば仰るとおりでした。
改行数の関係で少し変わりますが下のコードです。
winid = getid("NoxPlayer") //ゲームウィンドウを名前で検索して取得
winPosX = STATUS(winid,ST_X)
winPosY = STATUS(winid,ST_Y)
winsizeX = STATUS(winid,ST_WIDTH)
winsizeY = STATUS(winid,ST_HEIGHT)
print "位置X 位置Y 幅 高さ"
print winPosX + " " + winPosY + " " + winsizeX + " " + winsizeY
CALL ChkImgX.uws
x1 = 0
y1 = 0
x2 = 540
y2 = 994
Detect_num = 1
Threshold_delta =20
Target_color = -1
startup_chkimgx() //CHKIMGX関数開始
While True //Wendまでの処理を繰り返す
ifb CHKIMGX("テスト用.bmp", winid, x1, y1, x2, y2, Detect_num, Threshold_delta, Target_color)
print "テスト用を発見しました。" //画像を発見したらログに表示
else //上記の条件全てに当てはまらなかった場合
print "画像が見つかりません" //メッセージを出す。
endif //ifbの処理の終了地点
sleep(3) //()内の秒数待機
Wend
378デフォルトの名無しさん
2019/08/02(金) 21:04:55.14ID:R+vlhR/4 >>376
デスクトップ左端に
https://dotup.org/uploda/dotup.org1911827.jpg
こう置かれてるNoxのAppCenterのアイコン(https://dotup.org/uploda/dotup.org1911829.bmp.html)で認識させてます
デスクトップ左端に
https://dotup.org/uploda/dotup.org1911827.jpg
こう置かれてるNoxのAppCenterのアイコン(https://dotup.org/uploda/dotup.org1911829.bmp.html)で認識させてます
379デフォルトの名無しさん
2019/08/02(金) 22:37:11.99ID:zrwPHBgv うーん? コードは違和感ないけど
試しにwinidじゃなくて0を与えるとどうなる?
※chkimgと同じく全画面という指定
後はsaveimgじゃなくてprintscreenで画像作ってみるとか
試しにwinidじゃなくて0を与えるとどうなる?
※chkimgと同じく全画面という指定
後はsaveimgじゃなくてprintscreenで画像作ってみるとか
380デフォルトの名無しさん
2019/08/02(金) 23:11:18.56ID:R+vlhR/4 >>379
winid = 0って書き方で大丈夫ですかね?
プリントスクリーンで作ってwinid = 0で試してみると認識されたので画像位置をクリックするように書きえ変えてみたのですが実際にはクリックされませんでした。
winid = 0って書き方で大丈夫ですかね?
プリントスクリーンで作ってwinid = 0で試してみると認識されたので画像位置をクリックするように書きえ変えてみたのですが実際にはクリックされませんでした。
381デフォルトの名無しさん
2019/08/02(金) 23:14:15.77ID:R+vlhR/4 >>379
winid = 0
CALL ChkImgX.uws
x1 = 0
y1 = 0
x2 = 0
y2 = 0
Detect_num = 1
Threshold_delta =20
Target_color = -1
startup_chkimgx() //CHKIMGX関数開始
While True //Wendまでの処理を繰り返す
ifb CHKIMGX("テスト用.bmp", winid, x1, y1, x2, y2, Detect_num, Threshold_delta, Target_color)
print "テスト用を発見しました。" //画像を発見したらログに表示
deffence_x=g_imgx_x
deffence_y=g_imgx_y
//画像認識で取得した値を代入してDOSCMDで送る内容を作成
CMD = "cd C:\Program Files (x86)\Nox\bin & nox_adb shell input touchscreen tap " + (deffence_x) + " " + (deffence_y)
print CMD //CMDの内容を確認
DOSCMD(CMD) //Noxに操作を送信
else //上記の条件全てに当てはまらなかった場合
print "画像が見つかりません" //メッセージを出す。
endif //ifbの処理の終了地点
sleep(3) //()内の秒数待機
Wend
これを走らせると
テスト用を発見しました。
cd C:\Program Files (x86)\Nox\bin & nox_adb shell input touchscreen tap 1358 556
と出るのですが実際にはクリックされてない状況です。
winid = 0
CALL ChkImgX.uws
x1 = 0
y1 = 0
x2 = 0
y2 = 0
Detect_num = 1
Threshold_delta =20
Target_color = -1
startup_chkimgx() //CHKIMGX関数開始
While True //Wendまでの処理を繰り返す
ifb CHKIMGX("テスト用.bmp", winid, x1, y1, x2, y2, Detect_num, Threshold_delta, Target_color)
print "テスト用を発見しました。" //画像を発見したらログに表示
deffence_x=g_imgx_x
deffence_y=g_imgx_y
//画像認識で取得した値を代入してDOSCMDで送る内容を作成
CMD = "cd C:\Program Files (x86)\Nox\bin & nox_adb shell input touchscreen tap " + (deffence_x) + " " + (deffence_y)
print CMD //CMDの内容を確認
DOSCMD(CMD) //Noxに操作を送信
else //上記の条件全てに当てはまらなかった場合
print "画像が見つかりません" //メッセージを出す。
endif //ifbの処理の終了地点
sleep(3) //()内の秒数待機
Wend
これを走らせると
テスト用を発見しました。
cd C:\Program Files (x86)\Nox\bin & nox_adb shell input touchscreen tap 1358 556
と出るのですが実際にはクリックされてない状況です。
382デフォルトの名無しさん
2019/08/03(土) 00:23:17.82ID:/xlhahKC windid = 0
のときはデスクトップの座標
winid が getid()で得た値で
それが1以上なら
そのウィンドウの座標
この場合はwinidに0を渡して返ってきた座標からは
ウィンドウのx,y位置とさらに実際の表示領域までの
枠幅を引いてやらないといけない
のときはデスクトップの座標
winid が getid()で得た値で
それが1以上なら
そのウィンドウの座標
この場合はwinidに0を渡して返ってきた座標からは
ウィンドウのx,y位置とさらに実際の表示領域までの
枠幅を引いてやらないといけない
383デフォルトの名無しさん
2019/08/03(土) 00:49:19.44ID:/xlhahKC getid()でとっていた値が対象ウィンドウの
ものでなかった場合を除いてだが
winidに0を指定しただけで認識できるというのは
不思議なので検索領域が広くなったことで単に
違った箇所が誤認識されているのかも
ものでなかった場合を除いてだが
winidに0を指定しただけで認識できるというのは
不思議なので検索領域が広くなったことで単に
違った箇所が誤認識されているのかも
384デフォルトの名無しさん
2019/08/03(土) 01:11:14.59ID:U4dG53It 別にwinid=0じゃなくて直接0で良かったんだけど、まあいいや
で0と画像の作り方両方同時にするんじゃなくて片方ずつではどう?
問題を切り分けたい
ちなみに仮に今の方法でadbにしたいならその座標からウインドウの座標を引いて後タイトルバー分も引けば出来ることはできる
で0と画像の作り方両方同時にするんじゃなくて片方ずつではどう?
問題を切り分けたい
ちなみに仮に今の方法でadbにしたいならその座標からウインドウの座標を引いて後タイトルバー分も引けば出来ることはできる
385デフォルトの名無しさん
2019/08/03(土) 01:12:38.38ID:lOZq4lm8386デフォルトの名無しさん
2019/08/03(土) 01:19:42.46ID:Ks0WXhsa >>382が既に指摘してるけどgetidの戻り値はいくつなのよ
387デフォルトの名無しさん
2019/08/03(土) 01:22:44.43ID:U4dG53It388デフォルトの名無しさん
2019/08/03(土) 01:54:21.96ID:lOZq4lm8 >>384
0にする前のコードでsaveimg、WinShot、プリントスクリーンで試しても変わらずでした
逆に0にした後はどの方法で作った画像でも認識はされます
皆さん色々とご意見ありがとうございます
こういうプログラム的な事をするのが初めてなので煩わせてしまって申し訳ない
0にする前のコードでsaveimg、WinShot、プリントスクリーンで試しても変わらずでした
逆に0にした後はどの方法で作った画像でも認識はされます
皆さん色々とご意見ありがとうございます
こういうプログラム的な事をするのが初めてなので煩わせてしまって申し訳ない
389デフォルトの名無しさん
2019/08/03(土) 01:57:35.42ID:/xlhahKC >>385
>Noxの左上にNoxPlayerとあればgetid("NoxPlayer")っていう認識で間違ってないですか?
たいていそうだが、必ずそうだとはいえない
ヘルプのGETIDを見ると
タイトル: 識別したいウィンドウのタイトル (タイトルの一部分だけでもOK)
なので
とれるIDは
"NoxPlayer_1.txt"や"NoxPlayerについて"などのうち最初にみつけたもの
また
" "などが含まれているのに気づかない場合もある
また
>>378 の画像を見ると
Windowsの標準的な形式のウィンドウスタイルではなく
タイトルバー部分に関して独自の描画をしているようなので
内部的なウィンドウタイトルがNoxPlayerで始まっていない可能性もある
GETID()でとった値の
STATUS(id,ST_X),STATUS(id,ST_Y)などはすでに見ていて
それらしい値になっているのだと思うが
いちおう
STATUS(id,ST_CLASS)がそれらしい名前になっているか
見たほうがいいかも
さらに
GETALLWIN( )
でとったリストの中に"NoxPlayer"で始まるウィンドウタイトルがほかにないことを
確かめれば完璧
>Noxの左上にNoxPlayerとあればgetid("NoxPlayer")っていう認識で間違ってないですか?
たいていそうだが、必ずそうだとはいえない
ヘルプのGETIDを見ると
タイトル: 識別したいウィンドウのタイトル (タイトルの一部分だけでもOK)
なので
とれるIDは
"NoxPlayer_1.txt"や"NoxPlayerについて"などのうち最初にみつけたもの
また
" "などが含まれているのに気づかない場合もある
また
>>378 の画像を見ると
Windowsの標準的な形式のウィンドウスタイルではなく
タイトルバー部分に関して独自の描画をしているようなので
内部的なウィンドウタイトルがNoxPlayerで始まっていない可能性もある
GETID()でとった値の
STATUS(id,ST_X),STATUS(id,ST_Y)などはすでに見ていて
それらしい値になっているのだと思うが
いちおう
STATUS(id,ST_CLASS)がそれらしい名前になっているか
見たほうがいいかも
さらに
GETALLWIN( )
でとったリストの中に"NoxPlayer"で始まるウィンドウタイトルがほかにないことを
確かめれば完璧
390デフォルトの名無しさん
2019/08/03(土) 02:38:29.78ID:lOZq4lm8 >>389
fukidasi("ゲームウィンドウ上でSキー") //Sキー入力待ちの告知
While !(GETKEYSTATE(VK_S)) //Sキー入力まで無限ループ
sleep(0.1)
Wend
fukidasi() //入力待ち告知の吹き出しを消す
winid = getid(GET_ACTIVE_WIN) //Sを押したウィンドウでIDが取得されるので確実に取得できる
cls = STATUS(winid, ST_class)
title = STATUS(winid, ST_title)
print "ウィンドウ名は" + title
print "ウィンドウIDは" + winid
print "ウィンドウクラス名は" + cls
の結果が
ウィンドウ名はNoxPlayer
ウィンドウIDは1
ウィンドウクラス名はQt5QWindowIcon
n = GETALLWIN()
PRINT "ウィンドウの数:" + n
IFB n > 0
FOR i = 0 TO (n - 1)
PRINT ALL_WIN_ID[i] + ":" + STATUS(ALL_WIN_ID[i], ST_TITLE)
NEXT
ELSE
PRINT "ウィンドウが見つかりませんでした"
ENDIF
で全ウィンドウを取得してみた所NoxPlayerは一つだけでした
にもかかわらず0以外では認識されずどうしたものかと…
fukidasi("ゲームウィンドウ上でSキー") //Sキー入力待ちの告知
While !(GETKEYSTATE(VK_S)) //Sキー入力まで無限ループ
sleep(0.1)
Wend
fukidasi() //入力待ち告知の吹き出しを消す
winid = getid(GET_ACTIVE_WIN) //Sを押したウィンドウでIDが取得されるので確実に取得できる
cls = STATUS(winid, ST_class)
title = STATUS(winid, ST_title)
print "ウィンドウ名は" + title
print "ウィンドウIDは" + winid
print "ウィンドウクラス名は" + cls
の結果が
ウィンドウ名はNoxPlayer
ウィンドウIDは1
ウィンドウクラス名はQt5QWindowIcon
n = GETALLWIN()
PRINT "ウィンドウの数:" + n
IFB n > 0
FOR i = 0 TO (n - 1)
PRINT ALL_WIN_ID[i] + ":" + STATUS(ALL_WIN_ID[i], ST_TITLE)
NEXT
ELSE
PRINT "ウィンドウが見つかりませんでした"
ENDIF
で全ウィンドウを取得してみた所NoxPlayerは一つだけでした
にもかかわらず0以外では認識されずどうしたものかと…
391デフォルトの名無しさん
2019/08/03(土) 03:03:14.23ID:U4dG53It さて仕方ないということで>>377のままで実行してみると普通に成功するね
(テスト用を発見しました。が3秒毎に出る)
となると基本的なところを見直そう
環境としてはWindows10? 念のためUWSCのバージョンは5.3.0.2?
あと念のためNoxの設定でレンダリングモードを変えたりしてみた?
自動化ツールUWSC使いよ集まれ21 756- によれば一部の環境でOpenGLではうまく動作しないなどあるらしいよ
(Windowsなのかグラボ依存なのかはっきりとはしない)
(テスト用を発見しました。が3秒毎に出る)
となると基本的なところを見直そう
環境としてはWindows10? 念のためUWSCのバージョンは5.3.0.2?
あと念のためNoxの設定でレンダリングモードを変えたりしてみた?
自動化ツールUWSC使いよ集まれ21 756- によれば一部の環境でOpenGLではうまく動作しないなどあるらしいよ
(Windowsなのかグラボ依存なのかはっきりとはしない)
392デフォルトの名無しさん
2019/08/03(土) 08:20:35.61ID:OFX4DJO3393デフォルトの名無しさん
2019/08/03(土) 08:43:36.26ID:OFX4DJO3394デフォルトの名無しさん
2019/08/03(土) 12:32:06.93ID:lOZq4lm8 >>391
すみません、理由は分からないのですが動くようになりました
というのも訳あってWin7にダウングレードしていたのですが、Win10に戻した所画像が認識されるようになりました
ご協力いただいた皆様本当にありがとうございました
すみません、理由は分からないのですが動くようになりました
というのも訳あってWin7にダウングレードしていたのですが、Win10に戻した所画像が認識されるようになりました
ご協力いただいた皆様本当にありがとうございました
395デフォルトの名無しさん
2019/08/04(日) 13:50:12.50ID:z/hKv82K 画像認識のループマクロで画像が認識されず一定回数ループした場合に別の処理をさせたいのですがどのような手法をとればいいのでしょうか?
396デフォルトの名無しさん
2019/08/04(日) 14:43:10.09ID:YK9Zosi+ 画像が認識できないのとループ回数で処理分けたいのは別の話だし手法というほどもない
自分がやるのならwhileによるループ内に画像認識とカウンタで分岐するifなりselectなりで作るが
後のことはそのうまくいかないスクリプト見ないと何が悪いのかは分からん
自分がやるのならwhileによるループ内に画像認識とカウンタで分岐するifなりselectなりで作るが
後のことはそのうまくいかないスクリプト見ないと何が悪いのかは分からん
397デフォルトの名無しさん
2019/08/10(土) 04:37:33.43ID:7UvH5Dc6 >一定回数ループ
本当にやりたい処理はそうじゃないだろう
本当にやりたい処理はそうじゃないだろう
398デフォルトの名無しさん
2019/08/25(日) 02:21:47.46ID:02nOh0YG noxにchkimgx走らせたらたまにx:-1332736054 y:399917186
とかとんでもない座標が帰ってくるのですが原因わかりません助けてください
とかとんでもない座標が帰ってくるのですが原因わかりません助けてください
399デフォルトの名無しさん
2019/08/25(日) 04:06:47.43ID:YF3o46xU 分からないものは分からないで済ませる方法を考えよう
たまに変になるだけならxyが指定範囲外ならもう一度走らせればいい
たまに変になるだけならxyが指定範囲外ならもう一度走らせればいい
400デフォルトの名無しさん
2019/08/26(月) 14:35:17.89ID:yberui11 確かにそうですね・・・異常値の検知やってみますありがとうございました
401デフォルトの名無しさん
2019/08/26(月) 22:00:32.81ID:D4IbCpMk DOSCMDを管理者として実行する方法ありますか?Windows7です
402デフォルトの名無しさん
2019/08/26(月) 22:10:52.63ID:mEUMz2+C そのままググれ
403デフォルトの名無しさん
2019/08/26(月) 22:21:25.54ID:D4IbCpMk UWSC.exeの設定を変更したあとUWSCを再起動してなかったわ
ありがとう
ありがとう
404デフォルトの名無しさん
2019/08/31(土) 15:41:17.68ID:/dYnoZCL とあるフリーゲームのセーブデータのバックアップを取りたいのですが、1時間毎にファイルサイズを比較して、変化があればバックアップを取るということをしたいです。
(現在はファイルサイズの変化に関わらずバックアップを取るようにしているため、容量がどんどん増えています)
ですが、ファイルサイズの取得方法がググってもイマイチわかりませんでした。
何方か教えていただけませんか?
(現在はファイルサイズの変化に関わらずバックアップを取るようにしているため、容量がどんどん増えています)
ですが、ファイルサイズの取得方法がググってもイマイチわかりませんでした。
何方か教えていただけませんか?
405デフォルトの名無しさん
2019/08/31(土) 16:30:13.80ID:7TXshm9s BETWEENSTR(doscmd(“for %z in (ファイル名) do echo %~zz”), “<#CR>”, “<#CR>”, -1);
試してないので予めごめん。
試してないので予めごめん。
406デフォルトの名無しさん
2019/08/31(土) 17:14:37.69ID:/dYnoZCL >>405
親切にありがとうございます。ダブルクォーテーションを半角に直して、コマンドプロンプトを直接叩くと数字が出てくるのですが、UWSCで
PRINT BETWEENSTR(doscmd("for %z in (ファイル名) do echo %~zz"), "<#CR>", "<#CR>", -1);
とすると、『ECHO は <ON> です。』と出てきて、数字になりません。どうしたらいいでしょうか。
親切にありがとうございます。ダブルクォーテーションを半角に直して、コマンドプロンプトを直接叩くと数字が出てくるのですが、UWSCで
PRINT BETWEENSTR(doscmd("for %z in (ファイル名) do echo %~zz"), "<#CR>", "<#CR>", -1);
とすると、『ECHO は <ON> です。』と出てきて、数字になりません。どうしたらいいでしょうか。
407デフォルトの名無しさん
2019/08/31(土) 17:25:18.95ID:/dYnoZCL 自己解決しました。回答ありがとうございました!
408デフォルトの名無しさん
2019/08/31(土) 18:08:17.65ID:0Yc9lQY2 uwsc使う必要ないような…?
409デフォルトの名無しさん
2019/09/01(日) 19:24:18.75ID:5mFrqnue すみません、以前から同じ問題に悩まされていて、未だに原因が分かりません。
UWSCでandroidを自動化しており、scrcpyというソフトでPCから操作しています。
クリックがうまくされないことが多く、待機時間など入れても全く解決しないのですが、
クリックの前に 「print "クリックします"」という記述を入れると問題なくクリックされるようになります。
このような記述を無意味に入れたくはないのですが、原因は何なのでしょうか?
UWSCでandroidを自動化しており、scrcpyというソフトでPCから操作しています。
クリックがうまくされないことが多く、待機時間など入れても全く解決しないのですが、
クリックの前に 「print "クリックします"」という記述を入れると問題なくクリックされるようになります。
このような記述を無意味に入れたくはないのですが、原因は何なのでしょうか?
410デフォルトの名無しさん
2019/09/01(日) 19:46:09.23ID:5mFrqnue 追加です。
全く同じスクリプトでその症状がWindows10のみに出ます。
Windows7ではprintの記述がなくても問題なくクリックされます。
何かPC側の設定でそのような問題が起きる項目があるのでしょうか?
全く同じスクリプトでその症状がWindows10のみに出ます。
Windows7ではprintの記述がなくても問題なくクリックされます。
何かPC側の設定でそのような問題が起きる項目があるのでしょうか?
411デフォルトの名無しさん
2019/09/01(日) 19:46:25.58ID:zpdGYnJT 問題が再現するスクリプト貼ってくれよ
あと環境やらもね
あと環境やらもね
412デフォルトの名無しさん
2019/09/01(日) 20:13:35.68ID:5mFrqnue NGワードやら、改行が多すぎるやらでスクリプトは貼れないです。
413デフォルトの名無しさん
2019/09/01(日) 20:29:24.70ID:5mFrqnue 色々検証してみましたが、PRINTでなくも関係ないところを一回クリックすると動作するようです。
なのでBTN(LEFT,CLICK,,)を2回連続して書くと一回クリックされます。
もしくは10秒以上の待機を入れればクリックされました。こちらは待機時間が長すぎて実用性がありません。
なのでBTN(LEFT,CLICK,,)を2回連続して書くと一回クリックされます。
もしくは10秒以上の待機を入れればクリックされました。こちらは待機時間が長すぎて実用性がありません。
414デフォルトの名無しさん
2019/09/01(日) 20:41:43.66ID:N1GXnBlH そうですか
415デフォルトの名無しさん
2019/09/01(日) 21:20:42.64ID:zpdGYnJT まあ、Windows10だとそういう問題が多々ある
更新止まってるソフトだし解決しない
まあ、幸いAndroidの操作ならadbという手があるのでbtnの代わりにdoscmdでadbコマンドに置き換えればいいよ
更新止まってるソフトだし解決しない
まあ、幸いAndroidの操作ならadbという手があるのでbtnの代わりにdoscmdでadbコマンドに置き換えればいいよ
416デフォルトの名無しさん
2019/09/01(日) 21:39:50.56ID:5mFrqnue ありがとうございます。色々調べても同じような解決方法しかないみたいですね。
次はadb shell input touchscreen tap x yを試してみたいと思います。
次はadb shell input touchscreen tap x yを試してみたいと思います。
417デフォルトの名無しさん
2019/09/02(月) 09:23:16.27ID:IEOCJvHA サウンドで「プログラムの起動」に何かの音付けると分かるけど
win10って見えないプログラムがしょっちゅう起動してる?から
フォーカスを奪われたようになってるんでない
win10って見えないプログラムがしょっちゅう起動してる?から
フォーカスを奪われたようになってるんでない
418409
2019/09/02(月) 15:24:43.08ID:y60Hvlvu419デフォルトの名無しさん
2019/09/09(月) 11:38:19.09ID:0frhp+Tu スレチかもしれないんですが、UWSCのスクリプトファイルが複数あって、同じ個所を同時に修正するようなソフトってないですか?
WinMergeを使っていますが、3個までしか同時編集できません。
WinMergeを使っていますが、3個までしか同時編集できません。
420デフォルトの名無しさん
2019/09/09(月) 11:38:51.09ID:TLffwesQ 関数化する
421デフォルトの名無しさん
2019/09/09(月) 12:17:09.85ID:eI5EZMSU 関数化というか同じという箇所を別ファイルに切り出してcallするだけでもいい
まあ、変数の管理があるので関数化が望ましいかもだけど
まあ、変数の管理があるので関数化が望ましいかもだけど
422デフォルトの名無しさん
2019/09/12(木) 14:37:32.43ID:pwiI+xHT 今まで使ってた物がwin10アプデ後動かなくて調べたら、原因はわかったんだけど、対処法がわからないのでアドバイスください
ttps://qiita.com/macro_no_deshi/items/dd3b3405123bad0cfe4a
ここのサイトを参考に作ったもので、「サンプルコード(完成形)」の画像を発見したあとの処理にBTN関数を入れると反応がありません。
原因は「MOUSEORGによる補正」の
MOUSEORG(winid,MORG_DIRECT,MORG_FORE)
が原因みたいです。
MOUSEORG関数について読んだのですが、正直良くわかりませんでした。
削除すれば一応動くのですが、どうしたら良いでしょうか?
ttps://qiita.com/macro_no_deshi/items/dd3b3405123bad0cfe4a
ここのサイトを参考に作ったもので、「サンプルコード(完成形)」の画像を発見したあとの処理にBTN関数を入れると反応がありません。
原因は「MOUSEORGによる補正」の
MOUSEORG(winid,MORG_DIRECT,MORG_FORE)
が原因みたいです。
MOUSEORG関数について読んだのですが、正直良くわかりませんでした。
削除すれば一応動くのですが、どうしたら良いでしょうか?
423デフォルトの名無しさん
2019/09/12(木) 15:12:59.56ID:psJkeShP 過去にもそれ何度か話題になってるけど直接的な解決方法はなかった気がする
NoXとかならadbで接続してタップするコマンド送信するとか
NoXとかならadbで接続してタップするコマンド送信するとか
424デフォルトの名無しさん
2019/09/12(木) 18:50:26.13ID:IcXkdgTx 常にデスクトップに表示してマウス取られていいなら消せばいい
それが嫌なら記事の通り
それが嫌なら記事の通り
425デフォルトの名無しさん
2019/09/12(木) 19:48:01.48ID:pwiI+xHT >>423
そうなんですね。情報ありがとうございます。
そうなんですね。情報ありがとうございます。
426デフォルトの名無しさん
2019/09/14(土) 18:38:20.96ID:J9OvsDUU あいまい検索できるCHKIMGXって使うたびにstartup_chkimgxとshutdown_chkimgxではさまないといけないの?
startup_chkimgx()
while true
<処理>
wend
shutdown_chkimgx()
て形ではさむの1回でもあいまい検索できてる気がするんだけど
<処理>のところにいくつもchkimgxて書くこと考えると毎回はさむの大変なんだけど楽なやり方ある?
startup_chkimgx()
while true
<処理>
wend
shutdown_chkimgx()
て形ではさむの1回でもあいまい検索できてる気がするんだけど
<処理>のところにいくつもchkimgxて書くこと考えると毎回はさむの大変なんだけど楽なやり方ある?
427デフォルトの名無しさん
2019/09/14(土) 19:00:58.02ID:suhfvUA6 できてりゃいいし、気になるなら何やってるかスクリプトお読みなさいよ
428デフォルトの名無しさん
2019/09/14(土) 19:29:28.42ID:T/fmJAyy これはもはや初心者ではなくて考えることを放棄した猿
429デフォルトの名無しさん
2019/09/16(月) 00:21:03.12ID:J++fziTo メールアドレスをEXCELからIEのアドレス欄にコピペしようとしたら、コピペ出来ないどころか右クリックもきかない場合はコントロールCもダメなときは、どうすれば良いでしょうか?
430デフォルトの名無しさん
2019/09/16(月) 02:24:56.23ID:c545q6Mo python勉強してuwscでやってたこと移行していってるけど
chkimgxってめちゃくちゃ使い勝手良かったんだなー
うまくここまでいい具合のもの作れないや
chkimgxってめちゃくちゃ使い勝手良かったんだなー
うまくここまでいい具合のもの作れないや
431デフォルトの名無しさん
2019/09/16(月) 03:46:26.17ID:d0MhJ3Yl chkimgxに相当する物が無いのか
人工知能やweb巡回ロボなどで注目されていから
Pythonやってみようかと思っているのに
人工知能やweb巡回ロボなどで注目されていから
Pythonやってみようかと思っているのに
432デフォルトの名無しさん
2019/09/16(月) 06:36:15.46ID:shGVxZhQ433デフォルトの名無しさん
2019/09/16(月) 09:02:03.26ID:J++fziTo434デフォルトの名無しさん
2019/09/17(火) 09:29:48.59ID:Qlpvvbbr OpenCVそのままだね、あいまい検索もパターンマッチングの閾値さげるだけ
連番ファイル名のあいまいとか細かい処理は自分で追加しなきゃいけないけど
name, ext = os.path.splitext(FileName)
multi = glob.glob(name + '.[0-9]' + ext)
連番ファイル名のあいまいとか細かい処理は自分で追加しなきゃいけないけど
name, ext = os.path.splitext(FileName)
multi = glob.glob(name + '.[0-9]' + ext)
435デフォルトの名無しさん
2019/09/17(火) 12:15:59.14ID:W7Brc645 画像の特定の色指定してマッチングとかは?
まあここらへんまで実装するのがただのuwscユーザーとしては難しいって意味じゃないの
まあここらへんまで実装するのがただのuwscユーザーとしては難しいって意味じゃないの
436デフォルトの名無しさん
2019/09/17(火) 23:07:48.56ID:Qcff0eSx 何が難しいのかは本人以外には分からんが難しくたってやりゃできるお手本あるんだからその内できるだろ
437デフォルトの名無しさん
2019/09/21(土) 15:31:11.62ID:MHWtiGlt 質問失礼します。
ifb chkimg("画像名",0,,,,,,IMG_MSK_BGR4)=True
SLEEP(2)
BTN(LEFT,CLICK,G_IMG_X,G_IMG_Y)
SLEEP(1)
Else
endif
で画像をクリックしているのですが目標の画像のすぐ下をクリックする方法ってありますでしょうか?
目標の画像が見つかれば座標に関係なくその画像の下にカーソルが少し移動してクリックするといった感じです。
よろしくお願いします。
ifb chkimg("画像名",0,,,,,,IMG_MSK_BGR4)=True
SLEEP(2)
BTN(LEFT,CLICK,G_IMG_X,G_IMG_Y)
SLEEP(1)
Else
endif
で画像をクリックしているのですが目標の画像のすぐ下をクリックする方法ってありますでしょうか?
目標の画像が見つかれば座標に関係なくその画像の下にカーソルが少し移動してクリックするといった感じです。
よろしくお願いします。
438デフォルトの名無しさん
2019/09/21(土) 15:35:02.99ID:idUljkgM あるんじゃない?
元々そういうソフトだし
元々そういうソフトだし
439デフォルトの名無しさん
2019/09/21(土) 15:47:33.83ID:mk38kF2N 画像の下とはどういう意味か
440デフォルトの名無しさん
2019/09/21(土) 15:48:10.01ID:d3d5sbQS BTNの前にいったん適当な変数へG_IMG_Yを
コピー代入し、それをずらしたい量だけ増加させてから
その変数でBTNを呼ぶ、という単純な話ではなくて?
コピー代入し、それをずらしたい量だけ増加させてから
その変数でBTNを呼ぶ、という単純な話ではなくて?
441デフォルトの名無しさん
2019/09/21(土) 18:30:07.78ID:VtT+26ja 検索画像の座標に関係あるのかないのかどっちなんだ
クリックするかの判定に画像使ってるだけで実際クリックするボタンの位置固定がなら
そもそもg_img_x/y使わず、クリックしたい場所を固定値なり別の変数/定数にしたらいい
クリックするかの判定に画像使ってるだけで実際クリックするボタンの位置固定がなら
そもそもg_img_x/y使わず、クリックしたい場所を固定値なり別の変数/定数にしたらいい
442デフォルトの名無しさん
2019/09/24(火) 21:54:56.01ID:lGKeQ6/A Edge上でドラッグ&ドロップ動作をエミュレーションしようとしてるけどうまく行かない
Edge側の問題っぽいが
Edge側の問題っぽいが
443デフォルトの名無しさん
2019/09/25(水) 02:02:13.55ID:idiO5sU0 EdgeというよりUWPアプリ全般で多分うまくいかないんじゃないの
444デフォルトの名無しさん
2019/09/26(木) 11:47:45.82ID:2E8AEgsX UWSCを今日から始めました。
皆様、宜しくおねがいします。
早速なのですがSLEEPについて教えて下さい
<理解していること>
SLEEP(0.1)
0.1秒スリープ
---------------
SLEEP(RANDOM(2))
0or1or2秒スリープ
---------------
<やりたいこと>
0.01秒から1秒の範囲でランダムにスリープしたい場合は
どうしたら実現できますか?
皆様のお知恵を宜しくおねがいします。
皆様、宜しくおねがいします。
早速なのですがSLEEPについて教えて下さい
<理解していること>
SLEEP(0.1)
0.1秒スリープ
---------------
SLEEP(RANDOM(2))
0or1or2秒スリープ
---------------
<やりたいこと>
0.01秒から1秒の範囲でランダムにスリープしたい場合は
どうしたら実現できますか?
皆様のお知恵を宜しくおねがいします。
445デフォルトの名無しさん
2019/09/26(木) 11:56:29.09ID:8zbcqLQ8 Sleep(Random(100) / 100)
446デフォルトの名無しさん
2019/09/26(木) 12:09:10.09ID:2E8AEgsX447デフォルトの名無しさん
2019/09/26(木) 12:13:50.53ID:bGOHcRaB randomは引数の範囲最大値は出ないことに注意
例示の引数2の場合で言えば0か1しか出ない
で、要するに1〜100の値を求めて100で割れば0.01〜1.00となるわけで
randomの仕様を考慮&利用すると以下の通り
(random(100) + 1) / 100
例示の引数2の場合で言えば0か1しか出ない
で、要するに1〜100の値を求めて100で割れば0.01〜1.00となるわけで
randomの仕様を考慮&利用すると以下の通り
(random(100) + 1) / 100
448デフォルトの名無しさん
2019/09/26(木) 12:20:51.72ID:8zbcqLQ8449デフォルトの名無しさん
2019/09/26(木) 12:46:58.57ID:2E8AEgsX450デフォルトの名無しさん
2019/09/26(木) 13:55:37.41ID:iUaFKvJQ すっごい初歩的な質問かもしれませんが、
メモ帳にもの凄い長い文字列がありその途中に
a
b
c
という1文字ずつの文字列が10個くらいあってそれを全部
d
e
f
に簡単に変える方法ってあるでしょうか?
最終的にはそのabcをdefに変えたもの
ghiに変えたもの、jklに変えたものなど沢山必要なため、手作業で一つ一つ変えていくのだと膨大な時間がかかってしまうためよろしくお願いします。
メモ帳にもの凄い長い文字列がありその途中に
a
b
c
という1文字ずつの文字列が10個くらいあってそれを全部
d
e
f
に簡単に変える方法ってあるでしょうか?
最終的にはそのabcをdefに変えたもの
ghiに変えたもの、jklに変えたものなど沢山必要なため、手作業で一つ一つ変えていくのだと膨大な時間がかかってしまうためよろしくお願いします。
451デフォルトの名無しさん
2019/09/26(木) 14:03:02.51ID:5T2rMbCQ んなもんUWSCじゃなくてエディタの正規表現で置換せーや
452デフォルトの名無しさん
2019/09/26(木) 14:07:22.25ID:bMINaTXu すっごい初歩的な質問だし、やり方も何通りも思いつくけど、お前が思いつかないって事はあとから要件がコロコロ変わるか、全くの初心者かなので一つ一つ手作業でやったほうが早い。
453デフォルトの名無しさん
2019/09/26(木) 14:09:46.30ID:DaWSSFTy Replaceってあったっけメモ帳の置換の方が早そう
454450
2019/09/26(木) 14:25:46.18ID:iUaFKvJQ メモ帳の置換を使った場合
abcという横に並んだ文字列をdefという横に並んだ文字列に変えるってのだと一瞬でできたんですが、縦に並んだ
a
b
c
を
d
e
f
に変える場合だと上手くいかないんですが
何か方法はありますか?
abcという横に並んだ文字列をdefという横に並んだ文字列に変えるってのだと一瞬でできたんですが、縦に並んだ
a
b
c
を
d
e
f
に変える場合だと上手くいかないんですが
何か方法はありますか?
455デフォルトの名無しさん
2019/09/26(木) 14:29:56.39ID:ff/FN5DC 改行を含めて直列にしてから元に戻せば楽なんじゃね
つーか、改行をまたいで文字列置換してくれるエディタがあった気がするが
つーか、改行をまたいで文字列置換してくれるエディタがあった気がするが
456デフォルトの名無しさん
2019/09/26(木) 14:36:55.66ID:5T2rMbCQ 正規表現でぐぐれ
あとはスレチだ失せろ
あとはスレチだ失せろ
457デフォルトの名無しさん
2019/09/26(木) 14:41:33.51ID:bMINaTXu 正規表現なんていらんだろ。。。何いってんだw
458デフォルトの名無しさん
2019/09/26(木) 14:47:35.38ID:PdDoKstg >>455
それこそ、マイクロソフトのワード(苦笑)ですら
置換画面であいまい検索にチェックを入れて
a^pb^pc^p を abc へ置き換えることで可能かと。
秀丸エディタその他のエディタでも一般的にできる。
それこそ、マイクロソフトのワード(苦笑)ですら
置換画面であいまい検索にチェックを入れて
a^pb^pc^p を abc へ置き換えることで可能かと。
秀丸エディタその他のエディタでも一般的にできる。
459デフォルトの名無しさん
2019/09/26(木) 14:53:59.09ID:i7CtdN8G 具体的なことは一切書かず偉そうなことだけ抜かしてるお前こそ一体なんやねん
アホは黙っとけ
アホは黙っとけ
460デフォルトの名無しさん
2019/09/26(木) 14:56:42.66ID:bMINaTXu >>459
間違いしか書いてないやつに言われたくないぞwあほ
間違いしか書いてないやつに言われたくないぞwあほ
461デフォルトの名無しさん
2019/09/26(木) 14:58:41.92ID:3k8gDmD5 別に正規表現でもできるし間違いではなくね?
462デフォルトの名無しさん
2019/09/26(木) 15:00:59.83ID:5T2rMbCQ463デフォルトの名無しさん
2019/09/26(木) 15:04:09.18ID:bMINaTXu 正規表現なんて必要ない。UWSCならREPLACEでも使えばいい。
スレ内で対応可能だし、正規表現でググるとかアホ
スレ内で対応可能だし、正規表現でググるとかアホ
464デフォルトの名無しさん
2019/09/26(木) 15:05:49.73ID:/5glJw3r 何がしたいのかいまいちわからんが
abcをdefに変えるだけなら正規表現は必要ないかもしれんけど
他にも色々変えるんだったらさっさと正規表現でも使ったほうが速いだろ
abcをdefに変えるだけなら正規表現は必要ないかもしれんけど
他にも色々変えるんだったらさっさと正規表現でも使ったほうが速いだろ
465デフォルトの名無しさん
2019/09/26(木) 15:07:24.62ID:bMINaTXu だから「要件がコロコロ変わるか、全くの初心者かなので一つ一つ手作業でやったほうが早い」
466デフォルトの名無しさん
2019/09/26(木) 15:09:23.30ID:5T2rMbCQ マクロの流れで書き換える必要があるならreplace使うのは分かるが
単純にテキストの文字列書き換えるだけでわざわざuwscでreplace使うとかどっちがアホなんだよw
単純にテキストの文字列書き換えるだけでわざわざuwscでreplace使うとかどっちがアホなんだよw
467デフォルトの名無しさん
2019/09/26(木) 15:12:54.58ID:bMINaTXu はいはい。アホとの会話は要件聞き出すより無駄だわ。
わざわざメモ帳で正規表現使う方法でもググっとけw
わざわざメモ帳で正規表現使う方法でもググっとけw
468デフォルトの名無しさん
2019/09/26(木) 15:12:58.19ID:OcEGW6mq >>463
んで、具体的なやり方は?
んで、具体的なやり方は?
469デフォルトの名無しさん
2019/09/26(木) 15:13:06.47ID:DaWSSFTy 行・列関係なく縦に並んだ指定文字なら面白い質問なのに
470デフォルトの名無しさん
2019/09/26(木) 15:14:37.41ID:bMINaTXu だから「要件がコロコロ変わるか、全くの初心者かなので一つ一つ手作業でやったほうが早い」
471デフォルトの名無しさん
2019/09/26(木) 15:19:02.37ID:eZXWH36o abcをdef、ghi、jklとかたくさん変えるとか言ってるし正規表現でやったほうが早いだろ
472デフォルトの名無しさん
2019/09/26(木) 15:20:58.61ID:bMINaTXu >>471
お前は正規表現をググったほうがいいw
お前は正規表現をググったほうがいいw
473デフォルトの名無しさん
2019/09/26(木) 15:24:30.08ID:VJCVWXU0 煽るだけのベテラン基地外がまた湧いたのか
向こうが過疎ってるからってこっちにくんなよ
向こうが過疎ってるからってこっちにくんなよ
474デフォルトの名無しさん
2019/09/26(木) 15:24:57.66ID:5T2rMbCQ 何通りもやり方は思いつくとか言いながら、煽るだけで決して何一つ言わない時点でお察し
どうしようもねえなw
どうしようもねえなw
475デフォルトの名無しさん
2019/09/26(木) 15:27:37.43ID:Dz9wKQLF メモ帳で正規表現なんて使えるの?
476デフォルトの名無しさん
2019/09/26(木) 15:32:08.31ID:bMINaTXu おぃおぃ。本気で置換と正規表現を混同してるやつがいるのか^^;
ググるなら「置換」だし、作業するなら「改行を検索に含めることができるテキストエディタを探す」だぞ。
要件変わるから多分無意味だけどw
> メモ帳で正規表現なんて使えるの?
メモ帳のテキストを吸い出して、正規表現にマッチングさせればいいけど、普通はやらん。
対応してるテキストエディタ使う。
ググるなら「置換」だし、作業するなら「改行を検索に含めることができるテキストエディタを探す」だぞ。
要件変わるから多分無意味だけどw
> メモ帳で正規表現なんて使えるの?
メモ帳のテキストを吸い出して、正規表現にマッチングさせればいいけど、普通はやらん。
対応してるテキストエディタ使う。
477デフォルトの名無しさん
2019/09/26(木) 15:32:23.98ID:balOv07a 教える気もない上級者さんは>>1のスレから出てこないでください
478デフォルトの名無しさん
2019/09/26(木) 15:38:07.93ID:bMINaTXu >>477
そうする。ひどいなここ。
そうする。ひどいなここ。
479デフォルトの名無しさん
2019/09/26(木) 15:42:08.85ID:tLIoXhFC それだけ長文かけるならやり方書いてあげればいいのに
uwscスレって定期的に煽りキチガイ沸くよな
uwscスレって定期的に煽りキチガイ沸くよな
480デフォルトの名無しさん
2019/09/26(木) 16:15:32.47ID:2E8AEgsX >>450
WindowsのTeraPadで置換機能つかって
検索する文字列を「\na\nb\bc\n」
置換後の文字列を「\nd\ne\nf\n」
とすれば
a
b
c
を
d
e
f
とに力技でできます。
UWSCは本日1日目なのでわかりません。
WindowsのTeraPadで置換機能つかって
検索する文字列を「\na\nb\bc\n」
置換後の文字列を「\nd\ne\nf\n」
とすれば
a
b
c
を
d
e
f
とに力技でできます。
UWSCは本日1日目なのでわかりません。
481デフォルトの名無しさん
2019/09/26(木) 16:23:29.46ID:2E8AEgsX 上の補足
qwea
b
c
の変換はちゃんと行わないのですが
先頭から
a
b
c
となるテキストは変換できません。
先頭がaとなるときの表現方法が正規表現で可能なのかな?
詳しくないのでごめんなさい。
qwea
b
c
の変換はちゃんと行わないのですが
先頭から
a
b
c
となるテキストは変換できません。
先頭がaとなるときの表現方法が正規表現で可能なのかな?
詳しくないのでごめんなさい。
482450
2019/09/26(木) 16:40:53.92ID:iUaFKvJQ ありがとうございます。
やってみます。
やってみます。
483デフォルトの名無しさん
2019/09/26(木) 17:09:08.72ID:dB4DsoxS484デフォルトの名無しさん
2019/09/26(木) 18:14:18.26ID:2E8AEgsX485450
2019/09/26(木) 18:45:29.17ID:iUaFKvJQ Meryだと無事に置換ができました。
本当にありがとうございます。助かりました。
本当にありがとうございます。助かりました。
486デフォルトの名無しさん
2019/09/26(木) 19:56:14.78ID:2E8AEgsX487デフォルトの名無しさん
2019/09/27(金) 06:24:51.56ID:HGFU/goi ものすごく初心者な質問させて頂きます。
過去ログのソースコードを見させて頂いているのですが
人によってコマンドの記述が違います。
例
1.print XXXX
2.Print XXXX
3.PRINT XXXX
というように大文字と小文字を混在されています。
なにか理由があるのでしょうか?
過去ログのソースコードを見させて頂いているのですが
人によってコマンドの記述が違います。
例
1.print XXXX
2.Print XXXX
3.PRINT XXXX
というように大文字と小文字を混在されています。
なにか理由があるのでしょうか?
488デフォルトの名無しさん
2019/09/27(金) 08:17:47.20ID:C42tS7ey 言語的に予約語、関数名、変数名に大文字小文字の区別がなく、専用のエディタもないから好きなように書いているだけ
※専用じゃないけどvscodeやサクラエディタ用の拡張や予約語リストはあるので入れることをオススメ
ちなみに例えば自分はPCでなら関数は大文字、変数名は小文字キャメル(定数は大文字)を緩く守るが
掲示板なんかにスマホから短いコード投下する時は面倒なので小文字かな
※専用じゃないけどvscodeやサクラエディタ用の拡張や予約語リストはあるので入れることをオススメ
ちなみに例えば自分はPCでなら関数は大文字、変数名は小文字キャメル(定数は大文字)を緩く守るが
掲示板なんかにスマホから短いコード投下する時は面倒なので小文字かな
489デフォルトの名無しさん
2019/09/27(金) 08:18:23.10ID:P2udmMmf 1.個人のこだわり(ひとによっては宗教レベル)
2.タイピングの癖
3.UWSCの寛容さへの甘え
2.タイピングの癖
3.UWSCの寛容さへの甘え
490デフォルトの名無しさん
2019/09/27(金) 10:12:57.50ID:UTbYC5kd Pascal系は大文字小文字を区別しないものが多い、C系はほとんど区別される。UWSC作った人がPascal好きだったか?
491デフォルトの名無しさん
2019/09/27(金) 10:56:47.41ID:C42tS7ey uwscはPascalというかDelphi由来
492デフォルトの名無しさん
2019/09/27(金) 11:16:12.69ID:HGFU/goi493デフォルトの名無しさん
2019/09/27(金) 21:12:48.80ID:swY7XTEk スクリプト終了しても消えない変数みたいなのは作れますか?
いちいちファイルに保存しないとダメ?
いちいちファイルに保存しないとダメ?
494デフォルトの名無しさん
2019/09/27(金) 21:18:29.42ID:szJrwaq1 ファイルに保存しないと駄目
495デフォルトの名無しさん
2019/09/27(金) 22:06:37.44ID:0SGX+H6c プログラミング自体はじめたばかりの初心者です。
データのあるexcelから1つずつセルを、別ソフトへとコピペさせるループのマクロを作っております。
終了条件として、excelからコピーしたセル内容が空白となるまでループさせたいのですが、ループが始まりません。
どうしたらよろしいでしょうか?
※excelでセル内容が空白の場合に取得される内容は改行(<#CR>)です。
A = GETSTR(0)
WHILE A = "<#CR>"
//excelをアクティブに
CTRLWIN(EXCELID, NORMAL)
CTRLWIN(EXCELID, ACTIVATE)
//セルを1つ移動させる
KBD(VK_DOWN, CLICK, 50)
//セルをコピー
KBD(VK_CTRL, DOWN) // キーを押しっぱなしにする
KBD(VK_C, CLICK, 50)
KBD(VK_CTRL, UP, 50) // キーを離す
//貼り付け先ソフトをアクティブに
CTRLWIN(pasteID, NORMAL)
CTRLWIN(pasteID, ACTIVATE)
//コピー内容を貼り付け
KBD(VK_CTRL, DOWN) // キーを押しっぱなしにする
KBD(VK_V, CLICK, 50)
KBD(VK_CTRL, UP, 50) // キーを離す
A = GETSTR(0)
WEND
データのあるexcelから1つずつセルを、別ソフトへとコピペさせるループのマクロを作っております。
終了条件として、excelからコピーしたセル内容が空白となるまでループさせたいのですが、ループが始まりません。
どうしたらよろしいでしょうか?
※excelでセル内容が空白の場合に取得される内容は改行(<#CR>)です。
A = GETSTR(0)
WHILE A = "<#CR>"
//excelをアクティブに
CTRLWIN(EXCELID, NORMAL)
CTRLWIN(EXCELID, ACTIVATE)
//セルを1つ移動させる
KBD(VK_DOWN, CLICK, 50)
//セルをコピー
KBD(VK_CTRL, DOWN) // キーを押しっぱなしにする
KBD(VK_C, CLICK, 50)
KBD(VK_CTRL, UP, 50) // キーを離す
//貼り付け先ソフトをアクティブに
CTRLWIN(pasteID, NORMAL)
CTRLWIN(pasteID, ACTIVATE)
//コピー内容を貼り付け
KBD(VK_CTRL, DOWN) // キーを押しっぱなしにする
KBD(VK_V, CLICK, 50)
KBD(VK_CTRL, UP, 50) // キーを離す
A = GETSTR(0)
WEND
496495
2019/09/27(金) 22:09:22.58ID:0SGX+H6c 連投スマソ、補足です。
495では省略してしまいましたが、
ループが始まる前に、クリップボードにはなにかしらのデータをコピーしておく
プログラムを書いています。
495では省略してしまいましたが、
ループが始まる前に、クリップボードにはなにかしらのデータをコピーしておく
プログラムを書いています。
497デフォルトの名無しさん
2019/09/27(金) 22:28:07.12ID:szJrwaq1 WHILE A = "<#CR>"
これだとAが改行の間ループすることになる
これだとAが改行の間ループすることになる
498デフォルトの名無しさん
2019/09/27(金) 22:34:58.29ID:Fhm0Ycov WHILE A = "<#CR>"
だと空白である間ループするようになると思うけど
それはそうと
今やろうとしてるような表示上のセルを直接見ながらという手もあるとは思うけど
CSVなりに内容を吐き出させた上でファイルを処理したほうがよいのでは
とくにセル数が多ければそちらのほうが圧倒的に速いし
キー操作をおこなうより安全だと思う
だと空白である間ループするようになると思うけど
それはそうと
今やろうとしてるような表示上のセルを直接見ながらという手もあるとは思うけど
CSVなりに内容を吐き出させた上でファイルを処理したほうがよいのでは
とくにセル数が多ければそちらのほうが圧倒的に速いし
キー操作をおこなうより安全だと思う
499デフォルトの名無しさん
2019/09/27(金) 23:15:06.36ID:C42tS7ey 一列程度ならリストに突っ込んでforで回せばいいと思うが
範囲選択してコピーは省略、手作業なりスクリプト化なりご自由に
//Excelでコピーした列データをリスト化
list = SPLIT(GETSTR(0),"<#CR>")
//貼り付け先をアクティブに
CTRLWIN(pasteID, NORMAL)
CTRLWIN(pasteID, ACTIVATE)
//リスト終端まで回す
FOR A = 0 TO RESIZE(list)
SENDSTR(0, list[A])
SCKEY(pasteID, VK_CTRL, VK_V)
NEXT
貼り付け先がどんなんかよく分からんのでSLEEP入れたりは適当に調整してくれ
範囲選択してコピーは省略、手作業なりスクリプト化なりご自由に
//Excelでコピーした列データをリスト化
list = SPLIT(GETSTR(0),"<#CR>")
//貼り付け先をアクティブに
CTRLWIN(pasteID, NORMAL)
CTRLWIN(pasteID, ACTIVATE)
//リスト終端まで回す
FOR A = 0 TO RESIZE(list)
SENDSTR(0, list[A])
SCKEY(pasteID, VK_CTRL, VK_V)
NEXT
貼り付け先がどんなんかよく分からんのでSLEEP入れたりは適当に調整してくれ
500495
2019/09/28(土) 00:24:45.36ID:qPxO4zq5 皆様迅速なご回答をしていただきありがとうございます。
whileの基礎的なことすら分かっていなかった自分が恥ずかしいです。
マクロは、excelデータから社内の伝票作成ソフトへ相手会社名や振込先口座、金額などを
転記したいために作っております。
>>497
おかげさまで=を<>にしたらイケました。
>>498
csvもあるんですね。確かにキー操作は不安でした。
ただ、このマクロを最終的に「B列のコピーした内容が"x"ならC列を飛ばしてD列をコピー」など
IF?で分岐させていく予定なのですが、それでもcsvで対応できるんですかね・・・
>>499
8列くらいのデータがあるんです、、、
ただ、今後使うことがあるかもしれないので、参考にさせていただきます。
whileの基礎的なことすら分かっていなかった自分が恥ずかしいです。
マクロは、excelデータから社内の伝票作成ソフトへ相手会社名や振込先口座、金額などを
転記したいために作っております。
>>497
おかげさまで=を<>にしたらイケました。
>>498
csvもあるんですね。確かにキー操作は不安でした。
ただ、このマクロを最終的に「B列のコピーした内容が"x"ならC列を飛ばしてD列をコピー」など
IF?で分岐させていく予定なのですが、それでもcsvで対応できるんですかね・・・
>>499
8列くらいのデータがあるんです、、、
ただ、今後使うことがあるかもしれないので、参考にさせていただきます。
501デフォルトの名無しさん
2019/09/28(土) 01:21:29.50ID:Y40c4v1p CSVカンマ区切りにしか対応してないがFGET()で読めば
戻値 = FGET( ファイルID, 行, [列, ダブルコーテイション] )
のように列を指定して取り出せる
渡す相手に対しても相手のウィンドウに直接入れるのではなく
ファイルをつくり渡すことも考えられる
相手がカンマ区切りのCSVを読み込めるならFPUT()で書き出し安いが
そうでなかったとしてもXMLやJSONあるいは相手の独自形式のファイルに
して受け渡すことは検討してみたほうがいいと思う
戻値 = FGET( ファイルID, 行, [列, ダブルコーテイション] )
のように列を指定して取り出せる
渡す相手に対しても相手のウィンドウに直接入れるのではなく
ファイルをつくり渡すことも考えられる
相手がカンマ区切りのCSVを読み込めるならFPUT()で書き出し安いが
そうでなかったとしてもXMLやJSONあるいは相手の独自形式のファイルに
して受け渡すことは検討してみたほうがいいと思う
502デフォルトの名無しさん
2019/09/28(土) 01:51:10.04ID:Y40c4v1p あるいは1行まるごとを読んでSPLIT()で配列化して扱える
ファイルを読んで新しいファイルを作るような場合だと
もしかしたらperlやpythonで扱うほうが楽かもしれないが
ファイルを読んで新しいファイルを作るような場合だと
もしかしたらperlやpythonで扱うほうが楽かもしれないが
503デフォルトの名無しさん
2019/09/28(土) 04:36:04.09ID:va6TJWDv >>500
ん、rpa的なことやるならuwscはやめた方がいいよ
理由は色々あるが懸念の通りexcelフォーマットを読み解き柔軟に組むのは不可能じゃないが向いてない
そういうのはVBAか標準でexcel操作可能なrpa用ソフト使った方がいい
(まあ、uwscもproはちょっとexcel専用関数あるんだけど…)
自分が組むならまずは分岐とか余りしなくて済むような、単純作業のインプットになるデータフォーマットを考える
(何なら貼り付け先のソフトの画面全項目でもいい)
そのフォーマットにexcelから落とし込むのは恐らくはVBAが適当で、転記はuwscにやらせるのがいいんじゃないかな
excelから直接別ソフトへ転記は無駄に難易度上がるだけだよ
ん、rpa的なことやるならuwscはやめた方がいいよ
理由は色々あるが懸念の通りexcelフォーマットを読み解き柔軟に組むのは不可能じゃないが向いてない
そういうのはVBAか標準でexcel操作可能なrpa用ソフト使った方がいい
(まあ、uwscもproはちょっとexcel専用関数あるんだけど…)
自分が組むならまずは分岐とか余りしなくて済むような、単純作業のインプットになるデータフォーマットを考える
(何なら貼り付け先のソフトの画面全項目でもいい)
そのフォーマットにexcelから落とし込むのは恐らくはVBAが適当で、転記はuwscにやらせるのがいいんじゃないかな
excelから直接別ソフトへ転記は無駄に難易度上がるだけだよ
504デフォルトの名無しさん
2019/09/28(土) 06:16:08.57ID:Ct1nF35m 向いてないのか
職場でRPAが話題になってるの聞きながらuwscでいいじゃんって思ってた
職場でRPAが話題になってるの聞きながらuwscでいいじゃんって思ってた
505デフォルトの名無しさん
2019/09/28(土) 06:30:07.11ID:CcJW/+z6 向いてないと言うか力技なんだよ
データをcsvで読みこんで対象のテキストボックスに流し込むとかやりようはありそう
データをcsvで読みこんで対象のテキストボックスに流し込むとかやりようはありそう
506デフォルトの名無しさん
2019/09/28(土) 20:20:42.41ID:2HxgDAhh 今日でこのソフトに出会って3日目なんですけど
むちゃくちゃ便利ですね。
今まで手動で3時間くらいポチポチしてたことが
皆さんのソースコードを読みながらお茶してるだけで勝手にやってくれる
もうちょい早く出会ってPro版を購入したかった。
むちゃくちゃ便利ですね。
今まで手動で3時間くらいポチポチしてたことが
皆さんのソースコードを読みながらお茶してるだけで勝手にやってくれる
もうちょい早く出会ってPro版を購入したかった。
507デフォルトの名無しさん
2019/09/28(土) 21:58:40.51ID:Bvcc+55+ CSV なら、Ruby で処理するのが簡単
508デフォルトの名無しさん
2019/09/29(日) 00:24:15.19ID:2oHQQmaP いやcsv処理する話しじゃないんで…
509デフォルトの名無しさん
2019/09/29(日) 17:38:04.40ID:yyfVEle8 このソフトてモニタースリープ状態のまま動かすのて無理ですかね?
510デフォルトの名無しさん
2019/09/29(日) 17:42:46.79ID:4kqLeu2A uwscでマウスのカーソルを移動させても反応しません
手動で移動させると反応します
この違いはなぜ起こるのでしょう
mmvで移動させています
クリックは両方とも反応します
手動で移動させると反応します
この違いはなぜ起こるのでしょう
mmvで移動させています
クリックは両方とも反応します
511デフォルトの名無しさん
2019/09/29(日) 18:04:51.80ID:4kqLeu2A 連投すみません
uwscではマウスオーバーしたという判定が出ないんです
html5の仕組みが関係しているんでしょうか
uwscではマウスオーバーしたという判定が出ないんです
html5の仕組みが関係しているんでしょうか
512デフォルトの名無しさん
2019/09/29(日) 19:15:04.42ID:uzWuDMUd 試してみたいからスクリプト貼ってくれよ×2
513デフォルトの名無しさん
2019/09/29(日) 22:43:58.25ID:NTZExMlG514デフォルトの名無しさん
2019/09/29(日) 22:51:03.21ID:NTZExMlG515デフォルトの名無しさん
2019/09/30(月) 06:38:09.68ID:PihPYg9U マウスオーバーってマウスカーソルが要素の境界またいだら起きるイベントだったりしない?
516デフォルトの名無しさん
2019/09/30(月) 09:37:01.91ID:n0JFz+mK517デフォルトの名無しさん
2019/09/30(月) 11:10:24.43ID:jC4keZpM それは幻想だ
518デフォルトの名無しさん
2019/09/30(月) 14:38:39.72ID:dVa1Usr4 RPAはボタンやOCR的に画面の字を認識するのはデフォだろ
UWSCの画像認識はお世辞にもry
UWSCの画像認識はお世辞にもry
519デフォルトの名無しさん
2019/10/01(火) 23:49:48.17ID:s21ezsHI520デフォルトの名無しさん
2019/10/08(火) 13:22:45.54ID:9e1T1J7x Noxをアクティブ化せずに日本語の文字列を入力したいのですが何か良い方法は無いでしょうか
・MOUSEORG(ID,2)を使ってCtrl+VをKBDで送信、SENDSTRのACC指定を2にして実行
→反応せず
・ADBKeyBoardをインストール後、DOSCMDにて
nox_adb.exe shell ime set com.android.adbkeyboard/.AdbIME
nox_adb.exe shell am broadcast -a ADB_INPUT_TEXT --es msg 'テスト' を送信
→反応せず
・MOUSEORG(ID,2)を使ってCtrl+VをKBDで送信、SENDSTRのACC指定を2にして実行
→反応せず
・ADBKeyBoardをインストール後、DOSCMDにて
nox_adb.exe shell ime set com.android.adbkeyboard/.AdbIME
nox_adb.exe shell am broadcast -a ADB_INPUT_TEXT --es msg 'テスト' を送信
→反応せず
521デフォルトの名無しさん
2019/10/08(火) 17:10:33.10ID:Jw4k5nXF >>520
MOUSEORG(ID,1)だとできるの?
MOUSEORG(ID,1)だとできるの?
522デフォルトの名無しさん
2019/10/08(火) 19:10:24.22ID:9e1T1J7x >>521
KBDとACC指定デフォルトのSENDSTRは入力が通ります
KBDとACC指定デフォルトのSENDSTRは入力が通ります
523デフォルトの名無しさん
2019/10/08(火) 19:25:09.29ID:WUNHA4Q/ 変なことせずに単に
nox_adb shell input text ‘文字列’
じゃなんか駄目なのかね
テキストボックスにフォーカスあたってる?
nox_adb shell input text ‘文字列’
じゃなんか駄目なのかね
テキストボックスにフォーカスあたってる?
524デフォルトの名無しさん
2019/10/08(火) 20:18:11.78ID:9e1T1J7x525デフォルトの名無しさん
2019/10/08(火) 20:40:35.50ID:WUNHA4Q/ なるほど、そういえば自分も同じことやった気がする
結局どうやったかなあ
input keyevent 279
(もしくはKEYCODE_PASTE)
でnox内のクリップボードから貼り付けは出来るよね
で、sendstrだと直接Windows側のクリップボードに送っちゃうから確かnox内に送れなくてなんかしたんだけど何かを忘れた
Windows側でctrl+cとかそんなレベルのことやったような…sendstrのパラメータで解決したようなうろ覚え
結局どうやったかなあ
input keyevent 279
(もしくはKEYCODE_PASTE)
でnox内のクリップボードから貼り付けは出来るよね
で、sendstrだと直接Windows側のクリップボードに送っちゃうから確かnox内に送れなくてなんかしたんだけど何かを忘れた
Windows側でctrl+cとかそんなレベルのことやったような…sendstrのパラメータで解決したようなうろ覚え
526デフォルトの名無しさん
2019/10/09(水) 01:21:59.63ID:dWWBbVm8 >>525
確かにNox内のクリップボードにある文字列は貼り付け出来ますね
ただ同じくUWSCからNox内のクリップボードに文字列を送る方法が分からなくて、あーだこーだしてる内に解決しました
NoxでADBKeyBoardを使う場合はAndroid7でないと動作しないようで、
Android7でインスタンスを作り直したらBroadcastで2バイト文字の送信が出来ました
UWSCというよりAndroidの質問になってしまいましたが、回答してくれた方々ありがとうございました
確かにNox内のクリップボードにある文字列は貼り付け出来ますね
ただ同じくUWSCからNox内のクリップボードに文字列を送る方法が分からなくて、あーだこーだしてる内に解決しました
NoxでADBKeyBoardを使う場合はAndroid7でないと動作しないようで、
Android7でインスタンスを作り直したらBroadcastで2バイト文字の送信が出来ました
UWSCというよりAndroidの質問になってしまいましたが、回答してくれた方々ありがとうございました
527デフォルトの名無しさん
2019/10/11(金) 02:29:57.15ID:l8XLJu9S 今pro番を使おうと思ったらどうしたらいいですか?
528デフォルトの名無しさん
2019/10/11(金) 06:58:36.99ID:Td6I+Zpy Pro版のインストールファイルを入手できれば
方法はあるけれど....
方法はあるけれど....
529デフォルトの名無しさん
2019/10/11(金) 07:57:18.50ID:aMgrTkTz ファイルがあってもライセンスキーがなければだめでしょ
530デフォルトの名無しさん
2019/10/16(水) 21:26:16.96ID:2hMqi2nO 質問なのですが、万が一のためにマクロ実行中に、Escキーを押すと
マクロを中断させたいのですが、Escキー以外は操作を無効にさせたいです。
LockHardを覚えましたが、Escキーが効かなくなってしまいます・・・
sethotkey(VK_ESC, 0, "ForceStop")
LockHard(true)
マクロを中断させたいのですが、Escキー以外は操作を無効にさせたいです。
LockHardを覚えましたが、Escキーが効かなくなってしまいます・・・
sethotkey(VK_ESC, 0, "ForceStop")
LockHard(true)
531デフォルトの名無しさん
2019/10/16(水) 23:23:09.03ID:Feea5J53 STOPFORM()出しといたらダメなの
あとLOCKHARDEX()でウィンドウ限定するとかは
あとLOCKHARDEX()でウィンドウ限定するとかは
532デフォルトの名無しさん
2019/10/17(木) 12:12:39.95ID:A4Rdxp6g533デフォルトの名無しさん
2019/10/17(木) 12:52:54.52ID:A4Rdxp6g たびたび質問ですみません。
ものすごく初歩的なことなのかもしれませんが、chkimgxって画面に前面で表示されていないのだめなのでしょうか?
2つのソフトをsckeyでキー操作しているのですが、片方が裏にまわってしまうと認識していないような気がします。
とりあえずの対策として、acw(0,0)とctrlwin(showとtopmost)でウインドウ位置+手前表示固定しているのですが。
ものすごく初歩的なことなのかもしれませんが、chkimgxって画面に前面で表示されていないのだめなのでしょうか?
2つのソフトをsckeyでキー操作しているのですが、片方が裏にまわってしまうと認識していないような気がします。
とりあえずの対策として、acw(0,0)とctrlwin(showとtopmost)でウインドウ位置+手前表示固定しているのですが。
534デフォルトの名無しさん
2019/10/17(木) 13:06:59.02ID:bO7Ftz48 MOUSEORGの引数が間違ってなければウィンドウが被ると駄目なソフトなんでしょ
その2つのソフト名は?他に使ってる人が居れば情報が得られるかもしれない
その2つのソフト名は?他に使ってる人が居れば情報が得られるかもしれない
535デフォルトの名無しさん
2019/10/17(木) 14:09:22.00ID:tJ4XAWvT 例えばNoxだと単発ウインドウなんで裏に隠れてても取れる
BlueStacksだと親ウインドウしか指定してないと描画してる子ウインドウが隠れると取れない、子ウインドウを指定すればいい
BlueStacksだと親ウインドウしか指定してないと描画してる子ウインドウが隠れると取れない、子ウインドウを指定すればいい
536デフォルトの名無しさん
2019/10/17(木) 21:35:08.48ID:4XXN/n+s537デフォルトの名無しさん
2019/10/22(火) 02:49:35.92ID:L/O8BxfD UWSC+NOX環境でadb使ってダブルタップをする場合ってどうすれば良いのですか?
DOSCMD("cd C:\Nox\bin & nox_adb shell input touchscreen tap " + (370) + " " + (600))
sleep(0.1)
DOSCMD("cd C:\Nox\bin & nox_adb shell input touchscreen tap " + (370) + " " + (600))
と書いてみましたがだめでした。アドバイスお願いします
DOSCMD("cd C:\Nox\bin & nox_adb shell input touchscreen tap " + (370) + " " + (600))
sleep(0.1)
DOSCMD("cd C:\Nox\bin & nox_adb shell input touchscreen tap " + (370) + " " + (600))
と書いてみましたがだめでした。アドバイスお願いします
538デフォルトの名無しさん
2019/10/22(火) 04:41:04.07ID:a1/9gbM9 シングルタップはできてるんだよね?
539デフォルトの名無しさん
2019/10/22(火) 13:39:26.21ID:L/O8BxfD >>538
シングルタップは問題なく動いています
シングルタップは問題なく動いています
540デフォルトの名無しさん
2019/10/22(火) 13:46:16.17ID:a1/9gbM9 >>539
Sleepを増やしてどうか
Sleepを増やしてどうか
541デフォルトの名無しさん
2019/10/22(火) 13:56:35.11ID:8YNql35h いちいち、cdから始めるから間隔空き過ぎって話じゃないの?
shell以降で連続してタップ送るとか、path通して処理時間短縮するとかそういうアプローチの仕方してみたら
shell以降で連続してタップ送るとか、path通して処理時間短縮するとかそういうアプローチの仕方してみたら
542デフォルトの名無しさん
2019/10/24(木) 18:01:47.14ID:xBrr20Dc >>541
多分そうじゃないかな。
nox_adb.exe はフルパスで.exeも略さずに記載する。
sleep 0.1 は消してみる。
それでもだめなら、android本体側にダブルタップの
イベントを用意し、それをadbで起動する手がある。
試していないが例えば下記。
https://stackoverflow.com/questions/25865259/how-to-make-a-double-tap-to-expand-the-video-screen-using-android-adb-commands
https://sp.ch.nicovideo.jp/sakaki_sourai/blomaga/ar1232345
多分そうじゃないかな。
nox_adb.exe はフルパスで.exeも略さずに記載する。
sleep 0.1 は消してみる。
それでもだめなら、android本体側にダブルタップの
イベントを用意し、それをadbで起動する手がある。
試していないが例えば下記。
https://stackoverflow.com/questions/25865259/how-to-make-a-double-tap-to-expand-the-video-screen-using-android-adb-commands
https://sp.ch.nicovideo.jp/sakaki_sourai/blomaga/ar1232345
543デフォルトの名無しさん
2019/10/25(金) 10:35:07.95ID:V94JerTM Noxの話題が出ているので便乗して…
CHKIMG関数をNoxウィンドウに走らせると画面がチラついてそのまま真っ暗になることがあります
MOUSEORGでMORG_FOREを指定してもチラつきが抑えられません
発生頻度は数時間に1回発生するかどうかで偶にという感じです
解決策か原因をご存知の方はいらっしゃいませんか
環境はOSがWindows10、Noxのバージョンが6.0.8.3です
CHKIMG関数をNoxウィンドウに走らせると画面がチラついてそのまま真っ暗になることがあります
MOUSEORGでMORG_FOREを指定してもチラつきが抑えられません
発生頻度は数時間に1回発生するかどうかで偶にという感じです
解決策か原因をご存知の方はいらっしゃいませんか
環境はOSがWindows10、Noxのバージョンが6.0.8.3です
544デフォルトの名無しさん
2019/10/25(金) 11:34:44.08ID:iWBj7Wic noxの設定で描画のOpenGLをDirectXに変えてみるとか
545デフォルトの名無しさん
2019/10/25(金) 12:17:47.97ID:Pn1d2knk546デフォルトの名無しさん
2019/10/25(金) 12:53:23.96ID:gsbQkWqD >>545
試してないから出来るか微妙な気もするけど
shellで1回区切ればリモートシェル状態になるので
nox_adb shell & input ~ & input ~ & exit
とする(exitなくてもいいかも?)
次善策としては
nox_adb shell input ~ & nox_adb shell input ~
とする
試してないから出来るか微妙な気もするけど
shellで1回区切ればリモートシェル状態になるので
nox_adb shell & input ~ & input ~ & exit
とする(exitなくてもいいかも?)
次善策としては
nox_adb shell input ~ & nox_adb shell input ~
とする
547デフォルトの名無しさん
2019/10/25(金) 17:43:44.15ID:Pn1d2knk >>546 ありがとうございます
DOSCMD("C:\Nox\bin\nox_adb.exe shell & input touchscreen tap 600 300 & input touchscreen tap 600 300 & exit")
これでやってみましたがUWSCが落ちました
一応
DOSCMD("C:\Nox\bin\nox_adb.exe shell input touchscreen tap 600 300 & C:\Nox\bin\nox_adb.exe shell input touchscreen tap 500 300")
これで2回クリックされていました。ですが2行で書くよりはわずかに早くなった程度でゲーム側でダブルタップとして認識してくれませんでした
DOSCMD("C:\Nox\bin\nox_adb.exe shell & input touchscreen tap 600 300 & input touchscreen tap 600 300 & exit")
これでやってみましたがUWSCが落ちました
一応
DOSCMD("C:\Nox\bin\nox_adb.exe shell input touchscreen tap 600 300 & C:\Nox\bin\nox_adb.exe shell input touchscreen tap 500 300")
これで2回クリックされていました。ですが2行で書くよりはわずかに早くなった程度でゲーム側でダブルタップとして認識してくれませんでした
548デフォルトの名無しさん
2019/10/25(金) 18:48:26.13ID:gsbQkWqD549デフォルトの名無しさん
2019/10/29(火) 18:26:13.64ID:tLCpEMn0 Windows10については徐々に更新されているらしい
Windows Command-Line: Unicode and UTF-8 Output Text Buffer
https://devblogs.microsoft.com/commandline/windows-command-line-unicode-and-utf-8-output-text-buffer/
Windows Command-Line: Unicode and UTF-8 Output Text Buffer
https://devblogs.microsoft.com/commandline/windows-command-line-unicode-and-utf-8-output-text-buffer/
551デフォルトの名無しさん
2019/10/30(水) 22:06:29.29ID:zKjMcLjE もしかしてですけど、excelのCOMオブジェクトでシート名を指定して
それをアクティブにするにはpro版じゃないとできないのでしょうか?
(XLACTIVATEというpro専用関数を見つけました・・・)
たとえば、「test1」と「test2」というシートを交互に選択したいのですが。
それをアクティブにするにはpro版じゃないとできないのでしょうか?
(XLACTIVATEというpro専用関数を見つけました・・・)
たとえば、「test1」と「test2」というシートを交互に選択したいのですが。
552デフォルトの名無しさん
2019/10/30(水) 22:20:41.62ID:zKjMcLjE たびたびすみません。
既に開いているexcelファイルに対してrange.selectなどの操作をしたいのですが、
サンプルスクリプトを改変しながらやっておりますが、
EXCEL.Workbooks.add() // 新規ワークブック作成
を抜くとcomエラーが出ます。
どうすればよいのでしょうか・・・
既に開いているexcelファイルに対してrange.selectなどの操作をしたいのですが、
サンプルスクリプトを改変しながらやっておりますが、
EXCEL.Workbooks.add() // 新規ワークブック作成
を抜くとcomエラーが出ます。
どうすればよいのでしょうか・・・
553デフォルトの名無しさん
2019/10/31(木) 22:19:57.30ID:2PR/MUI3 そういう場合Activeworkbookで拾うんだよ
554デフォルトの名無しさん
2019/11/13(水) 14:06:54.83ID:KJOE9J4P 作者さんはお亡くなりになられたのですか?
555デフォルトの名無しさん
2019/11/13(水) 21:11:38.75ID:HJ+xL4oZ うn
556デフォルトの名無しさん
2019/11/14(木) 00:26:50.94ID:1xX/pUlc ついにFirefoxの動作が思わしくなくなったので卒業した
557デフォルトの名無しさん
2019/11/24(日) 21:08:58.59ID:twqCowHe ずっとWindows7で使用していたスクリプトをWindows10で実行したところうまく動かないので
UWSCを5.0から5.302へアップしたら今度はエラーが出て実行すらしなくなってしまいました
今まで動いていたスクリプトがなぜエラーになったのか見当がつきません
同じ経験をして解決された方いましたら教えて下さい
エラー箇所はforループで起こりネスト構造がおかしいような内容でした
よろしくおねがいします
UWSCを5.0から5.302へアップしたら今度はエラーが出て実行すらしなくなってしまいました
今まで動いていたスクリプトがなぜエラーになったのか見当がつきません
同じ経験をして解決された方いましたら教えて下さい
エラー箇所はforループで起こりネスト構造がおかしいような内容でした
よろしくおねがいします
558デフォルトの名無しさん
2019/11/24(日) 22:55:11.94ID:7ZFsEzWw ソース見せてもらえへんとなんとも
559デフォルトの名無しさん
2019/11/25(月) 14:38:22.16ID:7t0vtsJ9 >>557 ですが解決しました
因みにforループの中のif文で
if xx then 処理A
elseif yy
処理B
else
処理C
endif
といった書き方をところどころしていたのですが
1行でif xx then 処理 の後ブロック構文ががだめになったみたいで
全部
if xx
処理A
にしたら動きました
因みにforループの中のif文で
if xx then 処理A
elseif yy
処理B
else
処理C
endif
といった書き方をところどころしていたのですが
1行でif xx then 処理 の後ブロック構文ががだめになったみたいで
全部
if xx
処理A
にしたら動きました
560デフォルトの名無しさん
2019/11/25(月) 14:56:34.71ID:E9DgYFh2 ifb って書けば良いのでは?
561デフォルトの名無しさん
2019/11/25(月) 15:52:04.30ID:zoSkKdve >>559
5302のヘルプ見るとその書き方は載ってないからもともと非対応だったのかも
5302のヘルプ見るとその書き方は載ってないからもともと非対応だったのかも
562デフォルトの名無しさん
2019/11/25(月) 21:00:32.82ID:efEnk7rY 構文解釈してるのはUWSC自体のはずだと思うけど
なんでOSの影響受けるんだろう?
なんでOSの影響受けるんだろう?
563デフォルトの名無しさん
2019/11/25(月) 22:32:08.47ID:QpqOy3LM x86→x64だと結構影響あるよ
特にActiveX使ってるとバグ作り込みやすい
特にActiveX使ってるとバグ作り込みやすい
564デフォルトの名無しさん
2019/11/26(火) 00:20:42.15ID:Swtl+iDB sckeyって裏マクロ非対応ですか?
変数に入れた文字列を送りたいのですが・・・
変数に入れた文字列を送りたいのですが・・・
565デフォルトの名無しさん
2019/11/26(火) 02:13:46.52ID:Swtl+iDB すみません、sendstrの間違いでした、、、
566デフォルトの名無しさん
2019/11/26(火) 16:25:19.36ID:Mtvvcsi1 >>560
どのバージョンからか忘れたけどifでも ifb でもどっちでも良くなったと説明書きがあったと思うのですが
それ以来ifb は使用してないです 結構昔です 10年以上前かも
>>561
今まで動いていたのは作者のバグだったのでしょうか?
それよりエラーメッセージが日本語になったのは驚きました
あとwin7のエラーメッセージは編集して行が変わっててもその都度エラーが発生した行番号を表示しますが
win10は編集して行が変わっても最初に表示した行番号を表示します
ファイルを編集してもすぐには反映されないのかと思いましたがとりあえずエラーは出なくなったので原因はわかりませ
後iniファイルを起動時に読みこんだ値と変わってしまっていてまともに動きません
現在調査中ですがわかる方いたら教えて下さい
あと7ではタスクバーから起動したり終了させたり(マウス中ボタン)できてたのもできなくなって大変困ってます
他にも問題だらけでwin10への以降は不可能な気がしてきて気が重いです
どのバージョンからか忘れたけどifでも ifb でもどっちでも良くなったと説明書きがあったと思うのですが
それ以来ifb は使用してないです 結構昔です 10年以上前かも
>>561
今まで動いていたのは作者のバグだったのでしょうか?
それよりエラーメッセージが日本語になったのは驚きました
あとwin7のエラーメッセージは編集して行が変わっててもその都度エラーが発生した行番号を表示しますが
win10は編集して行が変わっても最初に表示した行番号を表示します
ファイルを編集してもすぐには反映されないのかと思いましたがとりあえずエラーは出なくなったので原因はわかりませ
後iniファイルを起動時に読みこんだ値と変わってしまっていてまともに動きません
現在調査中ですがわかる方いたら教えて下さい
あと7ではタスクバーから起動したり終了させたり(マウス中ボタン)できてたのもできなくなって大変困ってます
他にも問題だらけでwin10への以降は不可能な気がしてきて気が重いです
567デフォルトの名無しさん
2019/11/27(水) 02:18:16.73ID:7G4RG5sM 数年前の事(Win7→Win10、UWSCバージョンアップ)を今更騒いでも当時の記憶掘り出せるかは怪しいもんだと思うし
スクリプト全体像なり再現用のミニマムコードでもくれなきゃこっちで確認なんかできないよ
特にWin10では色々問題あったがほとんどの人はとっくに対応しちゃって何が問題だったか忘れてるか
UWSC自体に見切りつけて簡単に使えるところにしか使ってないというのが現状と思われる
てかね、Win10自体も最近1909出たばかリで、またUWSCの動作が何か変わっているかもしれないし変わってないかもしれない
ただ言えることはUWSCは今後更新されないので、改善は見込めないということ
スクリプト全体像なり再現用のミニマムコードでもくれなきゃこっちで確認なんかできないよ
特にWin10では色々問題あったがほとんどの人はとっくに対応しちゃって何が問題だったか忘れてるか
UWSC自体に見切りつけて簡単に使えるところにしか使ってないというのが現状と思われる
てかね、Win10自体も最近1909出たばかリで、またUWSCの動作が何か変わっているかもしれないし変わってないかもしれない
ただ言えることはUWSCは今後更新されないので、改善は見込めないということ
568デフォルトの名無しさん
2019/11/27(水) 03:42:15.27ID:DxUr7XIY >>566
まさかと思うけどUWSCのフォルダを
Program Files
Program Files (x86)
に置いてないよね
もし置いていたら、いまからでも遅くないから、そこじゃないどこかへ
まさかと思うけどUWSCのフォルダを
Program Files
Program Files (x86)
に置いてないよね
もし置いていたら、いまからでも遅くないから、そこじゃないどこかへ
569デフォルトの名無しさん
2019/11/27(水) 14:33:22.39ID:8E8c4VQb そ〜こではないど〜こか〜へと〜
570デフォルトの名無しさん
2019/11/27(水) 21:15:02.15ID:aGnYyAi4 excelブックのシートすべてに対して各シートの1行目に検索をかけ、「印刷対象」というワードが存在する場合、そのシートを印刷する
というマクロなのですが、1回目ループの印刷されたところでcomエラーが出てしまいます。
どうしたらよいのでしょうか・・・?
EXCEL = CREATEOLEOBJ("Excel.Application")
EXCEL.visible = True
EXCEL.workbooks.add()
WITH EXCEL
FOR A = 1 TO .Sheets.count
.Sheets(A).Select
printiffind = .Range("1:1").Find("印刷対象")
printif = .Cells(printiffind.row , printiffind.column).value
msgbox(printif)
IF printif = "印刷対象" THEN
.activesheet.printout
else
ENDIF
NEXT
ENDWITH
というマクロなのですが、1回目ループの印刷されたところでcomエラーが出てしまいます。
どうしたらよいのでしょうか・・・?
EXCEL = CREATEOLEOBJ("Excel.Application")
EXCEL.visible = True
EXCEL.workbooks.add()
WITH EXCEL
FOR A = 1 TO .Sheets.count
.Sheets(A).Select
printiffind = .Range("1:1").Find("印刷対象")
printif = .Cells(printiffind.row , printiffind.column).value
msgbox(printif)
IF printif = "印刷対象" THEN
.activesheet.printout
else
ENDIF
NEXT
ENDWITH
571デフォルトの名無しさん
2019/11/27(水) 22:40:20.96ID:MWZwasL9 何故それをuwsc にしようとしたのかがまったく理解できない
1つでも印刷されるのそれ?
1つでも印刷されるのそれ?
572デフォルトの名無しさん
2019/11/28(木) 10:04:18.53ID:p/uKw1d3 Excelのマクロでよくねw
573デフォルトの名無しさん
2019/12/06(金) 18:31:31.17ID:43TcIdUK noxではなくMumuで裏マクロをしたいのですが、CMD = "~~"の中身を書き換えるだけでは動きませんでした
パス部分をMumuのadbがある場所にすればいいのかなと思ってこうしたら
CMD = "cd C:\Program Files\Mumu\emulator\nemu\vmonitor\bin & adb_server shell input touchscreen tap " + 100 + " " + 100
PRINT CMD
DOSCMD(CMD)
PRINTで表示されたのはこうで
cd C:\Program Files\Mumu\emulator\nemu\vmonitor\bin & adb_server shell input touchscreen tap 100 100
コマンドフロンプトに入力するとこう返ってきました
error: device '(null)' not found
本スレ21の>>879と同じ?だと思うのですが、>>880の指す「いつものという感じ」が何なのか分かりませんでした。
パス部分をMumuのadbがある場所にすればいいのかなと思ってこうしたら
CMD = "cd C:\Program Files\Mumu\emulator\nemu\vmonitor\bin & adb_server shell input touchscreen tap " + 100 + " " + 100
PRINT CMD
DOSCMD(CMD)
PRINTで表示されたのはこうで
cd C:\Program Files\Mumu\emulator\nemu\vmonitor\bin & adb_server shell input touchscreen tap 100 100
コマンドフロンプトに入力するとこう返ってきました
error: device '(null)' not found
本スレ21の>>879と同じ?だと思うのですが、>>880の指す「いつものという感じ」が何なのか分かりませんでした。
574デフォルトの名無しさん
2019/12/06(金) 23:53:28.48ID:56eN38dl575デフォルトの名無しさん
2019/12/10(火) 19:46:27.81ID:lD8f3lrI もうここは初心者用スレとして成立してないなw
576デフォルトの名無しさん
2019/12/11(水) 00:59:28.66ID:VzIBlOls 本当の初心者なんですけどどこがおすすめですか?
さっぱり分かりません
さっぱり分かりません
577デフォルトの名無しさん
2019/12/12(木) 10:56:26.42ID:lDgwg3+p 573です。sdk?入れてそこのadb.exe指すようにしたら裏マクロ動きました
DOSCMDから実際にタップされるまで半秒ほどかかっているのと、コマンド実行したらMumuを再起動するまでやたらカクつくようになるのはなぜでしょうか
DOSCMDから実際にタップされるまで半秒ほどかかっているのと、コマンド実行したらMumuを再起動するまでやたらカクつくようになるのはなぜでしょうか
578デフォルトの名無しさん
2019/12/12(木) 11:26:37.80ID:u7RWFF/r Mumuってエミュが重いか単純にPCのスペック不足
579デフォルトの名無しさん
2019/12/12(木) 12:00:09.18ID:OHjSk6WK スクリプトが悪いのでは
本スレで話題になってたように画像認識にウエイトがないとかそういう
本スレで話題になってたように画像認識にウエイトがないとかそういう
580デフォルトの名無しさん
2019/12/12(木) 19:50:24.51ID:D8fZkyt4 コマンドプロンプトで試して同じ挙動かどうか
まずは原因がUWSCなのか、PCその他環境なのか調べないと
まずは原因がUWSCなのか、PCその他環境なのか調べないと
581デフォルトの名無しさん
2019/12/17(火) 21:25:34.41ID:+LcZYIpJ excelのfindで見つからなかったときのcomエラー回避ってあるんでしょうか?
wikiみても載ってないし、vbaにあるIS NOTHINGも使えないし・・・
wikiみても載ってないし、vbaにあるIS NOTHINGも使えないし・・・
582デフォルトの名無しさん
2019/12/17(火) 21:31:30.08ID:+LcZYIpJ すみません、自己解決しました
583デフォルトの名無しさん
2020/02/07(金) 17:05:22.18ID:4XbBvaET saveimg(gazou,0,200,300,30,30,,0,img_fore)
とした時は今見えている画面の200,300の位置の30,30サイズのbmpが保存されますか?
またその画像を指定して同じ画面で画像検索できますか?
とした時は今見えている画面の200,300の位置の30,30サイズのbmpが保存されますか?
またその画像を指定して同じ画面で画像検索できますか?
584デフォルトの名無しさん
2020/02/07(金) 20:48:29.13ID:SnbR1xpB されないんじゃない
てか動かしてから聞きにきてくれよ
てか動かしてから聞きにきてくれよ
585デフォルトの名無しさん
2020/02/09(日) 14:17:47.93ID:+d0DSBvE f12でソース見ると色の指定は#rrggbbで統一されてるのに
iegetsrcで全文抜き出して見ると部分的にrgb(n,n,n)になっている
なぜこんなことに…
iegetsrcで全文抜き出して見ると部分的にrgb(n,n,n)になっている
なぜこんなことに…
586デフォルトの名無しさん
2020/03/02(月) 09:25:47.29ID:1HOipiaV すいません質問させてください
クリップボードに取り込んだwebのタイトルをそのままファイル名にして保存したくて調べているのですが
クエスチョンやスラッシュなどファイル名に使えない文字を変換してクリップボードに上書きする方法はありますか?
よろしくお願いします
クリップボードに取り込んだwebのタイトルをそのままファイル名にして保存したくて調べているのですが
クエスチョンやスラッシュなどファイル名に使えない文字を変換してクリップボードに上書きする方法はありますか?
よろしくお願いします
587デフォルトの名無しさん
2020/03/02(月) 09:33:54.26ID:1Poklgsp 変換とはどういうこと?消せばいいの?
588デフォルトの名無しさん
2020/03/02(月) 09:50:57.67ID:1HOipiaV 消すかアンダーバーなどの使える文字に変換したいと思ってまさ。
589デフォルトの名無しさん
2020/03/02(月) 09:51:59.04ID:1HOipiaV 消すかアンダーバーなどの使える文字に変換したいと思ってます。
590デフォルトの名無しさん
2020/03/02(月) 09:52:58.04ID:1Poklgsp Replaceで置換は?
591デフォルトの名無しさん
2020/03/02(月) 11:58:20.46ID:RHbccdbo ありがとうございました。
Replaceでうまく変換出来ました。
助かりました。
Replaceでうまく変換出来ました。
助かりました。
592デフォルトの名無しさん
2020/03/09(月) 21:11:27.70ID:bpMBC8cG すみませんが、知っている方がいらしたら、教えて下さい。
Pro版のシリアルはなんですか?
Pro版のシリアルはなんですか?
593デフォルトの名無しさん
2020/03/09(月) 22:23:49.27ID:xFD8Q/oe いいえなんではないです
594デフォルトの名無しさん
2020/03/19(木) 08:38:19.27ID:8+JNVm+N ゲームでレベリングのマクロ組みたいんですが
操作としては左右移動(右移動キー押しっぱなしで左移動キーで調整するやり方)しながら左クリック連打だけです
while 1
KBD(VK_D,DOWN)
while 1
KBD(VK_A,DOWN)
sleep(1)
KBD(VK_A,UP)
sleep(1)
wend
wend
左右移動はこれでできたんですが、ここに左クリック連打入れようとすると上手くいきません
どうすればいいですか?
操作としては左右移動(右移動キー押しっぱなしで左移動キーで調整するやり方)しながら左クリック連打だけです
while 1
KBD(VK_D,DOWN)
while 1
KBD(VK_A,DOWN)
sleep(1)
KBD(VK_A,UP)
sleep(1)
wend
wend
左右移動はこれでできたんですが、ここに左クリック連打入れようとすると上手くいきません
どうすればいいですか?
595デフォルトの名無しさん
2020/03/19(木) 09:28:56.69ID:E5mfm90d 関数化してthreadで別々に動かす
596デフォルトの名無しさん
2020/03/19(木) 09:36:31.31ID:8+JNVm+N 何やら新しいUWSC知識が必要のようですね
調べてきます
調べてきます
597デフォルトの名無しさん
2020/03/19(木) 13:31:47.43ID:8+JNVm+N まったく意味がわかりませんでした
598デフォルトの名無しさん
2020/03/19(木) 13:39:26.52ID:Nl/flVcz599デフォルトの名無しさん
2020/03/19(木) 14:00:08.00ID:8+JNVm+N thread BTN()
BTN(LEFT,CLICK,666,374,200)
とかなんか色々やってみたけどだめですね
BTN(LEFT,CLICK,666,374,200)
とかなんか色々やってみたけどだめですね
600デフォルトの名無しさん
2020/03/19(木) 14:20:06.38ID:8+JNVm+N 他のマクロソフトと組み合わせて操作できました
601デフォルトの名無しさん
2020/03/19(木) 14:32:16.48ID:E5mfm90d それならuwsc2つ起動する方がマシな対処だが…まあ希望が満たせりゃあ何でもよかろ
602デフォルトの名無しさん
2020/03/19(木) 15:51:14.43ID:I/ufwmzm Threadって便利なんだけど変数に同時参照すると固まるのがな
確率的には物凄く低いんだろうけど・・・
確率的には物凄く低いんだろうけど・・・
603デフォルトの名無しさん
2020/03/19(木) 16:30:35.09ID:Nl/flVcz 参照してるだけで変数を書き換えてなければ大丈夫とおもったんだけど
604デフォルトの名無しさん
2020/03/19(木) 19:08:00.33ID:vTx0gGjB スレッドが最大64個も作れるから面白いんだよな
605デフォルトの名無しさん
2020/03/29(日) 20:54:34.79ID:Qbasze3R 初心的質問で申し訳ありません。
ページ内の画像を探し見つければクリック、見つからなければスクロール+画像検索、
を三回繰り返して見つからなければ処理を停止してメッセージを出すというマクロを考えているのですが、まぁ難しくて
とっかかりすらつかめていません。
ご教示いただけませんでしょうか。よろしくお願いいたします。
ページ内の画像を探し見つければクリック、見つからなければスクロール+画像検索、
を三回繰り返して見つからなければ処理を停止してメッセージを出すというマクロを考えているのですが、まぁ難しくて
とっかかりすらつかめていません。
ご教示いただけませんでしょうか。よろしくお願いいたします。
606デフォルトの名無しさん
2020/03/29(日) 20:58:57.31ID:pPr1xaO6 自分ではどこまでできたの?コード貼ってくれ
607デフォルトの名無しさん
2020/03/29(日) 21:50:02.93ID:/EyNUXLu608デフォルトの名無しさん
2020/03/29(日) 21:59:10.97ID:Qbasze3R609デフォルトの名無しさん
2020/03/30(月) 02:39:01.09ID:bxGMTHZO610デフォルトの名無しさん
2020/03/30(月) 02:57:48.27ID:fgzboYRU g_img_x g_img_yがどこの位置か知ってる
クリックするのはその座標で間違いない
クリックするのはその座標で間違いない
611デフォルトの名無しさん
2020/03/30(月) 03:21:30.15ID:bxGMTHZO ああ、そうか 失礼しました
612デフォルトの名無しさん
2020/03/30(月) 05:32:35.02ID:Lez7EJJt 画像 = 画像の場所.bmp
カウンター = 0
while カウンター < 3
ifb chkimg(画像,画像の色、位置指定)
sleep(1)
btn(left,click,g_img_x,g_img_y,50)
else
btn(left,down,画面のどこかx,画面のどこかy,50)
mmv(スクロール幅)
btn(left,up,上と同じx,スクロール幅y,50)
print "再検索"
カウンター = カウンター + 1
endif
wend
カウンター = 0
while カウンター < 3
ifb chkimg(画像,画像の色、位置指定)
sleep(1)
btn(left,click,g_img_x,g_img_y,50)
else
btn(left,down,画面のどこかx,画面のどこかy,50)
mmv(スクロール幅)
btn(left,up,上と同じx,スクロール幅y,50)
print "再検索"
カウンター = カウンター + 1
endif
wend
613デフォルトの名無しさん
2020/03/30(月) 09:11:09.86ID:K5J2OuWJ スペースキーで1ページ分スクロールするの知らないのだろうか…
614デフォルトの名無しさん
2020/03/30(月) 10:27:43.27ID:Lez7EJJt615デフォルトの名無しさん
2020/03/30(月) 11:10:38.38ID:/ApxdN83 普通は無理でしょう
616デフォルトの名無しさん
2020/03/30(月) 11:26:59.29ID:8cfGBpvw617デフォルトの名無しさん
2020/03/30(月) 13:03:44.81ID:Lez7EJJt618デフォルトの名無しさん
2020/03/30(月) 14:25:56.44ID:8cfGBpvw 608=612,4,7 は無理があるから別人だよね
btnの時間引数は、必要な場合もあるし重要だけど、必須じゃないよ
手でクリックして動作するタイミングなら問題無いよ
時間調整が必要なのは、フォーカスの変更の様な、直前のコマンドの結果、Windows上で何かが変るのを待つ必要がある場合
調整しないと、変る前に動いちゃう事があるから、思い通りに動かないんだよ
経験上、btnで時間調整するより、sleep使った方がうまくいったし
それよりも、g_img_x,yって画像の端だから、画像の中央側にクリック位置をずらさないと画像をクリックしたことにならないよ
画像ファイルを、実際の画像よりも小さめに切取った場合は別だけど
btnの時間引数は、必要な場合もあるし重要だけど、必須じゃないよ
手でクリックして動作するタイミングなら問題無いよ
時間調整が必要なのは、フォーカスの変更の様な、直前のコマンドの結果、Windows上で何かが変るのを待つ必要がある場合
調整しないと、変る前に動いちゃう事があるから、思い通りに動かないんだよ
経験上、btnで時間調整するより、sleep使った方がうまくいったし
それよりも、g_img_x,yって画像の端だから、画像の中央側にクリック位置をずらさないと画像をクリックしたことにならないよ
画像ファイルを、実際の画像よりも小さめに切取った場合は別だけど
619デフォルトの名無しさん
2020/03/30(月) 15:44:58.10ID:Lez7EJJt620608
2020/03/31(火) 00:24:53.60ID:q/ETdZzS sleep(2)
SPEAK("処理開始")
img=PARAM_STR[0]
rep = PARAM_STR[1]//繰り返す回数
counter = 0
while counter < rep
ifb chkimg(img)
sleep(1)
SPEAK("画像発見。")
CALL called.uws(g_img_x,g_img_y)
counter = counter + rep
else
KBD(VK_SPACE)
sleep(1)
counter = counter + 1
endif
wend
IFB counter=rep
SPEAK("ストップ")
BREAK
ELSEIF counter>rep
SPEAK("次の処理へ")
endif
KBD(VK_SPACE)
SPEAK("処理開始")
img=PARAM_STR[0]
rep = PARAM_STR[1]//繰り返す回数
counter = 0
while counter < rep
ifb chkimg(img)
sleep(1)
SPEAK("画像発見。")
CALL called.uws(g_img_x,g_img_y)
counter = counter + rep
else
KBD(VK_SPACE)
sleep(1)
counter = counter + 1
endif
wend
IFB counter=rep
SPEAK("ストップ")
BREAK
ELSEIF counter>rep
SPEAK("次の処理へ")
endif
KBD(VK_SPACE)
621608
2020/03/31(火) 00:30:49.69ID:q/ETdZzS 誤投…orz完全に使うやつをカキコしてしまった
皆様のおかげでなんとか動かせるものが作れました!ありがとうございます
別の質問になってしまうのですが、callで呼び出した関数の…例えば上記のストップで親含めて停止させることは出来ますか?
よろしくお願いいたします
皆様のおかげでなんとか動かせるものが作れました!ありがとうございます
別の質問になってしまうのですが、callで呼び出した関数の…例えば上記のストップで親含めて停止させることは出来ますか?
よろしくお願いいたします
622デフォルトの名無しさん
2020/03/31(火) 10:40:38.83ID:EP7/8t0I exitとexitexitを調べよう
どうでもいいけどwhile内のifbでいずれにせよsleepするならifbの外でいいのではと思った
どうでもいいけどwhile内のifbでいずれにせよsleepするならifbの外でいいのではと思った
623デフォルトの名無しさん
2020/04/04(土) 21:15:58.74ID:yfraQy7x 画像検索する範囲をちゃんと座標で指定するようにしたら早くなった
624デフォルトの名無しさん
2020/04/15(水) 01:17:38.28ID:Nxi8vX8D ChkImgXって普通に使えてる?
なんかうまく作動しない
なんかうまく作動しない
625デフォルトの名無しさん
2020/04/15(水) 05:11:08.81ID:HYKxrR9Z 長時間使ってると極稀にエラー起こすけど基本問題無いな
626デフォルトの名無しさん
2020/04/15(水) 07:04:01.26ID:+ql6+04R >>624
癖はあるけど動いている
バックグラウンド動作の画像認識はDirectX描画じゃないと駄目っぽい
chkimgではヒットするのにchkimgxでは全くヒットしない画像がある。chkimgxっていうか使ってるOpenCVライブラリの問題なんだろうけど
癖はあるけど動いている
バックグラウンド動作の画像認識はDirectX描画じゃないと駄目っぽい
chkimgではヒットするのにchkimgxでは全くヒットしない画像がある。chkimgxっていうか使ってるOpenCVライブラリの問題なんだろうけど
627デフォルトの名無しさん
2020/04/25(土) 20:57:41.86ID:+DYe+iEQ uwscを使用していると稀に external exception C0000264. と出てくるのですが、これはどうしたら出なくなりますか?
628デフォルトの名無しさん
2020/04/26(日) 11:35:57.42ID:yth2UhWM 0xc0000264で調べて諦めるといい
629デフォルトの名無しさん
2020/05/02(土) 19:11:57.36ID:hfp4FbZC chkimgxを複数の並列処理で使用したいのですが上手くいきません。
一つのプロセスでしか機能しないのでしょうか?
複数で使えるのであればやり方などお教え頂きたいです。
一つのプロセスでしか機能しないのでしょうか?
複数で使えるのであればやり方などお教え頂きたいです。
630デフォルトの名無しさん
2020/05/02(土) 22:26:35.09ID:yTTamFYE グローバル変数に結果格納してるわけでタイミングによっては書き換えられてしまうからでは
どういううまく動かないかが分からんけど、これが原因なら実行後すぐに別の変数に退避するかスレッド別になるようにライブラリ書き換えるか、等々
どういううまく動かないかが分からんけど、これが原因なら実行後すぐに別の変数に退避するかスレッド別になるようにライブラリ書き換えるか、等々
631デフォルトの名無しさん
2020/05/03(日) 14:58:09.85ID:J77i8eFq procedure 並列()
while trur
if chkimgx(画像1.bmp,指定id1〜
msgbox(ok)
endif
sleep(1)
wend
fend
↑の様なものを並列処理で別のウィンドウidを指定し3つ程動かしているのですが、chkimgxでエラーが発生しました。と表示されて動作しません。
どういった方法を取れば解決出来ますでしょうか?
while trur
if chkimgx(画像1.bmp,指定id1〜
msgbox(ok)
endif
sleep(1)
wend
fend
↑の様なものを並列処理で別のウィンドウidを指定し3つ程動かしているのですが、chkimgxでエラーが発生しました。と表示されて動作しません。
どういった方法を取れば解決出来ますでしょうか?
632デフォルトの名無しさん
2020/05/03(日) 17:30:45.30ID:2n/B6drN お前には無理だから諦めろ
633デフォルトの名無しさん
2020/05/03(日) 19:36:38.64ID:JpRTnUDx startup_chkimgx()してないだけでしょ
634デフォルトの名無しさん
2020/05/04(月) 23:58:16.12ID:pqlhkoPy635デフォルトの名無しさん
2020/06/26(金) 12:54:56.86ID:qsHwziaQ サクラエディタの質問になってしまうのですが、指定した行、例えば2,6,14,32行を1度にコピーしたり挿入するにはどうすればできますか。
よろしくお願いします。
よろしくお願いします。
636デフォルトの名無しさん
2020/06/26(金) 13:04:26.04ID:PH3cJrMz 何がよろしくお願いしますだよ、スレチ過ぎて回答なんか来ないぞ
637デフォルトの名無しさん
2020/06/26(金) 13:44:24.55ID:ECSKM2w9 サクラエディタってマクロないのかよ
638デフォルトの名無しさん
2020/06/26(金) 18:59:51.57ID:42Sy87qY あったはず
639デフォルトの名無しさん
2020/06/26(金) 19:24:43.88ID:nyM1H0WV UWSCのマクロを作るのにサクラエディタを使っているけどスレチだな
640デフォルトの名無しさん
2020/06/26(金) 19:32:51.02ID:nyM1H0WV そういやサクラエディタと
大昔にMIFES、VZ、 WZエディタを使っていたけど
評判の良い秀丸エディタは使った事が無かった
大昔にMIFES、VZ、 WZエディタを使っていたけど
評判の良い秀丸エディタは使った事が無かった
641デフォルトの名無しさん
2020/06/26(金) 19:59:38.01ID:ECSKM2w9 秀丸のマクロをUWSCのセレクトボックスに登録して呼び出して使ってたりする
642デフォルトの名無しさん
2020/06/26(金) 20:10:29.72ID:42Sy87qY 秀丸エディタは有料だから手を出す気にならない
643デフォルトの名無しさん
2020/06/27(土) 00:34:23.45ID:iUYo3nGX 秀丸=四千円もするもんな
644デフォルトの名無しさん
2020/06/27(土) 07:47:14.58ID:Jk2b87/7 >>643
やめろ
やめろ
645デフォルトの名無しさん
2020/06/27(土) 14:33:58.98ID:LSvaexnY このネタわかる人は高齢者
646デフォルトの名無しさん
2020/07/03(金) 01:22:06.10ID:Dvup0ZMV 質問です
初めてuwsc入れたのですが記録ボタンが灰色になっていて操作が出来ません
色々調べてみたけれどもイマイチよく分からなかったのですがどうすればいいでしょうか?
win10のdynabookです
初めてuwsc入れたのですが記録ボタンが灰色になっていて操作が出来ません
色々調べてみたけれどもイマイチよく分からなかったのですがどうすればいいでしょうか?
win10のdynabookです
647デフォルトの名無しさん
2020/07/04(土) 09:42:53.15ID:bhHjhVrL >>646
UWSC.exeと同じフォルダにRecUws.dllありますか?
UWSC.exeと同じフォルダにRecUws.dllありますか?
648デフォルトの名無しさん
2020/07/04(土) 13:54:48.14ID:3Gp7+FfQ649デフォルトの名無しさん
2020/07/04(土) 14:06:52.81ID:BpefeSFV ○ ○
○
○ ○
● ○
○
●が自機で、○が敵です
●から一番近い○を順にタッチしていきたいのです(●は移動するが○はその場所から消えない)
が、どうやればいいのか皆目検討がつきません
こういうアルゴリズムって何ていうんでしょう
○
○ ○
● ○
○
●が自機で、○が敵です
●から一番近い○を順にタッチしていきたいのです(●は移動するが○はその場所から消えない)
が、どうやればいいのか皆目検討がつきません
こういうアルゴリズムって何ていうんでしょう
650デフォルトの名無しさん
2020/07/04(土) 14:11:12.78ID:BpefeSFV 間違えました
×(●は移動するが○はその場所から消えない)
○(●は移動する。○はタッチすると死骸×に変化する)
でした
×(●は移動するが○はその場所から消えない)
○(●は移動する。○はタッチすると死骸×に変化する)
でした
651デフォルトの名無しさん
2020/07/04(土) 16:00:55.72ID:rpET5GXf アルゴリズムは知らんけど
CADCAMの工作機械ドリル穴あけパスの最短距離
自動生成機能みたいなやつだな
CADCAMの工作機械ドリル穴あけパスの最短距離
自動生成機能みたいなやつだな
652デフォルトの名無しさん
2020/07/04(土) 16:29:11.29ID:OTAHPrbr 巡回セールスマン問題?
これを真面目にやると面倒だけれど、
接近してきた画像を押すだけなら
野暮な力技で十分な気がする。
これを真面目にやると面倒だけれど、
接近してきた画像を押すだけなら
野暮な力技で十分な気がする。
653デフォルトの名無しさん
2020/07/04(土) 16:38:02.20ID:VhIEqfUN >>649
単純に距離√(xx+yy)で当たり判定で良いんじゃまいか
単純に距離√(xx+yy)で当たり判定で良いんじゃまいか
654デフォルトの名無しさん
2020/07/04(土) 17:17:22.17ID:DEQjmcqB655デフォルトの名無しさん
2020/07/04(土) 17:38:19.56ID:TN5VprEm >>654
は?
は?
656デフォルトの名無しさん
2020/07/04(土) 17:46:26.32ID:1QfEBuvL ルートを計算しなくても大小関係変わらんだろ
今回に関してはバカに絡まれるデメリット背負ってまでルートの計算負荷を減らす意味はないと思うけど
今回に関してはバカに絡まれるデメリット背負ってまでルートの計算負荷を減らす意味はないと思うけど
657デフォルトの名無しさん
2020/07/04(土) 17:56:59.79ID:VPpCSEzQ >>650
白は移動したら移動後の位置から近い位置の黒にいくのと、それとも元の白の位置を基準にするのとどっち?
まあ、前者でも後者でもやることはchkimgなりで位置のリストが取得できるからそれ使って白位置の近似値からタップするだけよ
アルゴリズム? 知らんな
白は移動したら移動後の位置から近い位置の黒にいくのと、それとも元の白の位置を基準にするのとどっち?
まあ、前者でも後者でもやることはchkimgなりで位置のリストが取得できるからそれ使って白位置の近似値からタップするだけよ
アルゴリズム? 知らんな
658デフォルトの名無しさん
2020/07/04(土) 18:01:03.68ID:Mq6JcoKF 距離と分かる式にするか処理を少しでも軽くするかは一長一短で
自分が一番初めに思いついた方にしとく方が可読性が上がる
人に言われて変えるものではないと思う
自分が一番初めに思いついた方にしとく方が可読性が上がる
人に言われて変えるものではないと思う
659デフォルトの名無しさん
2020/07/04(土) 18:08:20.26ID:DEQjmcqB660デフォルトの名無しさん
2020/07/04(土) 18:10:16.03ID:DEQjmcqB661デフォルトの名無しさん
2020/07/05(日) 14:07:22.77ID:s67fMTSC 1) 視界内の全敵位置取得
2) abs(自XY - 敵XY[数])で並べて近い敵に移動してタッチ
の繰り返しでやろうと思います
ありがとうございました
2) abs(自XY - 敵XY[数])で並べて近い敵に移動してタッチ
の繰り返しでやろうと思います
ありがとうございました
662デフォルトの名無しさん
2020/07/27(月) 17:13:01.26ID:LFattNL9 noxで
1,画像Aを探してタップ(見つからなくなるまで)
2,画像Bを探して見つからなかったら下にスワイプして1に戻る
3,画像Bが見つかったら終了
のような動作をさせようと思って以下のように作って見たのですが、画像Aを発見してループ2を一周した後は画像Aと画像Bが見つからないが交互に出てループ1から抜け出せない状態です。
print "テスト開始"
while True //ループ1開始
while True //ループ2開始
ifb CHKIMGX("画像A.bmp", winid, x1, y1, x2, y2, Detect_num, Threshold_delta, Target_color)
print "画像Aを発見しました。"
X1 = g_imgx_x + 5 + random(5)
Y1 = g_imgx_y - 30 + 5+ random(5) // ウィンドウ枠分の座標補正とクリック位置調整
DOSCMD("nox_adb shell input touchscreen tap " + X1 + " " + Y1)
sleep(2)
DOSCMD("nox_adb shell input touchscreen tap 384 541")
sleep(2)
DOSCMD("nox_adb shell input touchscreen tap 272 523")
sleep(2)
else
print "画像Aは見つかりませんでした。"
break
endif
wend //ループ2終了
ifb CHKIMGX("画像B.bmp", winid, x1, y1, x2, y2, Detect_num, Threshold_delta, Target_color)=FALSE
print "画像Bは見つかりませんでした。"
DOSCMD("nox_adb shell input swipe 288 600 288 300 600")
sleep(2)
else
print "画像Bを発見しました。"
break
endif
wend //ループ1終了
1,画像Aを探してタップ(見つからなくなるまで)
2,画像Bを探して見つからなかったら下にスワイプして1に戻る
3,画像Bが見つかったら終了
のような動作をさせようと思って以下のように作って見たのですが、画像Aを発見してループ2を一周した後は画像Aと画像Bが見つからないが交互に出てループ1から抜け出せない状態です。
print "テスト開始"
while True //ループ1開始
while True //ループ2開始
ifb CHKIMGX("画像A.bmp", winid, x1, y1, x2, y2, Detect_num, Threshold_delta, Target_color)
print "画像Aを発見しました。"
X1 = g_imgx_x + 5 + random(5)
Y1 = g_imgx_y - 30 + 5+ random(5) // ウィンドウ枠分の座標補正とクリック位置調整
DOSCMD("nox_adb shell input touchscreen tap " + X1 + " " + Y1)
sleep(2)
DOSCMD("nox_adb shell input touchscreen tap 384 541")
sleep(2)
DOSCMD("nox_adb shell input touchscreen tap 272 523")
sleep(2)
else
print "画像Aは見つかりませんでした。"
break
endif
wend //ループ2終了
ifb CHKIMGX("画像B.bmp", winid, x1, y1, x2, y2, Detect_num, Threshold_delta, Target_color)=FALSE
print "画像Bは見つかりませんでした。"
DOSCMD("nox_adb shell input swipe 288 600 288 300 600")
sleep(2)
else
print "画像Bを発見しました。"
break
endif
wend //ループ1終了
663デフォルトの名無しさん
2020/07/27(月) 17:21:22.43ID:LFattNL9 ちなみに画像Aがない状態でスタートすると、画像Aが表示されるまで下にスワイプ(途中に画像Bがあってもスルー)してループ2を1周してからまた画像AとBが見つからないループに入ってしまいます。
また、adbを使わないマウスが取られるマクロの方は一応問題なく動いてます。
また、adbを使わないマウスが取られるマクロの方は一応問題なく動いてます。
664デフォルトの名無しさん
2020/07/27(月) 18:37:45.17ID:Ig/59khU winid = getid("NoxPlayer")だろうとwinid = getid("メモ帳")だろうと関係なくwinidが1になってしまうのは何故なんでしょうか。
665デフォルトの名無しさん
2020/07/27(月) 19:56:01.58ID:VYBQARBr >>662-663
単にスワイプ後の慣性で画面が動いてて画像認識出来てないだけじゃない?
画像をタップする座標は乱数入ってるのにその後のタップやスワイプは固定座標なのとか
色々ツッコミどころはあるけど、まずはタップとスワイプを関数化しておくのをオススメする
procedure tap(x, y)
doscmd("nox_adb shell input touchscreen tap " + x + " " + y)
fend
procedure swipe(x1, y1, x2, y2)
doscmd("nox_adb shell input swipe " + x1 + " " + y1 + " " + x2 + " " + y2)
fend
単にスワイプ後の慣性で画面が動いてて画像認識出来てないだけじゃない?
画像をタップする座標は乱数入ってるのにその後のタップやスワイプは固定座標なのとか
色々ツッコミどころはあるけど、まずはタップとスワイプを関数化しておくのをオススメする
procedure tap(x, y)
doscmd("nox_adb shell input touchscreen tap " + x + " " + y)
fend
procedure swipe(x1, y1, x2, y2)
doscmd("nox_adb shell input swipe " + x1 + " " + y1 + " " + x2 + " " + y2)
fend
666デフォルトの名無しさん
2020/07/27(月) 20:31:25.50ID:LFattNL9 >>665
回答ありがとうございます、スワイプ後の慣性も考えてsleepを長めに取ったり、最初の時点で画像Aが複数ある状態でスタートしても結果は変わらずでした。
procedureは使ったことがなかったので、調べながら修正してみます。
回答ありがとうございます、スワイプ後の慣性も考えてsleepを長めに取ったり、最初の時点で画像Aが複数ある状態でスタートしても結果は変わらずでした。
procedureは使ったことがなかったので、調べながら修正してみます。
667デフォルトの名無しさん
2020/07/27(月) 21:12:51.27ID:2I3xUck9 サイトハッキングて意外と簡単やな
http://re-file.com/18k/1669/
http://re-file.com/18k/1669/
668デフォルトの名無しさん
2020/07/27(月) 21:21:06.80ID:Y/C2ypnr >X1 = g_imgx_x + 5 + random(5)
>Y1 = g_imgx_y - 30 + 5+ random(5) // ウィンドウ枠分の座標補正とクリック位置調整
これさあ
変数名って大文字小文字区別するんだっけ
>Y1 = g_imgx_y - 30 + 5+ random(5) // ウィンドウ枠分の座標補正とクリック位置調整
これさあ
変数名って大文字小文字区別するんだっけ
669デフォルトの名無しさん
2020/07/27(月) 21:49:14.47ID:LFattNL9 >>668
X1とY1をaaaとbbbにしてみたらちゃんと動作してくれるようになりました。
大文字と小文字を区別するにしても変数にx or y+数字は安直過ぎました。
解決方法を教えていただきありがとうございます。
X1とY1をaaaとbbbにしてみたらちゃんと動作してくれるようになりました。
大文字と小文字を区別するにしても変数にx or y+数字は安直過ぎました。
解決方法を教えていただきありがとうございます。
670デフォルトの名無しさん
2020/07/27(月) 22:31:39.36ID:3jtmTLJJ >>667の本当の内容
【閲覧注意】【メキシコ】麻薬カルテル、元組織のメンバーを「皮剥ぎの刑」に処す - 18禁グロ
▼カテゴリ - 18禁グロには一部、異様・奇怪・猟奇的・暴力シーン・グロテスクな表現が含まれていますので、閲覧制限をしています。
1. 18歳未満は閲覧禁止です。
2. 耐性が無い方は閲覧しないでください。
3. 閲覧は自己責任でお願い致します。
※上記、18歳以上で同意できる方は入室してください。
PASS:7777
【閲覧注意】【メキシコ】麻薬カルテル、元組織のメンバーを「皮剥ぎの刑」に処す - 18禁グロ
▼カテゴリ - 18禁グロには一部、異様・奇怪・猟奇的・暴力シーン・グロテスクな表現が含まれていますので、閲覧制限をしています。
1. 18歳未満は閲覧禁止です。
2. 耐性が無い方は閲覧しないでください。
3. 閲覧は自己責任でお願い致します。
※上記、18歳以上で同意できる方は入室してください。
PASS:7777
671デフォルトの名無しさん
2020/07/28(火) 01:07:54.67ID:dFO+mkSs >>666
まず画像Aと画像Bを認識出来てる?
同じ画像に見えても表示される座標が変わると一致率も変わっているとかよくある
どこが問題か分かりやすくするために、デバッグは小さいパーツに分けてやったほうが良い
例えばスワイプ後に画像Bを探すだけのコードを試すとか
まず画像Aと画像Bを認識出来てる?
同じ画像に見えても表示される座標が変わると一致率も変わっているとかよくある
どこが問題か分かりやすくするために、デバッグは小さいパーツに分けてやったほうが良い
例えばスワイプ後に画像Bを探すだけのコードを試すとか
672デフォルトの名無しさん
2020/07/28(火) 10:35:41.28ID:PZ7FD++0673デフォルトの名無しさん
2020/07/28(火) 11:33:20.45ID:hWwhsWN2 どなたか>>664について分かる方みえませんか?
getid("アプリ名")をしても起動中のアプリは1、起動していないアプリは-1となり、1か-1しか結果が返ってきません。
ウインドウIDを取得したいのですが、何がいけないんでしょうか。
UWSC5.3.0.2、win10 64bitです。
getid("アプリ名")をしても起動中のアプリは1、起動していないアプリは-1となり、1か-1しか結果が返ってきません。
ウインドウIDを取得したいのですが、何がいけないんでしょうか。
UWSC5.3.0.2、win10 64bitです。
674デフォルトの名無しさん
2020/07/28(火) 11:45:37.39ID:PZ7FD++0 >>671
更に質問で申し訳ないのですが、procedure使ってswipe(x1, y1, x2, y2)のようにして簡略化することはできたのですが、ここから更にランダム性をprocedure上で反映させるにはどうしたら良いでしょうか?
とりあえず今のところメインとなるuwsファイルで
swipe(x1+ random(5), y1+ random(5), x2+ random(5), y2+ random(5))
のようにすれば動作することは分かったのですが、producerで一括して処理しようと思い
procedure swipe(x1, y1, x2, y2)
doscmd("nox_adb shell input swipe " + x1+ random(100) + " " + y1+ random(100) + " " + x2+ random(100) + " " + y2+ random(100))
fend
としてみたのですがエラーは出ないもののなにも動作しない状態です。
更に質問で申し訳ないのですが、procedure使ってswipe(x1, y1, x2, y2)のようにして簡略化することはできたのですが、ここから更にランダム性をprocedure上で反映させるにはどうしたら良いでしょうか?
とりあえず今のところメインとなるuwsファイルで
swipe(x1+ random(5), y1+ random(5), x2+ random(5), y2+ random(5))
のようにすれば動作することは分かったのですが、producerで一括して処理しようと思い
procedure swipe(x1, y1, x2, y2)
doscmd("nox_adb shell input swipe " + x1+ random(100) + " " + y1+ random(100) + " " + x2+ random(100) + " " + y2+ random(100))
fend
としてみたのですがエラーは出ないもののなにも動作しない状態です。
675デフォルトの名無しさん
2020/07/28(火) 12:32:50.82ID:BIndr6P+676デフォルトの名無しさん
2020/07/28(火) 13:09:15.41ID:PZ7FD++0 >>675
おっしゃる通りにしたところ上手く動作してくれました、ありがとうございました。
おっしゃる通りにしたところ上手く動作してくれました、ありがとうございました。
677デフォルトの名無しさん
2020/08/01(土) 10:55:03.03ID:A3rem5Z4 吹き出しが下から噴き出すプログラムを作ってみた
PUBLIC RZZ=0
While true
FKIDSI()
Fukidasi(RZZ,1200,10,0,3,,,$AAAAAA)
Wend
procedure FKIDSI()
IF RZZ<64
Thread FKDSSUB()
ENDIF
fend
procedure FKDSSUB()
RZZ = RZZ + 1
Xinc = ((random(6)+1) * (random(2)*2 -1)) /1.9
Yinc = (random(8)/10+0.2) /4
z=random($FFFFFF)
X=640
Y=1010
for i=-100 TO 100
Fukidasi(" ", X, Y, 0, ,,,Z)
SLEEP(0.01)
Ymov = Yinc * i
X = X + Xinc
Y = Y + Ymov
next
RZZ = RZZ - 1
fend
PUBLIC RZZ=0
While true
FKIDSI()
Fukidasi(RZZ,1200,10,0,3,,,$AAAAAA)
Wend
procedure FKIDSI()
IF RZZ<64
Thread FKDSSUB()
ENDIF
fend
procedure FKDSSUB()
RZZ = RZZ + 1
Xinc = ((random(6)+1) * (random(2)*2 -1)) /1.9
Yinc = (random(8)/10+0.2) /4
z=random($FFFFFF)
X=640
Y=1010
for i=-100 TO 100
Fukidasi(" ", X, Y, 0, ,,,Z)
SLEEP(0.01)
Ymov = Yinc * i
X = X + Xinc
Y = Y + Ymov
next
RZZ = RZZ - 1
fend
678デフォルトの名無しさん
2020/08/01(土) 10:59:28.16ID:Bo5IFXl7 fendって何だっけ
679デフォルトの名無しさん
2020/08/01(土) 10:59:55.52ID:Bo5IFXl7 procedure閉じてるのか
680デフォルトの名無しさん
2020/08/01(土) 11:05:00.24ID:A3rem5Z4 あとマウスカーソルについてくる吹き出し
PUBLIC RZZ=0
PUBLIC X=0
PUBLIC Y=0
XX=0; YY=0;
WHILE TRUE
FOR RZZ=0 TO 55
F=0;
WHILE (F=0)
XX = X; YY = Y;
X = G_MOUSE_X; Y = G_MOUSE_Y;
IF (XX <> X) OR (YY <> Y)
F=1
ENDIF
WEND
Thread FKDSSUB()
NEXT
WEND
procedure FKDSSUB()
TZ=RZZ-1
IF TZ = -1 THEN TZ = 55
Fukidasi(RZZ, X+10, Y+10, 0, ,,,random($FFFFFF))
WHILE TZ <> RZZ
SLEEP (0.01)
WEND
FEND
PUBLIC RZZ=0
PUBLIC X=0
PUBLIC Y=0
XX=0; YY=0;
WHILE TRUE
FOR RZZ=0 TO 55
F=0;
WHILE (F=0)
XX = X; YY = Y;
X = G_MOUSE_X; Y = G_MOUSE_Y;
IF (XX <> X) OR (YY <> Y)
F=1
ENDIF
WEND
Thread FKDSSUB()
NEXT
WEND
procedure FKDSSUB()
TZ=RZZ-1
IF TZ = -1 THEN TZ = 55
Fukidasi(RZZ, X+10, Y+10, 0, ,,,random($FFFFFF))
WHILE TZ <> RZZ
SLEEP (0.01)
WEND
FEND
681デフォルトの名無しさん
2020/08/01(土) 12:38:15.63ID:I5HfbaHP 死ぬほど読みづらいからコード貼る時は適度な改行とインデントつけてくれ
5chだとアンダーバー4つか全角スペース2個でインデント1つになる
while True
____ifb
while True
ifb
5chだとアンダーバー4つか全角スペース2個でインデント1つになる
while True
____ifb
while True
ifb
682デフォルトの名無しさん
2020/08/01(土) 14:01:23.40ID:U7vGE7b3683デフォルトの名無しさん
2020/08/01(土) 14:34:06.11ID:Bo5IFXl7 自分で好きに整形しろ
684デフォルトの名無しさん
2020/08/01(土) 16:55:40.92ID:Uz4ilC0D 「Harigami」を使ってみてはどうだ
ttps://harigami.jp/cd?hsh=8e4b495c-d3f3-4267-9154-8d83dc1cbd8b
ttps://harigami.jp/cd?hsh=8e4b495c-d3f3-4267-9154-8d83dc1cbd8b
685デフォルトの名無しさん
2020/08/16(日) 21:01:17.32ID:k+kUeFyT CHKIMGXをWHILE TRUEの外に出すとエラーが出てしまいます。
なぜなんでしょう
下記でメインからサブ関数でCHKIMGXは読んでいます
// ChkImgX関数をインクルード
CALL ChkImgX.uws;
while true
TRY
startup_chkimgx() //CHKIMGX関数開始
****ここにプログラム
CHK(LOC)
FINALLY
shutdown_chkimgx() //CHKIMGX関数停止
ENDTRY
wend
function CHK(loc[])
CHKIMGXをここで使う
FEND
なぜなんでしょう
下記でメインからサブ関数でCHKIMGXは読んでいます
// ChkImgX関数をインクルード
CALL ChkImgX.uws;
while true
TRY
startup_chkimgx() //CHKIMGX関数開始
****ここにプログラム
CHK(LOC)
FINALLY
shutdown_chkimgx() //CHKIMGX関数停止
ENDTRY
wend
function CHK(loc[])
CHKIMGXをここで使う
FEND
686デフォルトの名無しさん
2020/08/17(月) 02:52:44.83ID:UvoRp25i 何エラーよ
687デフォルトの名無しさん
2020/08/17(月) 19:53:01.04ID:KciEC6qM *_chkimgxは何度も呼び出すような関数じゃないよ
どっかでリークしてるオチじゃないの
どっかでリークしてるオチじゃないの
688デフォルトの名無しさん
2020/08/17(月) 23:35:10.11ID:wjXkQQv2 TRYがWHILEENDの中でずっと回っていたのだけど、
WHILEENDの外に出したら治った・・・
皆様ありがとう
WHILEENDの外に出したら治った・・・
皆様ありがとう
689デフォルトの名無しさん
2020/08/18(火) 12:57:20.18ID:suCzDasT CHKIMGやCHKIMGXの画像検索範囲について質問です。
大きさ10x10の画像を0,0 100,100の範囲から探す場合
画像左上のピクセルが100,100に到達するまで検索しているのか
画像右下のピクセルが100,100に到達かのどちらでしょうか
大きさ10x10の画像を0,0 100,100の範囲から探す場合
画像左上のピクセルが100,100に到達するまで検索しているのか
画像右下のピクセルが100,100に到達かのどちらでしょうか
690デフォルトの名無しさん
2020/08/18(火) 18:59:40.87ID:5Qy/mHcW 右下かなと思うが、試してみたら?
チェッカーパターンな背景作ってマスの画像で検索
チェッカーパターンな背景作ってマスの画像で検索
691デフォルトの名無しさん
2020/09/02(水) 22:09:27.14ID:fUjg46/2 uwscの実行中に離席した場合などでディスプレイの電源が切れないようにする方法ってないでしょうか?
今は5分に1回マウスを動かす処理を入れて対応していますがネット閲覧時にいきなりマウスが動くので操作しにくいです
コントロールパネルの電源オプションで設定を変更すればよいのはわかりますがuwsc実行中だけというのが理想です
よろしくお願いします
今は5分に1回マウスを動かす処理を入れて対応していますがネット閲覧時にいきなりマウスが動くので操作しにくいです
コントロールパネルの電源オプションで設定を変更すればよいのはわかりますがuwsc実行中だけというのが理想です
よろしくお願いします
692デフォルトの名無しさん
2020/09/02(水) 22:16:34.51ID:wdeVv3mH UWSCで電源オプションの設定を変えれば
693デフォルトの名無しさん
2020/09/02(水) 22:57:57.26ID:85wlAF9N >>691
事前に2種類の電源プランを作っておき
UWSCのスクリプト内で
doscmd関数を使い
Powercfg.exeに電源プラン変更コマンドを送る
コマンドについては以下を参考に
https://ascii.jp/elem/000/001/877/1877882/
うまく組めばマクロ終了時に電源プランを自動的に戻すことも可能
事前に2種類の電源プランを作っておき
UWSCのスクリプト内で
doscmd関数を使い
Powercfg.exeに電源プラン変更コマンドを送る
コマンドについては以下を参考に
https://ascii.jp/elem/000/001/877/1877882/
うまく組めばマクロ終了時に電源プランを自動的に戻すことも可能
694デフォルトの名無しさん
2020/09/02(水) 23:09:28.81ID:pBGvn6/E //五分に一度 ALT を押してスリープ回避
while 1;sleep (300);kbd(vk_alt);wend;
while 1;sleep (300);kbd(vk_alt);wend;
695デフォルトの名無しさん
2020/09/03(木) 00:02:11.56ID:vpra+F8w >>691
DEF_DLL SetThreadExecutionState(DWORD): DWORD: kernel32
CONST ES_CONTINUOUS = $80000000
CONST ES_DISPLAY_REQUIRED = $02
SetThreadExecutionState(ES_CONTINUOUS or ES_DISPLAY_REQUIRED)
DEF_DLL SetThreadExecutionState(DWORD): DWORD: kernel32
CONST ES_CONTINUOUS = $80000000
CONST ES_DISPLAY_REQUIRED = $02
SetThreadExecutionState(ES_CONTINUOUS or ES_DISPLAY_REQUIRED)
696デフォルトの名無しさん
2020/09/03(木) 20:27:05.96ID:ha/scr+l697デフォルトの名無しさん
2020/09/24(木) 12:33:36.91ID:eUQ7jF7Q 画像aが出るまでループし、画像aが出たらreturnという仕組みにしたいのですが
ループせず最後の所で止まってしまいます。少々省略しないと貼れないので省略しますが
これどうなっているんでしょうか?どこが間違いでしょうか?そのまま貼ります。
WHILE (CHKIMG("A.bmp")=FALSE)
SLEEP(0.5)
KBD(VK_P,DOWN,50)
KBD(VK_P,UP,50)
SLEEP(0.5)
WEND
IFB CHKIMG("A.bmp")
SLEEP(0.5)
KBD(VK_O,DOWN,50)
KBD(VK_O,UP,50)
SLEEP(0.5)
ENDIF
ループせず最後の所で止まってしまいます。少々省略しないと貼れないので省略しますが
これどうなっているんでしょうか?どこが間違いでしょうか?そのまま貼ります。
WHILE (CHKIMG("A.bmp")=FALSE)
SLEEP(0.5)
KBD(VK_P,DOWN,50)
KBD(VK_P,UP,50)
SLEEP(0.5)
WEND
IFB CHKIMG("A.bmp")
SLEEP(0.5)
KBD(VK_O,DOWN,50)
KBD(VK_O,UP,50)
SLEEP(0.5)
ENDIF
698デフォルトの名無しさん
2020/09/24(木) 12:35:05.91ID:eUQ7jF7Q 画像aが出るまでループし、画像aが出たらOという仕組みにしたいだった
699デフォルトの名無しさん
2020/09/24(木) 17:12:59.11ID:FiwMBeQt 単にループさせるだけなら
While 1
〜
Wend
で良くね なんか条件が書いてあるからループしなくなるのでは
While 1
〜
Wend
で良くね なんか条件が書いてあるからループしなくなるのでは
700デフォルトの名無しさん
2020/09/24(木) 17:13:38.10ID:FiwMBeQt あとWendより後にifbがあるからループの中に条件がないね
701デフォルトの名無しさん
2020/09/24(木) 21:34:49.94ID:mGnJTDMd >>697
これをみても特に問題があるとは思えない
>ループせず最後の所で止まってしまいます。
疑問1:ループしていないことをどう確かめたのか?
疑問2:最後の所とはどこか?
疑問3:終わるではなく止まるなのか?
ループ中、ループ後に PRINT か MSGBOX かを入れて
たしかにそこを通ってるかどうか確かめたほうがいいと思う
MSGBOXを使う場合はどうせテストなのでループ中のSLEEPは
2秒くらいとったほうが扱いやすい
これをみても特に問題があるとは思えない
>ループせず最後の所で止まってしまいます。
疑問1:ループしていないことをどう確かめたのか?
疑問2:最後の所とはどこか?
疑問3:終わるではなく止まるなのか?
ループ中、ループ後に PRINT か MSGBOX かを入れて
たしかにそこを通ってるかどうか確かめたほうがいいと思う
MSGBOXを使う場合はどうせテストなのでループ中のSLEEPは
2秒くらいとったほうが扱いやすい
702デフォルトの名無しさん
2020/09/24(木) 21:45:43.40ID:/TzBJHGH こんなこと書いてるしネタだろう
>少々省略しないと貼れないので省略しますが
>そのまま貼ります。
>少々省略しないと貼れないので省略しますが
>そのまま貼ります。
703デフォルトの名無しさん
2020/09/29(火) 22:34:47.52ID:FsRpumhX 記録すらできないアプリがあるのか…これどうなってんだ
アプリはR2games.comのR2Client
12月末のFlash終了後このclientで引き続きプレイできるそうなのでインストールしてみたのだけど
UWSCで記録が全くできないので自動化が出来ない
アプリはR2games.comのR2Client
12月末のFlash終了後このclientで引き続きプレイできるそうなのでインストールしてみたのだけど
UWSCで記録が全くできないので自動化が出来ない
704デフォルトの名無しさん
2020/09/29(火) 23:38:54.63ID:0MYSuhb/ まあ、中身Flashのままみたいだからなあ
705デフォルトの名無しさん
2020/09/29(火) 23:48:20.89ID:FsRpumhX いやgetidすら取得できない
706デフォルトの名無しさん
2020/09/30(水) 16:30:38.78ID:QVZpoBrX flashのid取得するにはまずウィンドウidとって、その次にハンドル取得しなきゃダメだよ
707デフォルトの名無しさん
2020/10/01(木) 19:39:40.83ID:LoI0BqO6708デフォルトの名無しさん
2020/10/02(金) 14:26:32.02ID:fC3or5Mo ある期間からある期間の月数って、
どうやったら求められる?
例えば2019年10月から2020年3月は6ヶ月。
これを求めたい。
どうやったら求められる?
例えば2019年10月から2020年3月は6ヶ月。
これを求めたい。
709デフォルトの名無しさん
2020/10/02(金) 14:38:31.92ID:b1fFJk4v 検索したけど分からんかった
年×12+月で引き算+1したら?
年×12+月で引き算+1したら?
710デフォルトの名無しさん
2020/10/02(金) 15:37:29.99ID:fC3or5Mo なるほど!
頭、いいね。
やってみる
頭、いいね。
やってみる
711デフォルトの名無しさん
2020/10/03(土) 09:16:10.12ID:A1z8cMTv autoitを使ってる人いる?
712デフォルトの名無しさん
2020/10/09(金) 00:15:11.67ID:fWH520+c >>711
今は使ってないが、前は結構使ってた。
今は使ってないが、前は結構使ってた。
713デフォルトの名無しさん
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の実行ファイルとそれぞれのスクリプトファイルは全て同一フォルダにあるものとします
よろしくお願いします
//同時.uwsの内容
call 処理1.uws
call 処理2.uws
こんな感じで書いても処理1.uwsが動くだけです
処理1.uwsが終わったら処理2.uwsが動くと思うのですがそうではなく1と2を同時に実行して別々の動きをして欲しいです
uwscの実行ファイルとそれぞれのスクリプトファイルは全て同一フォルダにあるものとします
よろしくお願いします
714デフォルトの名無しさん
2020/11/06(金) 23:09:52.79ID:oall+sef thread 処理1.uws
thread 処理2.uws
thread 処理2.uws
715デフォルトの名無しさん
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つしかないので
そういう操作がある場合は
奪い合いが起こることを意識する必要がある
処理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つしかないので
そういう操作がある場合は
奪い合いが起こることを意識する必要がある
716デフォルトの名無しさん
2020/11/08(日) 09:07:47.79ID:96WGa2GX717デフォルトの名無しさん
2020/11/15(日) 21:51:04.27ID:PgpnhPdo 参考にしようと思って開いたnaverまとめが9月末で閉鎖してる…
718デフォルトの名無しさん
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を認識するにはどうすればよろしいのでしょうか
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を認識するにはどうすればよろしいのでしょうか
720デフォルトの名無しさん
2020/12/26(土) 23:50:39.26ID:c93B7w+q721デフォルトの名無しさん
2020/12/27(日) 00:47:30.15ID:n8fvXRaD >>719
VMware等仮想OSの方でNOXを動作させてアクティブにすれば
Vmwareを最小化にしても内部ではアクティブですからね
こういうときは多コアのCPUが有利なので8コアや16コアのCPUを買おう!
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)
こちらは認識してくれているので、記述のミスはないと思います
たしかにそのやり方は強引にできそうですが、調べてたら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)
こちらは認識してくれているので、記述のミスはないと思います
723デフォルトの名無しさん
2020/12/27(日) 06:46:05.34ID:ILpVLMzN 画像が異なるが答えなのでは…?
実物も見せず言うだけ言われても何も分からんがな
実物も見せず言うだけ言われても何も分からんがな
724デフォルトの名無しさん
2020/12/27(日) 11:11:31.79ID:Go+qnVGA 画像が異なるってことはチェックしてる画面が違うわけで
画像以外のパラメータがどれか合ってないのでは
画像以外のパラメータがどれか合ってないのでは
725デフォルトの名無しさん
2020/12/27(日) 13:39:37.49ID:Xj0rz7S9 よく知らないけど、X版とCHKIMGでは判定方法が違うんじやないの?
X版は、かなり暗くても高スコアでヒットするから
X版は、かなり暗くても高スコアでヒットするから
726デフォルトの名無しさん
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がおかしいか、座標がおかしいかわかるでしょ
これの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が画像認識されないのも理解できるけどっていうことです
いろいろと勘違いさせてしまいました
まず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を認識しないので動作しないということです
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を認識しないので動作しないということです
729デフォルトの名無しさん
2020/12/27(日) 16:46:19.54ID:Go+qnVGA PC一回再起動したら?
730デフォルトの名無しさん
2020/12/27(日) 19:14:21.24ID:ILpVLMzN731デフォルトの名無しさん
2020/12/27(日) 19:37:44.59ID:majDbP6B >>728
X版はデバッグモードあるから有効にしてみたら何かわかるかも知れない
X版はデバッグモードあるから有効にしてみたら何かわかるかも知れない
732デフォルトの名無しさん
2020/12/28(月) 15:08:59.57ID:Btd6jx/E 自己解決しました、お騒がせしました
733デフォルトの名無しさん
2020/12/28(月) 15:12:22.09ID:bQ1hkiX8 原因はなんだった?
734デフォルトの名無しさん
2020/12/28(月) 15:20:34.10ID:A2LpudMi >>732
実際に起きてた問題と原因と解決した方法を報告してね
実際に起きてた問題と原因と解決した方法を報告してね
735デフォルトの名無しさん
2020/12/28(月) 19:16:35.66ID:lHgMwOra >>732
ネットでの質問は、自己解決した場合もその内容を具体的に報告することがマナーとなっていますのよー
そうしないと情報の共有が出来なくて回答者は無駄足になるし、
聞き逃げが続くと誰も答えなくなるかもしれないからね
ネットでの質問は、自己解決した場合もその内容を具体的に報告することがマナーとなっていますのよー
そうしないと情報の共有が出来なくて回答者は無駄足になるし、
聞き逃げが続くと誰も答えなくなるかもしれないからね
736デフォルトの名無しさん
2020/12/28(月) 19:31:08.48ID:RUvOsexB 自己解決したんだから回答者は答えてないのと同じだと思いますが
737デフォルトの名無しさん
2020/12/28(月) 19:36:28.69ID:rQ8H54wA まー多分つまんない勘違いか思い込みだったんだろう
んなもん共有されても参考にならないしいんじゃね
んなもん共有されても参考にならないしいんじゃね
738デフォルトの名無しさん
2020/12/29(火) 02:36:48.48ID:HcXyWfHn 仰る通り、回答者もいなかったので記載するほどでもないと思っていました
CHKIMGで認識できて、あいまい認識できるCHKIMGXが認識されなかった問題ですが、CHKIMGXでの認識は無理だと判断しました
SAVEIMGで画像取得しても特に画像に違いが見当たらず、
認識する範囲を画面全体から、認識してもらいたい画像がある範囲のみに絞っても無理
判定閾値の条件を緩くしたら、今度は画像が表示されていないのに認識してしまうほどでした
CHKIMGXでは色幅が利用できないようなので、一見わかりづらいですがおそらくそこに問題があったのではないかと思います
CHKIMGで認識できて、あいまい認識できるCHKIMGXが認識されなかった問題ですが、CHKIMGXでの認識は無理だと判断しました
SAVEIMGで画像取得しても特に画像に違いが見当たらず、
認識する範囲を画面全体から、認識してもらいたい画像がある範囲のみに絞っても無理
判定閾値の条件を緩くしたら、今度は画像が表示されていないのに認識してしまうほどでした
CHKIMGXでは色幅が利用できないようなので、一見わかりづらいですがおそらくそこに問題があったのではないかと思います
739デフォルトの名無しさん
2020/12/29(火) 08:14:52.64ID:VfYR7jYh740デフォルトの名無しさん
2020/12/29(火) 09:42:18.91ID:kNpkOyS+ >>738
>回答者もいなかったので記載するほどでもないと思っていました
うん。それ間違いだから直そうね
それはさておき、範囲の比較じゃ無駄が多いから、peekColorでfunction作ったほうが速いんじゃね
何に使うのか知らんが、ゲームの画面監視でHP・MP・敵と第三者を常時監視して完全な自動戦闘するなら断然軽かったぜ
>回答者もいなかったので記載するほどでもないと思っていました
うん。それ間違いだから直そうね
それはさておき、範囲の比較じゃ無駄が多いから、peekColorでfunction作ったほうが速いんじゃね
何に使うのか知らんが、ゲームの画面監視でHP・MP・敵と第三者を常時監視して完全な自動戦闘するなら断然軽かったぜ
741デフォルトの名無しさん
2020/12/29(火) 14:54:12.96ID:4L/gF/i1 昔mixiゲームにあったクライムワールドで
格下相手に粘着して5万勝以上稼いだのは僕です
マクロ様々でしたね〜!
格下相手に粘着して5万勝以上稼いだのは僕です
マクロ様々でしたね〜!
742デフォルトの名無しさん
2020/12/29(火) 15:00:52.48ID:PT/2WgOq それって金もうかるん?
743デフォルトの名無しさん
2020/12/29(火) 20:59:49.89ID:/PhRpDJG >>738
CHKIMGXはモノクロに変換して比較するから色違いの画像とかには向いてないよ
CHKIMGXはモノクロに変換して比較するから色違いの画像とかには向いてないよ
744デフォルトの名無しさん
2020/12/30(水) 14:54:33.60ID:lWlFiWq8 >>738
chkimgxで認識できなくてchkimgだと認識する画像パターンは存在するからね
chkimgxっていうか使ってるOpenCVライブラリの問題だと思う。もしかしたら、こっちのバージョン上げて作り直したら解消するかもしれない
chkimgxで認識できなくてchkimgだと認識する画像パターンは存在するからね
chkimgxっていうか使ってるOpenCVライブラリの問題だと思う。もしかしたら、こっちのバージョン上げて作り直したら解消するかもしれない
745デフォルトの名無しさん
2020/12/30(水) 15:51:05.24ID:jnop5f2w もう書かれてる通り色の扱いでしょ
746デフォルトの名無しさん
2020/12/31(木) 09:53:15.79ID:q35RE35p windows10の1909から20H2へアップデートしたらブラウザの描画が変わって画像取得をやり直す羽目になった…
フォントはブラウザ毎で異なるのは許容できるけど画像の描画も変わるのは解せない
普段chkimgしか使ったことないけどこういうのはchkimgxで解決できるのかな?
フォントはブラウザ毎で異なるのは許容できるけど画像の描画も変わるのは解せない
普段chkimgしか使ったことないけどこういうのはchkimgxで解決できるのかな?
747デフォルトの名無しさん
2020/12/31(木) 16:07:02.38ID:898M8IM/748デフォルトの名無しさん
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
どなたか教えていていただけないでしょうか。
マクロ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
749デフォルトの名無しさん
2021/01/18(月) 00:48:56.41ID:3GwAoqNL ↑のようなものを作っても
k=k+1
これが「変数kが定義されていません」エラーを吐いて動きません
k=k+1
これが「変数kが定義されていません」エラーを吐いて動きません
750デフォルトの名無しさん
2021/01/18(月) 00:55:11.99ID:zDdtgKlc マクロ2の変数をマクロ3では参照できない
詳しくは変数のスコープでググってくれ
詳しくは変数のスコープでググってくれ
751デフォルトの名無しさん
2021/01/18(月) 20:36:52.82ID:3GwAoqNL できない理由の回答ありがとう
PUBLICを使うことでなんとかなりそうです
PUBLICを使うことでなんとかなりそうです
752デフォルトの名無しさん
2021/01/20(水) 13:52:57.09ID:op6U359o excel2013以降全般でUWSCでexcelファイルをオープンにする場合と
デスクトップ上からexecelファイルをクリックしてopenする場合では何かexcelの認識が変わるのでしょうか?
excelに後から入れたアドインが上記の場合だとアドインを認識してくれず
下記の場合だとアドインを認識してくれる状態で困っています
デスクトップ上からexecelファイルをクリックしてopenする場合では何かexcelの認識が変わるのでしょうか?
excelに後から入れたアドインが上記の場合だとアドインを認識してくれず
下記の場合だとアドインを認識してくれる状態で困っています
753デフォルトの名無しさん
2021/02/02(火) 19:37:28.21ID:lhBS5kaI お気に入りだったのがサービス終了したもんで
マクロ使ってプレイすると面白いゲーム教えて下さい
マクロ使ってプレイすると面白いゲーム教えて下さい
754デフォルトの名無しさん
2021/02/02(火) 20:24:46.86ID:CvaL/gK2 クッキークリッカーでも極めたら如何か
755デフォルトの名無しさん
2021/02/05(金) 12:52:44.92ID:CE/PVw/N 裏マクロでの画像認識について質問です
w_id = getid( "エミュレーター" )
mouseorg( w_id ,2 ,MORG_BACK )
を利用した裏マクロを作り、再生してみたのですが
オンマウス状態にしないと画像認識が働かず
困っています。
【現在の状況やその具体例】
・単純なクリック操作は裏マクロとして正常に動作する
・エミュレータの外側にマウスカーソルがあると画像認識がまったく働かない
・エミュレータの内側にマウスカーソルをもっていくと即座に画像認識が行われる
・エミュレータがアクティブ状態か非アクティブ状態かは関係なく
オンマウスかどうかで画像認識の「働く/働かない」が決まる状況
(PC画面の最前面はメモ帳やブラウザ。裏で開いているエミュレータの先っぽだけを
ブラウザの上にハミ出させて、そのハミ部分にマウスカーソルを移動させると画像認識動く)
この「オンマウスでないと画像認識が動かない」状況を解消する方法を知りたいです
よろしくお願いします。
w_id = getid( "エミュレーター" )
mouseorg( w_id ,2 ,MORG_BACK )
を利用した裏マクロを作り、再生してみたのですが
オンマウス状態にしないと画像認識が働かず
困っています。
【現在の状況やその具体例】
・単純なクリック操作は裏マクロとして正常に動作する
・エミュレータの外側にマウスカーソルがあると画像認識がまったく働かない
・エミュレータの内側にマウスカーソルをもっていくと即座に画像認識が行われる
・エミュレータがアクティブ状態か非アクティブ状態かは関係なく
オンマウスかどうかで画像認識の「働く/働かない」が決まる状況
(PC画面の最前面はメモ帳やブラウザ。裏で開いているエミュレータの先っぽだけを
ブラウザの上にハミ出させて、そのハミ部分にマウスカーソルを移動させると画像認識動く)
この「オンマウスでないと画像認識が動かない」状況を解消する方法を知りたいです
よろしくお願いします。
756デフォルトの名無しさん
2021/02/05(金) 14:06:50.35ID:CE/PVw/N >>755
すみません。質問者です
>単純なクリック操作は裏マクロとして正常に動作する
↑これもオンマウス状態でないと動作していませんでした。勘違いしていたようです
根本的に裏マクロの作成に失敗してる気がします
もうちょっと自分で試行錯誤してから質問しなおします。
すみません。質問者です
>単純なクリック操作は裏マクロとして正常に動作する
↑これもオンマウス状態でないと動作していませんでした。勘違いしていたようです
根本的に裏マクロの作成に失敗してる気がします
もうちょっと自分で試行錯誤してから質問しなおします。
757デフォルトの名無しさん
2021/02/05(金) 14:38:29.04ID:8IWMGH1a 数回滞納したら信用機関のブラックリストに載るんだろ
これ最悪じゃん
これ最悪じゃん
758デフォルトの名無しさん
2021/02/05(金) 14:39:01.10ID:8IWMGH1a 誤爆でした
759デフォルトの名無しさん
2021/02/05(金) 14:57:30.51ID:yiuLSrin ((((;゚Д゚))))
760デフォルトの名無しさん
2021/02/05(金) 15:26:56.29ID:3x1rEHtV 滞納ってのは金払いますって約束を破ってるんだから信用に傷付くのは当然だと思うんだが
遅れても払えば問題ないって意識が根本的におかしい
uwscで自動化しろ
遅れても払えば問題ないって意識が根本的におかしい
uwscで自動化しろ
761デフォルトの名無しさん
2021/02/06(土) 14:27:30.37ID:NphD2JzZ IEでサイトをよんだら、Edgeが起動した。
もうだめだ。オレの人生はおわった。
変わりの自動化ツールを教えて下さい
もうだめだ。オレの人生はおわった。
変わりの自動化ツールを教えて下さい
762デフォルトの名無しさん
2021/02/06(土) 14:37:42.46ID:e0Fl/dIF edgeで動作するように作り直した方が早い
763デフォルトの名無しさん
2021/02/06(土) 15:00:10.50ID:NphD2JzZ >>762
そんなことできるんですか 朗報!
そんなことできるんですか 朗報!
764デフォルトの名無しさん
2021/02/06(土) 15:30:39.13ID:xKFqhvrl ieでそのまま開くみたいな設定がedge側にあったと思うけど
765デフォルトの名無しさん
2021/02/06(土) 20:25:34.70ID:+9Nz3gBm766デフォルトの名無しさん
2021/02/08(月) 18:06:22.89ID:sakamvjP adbを利用したマクロのタップ位置をちょっとだけランダム化したいです
表マクロで座標(20,50)の周辺をランダムタップする場合は
20+RANDOM(1),50+RANDOM(1)
↑みたいにすれば出来ていたのですが、
adb版の裏マクロだとどういう記述にすればいいのでしょうか
表マクロで座標(20,50)の周辺をランダムタップする場合は
20+RANDOM(1),50+RANDOM(1)
↑みたいにすれば出来ていたのですが、
adb版の裏マクロだとどういう記述にすればいいのでしょうか
767デフォルトの名無しさん
2021/02/08(月) 19:54:11.87ID:rDadBMP6 >>674-675辺りを見て
768デフォルトの名無しさん
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座標を覆えていないのですが
これは書き込みミスですか?それとも何か意図があるでしょうか
括弧でくくるとはどこをどのようにくくればいいのでしょうか…
具体例を書いていただけるとありがたいです。 頭が弱くて申し訳ない泣
下記を試してみたのですが一番上のやつだけが正常に動きます
成功(ランダム化無し)
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座標を覆えていないのですが
これは書き込みミスですか?それとも何か意図があるでしょうか
769デフォルトの名無しさん
2021/02/09(火) 02:13:50.42ID:HgHOGPAh DOSCMDで送信するのは文字列
下3つはRANDOM関数がダブルクォーテーションで囲われてるから関数ではなく文字列として認識されてる
文字列は結合が出来る
str = "aaa" + "bbb"
print str
> aaabbb
下3つはRANDOM関数がダブルクォーテーションで囲われてるから関数ではなく文字列として認識されてる
文字列は結合が出来る
str = "aaa" + "bbb"
print str
> aaabbb
770デフォルトの名無しさん
2021/02/09(火) 02:58:31.43ID:Yx4rnzv/ >>768
文法適当だけどこう
doscmd("adb shell input tap" + " " + (10 + rnd(10)) + " " + (20 + rnd(20)))
数値の加算としてて扱いたいところを括りなさいということ
doscmdで失敗したらdoscmdの返り値を吹き出しとかログに出して確認するとコマンドプロンプト上のメッセージ見れるよ
まあ、あとdoscmdで構文組み立てると使い回し的に微妙だし外で組み立ててデバッグ表示とか確認してから文字列の変数で渡す方がいいかな
文法適当だけどこう
doscmd("adb shell input tap" + " " + (10 + rnd(10)) + " " + (20 + rnd(20)))
数値の加算としてて扱いたいところを括りなさいということ
doscmdで失敗したらdoscmdの返り値を吹き出しとかログに出して確認するとコマンドプロンプト上のメッセージ見れるよ
まあ、あとdoscmdで構文組み立てると使い回し的に微妙だし外で組み立ててデバッグ表示とか確認してから文字列の変数で渡す方がいいかな
771デフォルトの名無しさん
2021/02/09(火) 10:28:45.04ID:w8MMFkxC772デフォルトの名無しさん
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の間にスペースいれてるだけだ
プログラム知識どのくらいあるか知らんけど、要はdoscmdは最少だと文字列1つが引数なのが大前提
次にuwscは文字列に対して+すると左辺右辺を文字列とし結合する
この時、数値も文字列になるし、関数は返り値が文字列になる
なのでdoscmdの1番外の括弧の中の+は基本的に文字列の結合をしている
括弧の中にある括弧内は先に数値の計算がされる
doscmd(10 + 10)
だと1010になって
doscmd((10 + 10))
だと20になる
doscmd(a + " " + b)
これはなんのことはなく単にaとbの間にスペースいれてるだけだ
773デフォルトの名無しさん
2021/02/10(水) 08:32:17.00ID:JYL+31L1 ありがとうございます。今度こそわかりました
つまり、doscmd(a + " " + b)のaとbとにランダム数値を代入する、みたいな式を
これの前に書けば晴れてランダム座標の完成となるわけですね
ちなみにお察しの通りプログラムの知識はなく
録画した表マクロが読める程度です… 回答ありがとうございます
つまり、doscmd(a + " " + b)のaとbとにランダム数値を代入する、みたいな式を
これの前に書けば晴れてランダム座標の完成となるわけですね
ちなみにお察しの通りプログラムの知識はなく
録画した表マクロが読める程度です… 回答ありがとうございます
774デフォルトの名無しさん
2021/02/10(水) 16:14:00.55ID:mYgax70j >>763
IE専用ツールじゃないから、EdgeでもChromeでも動くよ
IE専用ツールじゃないから、EdgeでもChromeでも動くよ
775デフォルトの名無しさん
2021/02/12(金) 20:13:05.76ID:74skEOdG >>774
それがですね問題なのは、IEの場合、ページが読み込み完了になるまで待っててくれる関数があるじゃなんですか。
ああいうことができないと、例えばボタンを押すタイミングが早すぎたとかいうことになって先へ進めなくなるんです。
他のRPAでしたっけか、そういったもので、ブラウザの読み込み完了になるまで待機するようなものが見つけられなくて
UWSCでIEをそのまま使いたいと思ってしまっているわけなんです。
それがですね問題なのは、IEの場合、ページが読み込み完了になるまで待っててくれる関数があるじゃなんですか。
ああいうことができないと、例えばボタンを押すタイミングが早すぎたとかいうことになって先へ進めなくなるんです。
他のRPAでしたっけか、そういったもので、ブラウザの読み込み完了になるまで待機するようなものが見つけられなくて
UWSCでIEをそのまま使いたいと思ってしまっているわけなんです。
776デフォルトの名無しさん
2021/02/13(土) 11:45:04.70ID:ZGnem3aY Seleniumは?
777デフォルトの名無しさん
2021/02/13(土) 12:07:26.24ID:dZ6ue5BC Seleniumでもpuppeteerでも好きなもの使え
778デフォルトの名無しさん
2021/02/15(月) 20:45:26.14ID:fa+YzTlt webdriver使えば?
779デフォルトの名無しさん
2021/02/16(火) 15:50:22.10ID:+7e6mc9m UWSCのスクリプト集が死んでるサイトしかないけど、見る方法は・・・
http://canal22.org/qanda/uwsc_script/
http://canal22.org/qanda/uwsc_script/
780デフォルトの名無しさん
2021/02/16(火) 23:02:31.35ID:N5xcmHzO archiveでどーぞー
781デフォルトの名無しさん
2021/02/28(日) 12:00:54.27ID:zlvqXFLj Aという動作をループさせながら、Bという画像が現れたら数分後にBをクリックするとかできますか?スリープだとAの動作が止まってしまうので…
782デフォルトの名無しさん
2021/02/28(日) 12:04:06.87ID:Gf8vzNDu gettimeを使うかthreadで別処理にする
783デフォルトの名無しさん
2021/02/28(日) 13:15:04.71ID:rSDXD4Hw Aを内包する大ループ作るだけでよくね
正攻法はthreadでいいと思うが
正攻法はthreadでいいと思うが
784デフォルトの名無しさん
2021/02/28(日) 17:45:14.82ID:zlvqXFLj ありがとうございます。早速試してみます。
785デフォルトの名無しさん
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
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
786デフォルトの名無しさん
2021/03/02(火) 14:30:33.02ID:mCqWIBDx 782:gettimeかthread
785:考えすぎでは?gettime使え
785:考えすぎでは?gettime使え
787デフォルトの名無しさん
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
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
788デフォルトの名無しさん
2021/03/03(水) 00:31:34.71ID:UoOyY0IM789デフォルトの名無しさん
2021/03/03(水) 00:39:48.25ID:eEFRPXrG >>788
BTNって非同期なの?
BTNって非同期なの?
790デフォルトの名無しさん
2021/03/03(水) 20:36:38.79ID:yubedTmO BTN(LEFT,CLICK,(G_IMG_X+5),(G_IMG_Y+5),600000) とすると、クリックするまでループ処理が止まる
止まるとA動作のループが動かない
止まるとA動作のループが動かない
791デフォルトの名無しさん
2021/03/03(水) 20:58:42.86ID:gkb1jlIk MSがなにやら簡単ツールを提供するようだ
自動化が簡単になる
自動化が簡単になる
792デフォルトの名無しさん
2021/03/03(水) 22:02:40.43ID:g0RIT2ce ソースは?
UWSCみたいには使えないと思うが・・・
UWSCみたいには使えないと思うが・・・
793デフォルトの名無しさん
2021/03/03(水) 22:08:57.07ID:gkb1jlIk794デフォルトの名無しさん
2021/03/03(水) 22:20:08.14ID:g0RIT2ce コードを書かずに〜と書いてあることから凝った設定はできないとも読めるよ?
まあ仮に自動化できたとしてもUWSCと同等のことが出来なければ用が無い
まあ仮に自動化できたとしてもUWSCと同等のことが出来なければ用が無い
795デフォルトの名無しさん
2021/03/03(水) 22:25:44.81ID:V8Bi7ith これとUWSCを組み合わせて使えば自動化が簡単にできるようになるんじゃないかと期待してみる
796デフォルトの名無しさん
2021/03/03(水) 22:41:06.95ID:W0isZ3pe ブラウザの読み込み完了になるまで待つ機能があるかどうかですお。
797デフォルトの名無しさん
2021/03/04(木) 08:23:11.29ID:RtzC2UYg そりゃ自動化ツールなんだから
クリックした結果を見る前に次の動作するわけなかろうw
艦これの自動化くらいすぐ出来そう
クリックした結果を見る前に次の動作するわけなかろうw
艦これの自動化くらいすぐ出来そう
798デフォルトの名無しさん
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
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
799デフォルトの名無しさん
2021/03/08(月) 11:11:54.09ID:r1yNd/Vf >>793の続きが紹介されていた
windows10homeの場合は使えない機能があるとのことProを使うのは当たり前なんで気にしたことなかったが。
homeの人はproへグレードアップしてほしい。約1万5000円支払えば可能だから当たり前にやっておこう。
また、ブラウザの自動操作は拡張機能が必要とのことだ。
windows10homeの場合は使えない機能があるとのことProを使うのは当たり前なんで気にしたことなかったが。
homeの人はproへグレードアップしてほしい。約1万5000円支払えば可能だから当たり前にやっておこう。
また、ブラウザの自動操作は拡張機能が必要とのことだ。
800デフォルトの名無しさん
2021/03/08(月) 13:19:35.29ID:p+9eWZvC やるかボケ
801デフォルトの名無しさん
2021/03/08(月) 13:36:33.15ID:r1yNd/Vf あっそうですか
でしたら使えない機能は諦めていただく他はないですね
でしたら使えない機能は諦めていただく他はないですね
802デフォルトの名無しさん
2021/03/08(月) 13:54:11.38ID:1eIB7vrT マイクソからも提供されてるのか
試してみるかな
試してみるかな
803デフォルトの名無しさん
2021/03/12(金) 15:13:37.21ID:ZRLAvOku printで表示させる文字の位置を設定する方法はありますか?
サイズも設定できるとなお良いです
サイズも設定できるとなお良いです
804デフォルトの名無しさん
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)
//なぜかx座標が7ピクセルずれるから指定座標から引く事
x = 500;y= 500
FUKIDASI("表示位置テスト1",x,y)
LOGPRINT(TRUE,x-7,y,250,100)
PRINT "表示位置サイズ変更テスト2"
sleep(10)
805デフォルトの名無しさん
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)みたいな風に付ける方法はありませんでしょうか…
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)みたいな風に付ける方法はありませんでしょうか…
806デフォルトの名無しさん
2021/03/14(日) 19:20:27.96ID:MdoUOPO+ あれ、なんでだろ書き込めない・・・
807デフォルトの名無しさん
2021/03/14(日) 19:25:57.43ID:MdoUOPO+ くっそ初心者ですんません。
ID = EXEC("あああ")
SLEEP(1.5)
ACW(GETID("あああ","TfrmMain.UnicodeClass"),1583,450,330,460,0)
↓
座標変えて5回繰り返し
こんな感じで同じソフトを多重起動させて並べようとしたのですが、失敗してしまいます。
ウィンドウタイトルが同じで同じウィンドウを色々な座標に持っていこうとしてるだけみたいな感じなのですが
ソフト名の後ろに(1)みたいなのを付けたりする方法はありませんでしょうか…
(なぜか書けなかったのであああにしてます)
ID = EXEC("あああ")
SLEEP(1.5)
ACW(GETID("あああ","TfrmMain.UnicodeClass"),1583,450,330,460,0)
↓
座標変えて5回繰り返し
こんな感じで同じソフトを多重起動させて並べようとしたのですが、失敗してしまいます。
ウィンドウタイトルが同じで同じウィンドウを色々な座標に持っていこうとしてるだけみたいな感じなのですが
ソフト名の後ろに(1)みたいなのを付けたりする方法はありませんでしょうか…
(なぜか書けなかったのであああにしてます)
808デフォルトの名無しさん
2021/03/14(日) 20:13:27.68ID:E6ui2GaX 例えばこれで多重起動できる
ID = EXEC("notepad.exe")
ACW(ID,1583,450,330,460,0)
ID2 = EXEC("notepad.exe")
ACW(ID2,1583,450,330,460,0)
ID = EXEC("notepad.exe")
ACW(ID,1583,450,330,460,0)
ID2 = EXEC("notepad.exe")
ACW(ID2,1583,450,330,460,0)
809デフォルトの名無しさん
2021/03/14(日) 22:20:18.27ID:BQ6dfRIE810デフォルトの名無しさん
2021/03/14(日) 22:32:16.30ID:MdoUOPO+ >>809
ありがとう!「SLEEPを挟んじゃうからIDが受け渡せてねぇんだよ」みたいな感じですか?
でもそのソフト起動遅いんです・・・。
続けて書いたら最初に立ち上がる時に表示されるロゴみたいなのが指定の位置に移動するだけで
肝心のウィンドウは前回の終了位置にいってしまうんです…
ありがとう!「SLEEPを挟んじゃうからIDが受け渡せてねぇんだよ」みたいな感じですか?
でもそのソフト起動遅いんです・・・。
続けて書いたら最初に立ち上がる時に表示されるロゴみたいなのが指定の位置に移動するだけで
肝心のウィンドウは前回の終了位置にいってしまうんです…
811デフォルトの名無しさん
2021/03/15(月) 00:00:30.92ID:+CyRHPpu //>「SLEEPを挟んじゃうからIDが受け渡せてねぇんだよ」
//変数のIDを使ってないから、渡す以前に渡してねぇだろという・・・
//SLEEPは待ち時間指定だから、好きなだけ挟んで良い
//電卓を多重起動して横に並べる
EXEC(GET_SYS_DIR+"\calc.exe")
SLEEP(2)
ID1 = GETID("電卓")
ACW(ID1,100,100,500,500,0)
EXEC(GET_SYS_DIR+"\calc.exe")
SLEEP(2)
ID2 = GETID("電卓")
ACW(ID2,600,100,500,500,0)
EXEC(GET_SYS_DIR+"\calc.exe")
SLEEP(2)
ID3 = GETID("電卓")
ACW(ID3,1100,100,500,500,0)
//変数のIDを使ってないから、渡す以前に渡してねぇだろという・・・
//SLEEPは待ち時間指定だから、好きなだけ挟んで良い
//電卓を多重起動して横に並べる
EXEC(GET_SYS_DIR+"\calc.exe")
SLEEP(2)
ID1 = GETID("電卓")
ACW(ID1,100,100,500,500,0)
EXEC(GET_SYS_DIR+"\calc.exe")
SLEEP(2)
ID2 = GETID("電卓")
ACW(ID2,600,100,500,500,0)
EXEC(GET_SYS_DIR+"\calc.exe")
SLEEP(2)
ID3 = GETID("電卓")
ACW(ID3,1100,100,500,500,0)
812デフォルトの名無しさん
2021/03/15(月) 00:36:16.10ID:/ZCKQNsi 複数個起動できないソフトなのでは?
813デフォルトの名無しさん
2021/03/15(月) 01:08:44.19ID:v5Yi3qmH ああ!そういうことか!(´・ω・`)意味が分かったかもしれない!!
ID = EXEC("あああ") ←この『ID』=という部分が自分で決めれるんすね!?
例えばaaa = EXEC("あああ")と書いて次の行に
ACW(aaa,1583,450,330,460,0)とすると
録画機能みたいなのを利用してたのでIDと書くルールなのかと思ってました…
>>812
いえ、複数個起動はできるソフトで、一応動くには動くのですが
設定ファイルから実行するとアクティブなウインドウが切り替わらず一つのウィンドウだけが座標を行ったり来たりする感じでした
ID = EXEC("あああ") ←この『ID』=という部分が自分で決めれるんすね!?
例えばaaa = EXEC("あああ")と書いて次の行に
ACW(aaa,1583,450,330,460,0)とすると
録画機能みたいなのを利用してたのでIDと書くルールなのかと思ってました…
>>812
いえ、複数個起動はできるソフトで、一応動くには動くのですが
設定ファイルから実行するとアクティブなウインドウが切り替わらず一つのウィンドウだけが座標を行ったり来たりする感じでした
814デフォルトの名無しさん
2021/03/15(月) 01:09:40.14ID:v5Yi3qmH わ
815デフォルトの名無しさん
2021/03/15(月) 09:32:47.13ID:+CyRHPpu なるほどなぁ
そのレベルからの解説でも需要があるのか
UWSCの需要はまだ枯れてないか
そのレベルからの解説でも需要があるのか
UWSCの需要はまだ枯れてないか
816デフォルトの名無しさん
2021/03/17(水) 06:59:58.16ID:TjD9TcDJ817デフォルトの名無しさん
2021/03/17(水) 07:01:40.55ID:TjD9TcDJ818807
2021/03/17(水) 16:54:27.51ID:dsWxXXVG 皆のお陰様でちょとだけ理解ができてきました
あわよくばもう一点だけ教えて欲しいのです
>>808さんが教えてくれた方法は何故か上手く動いてくれませんでした
起動の遅れ?とかが関係あるのかとSLEEPを挟んでみたりしたのですがうまくいかず
でもそのまんまコピペするとメモ帳はその様に動きました。
そこで>>811さんの教えて貰った様に起動させた後にGETIDってので戻り値?というのをID1〜6に指定
これで思惑通り動きました!でも解せないというか理解できてないんです。
ID1 = GETID("電卓") ってのは「電卓っていうウィンドウIDを返せ」「それをID1と仮名する!」という意味であってますか?
だとすると電卓が複数個起動してたらどれのウィンドウIDを戻すのか分からなくなる気がするのは気の所為でしょうか
それとも順番に書いてるからアクティブなウィンドウから値を引っ張ってきてるのでしょうか?
1・自動で起動させてアプリを並べる。
2・別の設定ファイルでウィンドウにあるプルダウンメニューから自動で選ぶ
をやりたくて、1はできたのですが2を行う場合、GETIDではできませんでした。
初心者のクセに基礎も分からず意味不明なこと言ってるかもしれませんが、最後にしますのでお願いします…
あわよくばもう一点だけ教えて欲しいのです
>>808さんが教えてくれた方法は何故か上手く動いてくれませんでした
起動の遅れ?とかが関係あるのかとSLEEPを挟んでみたりしたのですがうまくいかず
でもそのまんまコピペするとメモ帳はその様に動きました。
そこで>>811さんの教えて貰った様に起動させた後にGETIDってので戻り値?というのをID1〜6に指定
これで思惑通り動きました!でも解せないというか理解できてないんです。
ID1 = GETID("電卓") ってのは「電卓っていうウィンドウIDを返せ」「それをID1と仮名する!」という意味であってますか?
だとすると電卓が複数個起動してたらどれのウィンドウIDを戻すのか分からなくなる気がするのは気の所為でしょうか
それとも順番に書いてるからアクティブなウィンドウから値を引っ張ってきてるのでしょうか?
1・自動で起動させてアプリを並べる。
2・別の設定ファイルでウィンドウにあるプルダウンメニューから自動で選ぶ
をやりたくて、1はできたのですが2を行う場合、GETIDではできませんでした。
初心者のクセに基礎も分からず意味不明なこと言ってるかもしれませんが、最後にしますのでお願いします…
819デフォルトの名無しさん
2021/03/17(水) 19:42:27.72ID:0BuFiOnf 最初から言ってる設定ファイルがなんなのか分からん
どっかて買ったマクロ集かなんか?
まあ他の部分は推測と合っている
どっかて買ったマクロ集かなんか?
まあ他の部分は推測と合っている
820デフォルトの名無しさん
2021/03/17(水) 19:56:01.39ID:+PPxZeIs 省略しないで書くなら、
ID = GETID("電卓", "ApplicationFrameWindow", -1)
となるが、めんどいから省略してる
//IDはIDの数値を入れる変数なので、変数名は何でも良い
//変数は数値や文字を入れておく箱のようなイメージ
//UWSCには変数の型は無いので、数字でも文字でも区別なく入れられる
//変数の宣言 使いたい所で変数を作れるの必須ではないが、使う変数を決めておく意味で宣言しておいた方が良いとは思う
DIM ID1,ID2,ID3
EXEC(GET_SYS_DIR+"\calc.exe")
SLEEP(2)
ID1 = GETID("電卓")
ACW(ID1,100,100,500,500,0)
msgbox(ID1)
EXEC(GET_SYS_DIR+"\calc.exe")
SLEEP(2)
ID2 = GETID("電卓")
ACW(ID2,600,100,500,500,0)
msgbox(ID2)
EXEC(GET_SYS_DIR+"\calc.exe")
SLEEP(2)
ID3 = GETID("電卓")
ACW(ID3,1100,100,500,500,0)
msgbox(ID3)
//こうすると、起動した順にIDが1,2,3と割り振られてる事が分かる
//プルダウンメニューから選ぶのはUWSCでも出来るけどめんどい
ID = GETID("電卓", "ApplicationFrameWindow", -1)
となるが、めんどいから省略してる
//IDはIDの数値を入れる変数なので、変数名は何でも良い
//変数は数値や文字を入れておく箱のようなイメージ
//UWSCには変数の型は無いので、数字でも文字でも区別なく入れられる
//変数の宣言 使いたい所で変数を作れるの必須ではないが、使う変数を決めておく意味で宣言しておいた方が良いとは思う
DIM ID1,ID2,ID3
EXEC(GET_SYS_DIR+"\calc.exe")
SLEEP(2)
ID1 = GETID("電卓")
ACW(ID1,100,100,500,500,0)
msgbox(ID1)
EXEC(GET_SYS_DIR+"\calc.exe")
SLEEP(2)
ID2 = GETID("電卓")
ACW(ID2,600,100,500,500,0)
msgbox(ID2)
EXEC(GET_SYS_DIR+"\calc.exe")
SLEEP(2)
ID3 = GETID("電卓")
ACW(ID3,1100,100,500,500,0)
msgbox(ID3)
//こうすると、起動した順にIDが1,2,3と割り振られてる事が分かる
//プルダウンメニューから選ぶのはUWSCでも出来るけどめんどい
821デフォルトの名無しさん
2021/03/17(水) 20:02:51.61ID:dsWxXXVG >>819
すんません、設定ファイルじゃなくてuwsファイルでした。
ということは、同名アプリ起動後に別のuwsファイルでIDを取得するには
マウスで座標指定してクリック→ウィンドウをアクティブに→ * = GETIDみたいなのを書いてやると良いわけですね
ありがとうございます挑戦してみます
すんません、設定ファイルじゃなくてuwsファイルでした。
ということは、同名アプリ起動後に別のuwsファイルでIDを取得するには
マウスで座標指定してクリック→ウィンドウをアクティブに→ * = GETIDみたいなのを書いてやると良いわけですね
ありがとうございます挑戦してみます
822デフォルトの名無しさん
2021/03/17(水) 20:12:09.19ID:dsWxXXVG823デフォルトの名無しさん
2021/03/17(水) 21:35:38.19ID:oFq5eIyC プルダウンメニューから選ぶというのがよくわからない
824デフォルトの名無しさん
2021/03/18(木) 07:40:23.96ID:8urs7GkO >>823
防犯カメラ複数台登録して視聴ソフトを起動させると
すべて1台目のIPが指定されてしまうのです。
なのでプルダウン(ドロップダウン)から機器登録されている
IPアドレスを選択してあげないといけないんです
防犯カメラ複数台登録して視聴ソフトを起動させると
すべて1台目のIPが指定されてしまうのです。
なのでプルダウン(ドロップダウン)から機器登録されている
IPアドレスを選択してあげないといけないんです
825デフォルトの名無しさん
2021/03/18(木) 08:15:40.32ID:YmFQF9g2 全部を一つでは出来ないよ
所詮はアプリじゃなくてスクリプトだからさ
やろうと思えば出来るけど、状態を保持してる何かするのは難しい
今上がってるもので言うと
複数の監視カメラの視聴アプリとやらを一括で起動するのは特に問題ないよね
同時に整列させるのはちょっとハードル高いから考え方変えて、同じアプリを後から整列させるなら多少は簡単にできる
(ただ、uwscでやる必要性はあまり感じない)
プルダウンから自動で選ぶはまだちょっと意味が分からない
リストからカメラ指定して起動したいってこと?
それとも起動済みの視聴アプリをリストにして、それを選んで何か操作したいということ?
後者はアプリがタイトルバーに何か色つけてくれてればやりようあるけど、そうじゃないなら難しいよ
所詮はアプリじゃなくてスクリプトだからさ
やろうと思えば出来るけど、状態を保持してる何かするのは難しい
今上がってるもので言うと
複数の監視カメラの視聴アプリとやらを一括で起動するのは特に問題ないよね
同時に整列させるのはちょっとハードル高いから考え方変えて、同じアプリを後から整列させるなら多少は簡単にできる
(ただ、uwscでやる必要性はあまり感じない)
プルダウンから自動で選ぶはまだちょっと意味が分からない
リストからカメラ指定して起動したいってこと?
それとも起動済みの視聴アプリをリストにして、それを選んで何か操作したいということ?
後者はアプリがタイトルバーに何か色つけてくれてればやりようあるけど、そうじゃないなら難しいよ
826デフォルトの名無しさん
2021/03/18(木) 09:52:39.16ID:JPJY5VhO たとえば一つの例として「Fit Win」というアプリがあって
指定したアプリを整列させるだけならこういうアプリもある
プルダウンから選ぶは座標クリックしていく原始的なやり方しかないだろうね
整列して同じ座標へウィンドウを固定させたら比較的簡単にできるし
視聴ソフトはあまり詳しくないので調べてみたら「smart viewer」というフリーのソフトが複数カメラ、複数画面に対応してるようだけど
こういうソフトじゃないと駄目なの?機器が対応してないと駄目だろうけどLAN接続するタイプなら割と対応してるっぽいが?
このソフトを採用している警備会社があるようだから悪くないと思うけどな
指定したアプリを整列させるだけならこういうアプリもある
プルダウンから選ぶは座標クリックしていく原始的なやり方しかないだろうね
整列して同じ座標へウィンドウを固定させたら比較的簡単にできるし
視聴ソフトはあまり詳しくないので調べてみたら「smart viewer」というフリーのソフトが複数カメラ、複数画面に対応してるようだけど
こういうソフトじゃないと駄目なの?機器が対応してないと駄目だろうけどLAN接続するタイプなら割と対応してるっぽいが?
このソフトを採用している警備会社があるようだから悪くないと思うけどな
827デフォルトの名無しさん
2021/03/18(木) 10:40:06.48ID:Y5jTQtWf ネットワークドライブのuwsファイルを認識しないのですが、みなさんの環境でもそうですか?
\\ORE-PC\UWS\hoge.uws をダブルクリックすると問題なく起動しますが、
\\ORE-PCをZドライブに割り当てて、
Z:\UWS\hoge.uwsをダブルクリックするとFILE NOT FOUNDってでる。
右クリ→メモ帳だと問題なく開けるので、UWSCの仕様なんでしょうかね・・
\\ORE-PC\UWS\hoge.uws をダブルクリックすると問題なく起動しますが、
\\ORE-PCをZドライブに割り当てて、
Z:\UWS\hoge.uwsをダブルクリックするとFILE NOT FOUNDってでる。
右クリ→メモ帳だと問題なく開けるので、UWSCの仕様なんでしょうかね・・
828デフォルトの名無しさん
2021/03/18(木) 11:08:31.02ID:JPJY5VhO ダブルクリックして起動?
ランチャーとかUWSCから起動させるのは駄目?
ネットワークドライブを割り当てるとかはやってないのでわかりませんね
ランチャーとかUWSCから起動させるのは駄目?
ネットワークドライブを割り当てるとかはやってないのでわかりませんね
829827
2021/03/18(木) 12:13:19.45ID:Y5jTQtWf windowsのショートカットでも、ランチャーに登録してもダメですね。
だけど、UWSC本体からファイル開く→再生だといけますね・・・なんだこりゃ
だけど、UWSC本体からファイル開く→再生だといけますね・・・なんだこりゃ
830デフォルトの名無しさん
2021/03/18(木) 12:38:28.87ID:Sp8r4MHz コマンドプロンプトで実行できるなら、hoge.uwsがあるフォルダにUWSC.exeを入れて
BATファイルに
UWSC.exe hoge.uws
と書いてBATファイルで実行する手もある
BATファイルに
UWSC.exe hoge.uws
と書いてBATファイルで実行する手もある
831827
2021/03/18(木) 13:45:17.72ID:Y5jTQtWf832デフォルトの名無しさん
2021/03/18(木) 14:05:23.77ID:Y5jTQtWf >だけど、UWSC本体からファイル開く→再生だといけますね・・・なんだこりゃ
改めてやったら、そもそもUWSC本体→開くでZドライブが見えない。
なんで開けたつもりになったんだろう・・謎
ショートカットは見えるので叩くとやっぱFILE not found
改めてやったら、そもそもUWSC本体→開くでZドライブが見えない。
なんで開けたつもりになったんだろう・・謎
ショートカットは見えるので叩くとやっぱFILE not found
833デフォルトの名無しさん
2021/03/18(木) 14:25:56.67ID:Sp8r4MHz EXEファイルにするか、iexpress.exeでパッケージ化するか
https://wikiwiki.jp/gutchie/%E8%87%AA%E5%8B%95%E5%8C%96%E3%83%84%E3%83%BC%E3%83%AB/UWSC#y1bf8470
https://wikiwiki.jp/gutchie/%E8%87%AA%E5%8B%95%E5%8C%96%E3%83%84%E3%83%BC%E3%83%AB/UWSC#y1bf8470
834デフォルトの名無しさん
2021/03/24(水) 22:16:20.39ID:SjAM6MJ0 子ウィンドウを取得して操作したいのですがなかなか上手くいきません
ID=GETID("親ウインドウのタイトル")
idLength=GETALLWIN(ID)
FOR i = 0 TO idLength-1
PRINT STATUS(ALL_WIN_ID[i],ST_TITLE)
NEXT
↑を実行したところ、返ってきたのは子ウィンドウではなく
子ウィンドウ内の要素でした。(ボタン、チェックボックス、ラジオボタン)
ID=GETID("親タイトル",,,"子タイトル")
PRINT
↑は-1になります
やり方間違ってますか
ID=GETID("親ウインドウのタイトル")
idLength=GETALLWIN(ID)
FOR i = 0 TO idLength-1
PRINT STATUS(ALL_WIN_ID[i],ST_TITLE)
NEXT
↑を実行したところ、返ってきたのは子ウィンドウではなく
子ウィンドウ内の要素でした。(ボタン、チェックボックス、ラジオボタン)
ID=GETID("親タイトル",,,"子タイトル")
↑は-1になります
やり方間違ってますか
835デフォルトの名無しさん
2021/03/24(水) 23:30:49.98ID:ffF9L6R4 //ウィンドウIDを全て取得してみてIDとタイトルを調べる方法もある
n = GETALLWIN()
FOR i = 0 TO n-1
PRINT ALL_WIN_ID[i] + " " +STATUS(ALL_WIN_ID[i],ST_TITLE)
LOGPRINT(TRUE,100,50,800,1100)
NEXT
msgbox("stop")
n = GETALLWIN()
FOR i = 0 TO n-1
PRINT ALL_WIN_ID[i] + " " +STATUS(ALL_WIN_ID[i],ST_TITLE)
LOGPRINT(TRUE,100,50,800,1100)
NEXT
msgbox("stop")
836デフォルトの名無しさん
2021/03/25(木) 00:14:40.63ID:dnI+vm3S >>835
実行してみると
親ウィンドウのタイトルが、ウインドウの数+1表示されました
という事は自分が子ウインドウだと思っていたものは全て親ウインドウという事かな?
今日は遅いのでまた明日やってみます
ありがとうございました
実行してみると
親ウィンドウのタイトルが、ウインドウの数+1表示されました
という事は自分が子ウインドウだと思っていたものは全て親ウインドウという事かな?
今日は遅いのでまた明日やってみます
ありがとうございました
837デフォルトの名無しさん
2021/04/09(金) 09:20:46.01ID:vJdMFfhi Windowsのユーザーを切り替えて、各ユーザーごとにマクロを実施していきたいのだけど、ユーザー切り替えはUWSCでは難しいですか?
838デフォルトの名無しさん
2021/04/09(金) 09:27:52.43ID:Aph6z+sk 何したいか分かんないけどユーザー指定して操作対象のアプリ起動するんじゃダメなん?
839デフォルトの名無しさん
2021/04/09(金) 11:17:30.70ID:RfO7RRDz UWSCの範囲を超えるこえど
動かしたいユーザー列挙しといて
レジストリに自動ログオンと自動実行の仕掛け作っとけばいけそう
再起動→次のユーザーで自動ログオンして自動実行という流れで
動かしたいユーザー列挙しといて
レジストリに自動ログオンと自動実行の仕掛け作っとけばいけそう
再起動→次のユーザーで自動ログオンして自動実行という流れで
840デフォルトの名無しさん
2021/04/09(金) 11:58:31.99ID:AGu16ZxP ユーザー分の台数を用意すればいい
10ユーザーいるなら10台用意するとかね
10ユーザーいるなら10台用意するとかね
841デフォルトの名無しさん
2021/04/13(火) 14:47:03.51ID:IqZsL8m5 神様ちょっと助けておくれ・・・
ブラウザのスクロールバーのボタン3回クリックの1セットを、
1セット×回数で10回行いたい(=最後は30回クリック)
forでかけ算すればいいんじゃね?とひらめいたが動くわけがなかった。
ブラウザのスクロールバーのボタン3回クリックの1セットを、
1セット×回数で10回行いたい(=最後は30回クリック)
forでかけ算すればいいんじゃね?とひらめいたが動くわけがなかった。
842デフォルトの名無しさん
2021/04/13(火) 15:08:40.06ID:IqZsL8m5 for t=1 to 10
CHKIMG("scroll-down.bmp")
c=t*3
repeat
BTN(LEFT,CLICK, G_IMG_X,G_IMG_Y ,30)
sleep(1)
until c >c
next
untilの書き方にモヤモヤしているが・・・とりあえずエラーは出ない
永久にクリックし続けるだけで。
CHKIMG("scroll-down.bmp")
c=t*3
repeat
BTN(LEFT,CLICK, G_IMG_X,G_IMG_Y ,30)
sleep(1)
until c >c
next
untilの書き方にモヤモヤしているが・・・とりあえずエラーは出ない
永久にクリックし続けるだけで。
843デフォルトの名無しさん
2021/04/13(火) 15:14:05.98ID:C7npRUyM ブラウザの右下隅に下向きのボタンがあるが、それをクリックするという事かな?
844デフォルトの名無しさん
2021/04/13(火) 15:16:34.28ID:IqZsL8m5 そうです。
ブラウザ上での作業を自動化したくて。
ボタンにかんしてはscroll-down.bmpで判定してます。
forのt使って
repeat
BTN(LEFT,CLICK, G_IMG_X,G_IMG_Y ,30)
sleep(1)
until t >t*3
にしてみましたがこれも永遠にクリック(tが1なんだから4で止まって欲しいのに・・・)
ブラウザ上での作業を自動化したくて。
ボタンにかんしてはscroll-down.bmpで判定してます。
forのt使って
repeat
BTN(LEFT,CLICK, G_IMG_X,G_IMG_Y ,30)
sleep(1)
until t >t*3
にしてみましたがこれも永遠にクリック(tが1なんだから4で止まって欲しいのに・・・)
845デフォルトの名無しさん
2021/04/13(火) 16:03:51.33ID:M7vT5OZZ c > c
ワロタ
この不等式がおかしいと思わないってヤバない?
プログラムじゃなくて数学、いや算数レベルやん
ワロタ
この不等式がおかしいと思わないってヤバない?
プログラムじゃなくて数学、いや算数レベルやん
846デフォルトの名無しさん
2021/04/13(火) 16:11:32.97ID:C7npRUyM //FORの入れ子でOK
//1回目 1*3、2回目 2*3・・・10回目 10*3
CHKIMG("scroll-down.bmp")
FOR i = 1 TO 10
FOR x = 1 TO i*3
SLEEP(1)
BTN(LEFT,CLICK,G_IMG_X+5,G_IMG_Y+5)
NEXT
NEXT
msgbox("クリック完了")
//1回目 1*3、2回目 2*3・・・10回目 10*3
CHKIMG("scroll-down.bmp")
FOR i = 1 TO 10
FOR x = 1 TO i*3
SLEEP(1)
BTN(LEFT,CLICK,G_IMG_X+5,G_IMG_Y+5)
NEXT
NEXT
msgbox("クリック完了")
847デフォルトの名無しさん
2021/04/13(火) 16:36:03.26ID:IqZsL8m5 いろいろ試してる間にごちゃごちゃしてきたのですみませんね;
UWSCではforしか使ったことがないもので
>>846
入れ子でいいはずですよね・・・(同じコードだ・・・)
もう一回ためしてみます。
ありがとう。
UWSCではforしか使ったことがないもので
>>846
入れ子でいいはずですよね・・・(同じコードだ・・・)
もう一回ためしてみます。
ありがとう。
848デフォルトの名無しさん
2021/04/16(金) 14:51:43.21ID:uD9tfUyH プログラムファイルから消した文言が表示されエラーになってしまいます
IFB CHKIMG ("C〜.BMP")を("C〜.PNG")に書き換えしたのですが、NOT FOUND 〜BMP となります
(appdataなど削除し)ソフトの入れ直しや、違う名前のプログラムファイルを作成などしましたが改善せず。terapadを使用して書いてます
ご教示お願いします
IFB CHKIMG ("C〜.BMP")を("C〜.PNG")に書き換えしたのですが、NOT FOUND 〜BMP となります
(appdataなど削除し)ソフトの入れ直しや、違う名前のプログラムファイルを作成などしましたが改善せず。terapadを使用して書いてます
ご教示お願いします
849デフォルトの名無しさん
2021/04/16(金) 14:53:20.85ID:hdR99Jx3 違うファイルを読み込んでいる
850デフォルトの名無しさん
2021/04/16(金) 15:17:51.55ID:jul+q2bh 実行してるファイルと編集してるファイルが違ってたとかよくある
何でこのバグ消えねぇんだ?と思ってよく見たら違ってたと
何でこのバグ消えねぇんだ?と思ってよく見たら違ってたと
851デフォルトの名無しさん
2021/04/16(金) 21:43:26.23ID:Qutb4gNt CHKIMGはBMPしか使えないからそのエラーになるだけで消した文が影響している訳ではない
BMPに戻せ
BMPに戻せ
852デフォルトの名無しさん
2021/04/16(金) 21:59:57.64ID:9Ra8nUSr ちゃんとエラーメッセージ読むタイプと読まないタイプの違いが出たな
853デフォルトの名無しさん
2021/04/16(金) 23:08:42.23ID:mtyX36ii おお!出来ました!
皆様ありがとうございます
皆様ありがとうございます
854デフォルトの名無しさん
2021/04/23(金) 04:45:57.46ID:GWiJhS53 for文について困っていることがあります。
下記の処理Aのみ 繰り返す際に処理回数を1増やしたいです。
BTN(LEFT,CLICK,13,167,10)
For i = 1 to 100
KBD(VK_RALT,DOWN,50)
KBD(VK_RIGHT,CLICK,50)
KBD(VK_UP,CLICK,50) //処理A ※ ここの処理だけ 1回目は1回実行 2回目は2回実行 3回目は3回実行… にしたい
KBD(VK_RALT,UP,50)
NEXT
調べましたがどうしてもわかりませんでした。
for文の中の処理回数を増やす方法をご存じでしたら、教えていただけたら幸いです。
よろしくお願いします。
下記の処理Aのみ 繰り返す際に処理回数を1増やしたいです。
BTN(LEFT,CLICK,13,167,10)
For i = 1 to 100
KBD(VK_RALT,DOWN,50)
KBD(VK_RIGHT,CLICK,50)
KBD(VK_UP,CLICK,50) //処理A ※ ここの処理だけ 1回目は1回実行 2回目は2回実行 3回目は3回実行… にしたい
KBD(VK_RALT,UP,50)
NEXT
調べましたがどうしてもわかりませんでした。
for文の中の処理回数を増やす方法をご存じでしたら、教えていただけたら幸いです。
よろしくお願いします。
855デフォルトの名無しさん
2021/04/23(金) 05:45:45.21ID:2JaREPAx For i = 1 to 100
KBD(VK_RALT,DOWN,50)
KBD(VK_RIGHT,CLICK,50)
For j = 1 to i
KBD(VK_UP,CLICK,50) //処理A ※ ここの処理だけ 1回目は1回実行 2回目は2回実行 3回目は3回実行… にしたい
Next
KBD(VK_RALT,UP,50)
Next
KBD(VK_RALT,DOWN,50)
KBD(VK_RIGHT,CLICK,50)
For j = 1 to i
KBD(VK_UP,CLICK,50) //処理A ※ ここの処理だけ 1回目は1回実行 2回目は2回実行 3回目は3回実行… にしたい
Next
KBD(VK_RALT,UP,50)
Next
856デフォルトの名無しさん
2021/04/23(金) 05:56:06.69ID:kWPc6e52 やるじゃん!
857デフォルトの名無しさん
2021/04/23(金) 06:00:49.79ID:GWiJhS53858デフォルトの名無しさん
2021/04/23(金) 12:41:11.27ID:Fs/FdOQM いや別に代入はいらんけど…
859デフォルトの名無しさん
2021/04/23(金) 13:40:06.30ID:gAgD293m 動けばいいんだよ
猿相手に説明してもしゃーない
猿相手に説明してもしゃーない
860デフォルトの名無しさん
2021/04/23(金) 14:54:53.39ID:zpT46eZ/ キーキー喚いて他人に噛み付くだけの猿は本当にしょうがないよな
861デフォルトの名無しさん
2021/04/23(金) 15:13:24.53ID:gAgD293m >>1読んでないのかな
862デフォルトの名無しさん
2021/04/23(金) 15:35:59.73ID:Qd1iaOGD 無能な猿はすっこんでろって
863デフォルトの名無しさん
2021/04/23(金) 18:49:02.98ID:k2R/iVu9 サルモンキーウッキー
864デフォルトの名無しさん
2021/04/30(金) 21:19:57.52ID:gWvSQQ0Q メモ帳上だと正常に機能するけど、動かしたいソフト上だと特定のキー(十字キーとかシフトキー)だけ受け付けないんだけどなにかわかるかな?
記録は出来て、中身を見るとちゃんとキーも入ってるけど再生時に特定のキーが無視されちゃう
記録は出来て、中身を見るとちゃんとキーも入ってるけど再生時に特定のキーが無視されちゃう
865デフォルトの名無しさん
2021/05/01(土) 02:52:48.63ID:MA8kI4AW まず「動かしたいソフト」の名前を書け
866デフォルトの名無しさん
2021/05/14(金) 14:13:35.87ID:2RtqhEo0 画像1と画像2のどちらかを認識した場合、認識した画像の座標を取得して処理Aを行いたいです
IFB CHKIMG( "画像1.bmp", , , , , , -1, IMG_MSK_BGR1)
BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y)//処理A
ELSEIF CHKIMG( "画像2.bmp", , , , , , -1, IMG_MSK_BGR1)
BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y)//処理A
ENDIF
処理Aは同じですが、いまはこうして分けています
今後、画像3、画像4と増えていく可能性があるので毎回分けて記述しなくても良い方法はないでしょうか
IFB CHKIMG( "画像1.bmp", , , , , , -1, IMG_MSK_BGR1) OR CHKIMG( "画像2.bmp", , , , , , -1, IMG_MSK_BGR1)
BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y)//処理A
このようにORを使って画像1が表示されてる最中に実行してみたところ、画像座標の取得に失敗してしまい処理Aが動作しませんでした
(PRINTで座標を確認してみたら-99999とかになってました)
IFB CHKIMG( "画像1.bmp", , , , , , -1, IMG_MSK_BGR1)
BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y)//処理A
ELSEIF CHKIMG( "画像2.bmp", , , , , , -1, IMG_MSK_BGR1)
BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y)//処理A
ENDIF
処理Aは同じですが、いまはこうして分けています
今後、画像3、画像4と増えていく可能性があるので毎回分けて記述しなくても良い方法はないでしょうか
IFB CHKIMG( "画像1.bmp", , , , , , -1, IMG_MSK_BGR1) OR CHKIMG( "画像2.bmp", , , , , , -1, IMG_MSK_BGR1)
BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y)//処理A
このようにORを使って画像1が表示されてる最中に実行してみたところ、画像座標の取得に失敗してしまい処理Aが動作しませんでした
(PRINTで座標を確認してみたら-99999とかになってました)
867デフォルトの名無しさん
2021/05/14(金) 15:09:08.52ID:K8K4yQFj getdirでファイル一覧取ってきてfor-in-nextで画像ファイルの分だけループ回せばいいと思う
868デフォルトの名無しさん
2021/05/14(金) 16:43:30.17ID:iQwZsiAA chkimgxを使えばもっと簡単に書けるが、使わないなら
//画像1.bmp〜画像2.bmpを検索してどれかを認識したら処理Aを実行しループを抜ける
FOR x = 1 TO 2
IFB CHKIMG("画像" + x + ".bmp", , , , , , -1, IMG_MSK_BGR1)
//処理A
BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y)
BREAK
ENDIF
NEXT
//画像1.bmp〜画像2.bmpを検索してどれかを認識したら処理Aを実行しループを抜ける
FOR x = 1 TO 2
IFB CHKIMG("画像" + x + ".bmp", , , , , , -1, IMG_MSK_BGR1)
//処理A
BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y)
BREAK
ENDIF
NEXT
869デフォルトの名無しさん
2021/05/14(金) 17:02:47.72ID:2RtqhEo0 >>867-868
ありがとうございます、ですがすいません
文にしたときにわかりづらかったので変えていたのですが、
実際の画像ファイルはファイル毎に名前を変えていて連番ではなく、画像を認識する場所もそれぞれ異なります
ありがとうございます、ですがすいません
文にしたときにわかりづらかったので変えていたのですが、
実際の画像ファイルはファイル毎に名前を変えていて連番ではなく、画像を認識する場所もそれぞれ異なります
870デフォルトの名無しさん
2021/05/14(金) 17:37:15.98ID:iQwZsiAA //BMPファイルの数を取得する
//BMPファイルは同じフォルダに入れておくこと
N = GETDIR(GET_CUR_DIR,"*.BMP",TRUE,0)
//GETDIR_FILES配列にはGETDIRで取得したBMPファイルのファイル名が全て入る
//BMPファイルを検索してどれかを認識したら処理Aを実行しループを抜ける
//CHKIMGで座標指定しないなら、パラメータ無指定でもOK
FOR x = 0 TO N-1
IFB CHKIMG(GETDIR_FILES[x])
//処理A
BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y)
BREAK
ENDIF
NEXT
//BMPファイルは同じフォルダに入れておくこと
N = GETDIR(GET_CUR_DIR,"*.BMP",TRUE,0)
//GETDIR_FILES配列にはGETDIRで取得したBMPファイルのファイル名が全て入る
//BMPファイルを検索してどれかを認識したら処理Aを実行しループを抜ける
//CHKIMGで座標指定しないなら、パラメータ無指定でもOK
FOR x = 0 TO N-1
IFB CHKIMG(GETDIR_FILES[x])
//処理A
BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y)
BREAK
ENDIF
NEXT
871デフォルトの名無しさん
2021/05/14(金) 22:43:48.66ID:6hlMfvtI >>869
>画像を認識する場所もそれぞれ異なります
ってこういうことかな
CONST e_bmp=0
CONST e_xOffset=1
CONST e_yOffset=2
// 画像と認識位置のセット
DIM aMultidim[][2] = "a.bmp",2,3 _
,"b.bmp",-1,-1 _
,"c.bmp",0,1
DIM i
DIM iLastSet = length(aMultidim) - 1
FOR i = 0 TO iLastSet
IFB TRUE = CHKIMG(aMultidim[i][e_bmp]) THEN
// 発見位置にオフセットを加味してクリック
BTN(LEFT, CLICK , G_IMG_X,+aMultidim[i][e_xOffset] _
, G_IMG_Y+aMultidim[i][e_yOffsetOffset])
ENDIF
NEXT
>画像を認識する場所もそれぞれ異なります
ってこういうことかな
CONST e_bmp=0
CONST e_xOffset=1
CONST e_yOffset=2
// 画像と認識位置のセット
DIM aMultidim[][2] = "a.bmp",2,3 _
,"b.bmp",-1,-1 _
,"c.bmp",0,1
DIM i
DIM iLastSet = length(aMultidim) - 1
FOR i = 0 TO iLastSet
IFB TRUE = CHKIMG(aMultidim[i][e_bmp]) THEN
// 発見位置にオフセットを加味してクリック
BTN(LEFT, CLICK , G_IMG_X,+aMultidim[i][e_xOffset] _
, G_IMG_Y+aMultidim[i][e_yOffsetOffset])
ENDIF
NEXT
872デフォルトの名無しさん
2021/05/15(土) 02:20:59.88ID:d0kD+s8i やっぱchkimgxで組んだら?
わざわざ配列でチェック座標管理しなくて済むし
わざわざ配列でチェック座標管理しなくて済むし
873デフォルトの名無しさん
2021/05/15(土) 15:01:39.06ID:M0a+Mlf6 明確に座標が違うなら配列作ってforで回す方がいいと思うがね
874デフォルトの名無しさん
2021/05/18(火) 01:52:43.80ID:IPcsF0ko すいません、返事が遅れました
>>870-871の方法でいじりながら様子を見てみます、ありがとうございます
しかし元々の記述よりだいぶ複雑になるんですね…
CHKIMGXはなぜかウインドウがピカピカ光って煩わしいのでなるべく使わないようにしてます
別件ですがもうひとつ質問です
ランダムに表示される画像xを参照して処理を行う001.uwsというもののほかに、同じ画像xを参照するものの001.uwsとは異なる処理を行う002.uwsや003.uwsを作る予定です
・A.uwsの中身
WHILE TRUE
CALL B.uws
CALL C.uws
CALL 001.uws//処理が終わったらA.uwsに戻ってこさせたいので、ループ処理にはしていない
WEND
いまUWSCにはこのように記述したA.uwsを読み込ませています
説明が難しいのですが001.uwsと002.uwsを使う場面が明確に異なるので、
CHKIMGで画像1を認識したら、画像2や画像3を認識するまで以降002.uwsや003.uwsなど特定のuwsだけを読み込まなくなり、
逆に画像2を認識したら、画像1や画像3を認識するまで以降001.uwsや003.uwsだけを読み込まないようにしたいです
IFB CHKIMG( "画像1.bmp", , , , , , -1, IMG_MSK_BGR1)
CALL 001.uws
ELSEIF CHKIMG( "画像2.bmp", , , , , , -1, IMG_MSK_BGR1)
CALL 002.uws
ELSEIF CHKIMG( "画像3.bmp", , , , , , -1, IMG_MSK_BGR1)
CALL 003.uws
ENDIF
このように記述すれば良いのでしょうが、001.uws〜003.uwsはループ処理させたくないのと、画像1〜3は常に表示されているわけではないので困ってます
なにか良い解決策はないでしょうか
>>870-871の方法でいじりながら様子を見てみます、ありがとうございます
しかし元々の記述よりだいぶ複雑になるんですね…
CHKIMGXはなぜかウインドウがピカピカ光って煩わしいのでなるべく使わないようにしてます
別件ですがもうひとつ質問です
ランダムに表示される画像xを参照して処理を行う001.uwsというもののほかに、同じ画像xを参照するものの001.uwsとは異なる処理を行う002.uwsや003.uwsを作る予定です
・A.uwsの中身
WHILE TRUE
CALL B.uws
CALL C.uws
CALL 001.uws//処理が終わったらA.uwsに戻ってこさせたいので、ループ処理にはしていない
WEND
いまUWSCにはこのように記述したA.uwsを読み込ませています
説明が難しいのですが001.uwsと002.uwsを使う場面が明確に異なるので、
CHKIMGで画像1を認識したら、画像2や画像3を認識するまで以降002.uwsや003.uwsなど特定のuwsだけを読み込まなくなり、
逆に画像2を認識したら、画像1や画像3を認識するまで以降001.uwsや003.uwsだけを読み込まないようにしたいです
IFB CHKIMG( "画像1.bmp", , , , , , -1, IMG_MSK_BGR1)
CALL 001.uws
ELSEIF CHKIMG( "画像2.bmp", , , , , , -1, IMG_MSK_BGR1)
CALL 002.uws
ELSEIF CHKIMG( "画像3.bmp", , , , , , -1, IMG_MSK_BGR1)
CALL 003.uws
ENDIF
このように記述すれば良いのでしょうが、001.uws〜003.uwsはループ処理させたくないのと、画像1〜3は常に表示されているわけではないので困ってます
なにか良い解決策はないでしょうか
875デフォルトの名無しさん
2021/05/18(火) 06:01:50.96ID:UDGz656x ちょっと話しは逸れるけど
そもそもいちいちcallする必要あるのかな
関数化しちゃいかんの?
そもそもいちいちcallする必要あるのかな
関数化しちゃいかんの?
876デフォルトの名無しさん
2021/05/18(火) 10:17:39.32ID:wQ5og2t5 定期的に出てくるけどCALLを関数代わりにしてる奴は頭おかしいからスルーして大丈夫
877デフォルトの名無しさん
2021/05/18(火) 10:19:50.75ID:qh33yYe/ むしろファイルをcallできる言語仕様に驚きを禁じ得ない
878デフォルトの名無しさん
2021/05/18(火) 10:31:01.04ID:4dF+L4dN そこは include とか import と同じじゃないの
単機能を関数的に呼び出すのがおかしいってだけで
単機能を関数的に呼び出すのがおかしいってだけで
879デフォルトの名無しさん
2021/05/18(火) 10:37:54.61ID:qh33yYe/ まあ確かにDLLと同じようなもんだと言われたらそれまでだけど
関数ポインタをディスパッチするような手間いらずで初心者でも手軽に使える点は評価したい
関数ポインタをディスパッチするような手間いらずで初心者でも手軽に使える点は評価したい
880デフォルトの名無しさん
2021/05/18(火) 10:42:00.07ID:t/eWMALd callもスクリプト単体で動くようにすると結構便利だけどな
スクリプトは実行時に読み込まれてるみたいだし関数と変わらん気がするが
スクリプトは実行時に読み込まれてるみたいだし関数と変わらん気がするが
881デフォルトの名無しさん
2021/05/18(火) 11:10:02.73ID:qh33yYe/ 利便性を優先すると使うための手続きが複雑になる
このトレードオフは言語開発者の永遠のテーマだろうな
このトレードオフは言語開発者の永遠のテーマだろうな
882デフォルトの名無しさん
2021/05/18(火) 11:14:19.63ID:4dF+L4dN たぶん上の人は関数自体使い慣れなくてだいぶ抵抗があるんだろうな
老婆心的にはスマートな使い方教えたいけど
自分でメリット感じられないとなかなか移行は難しそうだ
老婆心的にはスマートな使い方教えたいけど
自分でメリット感じられないとなかなか移行は難しそうだ
883デフォルトの名無しさん
2021/05/18(火) 11:30:39.35ID:qh33yYe/ DLLを使った方がカッコイイからというくだらん理由で
どう見ても静的リンクでいいだろうという場面でやたらDLLを使いたがる人もいる
シンプルにEXE一本で動かせるのにランタイムライブラリという必要条件が増えるけど
素人は複雑イコール技術が高度と感じることがあるのでなんとも言えない
どう見ても静的リンクでいいだろうという場面でやたらDLLを使いたがる人もいる
シンプルにEXE一本で動かせるのにランタイムライブラリという必要条件が増えるけど
素人は複雑イコール技術が高度と感じることがあるのでなんとも言えない
884デフォルトの名無しさん
2021/05/18(火) 12:16:39.91ID:AZFZk1uK そもそも、起動した時点でcall先のファイルは一括して読み込まれるってのを分かってないよね
だから、読み込まないようにしたいっていう一文が出てくる
だから、読み込まないようにしたいっていう一文が出てくる
885デフォルトの名無しさん
2021/05/18(火) 12:24:17.39ID:4dF+L4dN >>884
それはそうなんだろうけど
874の人は関数的に使ってるから読み込ませたくない=実行させたくない って意図でしょう
それはそうと874の実際の質問内容考えてる人俺含めていない件w
後ででもしっかり読んでみようと思ってるけど論理問題のようだから意図や齟齬たどるの面倒よね
それはそうなんだろうけど
874の人は関数的に使ってるから読み込ませたくない=実行させたくない って意図でしょう
それはそうと874の実際の質問内容考えてる人俺含めていない件w
後ででもしっかり読んでみようと思ってるけど論理問題のようだから意図や齟齬たどるの面倒よね
886デフォルトの名無しさん
2021/05/18(火) 13:30:39.30ID:9AUeHlwd >>874
CALLの使い方を間違ってる
CALLの使い方を間違ってる
887デフォルトの名無しさん
2021/05/18(火) 13:51:29.74ID:qh33yYe/ CALLの正しい使い方のお手本を出してくれるそうだから
よく聞くように
よく聞くように
888デフォルトの名無しさん
2021/05/18(火) 14:17:24.85ID:XOsT82We 874です
以前、こちらのスレで長々と書くのではなく、ひとつの処理に対してひとつのファイルにしてCALLで読み込ませろって書いてあったのを読んだ気がしてそうしてました
よろしくおねがいします
以前、こちらのスレで長々と書くのではなく、ひとつの処理に対してひとつのファイルにしてCALLで読み込ませろって書いてあったのを読んだ気がしてそうしてました
よろしくおねがいします
889デフォルトの名無しさん
2021/05/18(火) 16:19:21.98ID:KFxGhSSQ CALLは意味が沢山あって意外と日本人に馴染みのない言葉だから仕方ないね
890デフォルトの名無しさん
2021/05/18(火) 16:53:51.17ID:9AUeHlwd >ランダムに表示される画像xを参照して処理を行う001.uwsというもののほかに、同じ画像xを参照するものの001.uwsとは異なる処理を行う002.uwsや003.uwsを作る予定です
ファイルを分ける必要がない
動けばどう書いても良いけど、難しく考えすぎて面倒くさい書き方をしてるようにしか思えん
ファイルを分ける必要がない
動けばどう書いても良いけど、難しく考えすぎて面倒くさい書き方をしてるようにしか思えん
891デフォルトの名無しさん
2021/05/18(火) 16:58:47.86ID:0sQ29iV7 関数の使い方を覚えるべきだよね
892デフォルトの名無しさん
2021/05/18(火) 20:28:58.68ID:9AUeHlwd 認識した画像ごとに処理を分ける例
IFBでダラダラ書くより読みやすく書ける
WHILE TRUE
SELECT TRUE
CASE CHKIMG("画像1.bmp")
処理1
CASE CHKIMG("画像2.bmp")
処理2
CASE CHKIMG("画像3.bmp")
処理3
DEFAULT
例外処理 //例外処理
SELEND
WEND
IFBでダラダラ書くより読みやすく書ける
WHILE TRUE
SELECT TRUE
CASE CHKIMG("画像1.bmp")
処理1
CASE CHKIMG("画像2.bmp")
処理2
CASE CHKIMG("画像3.bmp")
処理3
DEFAULT
例外処理 //例外処理
SELEND
WEND
893デフォルトの名無しさん
2021/05/18(火) 21:40:52.44ID:pImCnyq0894デフォルトの名無しさん
2021/05/18(火) 22:21:22.88ID:wQ5og2t5 CALLしてるファイルの中でも関数化してるわけじゃなさそうだし
ファイルが増えればそのうち変数がバグってどこが原因か分からなくなる
ファイルが増えればそのうち変数がバグってどこが原因か分からなくなる
895デフォルトの名無しさん
2021/05/20(木) 05:48:05.89ID:xogd6JER 874です
CALLにしていた処理をまとめる方向で修正してます
>>892
自分はIFB〜ELSEIFとの違いがわからず悩んでいます
CASE CHKIMG("画像1.bmp")で画像を読み取れば、
IFB〜ELSEIFと同じひとつの処理に対してENDIFが必要ないってことでしょうか?
CALLにしていた処理をまとめる方向で修正してます
>>892
自分はIFB〜ELSEIFとの違いがわからず悩んでいます
CASE CHKIMG("画像1.bmp")で画像を読み取れば、
IFB〜ELSEIFと同じひとつの処理に対してENDIFが必要ないってことでしょうか?
896デフォルトの名無しさん
2021/05/20(木) 09:42:02.88ID:j8DWMRqC897デフォルトの名無しさん
2021/05/20(木) 11:13:41.40ID:1BZg1gED コードの可読性を意識して書いてるだけだがね
可読性の概念とかは プログラミング 可読性 でググれ
動けばどうでも良いという主義ならそれはそれで
可読性の概念とかは プログラミング 可読性 でググれ
動けばどうでも良いという主義ならそれはそれで
898デフォルトの名無しさん
2021/05/20(木) 11:22:16.62ID:HONoZ+FD 892のコンセプトしだいだけど
メンテナンス性拡張性とか加味するとifのほうがいいかもね
メンテナンス性拡張性とか加味するとifのほうがいいかもね
899デフォルトの名無しさん
2021/05/20(木) 12:20:19.57ID:1BZg1gED CASE CHKIMG("画像1.bmp") AND (CC = 1)
とかIFBの条件式と同じように書けるし、どうでも良い事ではあるがね
とかIFBの条件式と同じように書けるし、どうでも良い事ではあるがね
900デフォルトの名無しさん
2021/05/20(木) 13:26:28.17ID:dsnUQ917 on N goto 1000,1100,1200,1300…でいけるよ
901デフォルトの名無しさん
2021/05/21(金) 08:55:27.51ID:jCHc9CEs 874です
メインにしてるuwsの中に複数の処理をまとめた処理群AをCALLで呼び出してましたが、処理群Aをクラス化して、処理群Aのなかの各処理をPROCEDUREなどでメインのuwsに記述する
CALL 処理群A.uws
クラス名は処理群A、関数名は処理Aと処理B
IFB CHKIMG( "画像1.bmp", , , , , , -1, IMG_MSK_BGR1)
処理群A.処理A
ELSEIF CHKIMG( "画像2.bmp", , , , , , -1, IMG_MSK_BGR1)
処理群A.処理B
ENDIF
CALLの使い方はこれで大丈夫でしょうか?
メインにしてるuwsの中に複数の処理をまとめた処理群AをCALLで呼び出してましたが、処理群Aをクラス化して、処理群Aのなかの各処理をPROCEDUREなどでメインのuwsに記述する
CALL 処理群A.uws
クラス名は処理群A、関数名は処理Aと処理B
IFB CHKIMG( "画像1.bmp", , , , , , -1, IMG_MSK_BGR1)
処理群A.処理A
ELSEIF CHKIMG( "画像2.bmp", , , , , , -1, IMG_MSK_BGR1)
処理群A.処理B
ENDIF
CALLの使い方はこれで大丈夫でしょうか?
902デフォルトの名無しさん
2021/05/21(金) 09:47:46.96ID:hKnIbAZ8 UWSCってクラス使えたんだっけ!?使ったことなかった
>>901
それはともかくそれでいいと思うよ
処理A,Bを他のスクリプトから使わず規模も大きくないなら
CALL使わず1ファイル内の関数だけで済ますんでいいと思うけど
----.uws ここから
IFB CHKIMG( "画像1.bmp", , , , , , -1, IMG_MSK_BGR1)
処理A()
ELSEIF CHKIMG( "画像2.bmp", , , , , , -1, IMG_MSK_BGR1)
処理B()
ENDIF
procedure 処理A()
//Aの処理
fend
procedure 処理B()
//Bの処理
fend
----.uws ここまで
あと下部のprocedureをクラス化せずそのまま別ファイルにしてCALLするんでも動くよ
知ってるかもだけど念の為
>>901
それはともかくそれでいいと思うよ
処理A,Bを他のスクリプトから使わず規模も大きくないなら
CALL使わず1ファイル内の関数だけで済ますんでいいと思うけど
----.uws ここから
IFB CHKIMG( "画像1.bmp", , , , , , -1, IMG_MSK_BGR1)
処理A()
ELSEIF CHKIMG( "画像2.bmp", , , , , , -1, IMG_MSK_BGR1)
処理B()
ENDIF
procedure 処理A()
//Aの処理
fend
procedure 処理B()
//Bの処理
fend
----.uws ここまで
あと下部のprocedureをクラス化せずそのまま別ファイルにしてCALLするんでも動くよ
知ってるかもだけど念の為
903デフォルトの名無しさん
2021/05/21(金) 12:44:57.04ID:04KdsCb/ 話をループさせるなよw
904デフォルトの名無しさん
2021/05/21(金) 12:55:06.38ID:hKnIbAZ8 スクリプト直CALLしてたのをクラス関数CALLにはしたけど
それはそれでいいがもっと簡単にはできるよ
って話なのでループではないと思うが
902みたいな関数の一番簡単な使い方も把握してるのか怪しかったし
それはそれでいいがもっと簡単にはできるよ
って話なのでループではないと思うが
902みたいな関数の一番簡単な使い方も把握してるのか怪しかったし
905デフォルトの名無しさん
2021/05/24(月) 09:07:34.94ID:j7BJolv/ CHKIMGの色幅がCHKIMGX1でも認識するくらいシビアな画像でも
CHKIMGXにすると判定できなくなる場合ってどうすれば良いですか?
CHKIMG使うしかないですか?
CHKIMGXにすると判定できなくなる場合ってどうすれば良いですか?
CHKIMG使うしかないですか?
906デフォルトの名無しさん
2021/05/24(月) 15:27:04.53ID:j7BJolv/ 読み直したら間違えてた
CHKIMGX1じゃなくてIMG_MSK_BGR1で認識するくらいシビア
CHKIMGX1じゃなくてIMG_MSK_BGR1で認識するくらいシビア
907デフォルトの名無しさん
2021/05/24(月) 15:38:58.41ID:ULoozdN2 chkimgで認識できてchkimgxで認識できないってのがよくわからないんだけど
chkimgxのthresholdとかcolorの引数弄っても認識できてないの?
chkimgxのthresholdとかcolorの引数弄っても認識できてないの?
908デフォルトの名無しさん
2021/05/24(月) 15:47:05.47ID:/wIz9r2w909デフォルトの名無しさん
2021/05/24(月) 16:22:49.00ID:ULoozdN2 >>908
chkimgxはキャプチャしたイメージをグレースケール化するので色は引数のcolorを弄らない限り関係ない
chkimgxはキャプチャしたイメージをグレースケール化するので色は引数のcolorを弄らない限り関係ない
910デフォルトの名無しさん
2021/05/24(月) 16:30:11.09ID:jIebElNo btnでクリックできなくなったね。
911デフォルトの名無しさん
2021/05/24(月) 17:28:10.19ID:VAxBPl7R >>909
ソースのコメントみる限り、色指定した場合はグレースケール化と読めるが
指定した色とどれだけ近いかでグレースケール化した画像を使って マッチングの計算を行う
文字の色などを指定することで背景の変化に強いマッチング判定を行う
ソースのコメントみる限り、色指定した場合はグレースケール化と読めるが
指定した色とどれだけ近いかでグレースケール化した画像を使って マッチングの計算を行う
文字の色などを指定することで背景の変化に強いマッチング判定を行う
912デフォルトの名無しさん
2021/05/24(月) 18:21:59.68ID:qg+aTsN4913デフォルトの名無しさん
2021/05/26(水) 08:10:53.62ID:K14fqcy/ CHKIMGからのクリックができなくなってるなぁ。
画像認識まではするけど、クリックはしない。
管理権限で起動しても、だめだったなぁ。
WINDOWSのアップデート前後で変わってるから、そこかなぁ。
画像認識まではするけど、クリックはしない。
管理権限で起動しても、だめだったなぁ。
WINDOWSのアップデート前後で変わってるから、そこかなぁ。
914デフォルトの名無しさん
2021/05/26(水) 11:01:01.07ID:XORx725k >>913
ついに使えなくなったか
ついに使えなくなったか
915デフォルトの名無しさん
2021/05/26(水) 13:05:07.61ID:yYro70ts アップデートは停止してるからわからないけど
使えなくなるならアップデートはしないでおこう。人柱サンキュー!ワハハハ!
使えなくなるならアップデートはしないでおこう。人柱サンキュー!ワハハハ!
916デフォルトの名無しさん
2021/05/26(水) 13:56:10.97ID:9QyAf03y バージョン 2004のままにしておくか
917デフォルトの名無しさん
2021/05/26(水) 14:14:16.02ID:eqZO3XDC Windows はいじらないほうがいいですね。
918デフォルトの名無しさん
2021/05/26(水) 17:01:33.65ID:9QyAf03y WEBツールの仕様変更でCLICKが使えなくなったのをDOWN,UPで対応させてるがバージョン変わったら使えなくなるんだろうか
待ち時間をランダムにして人間がクリックしてるように偽装して何とかなってる
BTN(LEFT,DOWN,G_IMG_X,G_IMG_Y,(RANDOM(500)+2000))
BTN(LEFT,UP,G_IMG_X,G_IMG_Y,RANDOM(500))
待ち時間をランダムにして人間がクリックしてるように偽装して何とかなってる
BTN(LEFT,DOWN,G_IMG_X,G_IMG_Y,(RANDOM(500)+2000))
BTN(LEFT,UP,G_IMG_X,G_IMG_Y,RANDOM(500))
919デフォルトの名無しさん
2021/06/03(木) 12:51:13.08ID:q8TMEvZw MEMUというandroidエミュを使っているんですが
MOUSEORGでMEMUのウィンドウIDを指定して裏マクロにしようとすると、CHKIMGやPEEKCOLOR1回ごとにウィンドウの周りが白くなって一瞬(0.1秒くらい?)だけフリーズします
例えばIFB並べてCHKIMGの画像6個探すときは6回分のプチフリーズしてループ、6個のうち上から3個目がヒットするときは3回分の長さのフリーズの後に処理が始まるみたいになります
SAVEIMGの取得をMEMUのウィンドウIDではなくデスクトップにして、クリップボードからPEEKCOLORすれば止まらずに動きますが裏マクロになりませんし…
キーボードマッピング(MEMUの機能)で設定したキーをKBDで押すときは上のプチフリーズは起こらないんですが
MOUSEORGでMEMUのウィンドウIDを指定して裏マクロにしようとすると、CHKIMGやPEEKCOLOR1回ごとにウィンドウの周りが白くなって一瞬(0.1秒くらい?)だけフリーズします
例えばIFB並べてCHKIMGの画像6個探すときは6回分のプチフリーズしてループ、6個のうち上から3個目がヒットするときは3回分の長さのフリーズの後に処理が始まるみたいになります
SAVEIMGの取得をMEMUのウィンドウIDではなくデスクトップにして、クリップボードからPEEKCOLORすれば止まらずに動きますが裏マクロになりませんし…
キーボードマッピング(MEMUの機能)で設定したキーをKBDで押すときは上のプチフリーズは起こらないんですが
920デフォルトの名無しさん
2021/06/03(木) 13:55:27.25ID:8BEM7SHC こちらからの報告は以上です。どうぞ
921デフォルトの名無しさん
2021/06/03(木) 14:53:36.50ID:yaZ7gTV4 ラジャー、次の質問者どうぞっ!?
922デフォルトの名無しさん
2021/06/03(木) 15:02:00.58ID:uxUjlRum DorectXだと思うけど、peekcolor多量に回すmemuの画面がフリーズする
フレームバッファをその度にフル転送してるからじゃないのかなあ
で、画面フリーズするとどういう弊害がでてんの?
フレームバッファをその度にフル転送してるからじゃないのかなあ
で、画面フリーズするとどういう弊害がでてんの?
923デフォルトの名無しさん
2021/06/03(木) 15:22:40.86ID:mewPK9u+ そうですか
924デフォルトの名無しさん
2021/06/03(木) 15:43:58.08ID:PveMLo3f 特定のソフトに依存する質問については、そのソフトの環境を構築する手間暇掛けてまで答える気になれない
925デフォルトの名無しさん
2021/06/04(金) 03:13:49.55ID:HrGwVRMF Androidエミュごときで環境構築面倒とかいうのもどうかと
中華エミュだから入れたくないとかならまだしも
中華エミュだから入れたくないとかならまだしも
926デフォルトの名無しさん
2021/06/04(金) 04:55:22.58ID:8MiFu8j6 ガイジあらわるw
927デフォルトの名無しさん
2021/06/04(金) 09:57:52.95ID:AmUi7cYO わざわざ無能な人のために環境構築してあげてやる道理なんかないでしょ
自分で頑張れと冷たく言い放っておしまい。ぶっちゃけ自分には関係ないからな。困ってるのは私ではなくアイツなのだからアイツが苦しむのはOK
私は上から目線で笑いながらからかってやるだけですよ
自分で頑張れと冷たく言い放っておしまい。ぶっちゃけ自分には関係ないからな。困ってるのは私ではなくアイツなのだからアイツが苦しむのはOK
私は上から目線で笑いながらからかってやるだけですよ
928デフォルトの名無しさん
2021/06/04(金) 12:17:23.70ID:oeJhT1F4 環境作る義理ないならついでにいちいちそんなお気持ち表明しにこなくてええんやで
929デフォルトの名無しさん
2021/06/04(金) 12:31:28.73ID:U0nNGufy 匿名掲示板で環境作る義理あるやつなんているのかな?
930デフォルトの名無しさん
2021/06/04(金) 12:45:19.55ID:DM+caa8E931デフォルトの名無しさん
2021/06/04(金) 19:32:48.15ID:AmUi7cYO かくして、彼は泣きながら手動で頑張るのでしたとさ
チャンチャン♪
チャンチャン♪
932デフォルトの名無しさん
2021/06/05(土) 20:12:02.91ID:AuKRvxXh 表マクロなら動くんだろ
それでいいじゃん
それでいいじゃん
933デフォルトの名無しさん
2021/06/06(日) 07:09:26.47ID:nFBl7Kad 昨日触り始めた信じられないくらいの初心者で申し訳ないですが知識をお借りしたく
・画像AとBの画像が同時に存在する時のみに画像Cをクリックしたい
・画像AとBの画像が無い場合は次に書いた処理を行いたい
これをしたいのですが1つ目の時点で画像Cをクリックしてくれないです
おかしなところだらけとは思いますがお助けください
While True
ifb CHKIMG("A.bmp") _
and CHKIMG("B.bmp") _
and CHKIMG("C.bmp")
BTN(LEFT,CLICK, G_IMG_X, G_IMG_Y)
sleep(1/64)
elseif CHKIMG("D.bmp")
BTN(LEFT,CLICK, G_IMG_X, G_IMG_Y)
sleep(1/64)
・画像AとBの画像が同時に存在する時のみに画像Cをクリックしたい
・画像AとBの画像が無い場合は次に書いた処理を行いたい
これをしたいのですが1つ目の時点で画像Cをクリックしてくれないです
おかしなところだらけとは思いますがお助けください
While True
ifb CHKIMG("A.bmp") _
and CHKIMG("B.bmp") _
and CHKIMG("C.bmp")
BTN(LEFT,CLICK, G_IMG_X, G_IMG_Y)
sleep(1/64)
elseif CHKIMG("D.bmp")
BTN(LEFT,CLICK, G_IMG_X, G_IMG_Y)
sleep(1/64)
934デフォルトの名無しさん
2021/06/06(日) 07:55:07.27ID:rQ15Fo4h935デフォルトの名無しさん
2021/06/06(日) 08:14:21.20ID:NIzk3ndz 横着のつもりはなくAndしか使えそうなのがわからず…
バラで使えそうな何かを探す旅に出てきます
バラで使えそうな何かを探す旅に出てきます
936デフォルトの名無しさん
2021/06/06(日) 08:27:55.32ID:rQ15Fo4h >>935
そこまで書けてるのに、ifを分けて書くこと出来ない?
その書き方じゃ、本当にABCの画像が同時に存在して認識出来ているか確認できないでしょ?
画像って目視じゃ同じに見えても実は全く同じじゃなかったりするし
そこまで書けてるのに、ifを分けて書くこと出来ない?
その書き方じゃ、本当にABCの画像が同時に存在して認識出来ているか確認できないでしょ?
画像って目視じゃ同じに見えても実は全く同じじゃなかったりするし
937デフォルトの名無しさん
2021/06/06(日) 08:42:55.09ID:NIzk3ndz >>936
一度に全て探そうとせずにtrue thenで次の画像を探させる方向で考えればいいのです?
一度に全て探そうとせずにtrue thenで次の画像を探させる方向で考えればいいのです?
938デフォルトの名無しさん
2021/06/06(日) 08:53:18.19ID:Y/jc2SzG939デフォルトの名無しさん
2021/06/06(日) 09:09:30.18ID:BeC5o1Q9 いつもmsgbox使ってた
ifb chkimg("a.bmp")
print "g_img_x:"+g_img_x+" g_img_y:"+g_img_y
ifb chkimg("b.bmp")
print "g_img_x:"+g_img_x+" g_img_y:"+g_img_y
ifb chkimg("c.bmp")
print "g_img_x:"+g_img_x+" g_img_y:"+g_img_y
btn(left,click,g_img_x,g_img_y)
sleep(1/64)
endif
endif
endif
ifb chkimg("a.bmp")
print "g_img_x:"+g_img_x+" g_img_y:"+g_img_y
ifb chkimg("b.bmp")
print "g_img_x:"+g_img_x+" g_img_y:"+g_img_y
ifb chkimg("c.bmp")
print "g_img_x:"+g_img_x+" g_img_y:"+g_img_y
btn(left,click,g_img_x,g_img_y)
sleep(1/64)
endif
endif
endif
940デフォルトの名無しさん
2021/06/06(日) 09:40:11.66ID:NIzk3ndz ありがとうございます
今は出先なので帰ったらまた試してみます
また詰まったら力を貸してください
今は出先なので帰ったらまた試してみます
また詰まったら力を貸してください
941デフォルトの名無しさん
2021/06/06(日) 13:21:06.69ID:IWgw88U5 初心者が増えるのは良いな
UWSCがまだ死んでないという事だし
初心者向けの参考書書いても需要ありそうだから、何か書いてみるか
UWSCがまだ死んでないという事だし
初心者向けの参考書書いても需要ありそうだから、何か書いてみるか
942デフォルトの名無しさん
2021/06/19(土) 20:28:31.54ID:h+5L1XCT 素人質問で大変恐縮なのですが
乱数を用いてcall先をランダムにする事って可能でしょうか?
rondam(5)
で1の時に
call a.uwsを呼ぶというようなことがしたいのですが
乱数を用いてcall先をランダムにする事って可能でしょうか?
rondam(5)
で1の時に
call a.uwsを呼ぶというようなことがしたいのですが
943デフォルトの名無しさん
2021/06/19(土) 20:43:34.89ID:EQ2vKl4E 可能です
944デフォルトの名無しさん
2021/06/19(土) 20:54:33.63ID:Lk+y+wSz //0〜e.uwsがあるとして、
SELECT RANDOM(5)
CASE 0
call 0.uws
CASE 1
call a.uws
CASE 2
call b.uws
CASE 3
call c.uws
CASE 4
call d.uws
CASE 5
call e.uws
SELEND
SELECT RANDOM(5)
CASE 0
call 0.uws
CASE 1
call a.uws
CASE 2
call b.uws
CASE 3
call c.uws
CASE 4
call d.uws
CASE 5
call e.uws
SELEND
945デフォルトの名無しさん
2021/06/19(土) 20:56:22.82ID:Lk+y+wSz RANDOM(5) なら 0-4だったな
SELECT RANDOM(5)
CASE 0
call 0.uws
CASE 1
call a.uws
CASE 2
call b.uws
CASE 3
call c.uws
CASE 4
call d.uws
SELEND
SELECT RANDOM(5)
CASE 0
call 0.uws
CASE 1
call a.uws
CASE 2
call b.uws
CASE 3
call c.uws
CASE 4
call d.uws
SELEND
946デフォルトの名無しさん
2021/06/19(土) 21:22:37.66ID:h+5L1XCT947デフォルトの名無しさん
2021/06/19(土) 21:25:16.67ID:H3JZ4m/K callはそういう使い方するものじゃないって
これだけ言われても理解しないんだな
これだけ言われても理解しないんだな
948デフォルトの名無しさん
2021/06/19(土) 21:29:01.75ID:ptUlvasO アホの質問にまともに理解していない馬鹿が得意げに答えるからこうやって誤った使用法が広まっていくのさ
949デフォルトの名無しさん
2021/06/19(土) 21:31:09.82ID:Lk+y+wSz 低レベルな質問には低レベルに答える
それだけの事
使い方が間違ってる事にはあえて突っ込まない優しさ
それだけの事
使い方が間違ってる事にはあえて突っ込まない優しさ
950デフォルトの名無しさん
2021/06/19(土) 21:39:01.24ID:Lk+y+wSz 公式のサンプルの#1、#2のようなCALLの使い方もあるから、別に良いんじゃねという気もしないでもない
公式サンプル
http://web.archive.org/web/20180428070202/http://www.uwsc.info/sample.html
公式サンプル
http://web.archive.org/web/20180428070202/http://www.uwsc.info/sample.html
951デフォルトの名無しさん
2021/06/19(土) 21:39:10.21ID:uJ2Gt/N3 あ、僕でも答えられる質問だ!
よーし張り切って教えちゃうぞ!
そしてこのざま
よーし張り切って教えちゃうぞ!
そしてこのざま
952デフォルトの名無しさん
2021/06/19(土) 22:00:38.89ID:Lk+y+wSz この程度のことで凄い事になっとるなw
ギスギスしすぎ
ギスギスしすぎ
953デフォルトの名無しさん
2021/06/19(土) 22:40:03.07ID:A8n9fwTn 初心者スレでも可能ではなく最適なものを理解した上で質問しなければならなかったのですね、スレが荒れる原因を作ってしまい失礼いたしました猿未満だったようなので猿レベルになるまで勉強してから質問するようにします
954デフォルトの名無しさん
2021/06/19(土) 23:21:45.35ID:25IvVjLU 質問することで質問したこと以外に発見することもあるからええんやで
955デフォルトの名無しさん
2021/06/20(日) 00:05:04.52ID:YihnOY9y UWSCはそんな高尚なもんじゃないから気にするな
いい歳したおっさんには、一行もコードを書かずに喜々として叩いてる人の気持ちは分からん
いい歳したおっさんには、一行もコードを書かずに喜々として叩いてる人の気持ちは分からん
956デフォルトの名無しさん
2021/06/20(日) 02:46:28.68ID:rWaLY8jt 説明が難しいんですけど一部分の動作だけオンオフってできますか?
AndroidエミュのNOXでゲームマクロってのに興味が出ていろいろやってるんですけど、
いろんな処理をwhileとfendの中に入れてるんですけど、その中の一部分だけ画像1を見つけた場合に画像2を見つけるまで他の処理に追加して繰り返し実行されるようにして、
画像1がいなければすっ飛ばすって処理を組み込みたいです
問題は画像1が1回しか表示されないので、都度chkimgで画像1を見つけて実行ってのができなくて、
オンオフみたいに画像1を1回でも見つけたら以降は画像2を見つけるまでwhileとfendの中に組み込めないかなって考えてるんです
AndroidエミュのNOXでゲームマクロってのに興味が出ていろいろやってるんですけど、
いろんな処理をwhileとfendの中に入れてるんですけど、その中の一部分だけ画像1を見つけた場合に画像2を見つけるまで他の処理に追加して繰り返し実行されるようにして、
画像1がいなければすっ飛ばすって処理を組み込みたいです
問題は画像1が1回しか表示されないので、都度chkimgで画像1を見つけて実行ってのができなくて、
オンオフみたいに画像1を1回でも見つけたら以降は画像2を見つけるまでwhileとfendの中に組み込めないかなって考えてるんです
957デフォルトの名無しさん
2021/06/20(日) 02:55:34.48ID:rWaLY8jt call a.uws
while
//開始ボタンを押す
開始ボタンを押す処理
//終了ボタンを押す
終了ボタンを押す処理
//ここから
画像1を1回見つけたら以降は画像1がなくても画像2を見つけるまでa.uwsの中の処理を上2つの処理に加えたい処理()
//ここまで
fend
こんな感じのことをやりたいです
while
//開始ボタンを押す
開始ボタンを押す処理
//終了ボタンを押す
終了ボタンを押す処理
//ここから
画像1を1回見つけたら以降は画像1がなくても画像2を見つけるまでa.uwsの中の処理を上2つの処理に加えたい処理()
//ここまで
fend
こんな感じのことをやりたいです
958デフォルトの名無しさん
2021/06/20(日) 06:27:18.41ID:tvAYOSZI NOXの場合の考慮とか
画像1が1回しか見つからないこととか
chkimgを余分に実行して時間がかかることとか
置いておく
状態を変更できる変数を使って画像1と画像2を
見つけたかどうかという状態を管理する
変数の名前はgazou1mitsuketaじゃなくていい
call a.uws
gazou1mitsuketa = False
while True
(省略)
//ここから
ifb chkimg("画像1")
gazou1mitsuketa = True
endif
ifb chkimg("画像2")
gazou1mitsuketa = False
endif
ifb gazou1mitsuketa
a.tsuika()
endif
//ここまで
wend
画像1が1回しか見つからないこととか
chkimgを余分に実行して時間がかかることとか
置いておく
状態を変更できる変数を使って画像1と画像2を
見つけたかどうかという状態を管理する
変数の名前はgazou1mitsuketaじゃなくていい
call a.uws
gazou1mitsuketa = False
while True
(省略)
//ここから
ifb chkimg("画像1")
gazou1mitsuketa = True
endif
ifb chkimg("画像2")
gazou1mitsuketa = False
endif
ifb gazou1mitsuketa
a.tsuika()
endif
//ここまで
wend
959デフォルトの名無しさん
2021/06/20(日) 08:03:31.93ID:2nwNcO+1 >>958
option shortcircuit
call a.uws
gazou1mitsuketa = False
while True
(省略)
//ここから
ifb gazou1mitsuketa or chkimg("画像1")
gazou1mitsuketa = True
ifb chkimg("画像2")
gazou1mitsuketa = False
else
a.tsuika()
endif
endif
//ここまで
wend
option shortcircuit
call a.uws
gazou1mitsuketa = False
while True
(省略)
//ここから
ifb gazou1mitsuketa or chkimg("画像1")
gazou1mitsuketa = True
ifb chkimg("画像2")
gazou1mitsuketa = False
else
a.tsuika()
endif
endif
//ここまで
wend
960デフォルトの名無しさん
2021/06/20(日) 22:13:34.21ID:rWaLY8jt while trueにwendでした、寝ぼけてました
>>959が正しいってことですかね?やってみます
>>959が正しいってことですかね?やってみます
961デフォルトの名無しさん
2021/06/20(日) 23:06:19.83ID:xqcz4eEH962デフォルトの名無しさん
2021/06/21(月) 19:36:45.44ID:qUhNELyw963デフォルトの名無しさん
2021/06/21(月) 19:57:25.10ID:xAMfoQlc 短絡評価でググって分からなければとりあえずおまじないでいいよ
変な動作すると思ったらまた調べてみると分かるかもね
変な動作すると思ったらまた調べてみると分かるかもね
964デフォルトの名無しさん
2021/06/23(水) 09:11:36.97ID:mNR5QgFC result = funcA() AND funcB()
という式があった時 funcAの戻りがFALSEなら
funcBを評価しなくてもresultの値はFALSEで確定となる
だからfuncBを評価しても時間の無駄なのでfuncBを呼び出さないのが短絡評価
ちなみに旧VBやVBAは短絡評価が無いが、C系やPythonは短絡評価が標準
後者に慣れてるならOPTION SHORTCIRCUITを有効にすると幸せになれる
という式があった時 funcAの戻りがFALSEなら
funcBを評価しなくてもresultの値はFALSEで確定となる
だからfuncBを評価しても時間の無駄なのでfuncBを呼び出さないのが短絡評価
ちなみに旧VBやVBAは短絡評価が無いが、C系やPythonは短絡評価が標準
後者に慣れてるならOPTION SHORTCIRCUITを有効にすると幸せになれる
965デフォルトの名無しさん
2021/06/23(水) 23:02:39.31ID:ZOV9Dozi //ここから
ifb gazou1mitsuketa or chkimg("画像1")
gazou1mitsuketa = True
この場合、gazou1mitsuketa を見つけた場合、chkimg("画像1")を探さずにgazou1mitsuketa = True
で確定するってことであってます?
ifb gazou1mitsuketa or chkimg("画像1")
gazou1mitsuketa = True
この場合、gazou1mitsuketa を見つけた場合、chkimg("画像1")を探さずにgazou1mitsuketa = True
で確定するってことであってます?
966デフォルトの名無しさん
2021/06/24(木) 02:23:59.47ID:00iTQ5wf gazou1mitsuketaがTrueの場合(=すでに1回chkimg("画像1")がTrueになった後)は
gazou1mitsuketaの評価だけでTrueが確定するから2回目以降のchkimg("画像1")は実行されない
gazou1mitsuketaの評価だけでTrueが確定するから2回目以降のchkimg("画像1")は実行されない
967デフォルトの名無しさん
2021/06/24(木) 19:13:43.20ID:PWbklwVl >>966
すいません、短絡評価についてです
すいません、短絡評価についてです
968デフォルトの名無しさん
2021/06/24(木) 20:30:05.47ID:dP2DIBfG969デフォルトの名無しさん
2021/06/25(金) 00:17:46.49ID:vMtaTkKe970デフォルトの名無しさん
2021/06/25(金) 09:53:18.96ID:EowRs67i もうすでに答え出てるけど、複数条件式がある場合に、最初の条件一致のみでその条件式を評価できる場合、それ以降の追加条件をスルーするという事
971デフォルトの名無しさん
2021/06/25(金) 23:47:56.00ID:vMtaTkKe じゃああってそうですね、ありがとうございます
972デフォルトの名無しさん
2021/07/03(土) 12:53:45.98ID:7+9XI9UL Andoroidエミュでゲームの周回マクロ組んでるんですけれど画像認識の処理を範囲指定じゃなくて指定のプロセス内のみで行う方法ってありませんか?
973デフォルトの名無しさん
2021/07/03(土) 12:58:50.69ID:7+9XI9UL エミュレーターウィンドウが他のウィンドウに隠れちゃうと画像認識処理が進まなくて困っているということです。
974デフォルトの名無しさん
2021/07/03(土) 15:31:03.86ID:m1bhd94m MOUSEORG関数を使って頑張ると可能
975デフォルトの名無しさん
2021/07/06(火) 03:06:28.27ID:amsSEIe8 > id = GETID("**** - FANZA GAMES - Iron")
> Hnd = GETCTLHND(id, "Chrome_RenderWidgetHostHWND")
> MOUSEORG(Hnd, MORG_DIRECT, MORG_BACK)
>
> While True
>
> IFB CHKIMG("****_1.bmp")
> BTN(LEFT,CLICK,G_IMG_X,G_IMG_Y,10)
> endif
>
> IFB CHKIMG("****_2.bmp")
> BTN(LEFT,CLICK,G_IMG_X,G_IMG_Y,10)
> SLEEP(1)
> BTN(LEFT,CLICK,G_IMG_X,G_IMG_Y,10)
> endif
>
> SLEEP(1)
>
> Wend
これでバックグラウンドでのブラゲの自動周回自体は機能するのですが
なぜか実行中はブラウザのタイトルバーなどがバグったかのようにずっとチラつきます
これが起こらないようにするにはどうしたらいいんでしょう?
上のものは解説サイトを元にしたもので
そこでの3行目は本来 MOUSEORG(Hnd, 2) でしたが何故かこれでは機能しなかったので
さらに調べてみたところ別のサイトにて MOUSEORG(Hnd, MORG_DIRECT, MORG_BACK) を見つけました
後者で正しく動きはしたもののチラつくようになってしまったという次第です
記述の仕方などが間違っているんでしょうか
教えてください
> Hnd = GETCTLHND(id, "Chrome_RenderWidgetHostHWND")
> MOUSEORG(Hnd, MORG_DIRECT, MORG_BACK)
>
> While True
>
> IFB CHKIMG("****_1.bmp")
> BTN(LEFT,CLICK,G_IMG_X,G_IMG_Y,10)
> endif
>
> IFB CHKIMG("****_2.bmp")
> BTN(LEFT,CLICK,G_IMG_X,G_IMG_Y,10)
> SLEEP(1)
> BTN(LEFT,CLICK,G_IMG_X,G_IMG_Y,10)
> endif
>
> SLEEP(1)
>
> Wend
これでバックグラウンドでのブラゲの自動周回自体は機能するのですが
なぜか実行中はブラウザのタイトルバーなどがバグったかのようにずっとチラつきます
これが起こらないようにするにはどうしたらいいんでしょう?
上のものは解説サイトを元にしたもので
そこでの3行目は本来 MOUSEORG(Hnd, 2) でしたが何故かこれでは機能しなかったので
さらに調べてみたところ別のサイトにて MOUSEORG(Hnd, MORG_DIRECT, MORG_BACK) を見つけました
後者で正しく動きはしたもののチラつくようになってしまったという次第です
記述の仕方などが間違っているんでしょうか
教えてください
976デフォルトの名無しさん
2021/07/06(火) 07:20:51.43ID:/RjXbpw3 UWSCはヘルプファイルが優秀だから分からなくなったら読むことをオススメする
MOUSEORGでMORG_BACKを指定している時の画面のチラつきはどうしようもなかったと思う
諦めてそのまま使うか、MORG_FOREにしてウィンドウを最前面に表示させておくか
MOUSEORGでMORG_BACKを指定している時の画面のチラつきはどうしようもなかったと思う
諦めてそのまま使うか、MORG_FOREにしてウィンドウを最前面に表示させておくか
977>975
2021/07/08(木) 00:39:02.57ID:gAnN6jGv そうなんですか
特に害も無いようなので気にしないことにします
ありがとうございました
特に害も無いようなので気にしないことにします
ありがとうございました
978デフォルトの名無しさん
2021/07/10(土) 20:08:14.26ID:XM4MvmXG ifb chkimg("img.bmp")
btn(left,click,g_img_x,g_img_y)
これで画像の中央または右下をクリックしたいのですが
xとyに画像サイズを手打ちする以外の方法ありますか?
btn(left,click,g_img_x,g_img_y)
これで画像の中央または右下をクリックしたいのですが
xとyに画像サイズを手打ちする以外の方法ありますか?
979デフォルトの名無しさん
2021/07/10(土) 20:44:43.14ID:CnuMoVdC980デフォルトの名無しさん
2021/07/10(土) 21:58:25.41ID:QRyBoOzw >>978
画像の縦横の幅から中央の座標は計算できるだろ
画像の縦横の幅から中央の座標は計算できるだろ
981デフォルトの名無しさん
2021/07/12(月) 01:07:25.55ID:8PUM0aGH982デフォルトの名無しさん
2021/07/12(月) 05:22:18.76ID:vUaIVbuw >>981
それぞれの画像のサイズはお前が知ってるんだから指定したらいいのでは?
それぞれの画像のサイズはお前が知ってるんだから指定したらいいのでは?
983デフォルトの名無しさん
2021/07/12(月) 10:24:19.84ID:H6QXN1y/ BMP画像の幅と高さを得る関数
https://poku.blog/pc/code/uwsc/img-height-wifth.html
https://poku.blog/pc/code/uwsc/img-height-wifth.html
984デフォルトの名無しさん
2021/07/12(月) 13:04:37.72ID:IDkhHauo 自分はchkimgxの関数使ってるな
985デフォルトの名無しさん
2021/07/12(月) 22:40:23.83ID:huq3V1Ev986デフォルトの名無しさん
2021/07/12(月) 23:51:06.13ID:8VMj3XKP987デフォルトの名無しさん
2021/07/15(木) 05:11:03.79ID:mj6R5ge4 > 情報公開する方はちゃんと動くものを出してほしいですね
清々しいまでの乞食だw
清々しいまでの乞食だw
988デフォルトの名無しさん
2021/07/15(木) 07:09:47.12ID:BwKcyqiC989デフォルトの名無しさん
2021/07/15(木) 07:28:32.91ID:9d/0yVjN 清々しい(きよきよしい)キチガイ
990デフォルトの名無しさん
2021/10/30(土) 19:25:40.38ID:tA37D2o5 昔PRO購入していたUWSCを最近ちゃんと使い始めて、初めてこのUWSCスレみつけた!
初〜中級者な自分に有益な情報多くてほんと助かります(言い争いも多いけど)。
本スレのほうも楽しみ。
あと作者が亡くなられてたということで本当に残念です。昨日知りました。
このスレが消える前に自分メモ用にログ残したった。
みんな初心者卒業しちゃってて継続なさそうだし。
初〜中級者な自分に有益な情報多くてほんと助かります(言い争いも多いけど)。
本スレのほうも楽しみ。
あと作者が亡くなられてたということで本当に残念です。昨日知りました。
このスレが消える前に自分メモ用にログ残したった。
みんな初心者卒業しちゃってて継続なさそうだし。
991デフォルトの名無しさん
2021/10/30(土) 19:40:25.15ID:BIRu0arL なんで書き込みないのかと思ったらこっちは初心者用だからなのか
992デフォルトの名無しさん
2021/11/12(金) 20:31:09.08ID:9I9Wghw5 UWSCはwindows10で動作するんですか?
993デフォルトの名無しさん
2021/11/12(金) 20:33:23.14ID:JKu/AJc8 >>992
全機能が使えるかは分からんが、俺の用途では普通に使えてる
全機能が使えるかは分からんが、俺の用途では普通に使えてる
994デフォルトの名無しさん
2021/11/12(金) 22:56:54.17ID:xoJHoay5995デフォルトの名無しさん
2021/11/13(土) 09:59:44.60ID:CrYSxUjw >>993-994ありがとう
画像認証が出来ないOSの設定なのかな?
画像認証が出来ないOSの設定なのかな?
996デフォルトの名無しさん
2021/11/13(土) 11:16:47.86ID:Oi0tyZlY 実際にうまく動作しないならそう書け
具体的に書けば教えてもらえるだろう
具体的に書けば教えてもらえるだろう
997デフォルトの名無しさん
2021/11/14(日) 00:12:11.79ID:tEJjUPzv うめ
998デフォルトの名無しさん
2021/11/14(日) 07:53:25.02ID:xN0MYk0E 誰か作者の魂を呼んでくれ
999デフォルトの名無しさん
2021/11/16(火) 01:02:55.97ID:fqXCMnDe 999
1000デフォルトの名無しさん
2021/11/16(火) 01:10:18.00ID:b0ZMvWtK ご冥福をお祈りします
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 1148日 12時間 56分 29秒
新しいスレッドを立ててください。
life time: 1148日 12時間 56分 29秒
10021002
Over 1000Thread 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- なぜ?「就職氷河期世代」への支援続々…石破首相が“就労支援”など3本柱の対策を指示するなど各党が発表 ★2 [煮卵★]
- 駅前の一等地にデータセンター計画、「人が入れない施設が建っていいのか」と反対の声相次ぐ [蚤の市★]
- 「米価このまま維持されてしかるべきだ」佐賀県知事、稲作農家の経営踏まえ言及 [蚤の市★]
- 木村拓哉が「ドッグウェアは人間のエゴ」発言、上沼恵美子が反論し論争勃発 獣医師は「必要性は犬それぞれ」 [ネギうどん★]
- 万博会場内から救急搬送された来場者が死亡 万博協会「適切な処置」 [少考さん★]
- 日本の未来の姿!?1人当たりGDP世界5位→82位へ転落した「元・先進国」の静かなる衰退を現地ルポ (泉 秀一氏) [少考さん★]
- 【石破アライさん】 アライグマ、2本足で上手に立って食べる [732912476]
- 【悲報】財務省「減税したいってことは、教育も医療も生活保護も警察も道路も必要ないってことですよね?それでいいんですね [257926174]
- ▶土曜お昼の白上フブキすこすこスレ
- 🏡
- 【実況】博衣こよりのえちえちクロノクロス🧪★3
- GW初日の大阪万博、大混雑wwwwwww [931948549]