- 1 名前:名無しさん@お腹いっぱい。 [2015/11/11(水) 13:45:28.80 ID:+oPzgSay0.net]
- Windowsの作業を自動化するツール
フリーソフト版とシェアウェア版の2種類がある ttp://www.uwsc.info/download.html ●UWSC 掲示板(※作成依頼掲示版ではありません) 質問の際には自力で作ったスクリプトを晒すか、具体的な解らない場所を提示すること 上級者が常駐、たまに作者も現れるため過去ログには有益情報の宝庫 www3.rocketbbs.com/13/bbs.cgi?id=umiumi www3.bigcosmic.com/board/s/board.cgi?id=umiumi&mode=past ●UWSC - Wikipedia ja.wikipedia.org/wiki/UWSC ●使い方・基礎解説学習サイト uwsc.g.hatena.ne.jp/cx20/20100131/1264938584 www.confrage.com/uwsc/ necro.jp/dev/uwsc/ park14.wakwak.com/~simizu/uwsc/fruwsc.html canal22.org/ big.tm.land.to/handbook/uwsc.htm www.game-rev.com/review/gameut/uwsc.html ●スクリプトテンプレサイト izagne.com/uwsc/ scripts.web.fc2.com/ www.nagomi-jp.net/~liners/ nem.symphonic-net.com/uwsct/0610uwsct.html siromasa.digi2.jp/uwsc/ iriyak.adam.ne.jp/uwsc.html 前スレ 自動化ツールUWSC使いよ集まれ15 anago.2ch.net/test/read.cgi/software/1436671958/
- 162 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/11/28(土) 23:25:03.94 ID:FR9Rv/l10.net]
- 別に無視してるわけではないですが、ファイル作って判別する方が
仮想か否かだけでなくどのPC/OSかという判別が容易なのでこっち採用です
- 163 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/11/29(日) 00:47:57.33 ID:JUXVZ/4C0.net]
- iniファイルで良いような…
- 164 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/11/29(日) 16:45:06.45 ID:D3s05B910.net]
- chromeでバックグラウンド動作させたいんですけど
mouseorgでmorg_direct指定してるのにbtnでクリックするとアクティブになってしまいます 何所がいけないんでしょうか? id = GetId("google chrome") id = GetCtlHnd(id, "chrome_RenderWidgetHostHWND") MouseOrg(id, morg_direct, morg_back) hoge=0 WHILE hoge<20 hoge=hoge+1 btn(left, click, 100, 100) sleep(0.2) wend
- 165 名前:名無しさん@お腹いっぱい。 [2015/11/29(日) 22:40:44.71 ID:PLkzB9890.net]
- callってどういう時に使えばいいんだろう
少しずつ部品となるプログラムを作って、それを大元のプログラムで呼び出すような作り方をしてるんだけど、 uwscファイルがどんどん増えていって、どんどんわかりにくくなる ・何度も、何行も書かなきゃならない処理を一行で書ける ・変更する場合も呼び出し先のファイルを変更するだけでいい こういうのが利点なのかな?
- 166 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/11/29(日) 22:51:34
]
- [ここ壊れてます]
- 167 名前:.18 ID:Eprjqt/E0.net mailto: >少しずつ部品となるプログラムを作って、それを大元のプログラムで呼び出すような作り方をしてるんだけど
>uwscファイルがどんどん増えていって、どんどんわかりにくくなる 1処理に1ファイル作ってんの? 関数にして1ファイルにまとめて、callで呼び出すのは最初に1回だけやるんだよ [] - [ここ壊れてます]
- 168 名前:名無しさん@お腹いっぱい。 [2015/11/29(日) 23:10:30.89 ID:PLkzB9890.net]
- やっぱり自作関数をつくるべきなのか
引数とか処理の流れとかがよくわからんままだったから敬遠してた
- 169 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/11/29(日) 23:16:48.50 ID:Eprjqt/E0.net]
- 今だとまんまファイル=処理になってるんだろ?
それぞれ頭にprocedure 処理名、尻にfendつけて1ファイルにまとめるだけや んでcallしてるところでcallやなしに処理名を書くだけのことや
- 170 名前:名無しさん@お腹いっぱい。 [2015/11/29(日) 23:26:27.99 ID:PLkzB9890.net]
- それだけでいいのか
やたら引数とか書いてあるから後回しにしてた
- 171 名前:名無しさん@お腹いっぱい。 [2015/11/30(月) 04:20:23.49 ID:FBOUUxt90.net]
- >>81
Androidエミュレータの事なら Win10Pro 64bit だとUWSCを管理者権限で起動したら反応する 逆に管理者権限で立ち上げないと書いてある通り反応しない
- 172 名前:名無しさん@お腹いっぱい。 [2015/11/30(月) 04:40:32.11 ID:FBOUUxt90.net]
- >>155
例えばアプリ上でフリック動作を再現したい場合以下ようなコードになるけど100,100をフリックしたいときもあれば200,200をフリックしたい場合もあるから フリック動作させる度にイチイチ以下のコードを書かないといけない x=100 Y=100 BTN(Left,DOWN,x,y,125) FOR i = 0 To 10 tx = x-i*50 ty = y MMV(tx,ty,10) NEXT BTN(Left,UP,tx,ty,10)
- 173 名前:名無しさん@お腹いっぱい。 [2015/11/30(月) 04:43:07.50 ID:FBOUUxt90.net]
- >>155
一方関数化して以下のコードを書いたファイルを事前にCALLしておけば 必要な時に必要な値を指定して FlickToLeft(200,200)と一行書いてやるだけで同じ処理が実現できる PROCEDURE FlickToLeft(x,y) DIM i =0 DIM tx = 0 DIM ty = 0 BTN(Left,DOWN,x,y,125) FOR i = 0 To 10 tx = x-i*50 ty = y MMV(tx,ty,10) NEXT BTN(Left,UP,tx,ty,10) FEND 同じような処理を関数化しておくと可読性と保守性が上がるのが利点かな
- 174 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/01(火) 05:54:19.63 ID:CNS9MKt70.net]
- ふと思いついて6通りの乱数x2つでの特定の組み合わせが出る確率を求めたんですけど
UWSCの乱数(random(n))に偏りがある?CALCARRAYのCALC_AVRがおかしい?のか 想定していた数値になりませんでした・・・。精査して原因を教えていただけるととても助かります ttp://pastebin.com/Y1RvsTBN numcomが乱数を発生させた回数、avgnumは1を回数で割り、パーセンテージでの確率を収納してます 1/36、1/21、1/18が想定の答えなんだけど10%ちょいになっちゃうんです。 たぶん↑の求め方が悪いんだと思うんですけど、なんでなのかわかりません・・・ 他に良い確率の求め方・確かめ方があればご教示お願いします
- 175 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/01(火) 08:00:28.88 ID:rjvF5ULZ0.net]
- 明確に擬似乱数なのを精査する必要性がちょっとわからない
ガチな計算したかったら乱数生成もガチなのを使えば良いと思うな
- 176 名前:名無しさん@お腹いっぱい。 [2015/12/01(火) 08:33:28.18 ID:YKDdYdY80.net]
- 計算がおかしい。
「平均値の平均値」みたいなものを求めているから、平均ではなくなっている。 まず基本に戻ってこうに考えろ。 dim bairitu[] = 2,3,4,6,10,20 dim maisu[] = 50,80,100,150,200,500 numcon = 1 n=0 dim num[10000] repeat bai = bairitu[random(6)] mai = maisu[random(6)] ifb bai = 20 and mai = 500 num[n] = 1 else num[n] = 0 endif n = n + 1 until n = 10000 msgbox( "10000回の平均は"+CALCARRAY(num,CALC_AVR)*100+"%でした")
- 177 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/01(火) 12:47:54.59 ID:CNS9MKt70.net]
- おぉ素晴らしいです、シンプルでわかりやすく動作も軽い!
考え方や
- 178 名前:CALC_AVRの理解を誤っていたのがようやくわかりました。
ありがとうございます、精進いたします [] - [ここ壊れてます]
- 179 名前:名無しさん@お腹いっぱい。 [2015/12/01(火) 13:21:03.45 ID:+tH8B3qd0.net]
- >>161-162
遅くなったけどありがとう 勉強になった おかげで引数とかも理解できるようになったよ 最近は関数の名付けに悩むようになった
- 180 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/01(火) 15:00:00.63 ID:zTQCTmEm0.net]
- プログラミングのエントリーにはもってこいだなUWSCは。
- 181 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/01(火) 15:56:09.32 ID:bENjVUYj0.net]
- 基本書レベルの資料が揃ってなさすぎる
さすがに最初はCやったほうがいいと思うぞ ポインタ云々はいらんけど
- 182 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/02(水) 00:17:57.94 ID:bCg1Fbqs0.net]
- バックグラウンドでの画面内の認識はしてくれるようになったのですが、ブックマークバーの部分から上の部分が認識してくれなくて悩んでいます。
下の内容のようにMOUSEORGの中を途中からChrome_Render…からChrome_WidgetWin_1へ変えればブックマーク部分も認識してくれるかと思ったのですがだめでした。どなたかブックマークバーの部分も認識出来る用にするためにどのようにすればいいか教えて頂けないでしょうか? i.imgur.com/ceddGuC.jpg GID = GETCTLHND(GETID("Google Chrome","Chrome_WidgetWin_1"), "Chrome_RenderWidgetHostHWND") MOUSEORG(GID,2,1) ID = GETID("Google Chrome") While true If GetKeyState(Vk_Esc) Then Break ifb CHKIMG("イベント.bmp",0) // 画面上に画像があった場合以下へ MOUSEORG(GETCTLHND(ID,"Chrome_WidgetWin_1"),2,1) BTN(LEFT, CLICK, G_IMG_X+6+random(5), G_IMG_Y+6+random(5)) MOUSEORG(GID,2,1) sleep(1.5) endif wend
- 183 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/02(水) 10:01:53.78 ID:O01c30+40.net]
- procedure ie_wait( ie )
repeat sleep( 0.1 ) until ( ! ie.busy ) and ( ie.readystate = 4 ) sleep( 0.2 ) fend IEでページの読み込みが終わっているように見えるのに処理が止まってしまうことがたまにあります。 手動で再読み込みすると動き出します。対処法を教えてください。フリー版です。
- 184 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/02(水) 11:52:47.22 ID:RVv1vxR+0.net]
- x秒でタイムアウト、みたいな処理足したら
- 185 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/02(水) 12:03:24.62 ID:ZQB1PLza0.net]
- 相手の鯖が遅延ロードしていたり自分のPCのキャッシュにヒットした時とか
ie.busy と ie.readystate はあんまりアテにならない タイムアウトや移動先のページで必要なエレメントが存在するか確認してループを抜けるのも有りかもね
- 186 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/02(水) 13:19:20.31 ID:gtGvaZd80.net]
- IEはDOM操作するのが確実
- 187 名前:名無しさん@お腹いっぱい。 [2015/12/02(水) 16:15:25.22 ID:p1ZciKF40.net]
- 配列がややこしいな
dim hairetu[2] ↑これは配列の容量、個数の宣言で hairetu[0] = 10 hairetu[1] = 20 ↑これが番号の場所に格納するということなんだろ? []の中に数字いれるという書き方が同じだから、 ここでずっと訳わからなくなってた それで[][]とかいう書き方もあるとか あと、ここに書いてある canal22.org/kansu/procedure/ DIM PSARRAY[2] PSARRAY[0] = "This is a cat." PSARRAY[1] = "That was a desk." DIMって値の宣言だろ ""でくくれば文字列でもいいのかよ ややこし
- 188 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/02(水) 16:32:53.86 ID:dxnbalsf0.net]
- 厳密にはDIM 配列[]って入れ物の場所が書いてあるアドレスを宣言してるだけ
もっとも a = 1 と A = "1" がまったく同じように扱われるUWSCではそんなこと気にするべくもない 自分は配列宣言するときは[0]で使うたびにリサイズしながら入れてるよ Arry[
- 189 名前:ReSize(Arry, ReSize(Arry) + 1)] = "1つめ"
Arry[ReSize(Arry, ReSize(Arry) + 1)] = "2つめ" Arry[ReSize(Arry, ReSize(Arry) + 1)] = "3つめ" [] - [ここ壊れてます]
- 190 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/02(水) 16:58:13.30 ID:b4w8PdZC0.net]
- 数値変数でも文字列入れれば文字列変数に自動で切り替わるってだけだよね
- 191 名前:名無しさん@お腹いっぱい。 [2015/12/02(水) 17:05:43.75 ID:p1ZciKF40.net]
- その切り替わるというのは、連想配列と同じになるの?
連想配列が文字列入れることが出来る配列って認識があった
- 192 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/02(水) 17:11:34.70 ID:b4w8PdZC0.net]
- それはまったく認識が間違ってる。配列は番号付の変数ってだけだよ。
連想配列は添字に文字列が使える配列。
- 193 名前:名無しさん@お腹いっぱい。 [2015/12/02(水) 17:49:37.27 ID:p1ZciKF40.net]
- ああ、[]の中に文字が使えるのが連想配列なのか
理解できた
- 194 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/03(木) 13:48:27.43 ID:YuHgaOly0.net]
- Windows10クリーンインストールしたらIEの操作でエラー出るようになったな
普段非表示だけど確認したいことがあるからIE.Visibleで表示した時とか一時停止して再開しようとした時とかたまに操作を受け付けなくなる ページを再読込させる処理を入れればまた動き出すけど、数十秒後にUNTIL (! IE.Busy) AND (IE.readyState=4)でエラーが出てるかUWSC自体がフリーズするわ
- 195 名前:名無しさん@お腹いっぱい。 [2015/12/03(木) 14:12:03.56 ID:lFKpQNYb0.net]
- >>170
HandleとUWSCのIDは別物 GETCTLHNDで取得できるのはHandleなのでそのままではMOUSEORGのIDに使用することはできない 解決策はHNDTOID関数を使う GID = HNDTOID(GETCTLHND(....)) これで目的とするコントロールのIDが正しく取れるはずWhile文内のMOUSEORGもおなじ GETIDで対象のコントロールのIDを取得した後 SAVEIMG(,ID,0,0,,,TRUE)を実行するとクリップボードに対象コントロールのSSが保存されるんで 慣れないうちはペイントに貼り付けるなりして一回一回確認しながらやるといいですよ
- 196 名前:名無しさん@お腹いっぱい。 [2015/12/03(木) 14:27:46.45 ID:lFKpQNYb0.net]
- >>170
あ、もちろんGETIDだけじゃなくHNDTOIDで取得したIDからでもSAVEIMGでSS取得できます
- 197 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/03(木) 14:34:08.18 ID:KqIB++7Q0.net]
- >>182
> GETCTLHNDで取得できるのはHandleなのでそのままではMOUSEORGのIDに使用することはできない 同じようなレスをしようと思ったがヘルプ読み返して止めたのに… >> MORG_DIRECT (2): 指定ウィンドウ(オブジェクト)へマウス、キー情報を直接送る(第1引数はウィンドウIDでもハンドル値でも可)
- 198 名前:名無しさん@お腹いっぱい。 [2015/12/03(木) 15:57:58.29 ID:lFKpQNYb0.net]
- >>184
マジで?って思ってコード書いたらマジでした…orz >>170 そんで反省してMOUSEORGのヘルプよく読み直したら MORG_FOREの値は0と明記されてるけどMORG_BACKの値は明記されてなかったので 試しに print MORG_BACKで値確認したら 1ではなく2になってたので MOUSEORG(ID,2,1)じゃなくてMOUSEORG(ID,2,2)にしたらバックグラウンドでも動作しました やっぱ面倒でもヘルプ熟読するのと用意された定数はちゃんと使わないとだめね
- 199 名前:名無しさん@お腹いっぱい。 [2015/12/03(木) 16:10:37.72 ID:lFKpQNYb0.net]
- www.dotup.org/uploda/www.dotup.org636372.zip.html
せっかく書いたんで一応チョロメのブクマのアプリって項目をバックグラウンドで押下させるサンプルも上げときます UWSC5.2のPro版レジスト済みとさっき入れたばかりのチョロメで動作確認
- 200 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/03(木) 17:17:45.94 ID:0WPfFphN0.net]
- >>186 のやつフリーで使ってみたけど
真っ黒でバックグラウンドの認識が不可っぽいんだけど フリーとプロじゃその辺やっぱ違うのかな? 元々の質問者とは別人です
- 201 名前:名無しさん@お腹いっぱい。 [2015/12/03(木) 18:06:34.86 ID:lFKpQNYb0.net]
- >>187
最新の5.20フリー版で動きました OSはWin10Pro とりあえず思いつくのは アプリ.bmp を自分で用意してみる うちのは最新版をインストールしただけで一切いじってないので比較画像と差異があるのかも
- 202 名前:
http://i.imgur.com/1vdOKb0.jpg (こんな感じ) UWSCを管理者権限で起動してみる位? あとバックグラウンドで画像認識できるのはあくまで他のWindowが上に重なってるときだけで最小化時は普通に失敗するようです [] - [ここ壊れてます]
- 203 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/03(木) 21:32:54.38 ID:KqIB++7Q0.net]
- 操作側のWebページがエラー出した時にスクリプト全体を再起動させたいんですが
チェックのスクリプトをインターバルでスケジュール起動させればいいとは 思いついたんですけど、UWSCの再生・停止ボタンを押すのって GUIの無いUWSCスクリプトからだとどうやったらいいんでしょうか。
- 204 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/03(木) 21:59:07.61 ID:KqIB++7Q0.net]
- 適当にやってたら押せたので質問は無しで
- 205 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/04(金) 00:46:03.86 ID:90ljDn+M0.net]
- >>185
ご指摘ありがとうこざいます。ご指摘通りにやりましたが、やはりブックマークの部分は認識してくれませんでした。また、MOUSEORG(GID,2,1)から、MOUSEORG(GID,2,2)に変更するとブックマークより下の部分も動かなくなってしまいました。 savings("test.bmp",GID,0,0,500,500,0,0,0) savings("test.bmp",GID,0,0,500,500,0,0,1) で試しに画像をとってみましたが、両方ともきちんと写っていました。
- 206 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/04(金) 00:50:32.45 ID:90ljDn+M0.net]
- また、認識しないならURLで飛べばいいと思い
SCKEY(id,VK_F6) SENDSTR(id,"ここにURL",1,True,True) SCKEY(id,VK_RETURN) と無理やりいれましたが、一応動くのですがURL入力する時にとても重くなります…
- 207 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/04(金) 01:04:13.19 ID:90ljDn+M0.net]
- また、あげて頂いたサンプルを起動したところ>>187の方と同じようにペイントに貼り付けた物が真っ暗な画面で、動いてくれませんでした。(アプリ.bmpは自分で置き換え、uwscは最新版でした)
しかし、MORG_BACKの部分を1に変更したところ、ペイントに貼り付けた画像は真っ暗なままでしたが、動いてくれました。
- 208 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/04(金) 01:09:15.47 ID:90ljDn+M0.net]
- あ、すいません。MORG_BACKの部分を1に変えた上記のサンプルを参考に組み直したらちゃんと動いてくれるようになりました!ありがとうございましたm(__)m
- 209 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/04(金) 11:31:23.07 ID:/T7tx51V0.net]
- Bluestacksでゲームアプリのガチャ自動化マクロを作っています
ガチャを回すボタンを24bitBMPで保存して、動作テストをすると成功しました(ファイルA) そのファイルAにループ関数を付け加えてファイルA’を作成し動作させると、画像認識ができなくなったので 再度ファイルAの動作テストを行いましたが完全にその画像では認識ができなくなりました さっきから3回ぐらい画像を撮り直しては動作テストを行っているのですが、成功してもUWSを弄ると画像認識ができなくなってしまいます 成功したりしなかったり、というのはよく起こることなのでしょうか?
- 210 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/04(金) 14:34:44.57 ID:n18V7ZGY0.net]
- あるかないかと聞かれるとある
- 211 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/04(金) 14:59:07.40 ID:sFDKmSRE0.net]
- いじるとできなくなるっていうんだから原因ははっきりしてるよね。
- 212 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/04(金) 16:52:58.00 ID:ybxgbSDU0.net]
- 画像が変わってるんだろ
- 213 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/04(金) 17:04:25.75 ID:hlWIkbdr0.net]
- jpgとpngで同じように見えて微妙に違うように
読み込みごとに微妙に画像変わってるってパターンわりとよくある話
- 214 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/04(金) 19:27:22.45 ID:2HUK37Ko0.net]
- レイヤーかぶせてあったりパーティクル飛んでたりね。
- 215 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/05(土) 03:45:42.40 ID:cQkZ7BqH0.net]
- Chromeで特定のURLに飛ぶようにしたのですが、入れるURLが長いせいか、打ち込んでから飛ぶまでにかなり動作が重くなってしまいます。
重くならずに特定のURLに飛ぶ方法はあるのでしょうか? id = GETID("Google Chrome","Chrome_WidgetWin_1") MOUSEORG(id,MORG_DIRECT,1) SCKEY(id,VK_ALT,VK_D) SENDSTR(id,"ここにURL",1,True,True) SCKEY(id,VK_RETURN)
- 216 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/05(土) 10:48:54.93 ID:qGfYiu4T0.net]
- >>195
撮った画像に対して撮り直した画像で画像認証してみて それでダメなら画像を変えてるので画像認証は難しい
- 217 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/06(日) 15:25:32.94 ID:lI
]
- [ここ壊れてます]
- 218 名前:ZtAvI+0.net mailto: >>201ですが自己解決しました []
- [ここ壊れてます]
- 219 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/06(日) 16:23:21.01 ID:7fPRX80/0.net]
- SELECTボックスの文字の大きさって変えられないですかね?
高解像度化の著しい昨今、微妙に文字が小さくて読みにくい
- 220 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/06(日) 16:26:04.76 ID:7fPRX80/0.net]
- SELECTBOXの文字の大きさって変えられないですか?
- 221 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/06(日) 16:30:47.46 ID:7fPRX80/0.net]
- test
- 222 名前:名無しさん@お腹いっぱい。 [2015/12/07(月) 20:37:41.32 ID:lkFOyJ4n0.net]
- >>205
OPTION DEFAULTFONTで変えられる すべて一括で変わってしまうけど Pro使いならCREATEFORMで全部自分で自由に指定できるけど
- 223 名前:名無しさん@お腹いっぱい。 [2015/12/07(月) 22:36:43.24 ID:oGiSo+KF0.net]
- クリック位置を指定せずに(現在のカーソル位置にしたい)
実行までの待ち時間だけを指定するにはどうすればいいんでしょうか? いくつか試しましたがいずれもダメでした BTN(LEFT,CLICK,x,y,500) エラー BTN(LEFT,CLICK,,,500) エラー BTN(LEFT,CLICK,500) 500がカーソル位置として扱われてしまう
- 224 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/07(月) 23:03:29.60 ID:EYXsjzmpf]
- BTN(LEFT,CLICK,G_MOUSE_X,G_MOUSE_Y,500)
- 225 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/07(月) 23:05:51.63 ID:0rcqNGw90.net]
- sleep(0.5)
BTN(LEFT,CLICK) は違うのかな?
- 226 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/07(月) 23:13:17.78 ID:cMraAyPW0.net]
- G_MOUSE_X使うとか
- 227 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/08(火) 00:52:00.67 ID:Bp2FB+GN0.net]
- キシュツでしたらすみません。
スケジュール設定で、スリープ状態から復帰してスクリプトの実行を考えています。 Windowsの電源管理の設定で「ロック解除する時にパスワードの入力」の設定をしているのですが、 「スクリプトは実行されるが、パスワード入力画面が表示が出たままで意図した画面が表示されず、CHKIMGで画像判別できない。」 状況になり困っています。 ロック解除時のパスワードを設定しない以外の回避策はありますでしょうか。 パスワードを設定しないと、俺の「家族に見られたら困る」フォルダーが火を噴きそうです...
- 228 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/08(火) 00:58:50.00 ID:t70A2e+R0.net]
- >>212
フォルダにパスワードかけとけ
- 229 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/08(火) 01:27:05.64 ID:w99sCTo10.net]
- >>212
USBメモリ買うなり、別PCを買うなり、物理的に別個にしなきゃ不安だわ。 VeraCryptとか使えばどう?
- 230 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/08(火) 09:19:58.59 ID:0rN+5VX00.net]
- >>212
つまりそのスケジュールが実行されるときだけパスワード入力を回避したいってこと? それは無理だ
- 231 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/08(火) 11:56:57.30 ID:Q8/a49a30.net]
- フォルダにパス掛けとくとか、アカウント使いわけるとかせんと。
- 232 名前:210 mailto:sage [2015/12/08(火) 14:02:44.60 ID:Bp2FB+GN0.net]
- レスくれた方、ありがとうございました。
その後調べたところ、電源オプションはpowercfgコマンドでコマンドラインで変更できることを知りました。 そこで、下記を目論んだのですが上手くいきませんでした。 ・スクリプト(1) doscmd("powercfg …")で、ロック解除時のパスワードを不要にした後、スリープする ・スクリプト(2) 本来実行したいスクリプトで、最後にロック解除時のパスワードを必要に変更する スクリプト(1) -> (2)の順にスケジュール設定して実行する。 試したところ、、スクリプト(1)で電源オプション設定を変更しても、スクリプト(2)の実行時、やはりパスワード入力画面が出てきてしまいます。 ※ここでパスワードを入力した後、手動でスリープ->スリープ解除の操作をすると、スクリプト(1)が設定を変更しているので、パスワード入力画面は出てきません。 スクリプト(1)の最後にリブートすれば対処はできそうですが、フォルダーにパスワードを掛ける方向で検討します。 ありがとうございま
- 233 名前:オた。 []
- [ここ壊れてます]
- 234 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/08(火) 14:33:43.03 ID:nFTuQmFE0.net]
- そこまでして自動化操作したいことって何?
まずはそこからだよね VMWareで起動させておいてスタンバイ→本体スリープ復帰→VM復帰起動→VM内でスクリプト流す(本体はロックのまま) これ以上にすっきり安全にやる方法ないと思うよ
- 235 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/08(火) 14:59:58.05 ID:OBYBo33X0.net]
- 家族に見られる環境で家族に見られたくないのにパスを不要にしてスリープだとか
スクリプト実行中に家族に弄られて見られる可能性は無視とか何がしたいのか分からなすぎる
- 236 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/08(火) 15:05:40.97 ID:Q8/a49a30.net]
- そういえばロック画面の裏でスクリプトって動かんのかね?
- 237 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/08(火) 15:07:57.58 ID:HUcsHTi50.net]
- 当人が納得しているならそれで良いじゃない
- 238 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/08(火) 15:10:36.50 ID:HUcsHTi50.net]
- >>220
キーボードやマウスに画面が繋がっていない前提のスクリプトなら動く筈 勿論、ロック画面自体にはアクセス出来ない
- 239 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/09(水) 13:54:39.11 ID:KgeowQok0.net]
- >>210-211
ありがとうございます。 sleepにしました。 座標を指定しないと待ち時間も指定できないというのも いまいち納得出来ない仕様ですが・・・
- 240 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/09(水) 14:16:19.27 ID:yc0hiHKU0.net]
- そういう仕様なのか不具合なのか微妙なのは公式掲示板で聞いてみたらいいんじゃない?
- 241 名前:名無しさん@お腹いっぱい。 [2015/12/09(水) 15:07:38.82 ID:IATR22hr0.net]
- 組み込み関数だけじゃなくユーザー定義関数の全パラメータに規定値設定した場合でも
途中のパラ省略して後方のパラだけ指定するとSyntaxError出るから仕様っぽいね G_MOUSE_変数使ってもWait後のクリック発生時じゃなくBTN呼び出し時の座標になっちゃうみたいだから マウスカーソルに追随させて自動クリックさせたいなら>>210の処理をラップして呼び出すのが一番安全かな
- 242 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/09(水) 16:13:30.40 ID:08E8vcMN0.net]
- 途中をデフォルト(省略)したい時はEMPTYと記述しろ
- 243 名前:名無しさん@お腹いっぱい。 [2015/12/09(水) 18:25:17.33 ID:IATR22hr0.net]
- BTN(LEFT,CLICK,EMPTY,EMPTY,2000)
普通にエラー吐き出して終わりだった
- 244 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/09(水) 18:58:01.47 ID:OKWIL6420.net]
- SAVEIMGは途中のパラメータ省略しても動くのに変な感じだ
SAVEIMG("AAA.bmp", GETID("XXX"), , , , , , 0, 0)
- 245 名前:名無しさん@お腹いっぱい。 [2015/12/11(金) 11:18:54.45 ID:7dd/e87e0.net]
- ×ret = BETWEENSTR("ddddd",,,,FALSE)
○ret = BETWEENSTR("ddddd",,,-1,FALSE) 何個か調査してみた結果同じ関数内の省略可能引数でも途中空値を設定できる引数とできない引数があるっぽいね なぜかは判らないけど
- 246 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/11(金) 13:17:37.95 ID:bmQj6ZbY0.net]
- BETWEENSTR()はその-1を指定してる引数はデフォ値がHelpに書いてないから省略出来ないかもって思えるかな
ただBTN()は、「省略時は〜」って書いてあるのに省略出来ないから「あれ?」って思う
- 247 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/12(土) 01:28:24.49 ID:WJj0stN+0.net]
- UWSCのスケジュール機能で一時間毎にスクリプトを実行しています。
普段は10分位で終了する内容なのですが、予期しない動作をした時に1時間経っても終了せず、次のスクリプトと実行が被ってしまい、抜け出せなくなります。 一時間後の実行がうまく行けば、前回のスクリプトは中断しても構いません。 UWSCやWindowsの機能で、実行が重ならないように実現できないでしょうか?
- 248 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/12(土) 03:03:48.97 ID:RKFSqFC20.net]
- >>231
データの整合性とか気にならない処理内容なら スクリプト内で経過時間を監視するスレッドを走らせたらどうでしょうか
- 249 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/12(土) 12:31:57.21 ID:WJj0stN+0.net]
- >>232
以下の関数を、予期しない動作が発生した時に走る関数中に実行すると実現できそうです。 Procedure hogehoge gettime
- 250 名前:()
Ifb G_TIME_NN > 50 exitexit Endif Fend 難しく考えすぎていたようです。ありがとうございました。 [] - [ここ壊れてます]
- 251 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/12(土) 18:14:26.36 ID:ACvSeZV80.net]
- 似たような事かもしれないけど、予期しない動作が発生した時に自分自身を
再起動させたいのだけど。 EXEC等使って別プロセスで予期しない動作判定+再起動専用のスクリプト走らせるしかないかな? UIの無いスクリプトは暴走が怖い…
- 252 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/12(土) 18:30:53.62 ID:RKFSqFC20.net]
- >>234
本体のスクリプトはどんな処理してるの?
- 253 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/13(日) 23:14:50.95 ID:aAFsszQK0.net]
- 予期しないって…範囲が巨大すぎて。。。
予期しないことが判定できるなら、予期できそうだし…
- 254 名前:名無しさん@お腹いっぱい。 [2015/12/13(日) 23:40:38.95 ID:9KF/JySF0.net]
- 予期しない事象でエラー発生するならTRY EXCEPT文で拾ってスクリプト最初から回す
エラーじゃなくスクリプト自体が事象判定できるならTRY FINALY文でケースごとにコード書く 単体で完結させたいならこのくらいかなぁ
- 255 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/14(月) 00:37:35.63 ID:OWYR4MFV0.net]
- 操作対象アプリが応答なしではないけど応答無くなる時があって、これが予期しない動作。
画面の推移を監視して、長時間動かなくなったらスクリプト毎再起動させようと。
- 256 名前:名無しさん@お腹いっぱい。 mailto:sage [2015/12/14(月) 00:49:16.17 ID:fnMg27o30.net]
- 呼び出し用スクリプトからメイン処理スクリプトをcallで呼び出して
そのcall内でexitすればcallから抜け出して呼び出し用スクリプトに移動するから 元に戻る・・・ってことはだめ?
- 257 名前:名無しさん@お腹いっぱい。 [2015/12/14(月) 01:10:21.65 ID:yI4ZqmAH0.net]
- 対象タスクをKillして一から処理を立て直したいなら別途監視スレッド立ち上げておいて必要な時に処理させるなり好みでいいと思うけど
例えばボタン押下した後想定される時間内に想定される画面に移行しないケースが発生してスクリプトが失敗するっていうならコードの書き方の問題だと思う UWSCでのコーディングは組み込み系に近いからZIPCライクな状態遷移設計をコードに落とす書き方が向いてると思うんだけどこればっかりはさくっと説明できるもんでもないからなぁ
- 258 名前:名無しさん@そうだ選挙に行こう mailto:sage [2015/12/14(月) 10:24:44.14 ID:OWYR4MFV0.net]
- 本質的にはエラー対策が未熟なままスクリプトを書き続けて
後から対策しようとしたってのが問題なんだけど、メインスクリプトが非常に長くて 関数から関数を呼び出し更にまた別の関数を…って感じなので全ての関数に不具合対策すると 収拾がつかない。exitでは一つの関数を抜けるだけに終わってしまうという状況。 一発でメインルーチンの最初に戻れればいいんだけど。 一々細々対策しなくても、最初からやり直せば何とかなるのでそれで対処しようかな…と
- 259 名前:名無しさん@そうだ選挙に行こう mailto:sage [2015/12/14(月) 11:42:30.40 ID:kZpbsuTx0.net]
- //<input id="retainLogin_flg" class="fmtxt" type="checkbox" checked="" value="1" name="retainLogin_flg">
IESETDATA( IE, 1,"retainLogin_flg","1") これでログインできません。どこが間違ってますか?
- 260 名前:名無しさん@そうだ選挙に行こう mailto:sage [2015/12/14(月) 15:23:59.00 ID:OdJxQFG70.net]
- MOUSEORG関数を使ってバックグラウンドのChromeウインドウでBTN,KBD,CHKIMGを使用したいのですが、CHKIMG以外動作しません…
別にテスト用のコードを組んだところ、BTN,KBD,MMVの3つはChromeのウインドウIDを使用した時のみ一切動作しませんでした。 Chromeをこのような関数で操作するにはどうしたらいいでしょうか? また、CHKIMGで画像読み込みをしただけでChromeが前面に出てきてしまうのですが、これを防ぐにはどのようにすればいいのでしょうか? どなたかよろしくお願いします。
- 261 名前:名無しさん@そうだ選挙に行こう mailto:sage [2015/12/14(月) 16:27:54.18 ID:qKre7MPE0.net]
- タブのIDが必要
でも根本的にChromeは自分が隠れていると意図
- 262 名前:的に画面更新をサボるから裏動作に向かないと思う
素直にIE使ったほうが楽よ もしくは仮想PCでChromeを最前面で動作させてるいうFAQ的対応 仮想化対策されているコンテンツなら素直にリアル別端末用意しなはれ [] - [ここ壊れてます]
|
|