●質問したい方へ。
「○○作れますか?」→ スクリプトを期待するのはお門違い。作れるか作れないか教えてくれる人はいるかも。
「○○が作りたい」→ 自分作ればいいんじゃない?
「○○作って下さい」→ 依頼スレじゃありません。
過去ログを見る、検索する等、自分で出来る事を書き込む前にするように。
自力で作ったのを晒すか、具体的な解らない場所を提示して、改善点や解決策を求めるようにしましょう。
●スクリプトを晒す上での注意
他人が読みやすいようにインデントを付けるように。解らない人はググレ。
(タブインデントは使えないんだぜ 全角スペース等に 変換しておくべし)
言いたい事に関係無い部分は 〜○○の処理〜 や 処理A 等のようにし、
必要な部分を晒すようにする。
●他人の書いたスクリプトを安易に実行しないように。
ハードディスクをフォーマットされたりしても、自己責任。
前スレ
自動化ツールuwsc使いよ集まれ7
http://anago.2ch.net/test/read.cgi/software/1312390804/
初心者です。 単純にエクセルファイルを開きたいので EXCEL = CREATEOLEOBJ("Excel.Application") EXCEL.visible = True で、再生すると COM Error:OLE Object2への型変換が出来ません。 2行目:EXCEL.visible = TRUE って出るんだけど、なぜ?
>>1 乙
>>4 ファイルオープンしてないじゃん
EXCEL.Workbooks.Add("ファイルへのパス”)
すまんこっちか Excel.WorkBooks.Open()
8 :
4 :2012/04/10(火) 11:16:31.79 ID:N5yU53WO0
??
>>8 興味があったから、オレもダウンロードして再生してみたよ
うちの環境だと、
EXCEL = CREATEOLEOBJ("Excel.Application")
EXCEL.visible = True
で問題なくEXCELがオープンしたよ?
ブックがないから速攻で閉じたけど、エラーを吐くような事はなかった。
何も書いてないuwsファイルを作って、そこに書いてやってみたら?
自分も特にエラーなく
>>9 と同じになったけど、これどこのエクセルのファイル名とシート名?ブック?指定するの?
初心者の私に誰かおしえてください。
ブラウザで他のタブを表示しながらバックグラウンドで操作するマクロを作る事は可能ですか? もし可能ならヒントを教えて頂けませんか?
>>13 なるほど、ありがとです。
そこ見てやってみます。
15 :
4 :2012/04/12(木) 14:08:23.55 ID:gCK8Ag6v0
>>4 です。 みなさん、ありがとう。
理由が分からないけど、4.6にダウングレードしたら、
エラーも出ず、うまくいった・・・?
意味がよく分からない。
>>15 4.7cだけど、上手くいくのは何故だろう。シェアの試用版使ってるから?
質問失礼します。 ブラウザ(Chrome)に表示されているFlashをバックグラウンドで操作したいのですが xxx_id = getid( "xxx" ) mouseorg(getctlhnd(xxx_id, "MacromediaFlashPlayerActiveX"), 2) btn命令 と書いた所、全く反応しませんでした。 getidのxxx部分をIEに書き換えたり、共通するタイトル名に変更したり色々試してみたところ IEの方では動作するのですが、Chromeでは全く反応がありません。 ChromeではバックグラウンドでFlashを操作することは不可能なのでしょうか? ご指摘よろしくお願いしますm(_)m
ちゃんとオブジェクトのID指定できてないんでないの?
初めまして、UWSCを使いグーグルクロームでURLを入力する という動作ではまっています。 id = GETID("Google Chrome","Chrome_WidgetWin_0") id = GetCtlHnd(win,"Chrome_OmniboxView") KBD(VK_A,DOWN,20) などとしても 現在のURLに追加で"a"が付け加えられます。 クリップボードに値を入力してctrl+AとVで今は代用しているのですが 出来ればSNDSTRで直接値を上書きしたいと思っています。 ですが、sndstr でうまくURLの場所が特定できません。 クロームのURL入力にSNDSTRで値を送る URL入力項目の指定方法をどなたかご教授下さい。
そのURLを入力したいテキストボックスのIDにSNDSTRすればいいんでないの?
そのIDが特定できず_| ̄|○ SNDSTR(ウィンドウID."値".つるー.つるー) の記述しかわからず、この記述だとウィンドウIDに送る事になるのですが… クロームだとURL入力欄のIDが特定できず_| ̄|○ EDITなのか何番目なのか…
すいません、丸一日はまっていたのに事故解決しました申し訳ありませんでした。 全然関係ない場所に記述でウィンドウIDの指定が違う物に書き換わっていました申し訳ありません。 エディットコントロールは普通に1番でした_| ̄|○
>>18 別の方が作ってだオブジェクトIDを調べるマクロも使って取得してみたんですが駄目でしたorz
そもそもActiveXはIEだけのものなのに Chromeに "MacromediaFlashPlayerActiveX" なんて存在するの?
>>24 IEだけでバックグラウンド操作出来るのはそういうことだったんですねorz
どうやら「オブジェクトID」と「ウィンドウID」を勘違いしてたみたいです。すみません。
ChromeではFlashのバックグラウンド操作は今のところ出来ないんでしょうか?
mouseorg (ID,2)でキーやマウス操作はバックグラウンドで動作するのですが。 sendstrになるとどうしてもテキストボックスがアクティブ化されて入力されます。 mouseorgをウィンドウに対して行っても、テキストボックスに対して行っても動作は変わらず。 SENDSTR関数事態が対象テキストボックスをアクティブにしてsendしてるとしか思えません。 これをバックグラウンドで動作させるには、打鍵で文字列を打ち込むように改良するしか方法がないのでしょか。
もしかしたら…クロムのオートコンプリートと履歴の自動プルダウンがアクティブになる要因かもしれません。 オートコンプリートは解除できても履歴は削除しても再び出現するため諦めます…。
せめてヘルプのmouseorgの説明だけでも読んでみたら?
>>25 MOUSEORG(GETID(GET_FROMPOINT_OBJ),2) //マウスカーソル下のオブジェクト
でどう?
aとbを1回ずつやってcとdも指定回数やるってのはどう書けば良いですか?
公式のサンプルプログラムを1度でも見たら出来ない質問だな
32 :
名無しさん@お腹いっぱい。 :2012/04/26(木) 11:59:50.94 ID:3gWwposk0
IFで赤色を判断して条件作ってるんだけど fb PEEKCOLOR(x,y) = $FF0000 then 赤にも黒っぽいのとか白っぽいのとかあるので 範囲で指定したいんだけどググってもさっぱりです
ほんとにググった? それ系の質問は結構あるはずだけど
もう一度ググって見ます;;
こんなのが見つかりましたが RGB=PEEKCOLOR(X,Y) R=RGB AND $0000FF G=(RGB AND $00FF00)/$100 B=(RGB AND $FF0000)/$10000 Rには付いてないのに GとBの/$100や/$10000の意味がよくわかりません
ビット位置揃え
あーなるほど!割り算してたんですね! このR,G,Bに条件つければいいんですね なんだかいけそうなきがするー! ありがとうございました
それがわかったならもう気付いたと思うけど
>>32 は赤じゃなくて青を取り出してるぞ
あれ?ほんとうだ^^; しょっぱなからおかしかったみたいです///
ペルプ見ろ
赤でも、黄色っぽいのや紫色っぽいのもあるし RGBよりもHSVで判断するのがいいと思う
42 :
名無しさん@お腹いっぱい。 :2012/04/27(金) 08:17:32.89 ID:n7YHJBnV0
作成したマクロをオンラインゲームで実行しようとすると動作しませんでした ググってUWSCをUNKOに変更してもダメでした・・・ ゲーム側でマクロ対策されてたら出来ないのでしょうか?
>>42 マクロ対策されてたら出来ないから
仮想PCでゲーム走らせてやるんだよ
そうでしたか><; 初マクロでなんでも普通に出来ると思ってました
対策って具体的にはどういうことしてんの? 普通の入力とかわらないんだから対策できない気がするけど
wshとuwscどっちがおすすめ? 前者でできて後者でできないこととかある?
>>45 プロセスとドライバなど監視してる
クリップボード拡張ソフトが引っかかたりする
5ボタンマウスが引っかかたりする
だから仮想を外からUWSCしてやるんだよ
スレチだな。
取得したソースに検索をかけたいんですが "を含む文字列を引数に指定したい場合"<a href=""などとするとエラーが出てしまうんですが どうしたらいいでしょうか。
ヘルプを読んだらいいと思います。特殊文字の項。
>>43 win7 XPモード ダイレクトX使えないので
3Dゲーム無理でした><;
>>51 すいません見落としてました・・
即レス感謝です
>>52 当たり前だろw
仮想モードじゃなくて仮想PC
えw仮想PCですかそうですかw また一つ勉強になりました^^
56 :
名無しさん@お腹いっぱい。 :2012/05/01(火) 16:37:49.37 ID:tgjVeiva0
XPモードもVMwareも仮想マシンだけど、 XPモードはDirect3D非対応だからゲームができない。 だからDirect3D対応のVMwareを使う。
結局チートスレかよ
分かるヤツがベラベラ関係ない事で喋るから変なのが居着くんだ。
59 :
名無しさん@お腹いっぱい。 :2012/05/02(水) 11:37:01.54 ID:O3MWtoei0
FOR X = 1 TO 5 SendStr(0,"123○") KBD(VK_CTRL,1,500) KBD(VK_V,0,500) KBD(VK_CTRL,2,500) SLEEP(1) NEXT ○の部分を1週ごとに4 5 6 7 8と数字を変えたいのですがどうすればいいですかね?
>>59 SendStr(0,"123"+(3+X))
WEBlを見るとき、「少し時間を空けてから〜」と表示されることが多いです 大抵10回ほどリロードすれば直るんですが、この処理を自動化したいです。 UWSCで作ることは可能ですかね?エラー画面ではなくなったら、という 処理はどのようにすればいいのでしょうか、ご教授ください!
ソースを取得して「少し時間を空けてから〜」があるかどうか見るだけでは
その画面が表示されるまで時間がかかるんです 表示される場合はパっと切り替わるので、 高速試行のち成功した場合処理END というスクリプトを作りたいです。 サイトを表示する、というものはできました^^
すぐに読み込み完了しなかったらリロードすればいいだけだろ? 何が分からないのかが分からん・・・
uwsc proのrecieてフラッシュのボタン押したらclkitemで記録してくれんですか。
画像認識が正しく行われません。 環境:2画面(2560*1024) Windows7(32bit) 使用グラボ:ATI RADEON XPRESS1100 使用画像:ゲーム内スクリーンショット/外部ツール(WinShot)キャプチャ(両方5KBほど) 画像があったら100秒待つ なかったらキーボードのF2入力のつもりです。 IFB CHKIMG("are1.bmp") SLEEP(100) ELSE KBD(VK_F2,CLICK) ENDIF
>>66 1画面で試してみるとか無駄な部分を塗りつぶして透明色に指定するとか範囲を限定するとかしても駄目?
>>65 何故自分で試さないの?
無料で試用できるのに。
69 :
66 :2012/05/04(金) 12:15:16.01 ID:OXgbW64Z0
UWSCを新しくしたら出来るようになりました。ご迷惑かけました。
>>68 期限きれてるからです。
でもclkitemはIE操作じゃないことに気づきました
ありがとうございました
複数のブラウザを開いて、そのブラウザ内で別々の作業を行わせることは可能なのでしょうか?
うん
>>71 ブラウザのウィンドウID取得すればいけるんじゃない?
ヘルプとかにきっと書いてある。
uwscでJAVAアプレット(自分が作成したものではなく、他人が作ったサイト)上のボタン を操作することは可能でしょうか?
試した?
可能ですよ
77 :
名無しさん@お腹いっぱい。 :2012/05/06(日) 00:11:08.20 ID:UW7LlptC0
IEやSleipnirではなくChromeを操作したいんですが、言うこと聞いてくれません><
ソースの取得やGET/POSTを行いたいんですが、UWSCでは難しいのでしょうか。
速度と安定性が魅力的で…
>>77 id=exec() で正しく取得できてないかも
表示完了待ち関数も怪しいから sleep(10) とかに代えてみるとか
80 :
77 :2012/05/06(日) 06:35:28.68 ID:UW7LlptC0
>>78 id = Exec(path + " --force-renderer-accessibility --process-per-tab --new-window
http://www.google.co.jp/search?q= + Encode("ああああ", CODE_URL)")
としてもそのurlに飛んでくれないのですが、
指定した文字列のurlに飛ぶ関数ってありますか?
な ん で ヘ ル プ を 読 ま な い の
83 :
77 :2012/05/06(日) 14:45:15.36 ID:UW7LlptC0
>>81 ありがとうございました!
>>82 何故かヘルプが表示されません・・・すみません。
84 :
77 :2012/05/06(日) 14:58:07.20 ID:UW7LlptC0
ヤフーのホームページで「知恵袋」という名前がついているリンクをクリックしたいときに、 ClkItem(winid, "知恵袋",CLK_BTN,1,1) とすればいいかと考えたのですがうまくいきません。 クリックアイテムではそのようなことは出来ませんか?
お前はまずヘルプを見れるようにしろ
ヘルプとGoogleでわからないこと9割以上解決するよ 1年半くらいゴニョゴニョしてるけど未だに手放せない…
>>86 IE以外でのソースの取得やGET/POSTはググったらすぐでてきたぞ
MSXML2.XMLHTTP とか Microsoft.XMLhttp とか
餌をやるからいつまでも居着くんだ。 早く挫折させてやれ…
>>87 79です、ありがとうございます。これはいけそうだ!
やっぱりUWSCをキーワードにすると狭まりますね…
>>89 COMから先はUWSCの機能じゃないから
それらの使い方をこのスレで質問したりしないでね
91 :
77 :2012/05/06(日) 18:12:52.95 ID:DoZ0+Csq0
久しぶりに来たらいつも通りで安心した
chromeで今いるページから指定URLへ飛ぶにはどう書いたらいいでしょうか? 検索してもわかりませぬ
アドレスボックスを書き換えてエンター押せばいいんじゃないですかね白目
画像aから画像zまで順に検索・あったらキーボード入力し最初に戻る。なければ次の画像を検索。 とのようにしたいです。質問したい内容は 1.最初に戻る処理の書き方 2.↓よりコンパクトにできる書き方 IFB CHKIMG("a.bmp") KBD(VK_A,CLICK) 最初に戻る ENDIF IFB CHKIMG("b.bmp") KBD(VK_B,CLICK) 最初に戻る ENDIF 略 IFB CHKIMG("z.bmp") KBD(VK_Z,CLICK) 最初に戻る ENDIF
その画像が見えなくなってから数秒後にループを抜ける場合はどうしたらいいでしょうか?
スリープ挟んでブレークしとけばいいんじゃないの
自分の中で言い方がまとめれませんでした、その画像が数秒間見えなかったらブレークするっていう処理にしたいです。 何度もすいません;
画像チェックしてその画像が数秒間なかったらブレークするだけだろ? 何がわからんの? 画像チェックの方法? 秒数のカウント? ブレーク方法? 聞きたいことがさっぱりわからんのだけど
>>99 判定の前に時間記録して、ループ内の判定にはいるときに比較して数秒経ってればブレイクすればいいだけだね。
シンプルに書くとこんな感じかなー repeat if chkimg then t=0 else t=gettime until t and gettime > t+秒
それだと他の並行処理が出来ないな
それはループの中に書けばいいだけだよ。 って説明しないとわからないようなことだろうか?
みんなはエディタ何使ってるの? メモ帳は使いづらい
秀丸にuwscの強調表示ファイルと単語補完ファイル入れて使ってる
フリーのUnEditorに強調表示ファイル追加
108 :
名無しさん@お腹いっぱい。 :2012/05/16(水) 11:24:17.11 ID:wYqqv/Ll0
強調表示ファイルと単語補完ファイルってなに? 初心者の私におしえて
ググレカス 強調表示は関数とか定数とかを色分けして見やすくするやつ 単語補完はサジェスト機能だ
MOUSEORG(GETID("xxx"), 2) While True KBD(VK_7, CLICK) SLEEP(0.5) Wend 指定したウィンドウ上でkeyの7を連打させたいのですが、上記の記述だとうまくいきません。 ご教授おねがいします。
>>109 なんてツンデレ
>>110 環境とか対象ソフト名とか書けよ
xxxとか伏せってんじゃねーよ
ゲームのチートがやりたいならスレチだ、よそ逝け
repeat sleep(1) until !IE.busy and ie.readystate=4 直後のposやbetweenstrなんかでie.document.innertextなどが正常に作動しないんですが どうしたらちゃんと取れるでしょうか・・。 call 文でソースの取得を別のuwsファイルにさせると上手く行きますが不便です。
訂正 ie.document.innertext IE.document.body.innerText
直後で動かないならSleepを入れたらいいじゃない。 だいたい1秒近くSleepを入れたらそこらへんクリアできるよ。
txt=IE.document.body.innerhtml ielink(ie,"文字") sleep(10) sendstr(0,txt) でもクリップボードには何も入らず。 ・ until条件もreadystateなど試しましたがcall文以外成功してません 助けてくださひ win7 32bit IE9
>>116 // 待ちループ
sleep(1) ←ここでSleepしなくてどこでするんですかと
txt=IE.document.body.innerhtml
>>115-117 実際にはtxt=IE.document.body.innerhtmlはスクリプト頭に置いてあったのですが、
txtがIE.document.body.innerhtmlを再取得してくれるものだと何故か勘違いしていました・・
無事動きました!
ありがとうございました。。
画像リンク先URLを取得する方法を教えてください
iegetdata(ie,"tag=img","
http://***.gif ")
で出来るかと思ったらEMPTYしか帰って来ません><
>>119 リンクのタグは”A”でしょ。そこにGIF画像を表示してるだけ。
>>120 ありがとう御座います
functionで一応は希望通りの動きを指せることはできたのですが
シンプルに画像のリンク先だけを抽出する専用の関数は無いんでしょうか
>>121 bodyのソース全部を取り出して
between( 文字列, "
http:/ " , ".gif" )
とか。
ただ、これだとBODY全体にやると表示文字を取ったりするし、頭省略されてるのは取れない。
だからソース指定を探し出して取り出すのがいいだろうけど・・・
HTMLを解析できるような専用ツールを使うほうが確実だろうね。
chromeでヤバゲーだとuwscが動かないんですがなぜでしょうか?
>>124 動くのもあるよ
作りが悪いとかじゃない?
単にCPU100%でスルーされてんだろ
リンク先読んでないので勘だけど マッチするものがないとCOMERRORを返すので 先に.testで0/1判定するか、COMERROR_ING(だっけ?)でエラー回避するか… ごめん、もう眠気限界なので外したらスマン
>>129 あっさりそれで治りました…ありがとうございます。
なんというかお手を煩わして申し訳ない
131 :
名無しさん@お腹いっぱい。 :2012/05/21(月) 15:46:05.18 ID:NVd8hYYn0
初歩的な質問ですみません UWSCからエクセルのソートをしたいのですが これでは出来ません、どうすればいいでしょう? Excel = GETACTIVEOLEOBJ("Excel.Application") Excel.Range("a1").CurrentRegion.Sort Key1:=.Cells(1,2), order1:=xlDescending
chkimgと同じ動作を画像を使わず出来ないでしょうか。 画像を文字列(?)化して画面上から画像ではなくその文字列を探す・・という具合に。 VBAでそんなことしてるソフトがあったのでuwscでも出来るんではと思いまして。
何が言いたいのかいまいち分からんけどそれのアルゴリズム分かるなら出来るんじゃないの?
>>132 それchkimagを使って文字を判別して文字で返してるだけw
>>131 やったことないけど、VBAの問題のような…
パッと見Range("a1"). はレンジ指定してあげないとダメなのでは?
ex) Range("A1:C100")
>>135 ありがとうございます。これで出来ました
Excel = GETACTIVEOLEOBJ("Excel.Application")
excel.Range("a1").CurrentRegion.Sort(Key1:=excel.cells(1,5), Order1:=2, Header:=1, Orientation:=1)
>>136 おぉなるほど、言われてみれば… 回答ありがとうw
すいません 会社のソフトでこのUWSCを使おうと思ったんですが ソフトの使用上タイトルが○○ソフト456828(ランダムな数字)が表示されるせいで 同じ作業をさせようとしても 番号が違うとマクロが戸惑って中々動いてくれません。 どうすれば違う番号でも最初に組んだ時と一緒の動きをしてくれますか?
数字に左右されないスクリプト組めばいいだけだろ
>>139 簡単なマウス操作しか記録してやってないので
その方法がわかりません。せめてどうぐぐれば答えに近づけるか教えてもらえますか?
スクリプトでタイトルを取得している部分の関数名でググればいいと思いますよ
SLCTBOXで再生させたいマクロをクリックするだけでUWSCで再生させることってできますか?
>>142 UWSCマクロの呼び出し関数があるからいけるんじゃないの?
>>138 ”○○ソフト”だけで検索しても他に候補がなければ特定可能だよ
但し、候補が複数ある場合は駄目だけどね
その場合は、マクロ動作時にどのウインドウを処理するか指示する必要がある
一番楽な方法はその数字をInput関数を使って手入力する方法かな
画像認識以外でプルダウンメニューからいつも同じ項目を選択するようにすることができる方法はありますか?
>>138 普通にやって部分一致でヒットすると思うのだけど
>戸惑って中々動いてくれません
この辺あいまいな説明やね
質問です。 このソフトって @エクセルファイルからIDを所得 ~ここからブラウザ上の作業~ AWEB上のデータベースでそのIDを検索 Bヒットしたデータをダウンロード のくり返し作業を自動化することは可能でしょうか。 可能か不可能かだけ教えていただければ幸いです。
列挙した項目だけが課題なら可能 ただ・・・まぁいいや
>>148 いやすまん文字制限であんま詳しく書けなかった。
とりあえずもう少し勉強してから来ます。
即レスありがとうございました。
150 :
名無しさん@お腹いっぱい。 :2012/05/25(金) 18:27:39.73 ID:5ky92c9p0
いつも思うけど、良かれ悪しかれ、詳しく書くのが基本なんじゃないかな? それができないなら、最初から書くなよ。 ここは、匿名掲示板だぜ?
まだこんなの使ってるのか さっさとAutoITへこい
152 :
名無しさん@お腹いっぱい。 :2012/05/26(土) 09:40:57.34 ID:5ShQRN1o0
すいません。指定画像があった場合の処理をしてるんですが 思うように動かなくて、気が向いたら教えて下さい。ここでcheck.bmpの画像があったら、そこをクリックして、次はcheckB.bmpの画像があったらそこもクリックして終了したいんですが ずっとcheck.bmpの画像をクリックしっぱなしでcheckB.bmpをクリックしてくれません。 DEF_DLL DwmEnableComposition(long): long: dwmapi if KINDOFOS()>=20 then DwmEnableComposition(0) // Vista以上の場合に Windows Aero オフ STOPFORM(False) // "再生中...xxxx"ウィンドウは出さない MMV(G_SCREEN_W, G_SCREEN_H) // カーソルを画面端に(カーソルがソフト描画の場合に退避) while True if GETKEYSTATE(VK_ESC) then exit // ESCキーで終了 ifb CHKIMG("check.bmp") // 画像があった BTN(LEFT, CLICK, G_IMG_X+680, G_IMG_Y+200) // 左クリック break endif ifb PEEKCOLOR(320,320) = $00FF00 // 指定ピクセルが緑 KBD(VK_SPACE) // スペースキー break endif sleep(1) if GETKEYSTATE(VK_ESC) then exit // ESCキーで終了 ifb CHKIMG("checkB.bmp") // 画像があった BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y) // 左クリック break endif ifb PEEKCOLOR(320, 320) = $00FF00 // 指定ピクセルが緑 KBD(VK_SPACE) // スペースキー break endif sleep(1) wend if KINDOFOS()>=20 then DwmEnableComposition(1) // Windows Aero オン
>>152 途中breakしなければいいとかそういう問題でなくてもっと別のこと?
[Ver4.8] 動作環境としてWin9x系のサポートを止めた 変数名にUNICODE文字が使えなかったのを使えるようにした READINI関数にて2048バイト以上の読み込みをできるようにした WRITEINI関数にてUNICODE文字が使用されると変になる事があるのを修正 JAVAアプリに対してCOMBOBOXの制御、POSACC関数がNGだったのを修正 FGET関数のCSV処理にて2つ連続ダブルコーティションを1つとして処理するモードを付けた CHKIMG関数にて色幅指定が一部有効でなかったのを修正した SAVEIMG関数のクライアント指定にて指定値(0〜3)を True/Falseだけにした CHKIMG/PEEKCOLOR関数にて MOUSEORG関数でID指定がある時はバックグランド状態でも可とした VAL関数にて UWSCの定数名も変換されていたのを変換しないようにした STATUS関数にて最大化状態を返す ST_MAXIMIZEDを付けた IE上の指定タグの書き換えをする IESETSRC関数を付けた 配列の切り取りをする SLICE関数を付けた 配列をソートする QSORT関数を付けた CREATEFORM関数にてデフォルトにて浮動小数点例外を無効にするようにした CREATEFORM関数にて複数のiframeがある時にsubmitボタンを認識しなかったのを修正 Debugger:フォント設定、文字カラー設定をできるようにした Debugger:CALL文にて存在しなければ新規にタブ作成できるようにした Debugger:複数回のUndo/Redoをできるようにした Debugger:コンテキストメニュよりUWSC関数をキーワードとしてヘルプを起動できるようにした RecIE:一部クリック(コンテキストメニュからのクリック処理)選択ができないパターンを修正
155 :
名無しさん@お腹いっぱい。 :2012/05/29(火) 20:20:09.60 ID:qi6QBEUC0
ポップアップのIDに送ればいいだけだろ
ありがとうございます。 例えば上記の画像のところに入力する場合 input=GETID("connect to") sendstr(input,"IDかパスワード") こんな感じでいいですかね? あとComboBoxを使ってるんですが、 メニューを選んだあと、ComboBoxが閉じてしまうので メニュー選択後その処理が終わったらまたComboBoxに戻るって設定はできますか? もし出きるならやり方を教えて下さい。
何回も質問してすいません。 現在アクティブになってる場所にsendstrで文字を送ることって可能ですか?
sendstr(getid(get_active_win), "hogehoge") sendstr, getid, help yome
160 :
名無しさん@お腹いっぱい。 :2012/05/29(火) 22:05:54.08 ID:qi6QBEUC0
さっきのSLCTBOX(SLCT_BTN)のやつで 最初と最後に While True Wendを入れたらボタンの処理が終わった後またコンボボックスが復帰してくれるようになったんですが 真ん中のところに画面が来ちゃって どうすれば処理終わったあと、真ん中じゃないところに固定できますかね? While True if GETKEYSTATE(VK_ESC) then exit SLCTBOX(SLCT_BTN, 0, "簡易入力メニュー<#CR>escで終了","1ボタン","2ボタン","3ボタン")
While True if GETKEYSTATE(VK_ESC) then exit SLCTBOX(SLCT_BTN, 0, "簡易入力メニュー<#CR>escで終了","1ボタン","2ボタン","3ボタン") CASE SLCT_1 CASE SLCT_2 CASE SLCT_3 SELEND Wend こんな感じにしたんですが、これを実行するとESC押したあとボックスが真ん中に戻って非常に邪魔です。 誰か右端にボックスを半分隠した状態で表示したいんですが どうすればいいですか???
間違った。ESCじゃなくてボタンを押したあと真ん中に戻るでした。
ガチでヘルプ熟読してみようよ 引数で表示座標指定できる 但し、ダイアログ表示中はスクリプトの実行は普通は止まっているので ダイアログを移動させた後の座標を保存するのは結構面倒なので可能なら直接指定の方が楽だよ
164 :
名無しさん@お腹いっぱい。 :2012/05/30(水) 16:54:13.68 ID:9JF2sKHV0
gettimeで取得した時刻の10秒後にEscを押す、ってどうやって書けばいいんだ?
Sleep関数の引数の単位は 秒 だから・・・ 単純に10秒後だったらgettimeすら不要 現実時間の切りの良い秒数に丸める場合や 途中、キー入力を受け付けて中断出来るようにしたい場合は必要だけどね
質問です。 slct_btnで他のファイルを call xxx.uws で読み込んで実行したら実行するまでラグが発生するようになってしまいました。 何か原因があるのでしょうか?
168 :
名無しさん@お腹いっぱい。 :2012/05/30(水) 20:37:09.79 ID:9JF2sKHV0
>>165 すまん、間に色々やってるせいで負荷がかかってか、sleepだと0.3秒くらいズレる事があるんだよね
だから逐一時刻に合わせて実行したいんだ
なんとなく一連の質問が連続してそうだから 少し別角度のアドバイスとして アクティブウィンドウへのsendstrをつかった送信と スクリプトでメニューを表示して操作を選ぶ操作って アクティブがどこかアヤフヤになりそうで危険だと思う 業務で使うなら面倒臭がらずに画面名やクラス指定した方がいいと思うな
>>168 なるほど、でもぶっちゃけWindowsはリアルタイムOSじゃないから一定以上の精度は出ないよ
スリープなら精度を上げるには
最初はあえて大きめだけど目標時間は超えない値を設定して
目標時間に近づくにつれてSleep関数の引数の値を下げて時間調整するアルゴリズムとかあるけれど
10秒後が目標で0.3秒の誤差なら自分は妥協しちゃう
色々やったあとにgettimeすりゃいい
注意が必要なのはSleep無しでgettimeとその他の処理だけでループしちゃうと それ自体がCPUの使用率を跳ね上げてしまう可能性が高いので 結局短いタイミングでもいいからSleepは呼んだ方が良いケースが多い
パソコンに繋いだiphoneを自動化できると聞いたのですが どのように設定するのでしょうか? 設定の概要だけでも教えて頂けると有りがたいです
こんにちわ。uwscでコントロールできないexeがあるのですが、どうしようもないですか?エスパーさんがいれば助かります
>>174 セキュリティが働いてるんだろ。諦めて。
>>174 めんどくさいけどVMwareで回避可能
他にも手はあるかも
>>173 iPhoneはUWSCでは操縦できないですよ
>>167 操作の記録で文字を入力し、記録した動作を保存。
保存したファイルでGetSTRをSendSTRに書き換えるなど。
だけど、ACCESSならACCESSの機能でインポートしたほうが早くないかな?
>>166 ウィルスチェックとかの割り込みが入ったとか
>>176 ありがとうございます。pc認証で動くexeなのでvmware上では難しそうです。なかなかやっかいですね^^;
ソフト名出せ
>>179 Siriusです。ホームページ作成ソフトです。
つまりホムペ作成(アップロード)を自動化してアフィサイトを更新したいってことかw まぁ別のソフト使ったほうが早いんじゃね
>>177 独自ソフトだからアクセスじゃないです。
例えば住所2ってところに何か入力したいときは
juusyo=getid("住所2")
ctrlwin(juusyo,active)
sendstr("○○番地")
みたいにすれば送れますか?
ルータにログインを自動でしたいのですが 192.168.1.1にアクセスしようとすると Windows セキュリティってポップアップが出てきて、 そこのユーザー名にrootと入れるとアクセス出来るんですがうまく入力できません これがソースです。誰か教えて下さい。 win=getid("Windows セキュリティ") ctrlwin(win,activate) key="root" sleep(1) sendstr(win,key,VK_Return)
sendstr(win,key,VK_Return) ?
>>184 rootって入れたあとエンター押せば入れるじゃないですか
引数の使い方が間違ってると思う、詳細はヘルプ あと、ダイアログ表示等の関係でラグで失敗しそうな入力は確認してから次に進む様にしてる //保存画面のファイル名の入力欄にページ数を設定 saveID = GETID("名前を付けて保存", "#32770", -1) aFile = pagePath + ".png" SendStr(saveID, aFile, -2, True, False) Sleep(0.2) tmpStr = GETSTR(saveID, -2, STR_EDIT) While tmpStr <> aFile SendStr(saveID, aFile, -2, True, False) Sleep(0.2) tmpStr = GETSTR(saveID, -2, STR_EDIT) Wend
>>183 うちはXPだからどんな画面かよくわからんが
適当に指定したんじゃ操作はできんの?
id = GETID("Windows セキュリティ", -1)
SENDSTR(id, "root", 2, True)
SENDSTR(id, "aaaa", 3, True)
CLKITEM(id, "OK", CLK_BTN)
最近勝手に落ちてたりするんだけど、原因はなんなんでしょうか?
おま環
windows7 ult 64bit
そこそこの頻度で落ちるよね なんとなくアプリ側が受け取れない間隔でコマンドを送りまくったらuwsc側が落ちる印象があるので 適当にSleep入れたりCLKITEMの戻り値を確認してFalseの場合は再実行するとかしてると 安定度が上がる印象がある
>>191 あ、そういえばsleepあんまいれてないです
試してみます
ありがとうございました
う〜ん、某所で拾った GetItem.uws も それなりの頻度でendまでいかないな〜と思っていたのだけれど 試しに全体を関数化してスレッド呼び出しにしたら 完走するようになった・・・なんか変だな
質問です。 2chで投稿された文字の1行目だけコピーするって設定出来ますか? そういう事が出来れば嬉しいんですけど
>>195 別に2chじゃなくていいんです。
会社の業務で社内イントラのwebから特定の文字列をコピーして
貼り付けて文章作るって手順があるから
それが出来れば応用出来ると思って
バカなオイラにはUWSCぐらいしかプログラムらしきものを使えないんだが、シミュレーションウォーゲームを作ってみたいと思う。 そこで簡単にマップとユニットを出せるようなアプリみたいなものはないだろうか。 AI部分はUWSCで計算して、その結果でユニット位置をACWで進めたりできないかと考えている。
>>196 それってPerlやawkの様な文章整形に強いツール系の出番のような・・・
uwscで同等の事をしたい時は
多分VBScriptで正規表現が使える RegExp オブジェクトを使うといいと思う
>>197 普通にC++とか始めた方が効率よさそうだぞ。
uwscは記録できるから手軽にスクリプト作れるし良いツールだけど クラスのインスタンスや継承の概念とか無いから大規模なプロジェクトは難しい
そこで日本語プログラミング言語なでしこですよ。
>>167 この画像の例えば名前のあいうえおを
かきくけこに書き換える時って
どうすればいいんですか
>>202 そのレスの質問者が出した情報の範囲では
高レベル記録で動作記録できるタイプの業務アプリなのか不明なのでなんとも言えない
高レベル記録が出来るタイプならSENDSTRの送信モードを置き換えにすれば良い
低レベル記録しか出来ないタイプなら画面の位置を固定した上で
マウスで名前の所をダブルクリックして文字列を選択してからキー入力を送信する手が使えるかもしれない
>>203 普段は画面を固定して、マウスで名前を書き換えるってマクロ使ってます
でもそれだと他のPCで使う時、設定したフォントのサイズとかで位置が微妙にずれるので
私が使用してるこういう業務ソフトは最初は必ずデフォルトの文字が入っているので
getiidでwindowIDを取得して、
そのデフォルトになってる文字を置換出来れば
一番良いと思ったんですが。できますかね?
やってみればわかるとおもうよ
>>204 高レベル記録ができるタイプなら(※大前提、これが無理ならマウス指定しかない)
SENDSTRで番号と送信モードフラグを指定しすると良い
番号: 左上から数えたエディトコントロールの順番
(1から指定、マイナスを付けた場合にはDisable状態のものもカウント)
(0:デフォルトはフォーカスを持ったエディトコントロール)
番号がデフォルト(無指定)だから高レベル記録ができるタイプなのに
マウスで選択する必要があるんですね
結論は
>>205
207 :
すてぃーびー :2012/06/05(火) 12:16:28.49 ID:q044Mzwy0
>>194 スクレイピングなら、uwsc コバヤシにサンプルありましたよ
時間指定して終了ってできますか? 21時にマクロ停止とか 初歩的な質問ですみません
はい
設定→スケジューラー→21時に終了を設定でいいじゃん スクリプトでやろうとするな
>>211 ありがとうございます、ですが私のUWSCには終了の項目が無いようです
時間取得してbreakで止めればいいんじゃね
こんな基本的な事はヘルプ見ろで終わるスレじゃなかったのか?
文系が傷をなめ合うスレだろw 知ってるならこのスレ見ないしマ板いくだろうし ヘルプにあることすら知らないんだからヒント出せばいいだけだ あと知ったかしてとんちんかんな答えした211をプギャーするスレでもあるなw
以下のプログラムを走らしても保存できませんでした。 何がおかしいのでしょうか?初歩なのですが、お願いします。 clkitem(id,"ファイル\名前を付けて保存",CLK_MENU) id2=getid("名前を付けて保存","#32770") sendstr(id2,"D:\SSDCASH\Users\Net\Desktop\年賀.txt",1,TRUE) clkitem(id2,"保存",CLK_BTN)
>>217 何処で失敗してるかスクリプトをステップ毎に分解してみて試してみたら?
自分はその手の画面の時は
>>186 な感じでファイル名の置き換えが成功するまで
保存ボタンを押さないようにしてる
>>218 ありがとうございました。解決しました。
プロセスの起動時間を取得したいんですが 何かいい方法ありますか?
すいません 質問です。 ツールのOKボタンを推したいんですが CLKITEM( ID,"OK",CLK_BTN) でやったんですが、ボタンを認識してくれません windowはctrlwinでアクティブに出来てます 原因として何が考えられるでしょうか? @OKボタンのOKの文字は画像だったので認識しない AOKが全角だったので認識しない 他に何かありますか
その前に高レベル記録したらどの様に記録されるのか それを再生するとどうなるのか そして、再生してもOKボタンを押せないようなら 低レベル記録をしてみて(以下同文
>>223 ありがとうございます。高レベルで記録した時、
OKボタンが取得出来てませんでした。諦めて画像認識でクリックさせます。
お前らuwsc以外で自動化ツール何か使ってる?
kmmacro使ってたけど画像認識の手軽さでuwsc移った
RocketMouse使ってたけど、マクロの多彩さで移った
初心者の質問です chromeでのプルダウン選択で詰みました <select name="テストリスト"> <option value="0" selected>テストリスト</option> <option value="1">aaa</option> <option value="2">bbb</option> </select> <input type="submit" value="選択" /> これをIESetDataで選択できないです ナンカ方法無いでしょうか?
>>228 javascript:submit(this.form);
だれかマクロ作ってくれる人おらん? できればマクロで月30万は保証できる
普通に求人だしとけ
いや一回作ってしまえばあと歩合だから作ってしまえばなんもしないで30万ほど月入ってくるよ
対策されてすぐ詰む
ゲーム以外の使い道は考えないの?
どんなマクロ?
ゲームじゃないです あまり教えられないですが在宅関連です
それじゃ難易度がわからないや
『できれば』なんて言われたら誰もやらんわ。 『未完成だ』って言われて払わずに逃げられるだけだろ。
だいたい毎月30万ってのがおかしい。 マクロなんて一度作ればずっと使えるし、 在宅だと何に使ったか分からないだろ。 それなのになんで毎月30万も払おうなんて思うのか。
詐欺に嵌めようとしてるのか?
株やらFXやらの取引じゃない? パターン化してる人なら自動化を考えると思う。
>>241 そこまで出来るなら自分で組んで毎月の30万を浮かすわ。
自動化できるようならこっちからクライアントASP教えてマクロプログラム作ってもらって 紹介料って形でマクロプログラム渡しにしようかと ダメなようなら諦めます。
諦めろ だって誤動作して損失出す可能性も有るわけだし 金が絡んだ事を曖昧な契約で頼もうとするな
月30出せるならランサーズあたりで依頼かけるといいかもね。
ver4.7c→4.8aにVerUpしたら、CHKIMGエラーで動かなくなったわ エラー特定面倒くさいわ・・・ なんで CHKIMG:フォーマット違い(BMPでない)、もしくはリソースを確保できません 中断しますか? エラーが出るようになったか分かるエスパー居る?
247 :
名無しさん@お腹いっぱい。 :2012/06/14(木) 03:44:44.36 ID:luesh4y90
マツコDXさんじゃなければ(せめて、はるな愛)ボクも超能力が使えたかも…
4.8からCHKIMGの(x1,y1)と(x2,y2)が(0,0)〜(G_SCREEN_W-1,G_SCREEN_H-1)の 範囲外だとそのエラーが出るようになった。
IF-ENDIFでも可にした これいらなくない?
?
CPU使い過ぎて落ちてしまうのはsleep入れるしかないんですかね? 妥協できるギリギリまでsleep入れても長時間席をはずすと終了してることが多くて
Sleepの値を大きくしたら落ちなくなったって事から 落ちる原因がCPUの使いすぎと判断したのであれば そうなのではないでしょうか 個人的にはWindowsは厳密にはリアルタイムOSじゃないのですから 他のウインドウやプログラムに対して情報を取得したり設定する時は 基本的にSleepを入れて他のイベントを動かすもんだと認識しています
IE9と相性わるいですか? 8から9にバージョンあっぷしてからIE操作のループスクリプトでフリーズするようになりました
gettimeで質問です クリップボードに2012/06/17/14:15 みたいな感じで現在の時間を取得して送りたいんですが、できますか? あと14:15+5分ぐらいの時間も取得したいんですが、それもできますか? できるならソース書いてくださいお願いします。。。
できます 丸投げは作成依頼スレに行ってください
257 :
名無しさん@お腹いっぱい。 :2012/06/17(日) 14:25:11.40 ID:EPeFjb6u0
わかりました。教えてくれてありがとうございます。
画像A.bmpと画像B.bmpの位置を交換したい場合のスクリプトはどう記述するんですか
位置ってのがファイルの保存場所の事なら Scripting.FileSystemObject を CREATEOLEOBJ で作成して MoveFile メソッド辺りを使えば良い それ以外の意味ならなんとも言えない
すいません 質問です いつもクリップボードに1度文字を送ってからSCKEYでCTRL,Vで貼り付けてます(理由はsendstrで文字が送信できないから) そこで質問なのですが、複数の文字をコピペするときにクリップボード以外に格納するスペースってありませんか? あと、文字を貼り付ける時、全部クリップボードに送るから5回に1回ぐらい最初に送った文字を次に送った文字でも 送ってしまうバグが出てしまうので、なんとか回避したいんですが、何か方法とかありますか
>>260 アレイとかアレイとか言うのをつかえば…
後質問です。uwscで高度記録でsendstrの番号が取得できない場合は、番号指定して文字送信するのって無理ですか?
できますよ
264 :
名無しさん@お腹いっぱい。 :2012/06/19(火) 04:41:24.73 ID:P1+PnEXR0
>>260 どうしてこのバカは、今まで、記録と言う便利な機能を使ってないのだろう?
いや、それより、そんな事すら解らないバカが、何故uwscなんか使おうとしてるんだろう?
ホント、バカのする事は理解不能だ…
俺には高度記録という文字列が見えるけどw
>>260 sendstrが効かないなら
KbdStr.uws 辺りを試してみるか参考にしてみてはどうでしょうか
検索してみたら見つかると思います
オンラインゲームのクリックゲーでモンスターをクリックするだけのマクロって簡単に作れるのかな 画像認識使うべき?
自己解決したけどプロテクトにはじかれた、最近のゲームはだめだな
UWSCのcreateformで最小化ボタンを付けたときに閉じるボタンは生成しないように出来ませんか?
すいません。 Excel = GETACTIVEOLEOBJ("Excel.Application"); val_a1 = Excel.ActiveSheet.range("A1").value; val_a2 = Excel.ActiveSheet.range("A2").value; val_a3 = Excel.ActiveSheet.range("A3").value; // : val_b1 = Excel.ActiveSheet.range("B1").value; val_b2 = Excel.ActiveSheet.range("B2").value; val_b3 = Excel.ActiveSheet.range("B3").value; // : for i = 1 to 3 loc = "C" + i val = Excel.ActiveSheet.range(loc).value; print val next sleep(3) ↑このソースを使ってC1からC3のセルをprint valで表示できたんですが、 print valを表示したもの(C1からC3のセルでも可)を dim array[3]を使ってforのループの中で格納することって可能でしょうか? 1個1個 dim array[1]=C1のセル みたいなやらなきゃ無理ですか?
配列が決め打ちで対応可能なら array[i] = ・・・ で良いのでは?
>>271 array[i]= Excel.ActiveSheet.range(loc).value;
じゃいけないのか? イマイチ質問の意図がわからない…
ありがとうございます。
>>270 >オプション指定: (複数指定可)だから
試してないけど、FOM_NOICON or FOM_MINIMIZE ではダメ?
だめなら公式で聞いた方が…
あ、uwscの配列は0始まり固定だっけ? array[i-1] = ・・・ の方がいいわ
すいません。 Cの縦の列の配列の仕方はわかったんですが 私が使ってるエクセルは横に記録するので A1:F1までの横のセルを格納するにはどうすればよろしいでしょうか? お優しい方教えてください
ヒント Print CHR(ASC("A") + 1)
>>278 ありがとうございます。
でもそれやると
B
C
D
E
F
G
H
I
J
K
みたいになってB1からK1までのセルが表示されません><
>>279 最初に自分で提示したサンプルの
loc = "C" + i
の部分がどの様に処理されているのか理解してるなら
その疑問は発生しない筈ですよ
座標を示す文字列を既に加工して作っているのですから
>>275 公式BBSでumiumiさんからの回答で考慮中とのことでした(T^T)
ありがとうございました
CHKIMG関数を用いて画像検索を行う際の挙動についてなのですが 同じ画像が複数あった場合、後から○番目を指定して座標を取得することは可能でしょうか? 画像は1〜5個程度ランダムに表示されるのですが、常に最後から2番目の画像を選択したいと思っています
CHKIMG関数のヘルプには 番号に-1が指定された場合はヒットした数を戻値として返し、座標情報は ALL_IMG_X[], ALL_IMG_Y[] に格納 (G_IMG_X、 G_IMG_Y には最後にヒットした位置が入る) とありますよん
>>283 おぉ!?そんなのが!!
ヘルプ読み直さねば。横からだけど有り難う
なんでこんなにもヘルプ読まないやつ多いんだろうな?
286 :
名無しさん@お腹いっぱい。 :2012/06/22(金) 00:11:00.99 ID:NbbYmTOT0
スレ立てした奴が、すれが過疎るのを嫌って、ちまちまと、ヤフー知恵遅れ並の質問をしているから。
過去スレ、ヘルプに目を通したのですがMOUSEORG( id, 2)でBTNやKBDが送りたいウィンドウに送れないので質問させてください id = GETID("ペイント") IFB id < 0 then MSGBOX("ペイントが起動していません") EXITEXIT ENDIF MOUSEORG( id, 2) BTN( LEFT, 0, 400, 400, 100) MOUSEORGが0と1の時はそれぞれウィンドウの400,400の座標、アクティブなウィンドウの400,400の座標をクリックしていました お聞きしたいのは どう記述すれば指定したウィンドウをクリックできるのか、と 私の記述ではどうしてダメなのかも出来ればお教え願いたいです
>>287 IDが違うから
たとえばツールバーをクリックしたい時は
MOUSEORG(GETCTLHND(id, "NetUIHWND"), 2)
ペイント部分をクリックしたい時は
MOUSEORG(GETCTLHND(id, "Afx:30000:8"), 2)
>>288 回答ありがとうございます
ブラウザのidではなくオブジェクト単位のidを取得する必要があるのですね
GETCTLHNDについて調べて挑戦してみます
環境によるダブルクオーテーションの扱いの差異ってありますか? それはどんなものなんでしょうか
>>291 質問が漠然としてね?
例えばどれとどれよ?
293 :
名無しさん@お腹いっぱい。 :2012/06/23(土) 10:35:25.96 ID:3Bzd3Na30
>>288 その末尾の2ってのはどういう意味ですか?
え?
アホでした PC環境で取得ソースが変わるお話だと思ってました 感謝
298 :
名無しさん@お腹いっぱい。 :2012/06/25(月) 02:31:49.24 ID:FZHkaLQJ0
コピロボ最強伝説
指定範囲に画像があるかどうか判定して、 あればaの動作、なければbの動作、という風にしたいです。 a動作b動作の記述できたのですが、 「指定範囲に画像があるかどうか」はどう書けばいいのでしょうか? 指定画像があるかどうかではなく 画像自体が存在するかどうかを判別させたいです。
どういったソフトの画面で動作するかによって対応は違うでしょう
301 :
299 :2012/06/25(月) 17:22:49.60 ID:1GpNvuky0
>>300 firefoxです。
ローカル保存しているhtmlを読み込み、ページを切り替えて画像を表示させています。
テキストの領域と画像のある領域では右クリックしたとき、 出てくるメニューが違う それを利用すればいいのでは
303 :
299 :2012/06/25(月) 18:43:48.06 ID:1GpNvuky0
すみません、言い忘れていました。 画像は複数表示される時もあり、 一枚でもあれば、右クリックでリンクを開きたい(a動作)です。 なければ他のhtmlに移動する(b動作)です。
304 :
299 :2012/06/25(月) 18:48:03.46 ID:1GpNvuky0
>>302 いまはそうしています。
画像が表示されるであろう位置を順番に
「右クリック→リンクを開く」でひとつずつ確かめているのですが、
一枚もない場合はすぐに他のhtmlを読み込みたいので、
画像があるかどうかを認識させて時間短縮できないかなと。
>ローカル保存しているhtmlを読み込み テキスト扱いして画像URL(ローカルパス?)を抜き出してやれば良いだけのような気が…
ddd
saveimg関数で画像A、画像Bをメモリに保存し、 AとBを上下につなぎあわせた一つの画像を 作りたいんだけど、どうすればいいかな?
>>307 UWSCだけでは無理
ってか、SAVEIMG関数自体がメモリ保存に対応していないよね
素直に画像ファイルにしてから連結するツールを呼び出すのが良いのではないかと
>>309 いや、無理じゃないよ
UWSCだけでは無理って事
要はツールを呼び出す流れをスクリプト化すればいいんじゃないかな
自分も某Webマンガサイトの細切れ画像をDLして連結するスクリプト造ったけれど重宝してるよ
getformdataってonclickつけたsubmitボタンに対応してない?
念のため手動復帰
このツール先週知ったばかりで質問すまない。 Flashを画像認識させて操作できますか? IE以外のブラウザで。
できますよ
ありがとうございます。ヘルプを全部プリントしました。 怠けられるように一生懸命勉強します。
画像解析とか参考になるサイト教えてください
317 :
名無しさん@お腹いっぱい。 :2012/06/29(金) 15:23:57.42 ID:vIxX2lDN0
在るサイトを見る際、ヘッダーやフッターが邪魔なんで、アドレス欄にjavascliptを打ち込んで消している。 面倒なので、uwscにやらせたいのだけど、やはり同じ方法しか無い? ブックマークして、そのアドレス欄をスクリプトに書き換えたものをクリックする手も有るんだけど、裏ワザみたいな方法で出来ないだろうか? javascliptのファイルを、uwscのスクリプトで指定すると実行してくれるみたいな。
firefoxの拡張でgreasemonkeyというのがあるよ 指定サイトでjavascriptを自動実行してくれるというもの
319 :
名無しさん@お腹いっぱい。 :2012/06/29(金) 20:01:23.58 ID:vIxX2lDN0
firefoxですか。 やっぱ、そういう拡張で処理するのがベストなんですね。 どもです。m(__)m
サイトのデザイン(CSS)を改変する拡張にStylishというのもある ヘッダーやフッターを消すだけならこっちの方が楽だと思う 以上スレチ
画像認識の精度?が低くて困っています Aというページで画像A´を検索し、あればクリックなければページBへ ページBで画像B´を検索し、あればクリックなければAに戻る というループ作業を行った際、最初のAでは画像を認識せず A→B→A→A´を検出という風に2〜3週目辺りでヒットする、ということが多いです 原因がイマイチよくわからないのですが、改善するとすればどの部分になるのでしょうか・・・
>>321 つい先日pixivのマンガ形式を保存するマクロ造った時の経験から
何となく想像すると
ブラウザの移動終了待ち等の処理が甘い可能性がありますよ
後、どうでも良い経験談
FireFoxの画像保存はアホみたいに遅いので
横にエクスプローラを起動して画像をD&Dするマクロにした方が早い
>>322 ありがとうございます
sleep入れ忘れて超速で処理させてる所がありました
たった1秒でこんなに変わるんですね
Aボタンを押してからBボタンをひたすら連打するやつを作ってるんですが Aボタン SLEEP(0.1) Aボタン = gettime (/) while true Bボタン IFB GETTIME() > Aボタン break ってやつ使ってやってるんですがこれ以上早い連打方法ってありますか?
325 :
名無しさん@お腹いっぱい。 :2012/07/01(日) 20:54:19.07 ID:fDZuAdib0
途中にIF文挟まなきゃなんないなら、諦めたら?
UWSCからGoogle ChromeをUA指定で起動させる事は可能でしょうか?
アクティブでないウィンドウにキーボード入力(文字列じゃなくDeleteなど)をしたいのですがどうすれば良いのでしょうか? そのウィンドウのタイトルやIDまでは取得できました。
UWSC SCKEY 仮想キー一覧 辺りで検索
330 :
名無しさん@お腹いっぱい。 :2012/07/02(月) 00:06:44.91 ID:qrbo+y8Q0
>>327 Aボタンを押す
Bボタンを押す
Bボタンを押す
Bボタンを押す
Bボタンを押す
Bボタンを押す
Bボタンを押す
Bボタンを押す
Bボタンを押す
Bボタンを押す
Bボタンを押す
Bボタンを押す
Bボタンを押す
Bボタンを押す
Bボタンを押す
じゃ、こんなんで良いじゃん?最速だぜ?
古典的な高速化テクだけどループ組んだとしても そのループの処理の間に何個か連続で実行した方が早くなる B→ループ処理→B→ループ処理→B→ループ処理→B→ループ処理… よりも BBBBBBBBBB→ループ処理→BBBBBBBBBB→ループ処理… の方が早い
332 :
328 :2012/07/02(月) 14:00:48.46 ID:O7Opg4Ao0
>>329 仮想キーはわかってます。アクティブでないウィンドウへの入力方法がわかりません。
書き方が下手ですいませんでした。
333 :
名無しさん@お腹いっぱい。 :2012/07/02(月) 21:03:19.07 ID:HpGAWsAr0
>>331 ただし最近のコンパイル言語を使う場合には無意味
最適化オプションつければ自動的にやるから
キリッ
レモンッ
(処理をさせる) SLEEP(1.5) IF関数? CTRLWIN( ID, MIN) 処理を実行させた後、SLEEPで少し何もしない時間を設けて、その間にマウスクリックが なかった場合だけCTRLWIN( ID, MIN)でウィンドウを最小化したいのですが、SLEEPとCTRLWINの 間をどう書けば良いでしょうか?
>>336 そも論としてスリープの間のクリックを検知ってのが無理
スリープはあくまで他に処理を譲渡している時間だからね
ならどうするか?
指定時間ループする中に最小限のスリープと GETKEYSTATE(※) でキーコードを取得して
フラグを立てるか別処理に移行すればいいんじゃないかなーと思う
※ヘルプ読んだら分かるけれどこの関数でマウスのボタン押下は取得できるよ
ヘルプ参照っていうのがうっとおしいよね。 ネットで解説という形に出来なかったのかと思う。
>>336 (処理をさせる)
GETKEYSTATE(VK_LBUTTON)
SLEEP(1.5)
IFB GETKEYSTATE(VK_LBUTTON) = FALSE
CTRLWIN( ID, MIN)
ENDIF
>>338 ヘルプをネットに丸揚げしてるサイトなら幾つかあるけれど
読むのは一緒だと思うぞ
いや、ネット上にあれば検索が速いし、それに基づいたサイトも増える。 2005年に解説本が一冊出て、それっきり。詳しい使い方について解説しているサイトってなかなかないじゃん。
所詮は非オープンのマイナーな言語だからなーとしか言えないや
ところで、
>>339 さんに質問
そのコードだとスリープの1.5秒の途中に押下されて離された場合、取りこぼすよね?
GETKEYSTATE()って瞬間値の取得であって
情報は保持し続けないと理解しているのだけど
自分の認識が間違ってるのかな?
俺もそう思っていたんだけど保持するんじゃなかったっけ それが元で誤作動する場合、リセットするためにダミーのGETKEYSTATEを入れて凌いでた記憶がある ちゃんと書くならrepeat文とか使うほうがいいね
>>342 横からだけど、GetKeystateは瞬間値ではない = ループ中に押されたか否か
公式のログ探すとそのあたりを試行錯誤したものが見つかるハズ
(結構扱いが難しいから、これに関してはahkの方が…)
>>342 サンプル
print "処理開始"
SLEEP(5)
print "1"
GETKEYSTATE(VK_LBUTTON) //ここから
SLEEP(5)
IFB GETKEYSTATE(VK_LBUTTON) //ここまで取得
print "2"
ENDIF
print "3"
そうなんだ、情報thx 何秒までなら保持するのか気になるのでログ探してみますわ 過去に造ったコードで比較的長いループの中断判定に使ってたけれど 中断するまでボタンを押し続けてないと駄目っぽかったから 何か他の条件に引っかかっているんだろうね
過去ログ参照して把握しました
自分のケース(
>>346 )は
LOCKHARD が間にあったからフラグがクリアされてた様です
>>337 さん
>>339 さん返信おそくなってすみません。
あれから自分で調べてGETKEYSTATE(VK_LBUTTON)を使えば良いというのは
分かったのですが、どうやってこの続きを書けばいいのかと困っていました。
>>339 さんの書き方でほぼ上手くいきましたが、2〜3回に1回は何故か何も操作してないのに
最小化されない時があります。
すみません、一行見落としていました。思った通りに動作しています。 ありがとうございました。 しかしこのツールかなり便利ですね。色々なことに使えそうなので プログラミング系は全くの初心者ですが、これを機械に少しずつ覚えていくことにします。
上げ
352 :
名無しさん@お腹いっぱい。 :2012/07/05(木) 18:36:43.77 ID:zBIHk88/0
sleipnirでゲームしてるんだけど、いちいちID・パスワードを入れるのが面倒でuwscにやらせようとした。 でも、SENDSTRでIDとか送ろうとしても、入力欄に入らない。どうも、タブ型ブラウザだからなのか、入力欄が見つけられないっぽいんだけど。 なんか、違うやり方をしないとダメなんだろうか?
+++ 上野メモ帳 +++ Sleipnirでハンゲーム自動ログイン - UWSC tp://uenomemo.blog31.fc2.com/blog-entry-52.html こんなんヒットしたけど
354 :
名無しさん@お腹いっぱい。 :2012/07/05(木) 20:24:32.05 ID:zBIHk88/0
Oh! さんくす。そういうキーワードでググる発想に至らなかったよ。 今まで、フツーのアプリでSENDSTRで困らなかっただけに、ファビョってしまった。w
GETID("ウィンドウ名")でIDが分かるのは良いのですが、同名のウィンドウを2個開いている状態で MOUSEORG(id, 2)を使うと2つともに命令が実行されてしまいます。 MOUSEORG(id, 2)を片方だけに適応する 又は 同名ウィンドウをそれぞれ違うIDにする ことはできますか?できるなら方法を教えて欲しいです。
356 :
名無しさん@お腹いっぱい。 :2012/07/05(木) 22:50:53.05 ID:zBIHk88/0
うーむ… OLEオブジェクトがさっぱりでワカンネかった。w 本人に質問してみたけど、返事くれるかね… ホント、プログラムの問題点は、アルゴリズムではなく、OSからどうやって必要な情報を得られるのか解らないって事だな。 MACはツールボックスで全部定義されてるから、リファレンスマニュアル見れば良かったんだけどなぁ…
>>355 同名と見えて実は違う部分が有ったハズ。
いちど、記録を使って両方のウインドウをクリックして、その記録を見てみると”ACW(うんたらかんたら)”の文が違うのが判ると思う。
358 :
名無しさん@お腹いっぱい。 :2012/07/06(金) 00:50:29.92 ID:rDOWVMl50
UWSCを使って、Google Chromeを更新し、 完全に読みこんだらポップアップでメッセージを表示させたいのですが、どうもうまくいきません。 どうか知恵を貸して下さい。 sleep()を多めに設定する手法は、さすがに無駄が多いために使用したくありません。 ちなみにchromeは最初から開いており、すでにアクティブ化してある状態から、とします。 以下に私が書いたコードを記述します。 KBD(VK_F5, CLICK) //F5キーでページを更新 REPEAT sleep(0.5) UNTIL !STATUS(GETID("Chrome"), ST_BUSY) //Chromeが読み込み完了するまで0.5秒づつ待機 MSGBOX("表示完了") これを起動すると、ページがまだ読み込み中なのにもかかわらず、0.5秒ですぐに「表示完了」とでてしまうのです。
>>358 RE:STATUS関数について umiumi
>STATUS関数のST_BUSY// ビジー状態であればTrue、でなければFalse
これはウィンドウ起動時の入力受付の準備が整ったかどうかの検査ぐらいにしか使えないと思います。
DATE:2007/4/8(Sun) 22:44
サンプル
Google Chrome にてGoogleを表示、日本語ページより検索(ACC方式) #n37
http://www.uwsc.info/sample.html#n37
>>359 レスありがとうございます。
結局、STATUS関数はこの場合だとあんまり意味ないってことなんですかね。
あと、貼ってくれたリンクはさんざん見たり、コピペしていじってみたりしたんですが、
なにぶんプログラミング始めて間もないペーペーなものでして、あれに関してはサッパリ意味がわからず、挫折してしまったしだいです。
たとえば、
--force-renderer-accessibility --process-per-tab --new-window のくだりとか、
「表示完了待ち」のくだりとか、全く意味がわかりませんでした・・・
私にとっての唯一の参考書、「WINDOWSマクロテクニック」もまったく参考になりませんし・・・
なにか参考になるサイトなり文献なりあれば紹介して頂けませんかね?
361 :
名無しさん@お腹いっぱい。 :2012/07/06(金) 05:29:59.35 ID:PaokBtuw0
開始するとsafariを起動して 表示サイズを自動的に指定サイズに変更。 その後、指定URLにジャンプ。 どうしたらいいですか?
丸投げに見えるからなw せめて自分がどの程度まで組めて、どこが分からないのかじゃないと サファリを始めから指定サイズで起動しっぱならかなり簡易になるしw
そういう簡単なのなら初心者は素直にマウス記録使えばいいのに
記録してみるとウィンドウアクティブにするとかウィンドウIDとか分かってとっかかりが掴めるよね。
位置やらサイズやら自分で弄れるようにもなって今後の応用できるようになるしな
FireFoxって公式サンプル弄りながら調べてたら PosACC(FireFox_id, 8, STATUS(FireFox_id, ST_CLHEIGHT)-8, ACC_STATE Or ACC_BACK) で、タブの読み込み状態わかるんだね 読込中なら“ビジー状態です。”って文字列が存在してました 但し、調査座標が他のウインドウ等で隠れると文字列が取得できなくなるので PosACC(id, 8, STATUS(id,ST_CLHEIGHT)-8, ACC_NAME Or ACC_BACK) も合わせて取得して読込中ループから脱線しないようにする必要があるんだけれどね
acw(getid(ブラウザ1)) 作業A 作業B 作業C acw(getid(ブラウザ2)) 作業A 作業B 作業C ・・・ ブラウザは実際は6枚あり、ABCDE・・・は随時変化増減します。 作業の内容は変わりますが、各ブラウザに同じ動作をさせます。 作業を別ファイルで作って、中身を随時変更して acw(getid(ブラウザ1)) call 作業 acw(getid(ブラウザ2)) call 作業 ・・・ というのでしのいでいますが、できれば1ファイルのuws内で 1箇所の作業に手を加えるだけで済ませたいのですが、方法ないでしょうか。
ごめんね、エスパーじゃなくって…
異なるブラウザのそれぞれの作業Aが同じなのか 随時変化するレベルが全てのブラウザで共通なのかが少し曖昧 同じで共通だとして 自分なら作業量を定義するINIファイルを作って それにしたがって動作するマクロにするかなー そうしたら少なくともスクリプトのファイルは変更しないから 修正範囲は分散しなくなるよ
procedureとかfunctionでいいんじゃない?
procedureでいけそうです! ありがとうございました
∧∧ ヽ(・ω・)/ ズコー \(.\ ノ 、ハ,,、  ̄
まぁ、まともに相手するだけバカ臭いネタ質でした。w ホント、ツール系ソフトのスレって、スレ立てした奴が2ちゃん依存症だと、そういう変な質問で埋まるよね。w
SCKEY( 0, VK_SNAPSHOT)で画面をキャプチャして、それをファイルに保存したいのですがどうすれば良いのでしょうか? 画像データ = GETSTR( 0) FPUT( 画像ファイルID, 画像データ) は無理でした。テキストのみのようです。
>>376 今頃そんなレスつけて、相当くやしかったんだね。
( ゚∀゚)アハハ八八ノヽノヽノヽノ \ / \/ \
マウスキーボード録画再生ツールとしても配布してるんだから プログラミングに精通してない人がいらしてもおかしくない罠
精通してないのは勝手だけどそれを使いたいなら基礎知識ぐらいつけろとは思う
>>370 だけど スルーされすぎてて泣けたわw
一箇所の変更でってのがミソだとおもったんだけどなー
エスパーには程遠いね
[Ver4.8b] CHKIMG関数にてエラーが出るパターンの修正 スケジュールの'式による設定'にてYMDNNを使うと予定表示が不正確なパターンがあるのを修正 STOPFORM関数にてFalseを指定するとタスクバーのアイコンが消えるのを消えないようにした STATUS関数にWindowがどのモニターに表示されているかを返す ST_MONITORを付けた マルチモニタにて各モニターのサイズ、位置を返す MONITOR関数を付けた マルチモニタにてフォームを出した時にダイアログもフォームと同じモニターに出るようにした スレッド内にてCREATEFORMでのフォームを作成した時にCOM形式での利用が出来なかったのを修正 Debugger:スクリプト実行途中ではDebuggerの終了を出来なかったのを出来るように修正 RecIE:新しいWindow(RecIE)をオープンした時にセッションを引き継げなかったのを修正
4.6b から最新バージョンにアップデートしたらスクリプトも修正する必要あるかな?
>>384 実際に試してみればいいじゃない?4.6bからなら大丈夫とは思うけど
POFF()関数でシャットダウンはできますが、再起動するにはどんな文にすればいいですか? UWSCの再起動ではなく、Windowsの再起動です。 実行中にエラーが発生したら強制再起動したいです。
IFB GETID("このページは表示できません") BTN(LEFT,CLICK,1340,5,0)//閉じる SLEEP(5) EXEC("C:\Program Files (x86)\Fenrir & Co\Sleipnir\bin\sleipnir.exe") SLEEP(30) IFB CHKIMG("SleipnirError.bmp",-1) BTN(LEFT,CLICK,G_IMG_X,G_IMG_Y,0) SLEEP(30) CTRLWIN(GETID("Sleipnir"), MAX) SLEEP(5) ENDIF ENDIF --------------------------------- IFB GETID("このページは表示できません")が真でも偽でもsleipnirを再起動してしまいます… 何回やってもうまく行きません。誰か助けて・・・
GETID って真偽を返す関数だっけ? 戻値 そのウィンドウを識別するID (NGの時は -1) だよね と、言うことは・・・
>>388 IFB GETID("このページは表示できません") >= 1
かな
どういうことがしたいのかわからんけど
GETACTIVEOLEOBJとかで取得、操作した方が楽じゃないの
RecIE: 新しいWindow(RecIE)をオープンした時にセッションを引き継げなかったのを修正 これは便利になったな〜
>>389-390 ありがとうございます!
ID < 1でちゃんと動作しました!!!
ID("表示できません")は認識しなかったので、ID("表示したいID")の否定で対応しました!
あれ、Windows自体を再起動させる構文なんてあったっけ?
あるよ っヘルプ
シャットダウンは分かるのに再起動が分からんってことの方が疑問だわ
コマンドプロンプトで 「shutdown -r」送りこんでも再起動できるよ
原始的にマウスクリックでいいじゃん こんな事聞いてくる奴にcmdいじれって方が難しいだろ
なるほど これが模範解答だ
正解者に拍手っ よくできました! よくできました!
400 :
名無しさん@お腹いっぱい。 :2012/07/31(火) 21:22:01.76 ID:y5MCzlF30
chromeでアドレスを指定してページを移動したいのですが、
下記のスクリプトだと動きません。
どこが悪いのかご教授願います。
SENDSTR(id, "
http://www.yahoo.co.jp/ ", 1, True, True)
SCKEY(id, VK_RETURN)
頭
Chromeって引数でアドレス受付けないのか?
質問スレが見つからなかったのでここでさせてください UWSCで画像認識を使いたいのですがうまくいきません WHILE TRUE IFB CHKIMG("aaa.bmp") MSGBOX("ありました",BTN_YES) BREAK ELSE MSGBOX("ないです",BTN_YES) BREAK ENDIF WEND 画像はPrtSc → トリミング → ペイントに貼り付け → 24ビットビットマップで保存しました 保存場所は.UWSファイルと同じ場所です どうしても”MSGBOX ないです” が表示されます。認識できる画像の作り方を教えてください
406 :
405 :2012/08/08(水) 08:31:53.88 ID:RUr0dvZgP
自己解決しました 失礼しました
407 :
名無しさん@お腹いっぱい。 :2012/08/09(木) 11:53:51.17 ID:gSB1Qd270
id = GetID("ウィンドウ名") ifb (ID < 0) MSGBOX("ウィンドウが見つかりません") exitexit endif MOUSEORG(GETCTLHND(id, "クラス"), 2) 非アクティブで動作させたいと思い最初にこれを追加したのですが動かなくなってしまいました 非アクティブでも動作させる方法を教えていただきたいです
まず初めにMOUSEORG関数ってGetID関数で取得したidをそのまま引数にしたらいいんじゃないの? ただ、自分の認識が間違ってたら申し訳ないが MOUSEORG関数って単に相対座標にするだけだから 他のウインドウと重なってたり、タスクバーに隠したりすると動作しないよ 非アクティブで確実に動作させたい場合は CLKITEM関数で各コントロールがCLK_BACKオプションを押せる アプリケーションかどうかがポイントだと思う
UWSCで休止状態には出来ますが、休止状態からの復帰はUWSCじゃできませんか? 別のソフトが必要でしょうか?
>>408 ありがとうございます、いろいろ試してみます
>>409 深読みせずに端的に答えると
UWSC単体の機能という意味でならスケジュール設定の
「実行時に休止状態から復帰する」のオプションで可能
goto無いのは知ってるんだけど 擬似的にgoto的なことって出来ないんですかね?
uwsc gotoでググった上で来てるの?
オブジェクト指向っぽい書き方すればgotoいらなくね
まあ、ぽいっちゃぽいけど、オブジェクト指向ってのとgoto無しは関係無いだろうね。
極まれにgotoがあれば良いなって事はある
夏だな
頭おかしいのか?
>>418 普通にそのページへのショートカットを開けばいいだろ
IE操作の初歩としては良いと思うよ。
>>421 は見事にそのままだけど。
音量上げてびっくりさせたいんじゃないの? わざわざそんなファイルを踏むのかとかIEをそもそも入れてなかったらとか問題はありそうだけど
FirefoxなどIE以外を操作するネイティブな関数はないんですね。 IEと違って、ちょっと面倒な呼び出し方をしなければならないのか。
APIとかってんじゃねーの?
>>424 FireFoxを操作するならXPCOM
HTMLオブジェクトへのアクセスはXUL(ズール)
他言語で利用するサンプルはあるけど、UWSCで使う方法は分らんかった。
firefoxなんかだとuwscでなんかしようっていうよりもアドオン作っちゃったほうが簡単なイメージがある
でやぁ〜
UWSCでFirefoxのwebフォーム入力を自動化するには、タブキーでフォーカス移動させて、テキストペーストするなりスペースキーで選択させるなり、といった原始的なやり方しかないのかな。
アドオン使ったほうが楽
SENDSTRで普通に通らない? IEと同じ数値で通るかはわからないが
433 :
430 :2012/08/15(水) 13:59:38.97 ID:qdyS/Lhk0
>>431 アドオンを自分で作るってことですか?
既存の、使えるものはないですかね。
>>432 最近のFirefoxは、SENDSTRでの番号指定がうまく動かなくなってしまったんですよね。
仕方なく、0を指定して一旦クリップボードに送り、ペーストしています。
タブを何回も連打して目的のテキストボックスにフォーカスを移動させるので、時々ずれたりします。
>>433 それこそアドオンいれまくって挙動が変わったとか
第二のプロファイル作ってプレーンな状態で試してみては?
サンプル id = GETID("フォームのサイト名等") for i = 0 to 20 SENDSTR(id, i, i, False, True) next とりあえず某サイトで確認してみたけどフォームへの入力は聞いていたよ そのサイトでは10番以降がフォームになっていたけど
あーこれ登録している検索エンジン数が関係してるかもね 1はアドレスバーで2以降登録している検索エンジンに順番に入ってその後にフォームに移るのかな 個人用ならいいけど人によって削除してたり追加してたりするだろうから汎用性持たせるのは難しいかもね 普通にアドオン作ってjavascriptでタグ拾って入力みたいにさせた方が間違いないし簡単だね
既存のiMacrosというマクロが、ブラウザネイティブなマクロだけあって非常に簡単。 ただしif文やfor文などがないので繰り返しは開いて書かないといけないし、 無料バージョンは変数が3つまでしか使えない、Flashは使えないなどの問題がある。 Flashに対応しているバージョンは6万のシェアウェア。
438 :
430 :2012/08/16(木) 10:14:06.05 ID:L/zsQEv60
>>437 これいいね。
要素(タグ)の名前で直接指定できるから、間違いない。
UWSCと連携出来ればいいんだけどな。
CSVからテキストを拾ってUWSCの変数に格納してるんだけど、それを引き継げたら最高だ。
uwscの無料版と有料版があるけど大きく違うのは何?
COMオブジェクトが使えるか使えないか
というかダウンロードページに違い書いてあるし 読んでわからないなら使わない機能だろうからFREEで良いんじゃね
UWSC有料版の体験期限をリセットするUWSC作ったが、欲しいやついるか?
日付戻すだけでいいやん
444 :
名無しさん@お腹いっぱい。 :2012/08/17(金) 17:44:45.12 ID:v/8RcCdg0
リセットするUWSCスクリプトならいるけど 改造版はいらね 不正+著作権法違反だから警察も動くよ。 UWSC掲示板の質問者の依頼に答えただけ(ログインスクリプトを実際に動かしてくれという依頼)で警察に襲撃されたから たぶんその件でも動くよ。
ま、普通は訊ねる前にアップするけどね。
てかあの程度のはした金はらえねぇとか…
UWSCに似たソフトなら2000年くらいに発売されたんだけど それを1万円くらい出して買ったことならあるよ。
ここはいつからマクロツール紹介スレになったんだ
>>448 Current Version: 7.83
ずいぶん前からあったんだな。
$89=7070円か。
シリアルポート通信までできるのか。
GOTO Label 使えるのか
ttp://www.vtaskstudio.com/help/quick.htm ちょっと入れてこれをやってみたが、
UWSCみたいに手前に表示するのもチェックはずすだけで抑制できるし
日本語も表示できたし
日本語のコメントも入力できたし
キーエミュできるし
画像をクリックできるし
WindowsAPI使うような感じなのでプログラマーも自然な感覚で使えそうだし
かといってGUIでサポートされているのでやってみると案外楽だし
コンパイラはDLLを作れるのでやってみた。
コマンドラインで実行するけど間違ってるといわれる・・・
>rundll "C:\vTask Studio\myvTask.dll",RunScript 1,text
こんな感じで関数名は指定できてるんだけど、引数が渡せてないらしい。
コマンドラインからの実行はまだうまくいかないが、これをUWSCに組み込むことはできるはず。
乗り換えるにはUWSCの資産がもったいないが、部分的に導入するなら今すぐから始められるよ。
ためしにUWSCスクリプトで呼び出してみた。 この2行で実行できた。 def_dll RunScript(long,string):long:ようこそvTaskへ.dll RunScript(1,"Called by UWSC") 後ろのテキストは何のためにあるのかよくわからなかった。 このDLLに自動実行コードがあれば・・・ ランチャーがあればいいか。
>>450 × Rundll
○ Rundll32
UWSCで不満ないのでふーんって感じなのだが、 できることできないことの違いをまとめてくれたら有り難い
ShareやPerfectDarkで転がってるシェア版UWSCのライセンスキーって
現状の最新版でも使えんの?
>>443 お前毎回PCの日付丸ごと戻してんのか。ご苦労なこった。
>>444 正確には「UWSCの体験期限をリセットするUWSCスクリプト」な。
反映させるためにUWSCアプリを再インストール(上書きでOK)が必要だが。
改変じゃないからばら撒いてもお咎めないはず。どうせならexe化するか。
>>445 お前の狭い世界ではそうなんだろうな。
>>446 そこまで言い張るなら俺のライセンスも買ってくれるんだろうな?
画像認識の出来るマクロツールが欲しい uwsc以外でな
>>455 >画像をクリックできるし
これでは不満か
>>454 やっぱりいらないや
体験期限があるからEXE化しても期限はあるわけで。
それにそれ対策にバージョンアップされても迷惑だし。
ああ、だけどEXE化したやつに期限があるとすればそれはそれで利用価値はあるかもね。
自分で日付チェックしても同じだと思うけど。
変なのが湧いてきたな
>>453 ざっと見てみたらUWSCにできることはだいたいできるっぽい
ただ、標準以外のDLLとかマルチスレッドをどうするのかよくわからない。
一応、WindowsAPIという項目はあって関数名やら自分で入力するようにはなってるが。
あ、DLLはRunカテゴリのCall DLL Functionにあった。
つまりvTask Studioで作ったDLLをvTaskスクリプト自身で呼び出せるってことか。
普通のCALLもあるっぽい。
ただ、スタイルがちょっと違う。
GetPixel して処理じゃなく、
Wait Pixel とか
If Pixel とか、他の制御に組み込まれた形。
だから画像から複数のMOBを探して座標が近いやつを攻撃とかはこれを使ってどうやるのか分からんが
そういうゲームマクロはまた特殊だから別になくても問題ない。
UWSC有料版の自由なレイアウトのダイアログは作れないっぽいけど
5つまでのコントロールを(縦に?)配置したカスタムダイアログは手軽に作れるっぽい。
それに、Excelファイルも扱えるみたいだからExcelシートかExcelダイアログを使った方法が使えるかもしれない。
マルチスレッドについてはCall ScriptのWait for Exitオプションを外せば
別スクリプトをマルチで動かせるかもしれないが、そのオプションを外す方法が分からない。
あと、別プロセスだとすると変数の共有ができないから監視しつつフラグセットとかできないので不自由かな。
フラグチェック入れるところで毎回監視すればできないことはないか。
だけどそれだと重くなりそうなので工夫がいるかな。
COMのイベントとかキー入力のイベント(イベント登録して関数呼び出し)が使えないっぽいのは残念。
別プロセスでWait for keypress とかやるのかな?
割り込みできないとあんまり意味ないが・・・
いい加減そっちのツールスレでしろって話だろw スレタイも読めないの?
uwsc使いは集まってるじゃん
>>448 が紹介してたのはTiny Taskだったね。
本家行くとvTaskしか見当たらなくてそっちダウンロードしてた。
フリーソフトのTiny Taskは再生速度や再生回数を指定できるけど、録画した内容はバイナリ形式なのでいじれない。
フリーソフトのTyper Taskはキー、マウス入力をテキストで記述して実行させることができるけど複雑な処理はできない。
録画したやつを元に編集するという使い方はできないけど
たとえばウィンドウタイトルを取得するのはUWSCだとあらかじめ作ったスクリプトがなければ録画して取得する必要があるが、
vTaskではメニューから一覧を取得できる。
また、vTaskではウィンドウやコントロールなどのさまざまな情報をマウス操作で取得でき、スクリプトで利用できる。
vTaskはそこそこの値段なので無料のUWSCと直接比較できないが、
有料版で考えた場合はたぶん・・・
有料版UWSCはIE操作の録画再生ができたっけ。vTaskにはできないね。
Webページ内のコントロールがキャプチャできない。
vTaskはExcelの操縦はできるけどCOMオブジェクトの自由な取り扱いはできないっぽい。
ただ、UWSCスレで見る限り、COM関連の質問はIE、Excel、DBくらいしかない。
その範囲であればクリックである程度記述できるvTaskが上かな。
まあ、それ以上のCOMについては質問がないだけかもしれないが。
どちらのソフトも使いこなせていない人の感想って感じだな UWSCの機能についても分かってない、というよりもフリー版を少しだけ試しただけって感じ? 自分でコードを書いてマクロを作ったことがあるなら出ないような発言がいくつかあるな
vTask では Use Window が UWSC の GetWindow に相当するが、UWSC のようにIDを取得して変数に入れるという操作はしない。 つねに Most Recent ”Use Window” と指定するので、複数の窓を開いて同時にコントロールという使い方をする場合は一工夫必要になりそう。 ・・・というか、Handle を指定するだけだった。 × しない ○ しなくてもよい。 ちょっと分かりにくかったので説明 ひとつのウィンドウをコントロールするときはアクション選んで Most Recent ”Use Window” を選択するだけでいいんだけど、 複数のウィンドウをコントロールするにはウィンドウハンドルなどを変数に入れて指定する必要がある。 (もちろん、現在実行中のウィンドウのハンドルならマウス操作のツールで取得できる。) ウィンドウハンドルを変数に入れるには、アクションとして System - SetVariable を選択し、名前と値を入れるが、 値として System Variables - {HWND}(Current Window Handle)を選択する。 そしてコントロールするときに Which Window として Window Handle を選択し、Window Match Data として変数を指定する。 変数が気軽に追加できないのはストレスだが、このアクションを Favorites に入れておけばすぐ使える。 ただ、変数名が%修飾されるので見にくいかもしれない。 配列も可能。 アクションの戻り値を変数に入れるときは、Save Output で変数名を指定するので簡単。 ただ、ウィンドウハンドルが見当たらなかったのは、GetWindowHandle みたいなアクションになってないシステム定義のグローバル変数だったから。 あと、vTask にはユーザー定義関数が見当たらない。 GoSub 、Retuen があるから制御構造は作れるけど・・・ DLLにコンパイルして呼び出せるけど引数が開始行番号と文字列ひとつだけなので不自由。 引数を自由に指定できるユーザー定義関数が作れないのはつらいかな。 Call Script というのがあって開始行とかラベルが指定できるので vTask のスクリプトは指定できるっぽいが・・・よく分からない。
Internet操作をよく見てみると
ブラウザ、ウェブページを開く、ダウンロードやテキスト、タグ、リンク取得はできるけど、細かいコントロールはできないっぽい。
メール送受信、HTTP Post、FTPが組み込まれてるからできるかと思った。
でも、自分でHTMLを解釈してHTTP Postすれば、たとえば2ちゃんねるへの書き込み程度ならできるかな。
サーバーと通信するAJAXアプリのコントロールは無理だろう。
あ、全部画像認識してしまえばいいかも。
不可能ってわけじゃなさそう。
アクションの対象としてテキストボックス内のデータを指定する方法があったけど
これがブラウザを対象にして動くかというとウィンドウハンドル持たないから無理だろう。
>>462 まあ、有料版は使ってないしよく知らないけど
IE操縦は自分で書けるし、UWSC用のDLLも自分で作ったことあるよ。
完璧ではないしかなり時間はかかるけど。
しかし、vTask はやることを記述して実行するだけでログを吐いてくれるし
エラーのときの処理もオプション指定するだけなので、複雑な処理を書くときはかなりはかどると思う。
あ、有料版UWSCもログ吐いてくれるんだっけ。
vTaskも有料だからかな。
IEの細かい制御は vTask では難しいけど探せばあるだろうね。
っていうかFireFoxとかの組み込みスクリプトと組み合わせればいいのか。
めんどくさ
他のマクロツールの名前が出るくらいは仕方ないが ただ気になって試した奴が書き込む場所は そのマクロツールのスレだと思うぞ そろそろ控えてね
比較対象な話は参考になるから問題ない
だな。UWSCと比べてどこがどう違うのか説明してる時点で文献の一つだしな。
何の価値も生み出してない
>>462 とか
>>465 みたいなやつの方がよっぽどゴミ。不要。二度と書き込むなよ。
うぜー。 IDコロコロで、自己擁護すんなよ。 比較検討なんて知るか。 uwscで出来ない事が出てきてから考えるよ。
>>467 其処に自分を含めなかった時点で説得力ないわー
しかし、FireFox上での作業をまともに自動化することは、現状UWSCでは難しいのか。 iMacrosはいいのかも知れないが、できればUWSCでやりたい。
FireFoxもChromeもCOMオブジェクトとして提供してくれていないからなぁ 愚痴っても仕方ないけれど行儀が悪いのはアッチなんだよね
MSさんの規格にのれば一蓮托生 そんな面倒を抱え込みたくないだろう
自分はメインが火狐、作業的なものはIEもしくはMSXMLで直接と 結果的に住み分け出来てるのでかえって良いけどな…
>>470 以前、そんな感じの話をしたんだけどさ。
結局、アドオンと他のアプリで、同等の事できちゃって。w
つか、そういう拘りに意味が無いのに気づかないバカだろ。w
//画像A・B・C・D・Eのどれもない場合testと表示 while true IFB CHKIMG("gazo a.bmp") elseif CHKIMG("gazo b.bmp") elseif CHKIMG("gazo c.bmp") elseif CHKIMG("gazo d.bmp") elseif CHKIMG("gazo e.bmp") else mgsbox("test") break endif wend これあってますか?
break要らなくね
>>476 mgsではなくてmsgでした
>>477 OKをクリックしたあとループから抜けるために入れました
間違ってる どこが間違っているかは動かせばすぐわかるはず
ループにはSleepを入れろといってるのに絶対に入れないんだな
何故一度動かしてみようとしないのか 永遠のテーマだよな
>>476 が聞きたいのはスクリプトと文章があってるかどうかってことだろ?
質問です バックグラウンドでフラッシュの操作をしようと、ブラウザはIEで次のように組みました フラッシュのバージョンは10.3です id = GETID("Internet Explorer") MOUSEORG(GETCTLHND(id, "MacromediaFlashPlayerActiveX"), 2) WHILE TRUE KBD(VK_A, DOWN, 0); //Aボタンを押しっぱなしにする WEND MOUSEORG(0) これを実行すると、ウィンドウがアクティブの時のみ動作して、非アクティブになると動作しません。 非アクティブでも動作するにはどうしたらよいでしょうか。
idの取得がループ前にしかない
>>485 ありがとうございます!ループ中に入れたら動きました!
>>486 なぜかこっちの環境だと非アクティブだとうごきませんでした。
488 :
494 :2012/08/20(月) 18:00:34.66 ID:XoDrUg0y0
複数のブラウザ上のフラッシュに同時操作するにはどうすればいいですか
>>484 の方法だと、別のウィンドウでフラッシュを開いているとどちらもうごきません。
よろしくお願いします
各ブラウザごとのidを記録、そのIDごとに作業させる 上の方法だとIDを一つしか取得してないのでたとえば作業させました世的なフラグを立てても他のブラウザがどう動作しているかなどはわからない
適当なサンプル //全ウィンドウ数の取得(ループ回数に使用) a = GETALLWIN() for i=0 to a-1 //ウィンドウのIDを取得 id = ALL_WIN_ID[i] //ウィンドウのタイトルを取得 TITLE = STATUS( ID,ST_TITLE) //タイトルにInternet Explorerが含まれて居る個数を取得(含まれていれば1以上になる) b = POS("Internet Explorer",TITLE) //bが1以上なら(タイトルにInternet Explorerが含まれていたら) ifb b >= 1 //ここに処理 MOUSEORG(GETCTLHND(id, "MacromediaFlashPlayerActiveX"), 2) KBD(VK_A, DOWN, 0) endif next このまま使うと無駄な処理が結構あるので修正を入れた方が良いと思うがサンプルということで
UWSC Pro 4.x系のkeygenってvbe版とexe版の2種類があるんだな。 どっちも未だに検索すりゃ転がってるのが不思議だわ。 vbe版の暗号解除してソース見てみたんだが、あっけない程シンプルだ。 余裕で1レスに収まる。生成メカニズム知りたいやつは読解してみるのも一興かもな。
マツコDXさんに言っときます。 ここは、あなたのブログでは無いです。ツイッターって言う所でも無いです。 マツコDXさんに言っときます。 もう、来ないでください。狭くなります。
493 :
名無しさん@お腹いっぱい。 :2012/08/22(水) 18:27:05.06 ID:+GgJt9np0
既出だったら申し訳ない 自分で組んだものを再生するたびに変数を変えるということはできますか? 例)1回目起動時⇒Gの変数は3 2回目起動時⇒Gの変数は1 3回目起動時⇒Gの変数は5 みたいな感じです。 実際この通りではなくてもいいので類似したやり方などがあれば教えてください。
ランダムって事じゃないならiniファイルを作ってそこから読み込むようにするとか(変数を読み込んだら違う数字を書き込むようにして次回再生時に変わるように)
なんでインプットしたらダメなんですか?
496 :
名無しさん@お腹いっぱい。 :2012/08/22(水) 19:31:07.24 ID:+GgJt9np0
>>494 ランダムで決めたいのですがやはり方法はないのでしょうか?
a = RANDOM(10) aに0から10までの値がランダムに入る
RANDAMを使わない理由は?
応用編として SELECT RANDOM(2) CASE 0 RESULT = "あ" CASE 1 RESULT = "い" CASE 2 RESULT = "う" DEFAULT RESULT = "あ" SELEND FEND のような使い方でランダムで決められた値を基に別の数字や文字を入れて使うこともできる(パスワードの自動生成など?)
500 :
名無しさん@お腹いっぱい。 :2012/08/22(水) 20:46:12.73 ID:+GgJt9np0
501 :
名無しさん@お腹いっぱい。 :2012/08/22(水) 20:47:49.12 ID:+GgJt9np0
>>500 連投すいません…
いままでSELECT RANDOMしかしらなかったです。
教えていただきありがとうございました。
>>494 このレスが謎なんだけど。
なんでいきなりini?
まぁ、それはどうでもいいけど、ド素人すぎる…
前回のスクリプト動作と異なる挙動にしたいケースと解釈したなら INIファイルを活用するのはそれほど悪手とも言えないと思うよ 要求が曖昧なんだから気にするな
>>502 [G値]
G=4
みたいな記述をiniに入れておいて
UWSC起動時にiniのGを参照、現在値以外の数値をGに代入して
iniにも保存
RANDAM(i)以外でG値変えるならアリじゃない?
ついでだったので、超適当ながら2パターン
// RANDOM
G = RANDOM(10)
msgbox("Gの値は" + G + "です")
// ini
G = READINI( "G値", "G値2", "test.ini" )
ifb G = 3
G = 1
elseif G = 1
G = 5
elseif G = 5
G = 3
else
G = 1
endif
WRITEINI( "G値", "G値2", G, "test.ini" )
msgbox("Gの値は" + G + "です")
// test.ini
[G値]
G値2 = 1
randomの方は純粋にランダム
iniの方は
>>493 の例の順番でG値を変える感じ
>>502 UWSCで用意されてるんだからファイルに値残すなら簡単じゃない
>>503 前回の値を記録しておくのに、ini使うのは許せるんだけどさ。
じゃあ、今回の値を決定するの、どーすんの?って事じゃん?
問題は、そこだよね?
単純に前回とは違う値にしたいだけならini作って残階の値と参照して違う値にするだけ(ランダムでもいいし+xみたいな計算でもいいし) パターンを作るなら予め配列でデータを用意しておいてランダムでその値のどれ(どこから)を使うかを決める、そのうえで前回とは必ず違う値にしたいならiniを参照 ランダム使わなくてもGETTIMEで時間取得して秒数なりミリ秒なりで値とってて方法でもある程度の幅持たせたり出来るしやり方は他にもいろいろあるけどね まぁ答えはランダムの使い方がわからなかったってだけで不要な考えだけど
もう話終わってるよね 質問主のレスの流れでランダムの使用法知らなかったってあるし 前回と同じ値になる可能性を許容できないのならINIで前回の値を保存したり、とか あとはレス主が好きに組み合わせれば良いのよ
printでログ吐き出しでイイジャン と天邪鬼発言してみる()
おっと… また、ツール系スレの釣り質問に釣られちゃったか。 エスパー相手にすると、結局自分がやな気分になるな。
514 :
名無しさん@お腹いっぱい。 :2012/08/23(木) 12:11:30.84 ID:yKIevEEU0
>>513 いやそういう方法、考え方もあるんだなって勉強になったよ
横からありがとう
uwscを再生中に 同じPCで別の作業って出来ますか?
>>517 仮想PC上で実行するのがシンプルじゃないかな
仮想PC使ったことないけど そちらならマウスカーソル別個に動くの?
>>521 ゲストでのマウス操作はホストに影響しない
だから表で操縦でき、操縦可能な対象が裏で動かすより多い。
XPmodeやってみたがマウスは一体じゃないのか? どうやってんのか説明してみ?
XPモードは仮想pcじゃないと何度言ったら
XPモードは仮想pcですよ 連携ソフトが入っているというだけです。
最近ではこういうのをネタでなくマジで言ってる場合があるから怖い
UWSC動かすのにベストな仮想環境は何?
XPが乗った仮想マシン UACがあるとスクリプト起動するたびにチェックが入るから。
手動復帰
マウス操作なんかに頼らなければそもそも仮想環境必要ない
>>530 キーボード操作だけさせるスクリプトでも、複数を同時に走らせたら誤動作する可能性あるでしょ?
なんで一つにまとめないで複数走らせるのかがわからない
uwscを裏で動かせられれば最高なんだけどな
裏で動かす意味って何?
人間が他の事をできる
それは表というかメインで動いていてもできるでしょ?
それはない 実際やったことない無知がでしゃばるな
もっとちゃんとしたスクリプト書けよ
裏(バックグラウンド)で認識しないのって画像認識くらいじゃないか? 基本的にきちんとスクリプト組む人ほど画像認識は使わない どうしても画像認識じゃないとできないような物って何?ってなった時に考えられるのはゲームとか動的なフラッシュとか位だから普通の人にはあまり関係無い部分
まさに動的なフラッシュの画像認識が必要な場面でこそUWSCが必要になるわけですが。 そうでないところは、他のマクロ使った方が早いし確実。
つーか画像認識とマウス操作禁止の縛りってきついな そこまでして「きちんとしたスクリプト」を書かなきゃならんのならUWSCなんてイラネ
マウス操作ならバックグラウンドで動かしても問題なく動くぞ? 複数の条件で同時に動作、干渉させるようなスクリプト組まない限りな マクロの実行速度はスクリプトにもよるしどれが早いっていうのは一概には言えないが まぁCはじめ他の言語で作れる環境ならそっちで作った方が幅も広がるしそれでいいんじゃねとは思うけど
>>539 ver4.8からは画像認識とかもバックグランドで使えるようになっただろ
>>543 あれ画像認証も出来んの?
基本画像なんて使うようなもの作らないから知らなかったわ、PEEKCOLORだけかと思ってた
UWSCは初心者からでも簡単に作れるのが一番のポイントだと思ってる
だからどう動かさせれば早くなるとかそういうのがわかっていない人が多いんだと思うけど
バックグラウンドで画像認識はXPでは難しい。 少なくともその画像が表から見える状態じゃないと、XPの場合は描画されないから。
もうもう一台買えよ
画像認証使うマクロなんてゲームぐらいだからもう1台あったら2PC廃プレイだろ
>>547 よくご存じで
あなたもゲームをマクロで動かしてるんだね
誰でも思いつくだろ。w
ミュートかどうか調べるにはどういう処理でできますか?
>>550 音量はハードとOSとソフトの3段階だから全部調べる必要がある。
WIN32APIって使えなかったっけ? wave関数使えば音量の取得とかできたはずだからミュート状態かわかりそうだけど
553 :
550 :2012/08/31(金) 03:33:22.47 ID:AGvRDnLn0
ありがとうございます。 waveOutGetVolume関数で音量の取得ができるとこまでわかりましたが。 DEF_DLL waveOutGetVolume(string,long):bool:Winmm.dll とhelpを読むままに型とか適当に書いたみてものの ここから全くわかりません。 win32apiは初めて扱うので、手探りの状態です。 どうしたら音量を取得できますか?
そういうのは一から教えるのめんどくせって感じで誰も書き込まないと思うわ 公式の掲示板で質問した方が答え返ってくるんじゃね?
>>553 そこらへんめんどくさいからボリュームだけ教えてくれるDLLを作ったほうがマシ。
作ると言ってもサンプルソースに手を加えてコンパイルするだけだけどね。
自分で作れないならそういうDLLをフリーで公開してる人がいないか探すべき。
556 :
550 :2012/09/01(土) 14:32:27.71 ID:rdmE9EwJ0
ありがとうございます。 一回、公式掲示板で質問してみようと思います。
ボリューム操作できるなら下げきればマイナスにはならないだろうから0まで下げられ…ないか。 エラーでそうだな
ボリュームを0にするのとミュートは違くない? ボリュームを下げるだけならボリュームコントローラーを起動させて下げさせるだけで簡単だけど
アホネタを、何時までも解決出来ないのは アホが自演してるから。
非アクティブウィンドウでキーボードを押しっぱなしにしたいのですが どうすればいいのでしょうか?
>>562 ヘルプ見てどんな関数があるのかチェックするだけで
そういうアホな質問しなくてよくなるからオススメだぜ
MOUSEORG( ID, [基準指定 ] ) を使えばいいのでしょうか? 例がなかったので 出来れば教えて下さい
全部読んでないだろ
あってるよ
MOUSEORGを使い、 指定のウィンドウにクリックを送ることができました しかし 一部のクリックとKBDだけは送ることができませんでした 原因は何でしょうか?
ソースコードがないと分かるはずがない よくある所ではIDの指定が間違っている
ネトゲとか対策されてるプログラムじゃないの? 仮想で動かすしかないよ
別に似たスクリプトをつくってみたところ
クリックは全て送ることができました
しかしKBDだけはできませんでした
>>569 もしかしたらそうかも知れません
ありがとうございました
ゲームパッドでこれ使いたかったんだけど認識しないのね・・・残念
ああ、なるほど。サンクス
今、モニタを最大で3枚使ってて 用途によって1~3枚で切り替えて使ってるのね 1枚⇔3枚の切替はWin7標準のWinキー+Pで出来たけど 2枚⇔3枚で上手くやる方法見つけれなかったので以下のような感じでやってるんだけど コンパネ起動後のgetidでidを取るまでに5秒くらい待たされるのがだるい getidの待ち時間とか変えてみたけど特に効果なかった 何かいい方法ないすかね Exec("Control Desk.cpl") id = getid("画面の解像度") ClkItem(id, "ディスプレイ 3", CLK_ACC) ifb ALL_ITEM_LIST[GetItem(id, ITM_ACCTXT) - 1] = "このディスプレイを切断する" then CLKITEM(id, "デスクトップをこのディスプレイに拡張する", CLK_LIST) else CLKITEM(id, "このディスプレイを切断する", CLK_LIST) endif CLKITEM(getid("ディスプレイ設定"), "変更を維持する", CLK_BTN)
いくらでも方法あるだろ ソフトを使う前に頭を使え
と、バカがほざいておりますが、はっきり言って、無いでしょう。
CHKIMGで画像ファイル名に.bmpを省略しても判定できるよね?
うん
何故試さない? バカなの?アホなの?
581 :
名無しさん@お腹いっぱい。 :2012/09/06(木) 01:06:35.49 ID:xhIKGm6u0
記録できないんだが保存すべき有効データがないってでるんだよなぁ UACは合わせてるwin7
582 :
574 :2012/09/06(木) 07:56:19.55 ID:SLlQttLb0
>>577 そっちに変えたら待たされなくなった、exec遅いのね
ありがとう
ウソ乙。w
ID:5FYoEHGF0 = ID:FblCQ/wH0 576 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2012/09/05(水) 13:05:25.98 ID:5FYoEHGF0 [1/2] と、バカがほざいておりますが、はっきり言って、無いでしょう。 580 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2012/09/05(水) 23:32:25.99 ID:5FYoEHGF0 [2/2] 何故試さない? バカなの?アホなの? 583 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2012/09/06(木) 18:33:05.94 ID:FblCQ/wH0 ウソ乙。w
どこのスレにもいるよね
>>581 何を保存しようとしてるの?
クライアント型のゲームなんかだと制御もっていかれてる場合あるよ
IEなら保護モード切手内とか
適当な事ばかりならべてジエンしてるバカがのさばってるよね。w
こんなスレにどんだけジエンの効果があるのかしらんけど そういうこと言う奴が一番自演してるのはガチ。これ豆ね
589 :
名無しさん@お腹いっぱい。 :2012/09/08(土) 11:37:13.72 ID:9P2kbVgQ0
uwscフリー版、使ってるんだけど、エクセルの一番下の行を エクセルVBAマクロをかまさずに 取得する、関数か方法ってありますか? VBAでいう、セル番.end(xldown).rowみたいな奴
>>589 セルオブジェクトからそうやってアクセスできると思うよ
591 :
名無しさん@お腹いっぱい。 :2012/09/08(土) 11:57:27.93 ID:qfG7aKplP
フリー版だとエクセル関数使えないからマクロも使わないとなるとかなりめんどくさいんじゃない? 一旦メモ帳にすべて貼り付けて行数を見るとかそんな感じかな?
592 :
名無しさん@お腹いっぱい。 :2012/09/08(土) 12:02:16.96 ID:9P2kbVgQ0
画像認証するとき、時々認証失敗してしまうんですがどうしてでしょうか? 成功するときもあれば失敗するときもあります
なんだ画像認証って CAPTCHAのことか? そもそもソースコードも出さずに成功するときもあれば失敗するときもありますと言われても 答えられる人いないと思うぞ
偽エスパー的にはCHKIMGは表示されている事が条件なので ウインドウ下に隠れている とかそんなポカミスしてると予想
596 :
593 :2012/09/08(土) 20:45:00.25 ID:Fn3+pu3B0
sleepを使ってみたら解決しました。 説明不足で申し訳ありません。
webサイト内の、JAVAの部分の数字を、取り込めないんですが どうすればいいですか? クリックしても文字が反転しない状態の部分
諦めが肝心
あきらめろってことですか? 画像認証以外に読み取る方法ってないんすか?
600 :
名無しさん@お腹いっぱい。 :2012/09/08(土) 21:44:07.31 ID:qfG7aKplP
javaはたんなるプログラム言語だろ
???
602 :
405 :2012/09/08(土) 22:10:59.80 ID:Ccw0o4DJP
小さくくり抜くと画像認証できないことがあるな
小さくても正常に認識する むしろ大きすぎると処理が重くなるだけで無意味
明らかに小さすぎなわけじゃないならなんらかの差異が生じてるんだと思うよ
できれば、画像認証以外の方法にしたいんだよな
ゲーム用マクロの質問もOKですか
608 :
名無しさん@お腹いっぱい。 :2012/09/08(土) 23:53:52.07 ID:yKsM3T7A0
ゲームにもよるんじゃね? メイプルなんたらとか専用スレ作ってるところもあったろ
画面のピクセル取得する関数をどうにか頑張ればいけるんじゃね?
画像認識のことを画像認証とか変な日本語使うのやめろw
わろたw 誰が最初に画像認証とか言い出したんだよw
メイポやってる低脳ども
544が初出かw
指紋認証とか虹彩認証とかのアレ
UWSCの画像認識が信頼性低いのは使ってれば分かること うまくいかないときは原始的にPEEKCOLORの複数判定だぜぇ
なんかマッチ画像が同Y座標に複数あるときとか、 テンプレート画像が縦線のみで構成され マッチ位置が同X軸上に複数重なってマッチし得る時とか、 うまく判定出来ない気がする。
初心者だからたまーにおかしくなるのは画像認識がバグるのか書き方が悪いのか判断できないわ 500ミリ秒間隔の処理が30分正常に動作したかと思えば。スタートしてすぐ止まっているときもある
618 :
名無しさん@お腹いっぱい。 :2012/09/09(日) 21:55:32.05 ID:FXnkQehWP
そういう時はprint使ってどこで止まってるのかくらいは調べりゃ大抵の原因はわかる
>>618 ありがとうございます
無駄に長いソースを調べてみます
FFFFFFの1x1ドットの画像をCHKIMGすると プロだと画像なしで判定失敗して フリーのほうだとちゃんと認識するんだけど 今そんなバグあるの? 久々に起動したら認識しなくて困った
いろいろ突込みどころは置いといてverが違うとかじゃないの?
両方同じVer4.8bでプロ、フリー共に同じスクリプトで判定してるんだけど・・・ んーまいった(´・ω・`)
624 :
名無しさん@お腹いっぱい。 :2012/09/11(火) 14:32:15.53 ID:22kFzFMWP
スクリプト見ないことにはなぁ 自分で作ったやつでは普通に認識した FFFFFFの1x1ドットの画像自体どうかとは思うが
625 :
名無しさんの野望 :2012/09/12(水) 00:29:38.25 ID:xX0Ysk6K0
質問なんだが ブラウザ上に1と2の扉があってそれをランダムに選択していくマクロ作りたいんだけど IESETDATA(IE2,1,"","左","","右")じゃダメなんかな? 左しか選択されてない気がする
626 :
名無しさん@お腹いっぱい。 :2012/09/12(水) 00:32:42.36 ID:xX0Ysk6K0
ミス IESETDATA(IE2,1,"","1","","2")
どうやったらそれでランダムになるんだ? SELECT RANDOM(2) CASE 0 RESULT = "1" CASE 1 RESULT = "2" default RESULT = "1" SELEND 扉の値をRESULTに
あ、違うなどちらかの数値が入力された時点で決定されてるんじゃない? 基本的に初めに入力されてるほうからだろうから左しか選択されないとか? 左と右を別々に作ってランダムでどちらかを選択するようにして試してみるとか(関係ないけど上のRANDOMは()内の値が1だね)
629 :
名無しさん@お腹いっぱい。 :2012/09/12(水) 01:02:45.42 ID:xX0Ysk6K0
SELECT RANDOM(1) CASE 0 IESETDATA(IE2,1,"","1") CASE 1 IESETDATA(IE2,1,"","2") default IESETDATA(IE2,1,"","1") SELEND これで一応多分上手くいった気がする ありがとう参考になった マクロ初心者なもんで
630 :
名無しさん@お腹いっぱい。 :2012/09/12(水) 01:08:53.10 ID:xX0Ysk6K0
と思ったらやっぱダメだったわ 難しいなー
IESETDATA使ったことないけどフォーム名""が間違ってね? あとせっかく変数つかてるんだから 8行目にIESETDATA(IE2,true,"","RESULT") こうじゃね
632 :
名無しさん@お腹いっぱい。 :2012/09/12(水) 17:21:40.43 ID:7nx//XDc0
SELECT RANDOM(2) CASE 0 IESETDATA(IE2,1,"","1") CASE 1 IESETDATA(IE2,1,"","2") default IESETDATA(IE2,1,"","1") SELEND これでできた ありがとう
633 :
名無しさん@お腹いっぱい。 :2012/09/12(水) 18:39:16.75 ID:fit+XEaNO
AUTO HOTKEYとどっちがいじりやすいですか?
画像aを認識してaと発言、無ければ画像bを認識してbと発言、どちらも無ければcと発言というプログラムを組みたいのですが、 IFB CHKIMG("a.bmp") THEN MSGBOX("a") ELSEIF IFB CHKIMG("b.bmp") THEN MSGBOX("b") ELSE MSGBOX("c") ENDIF とすると、 変数:IFBが定義されていません 3行目:ELSEIF IFB CHKIMG("b.bmp") THEN とエラーが出ます。 何が原因でしょうか?
635 :
634 :2012/09/14(金) 18:49:45.02 ID:PWCBTg2MP
解決しました。 失礼致しました。
10回目だけ画像判定させる部分を作っているのですが、 エラーが出て動きません。 何が問題なんでしょうか? i = i + 1 if i = 10 //10 回目で ifb CHKIMG("check.bmp") // 画像があった BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y) // 左クリック i = 0 endif
ヘルプのif文の書き方を読んでこい
if i = 10 UWSC 「で何よ?」
i = i + 1 i「俺って元々は何だったんだろう」
原文のままだと 1行目でエラーか
iの自分探しの旅が始まる
iMacrosが便利なのでUWSCとの併用を考えているのですが UWSC側からiMacros、もしくはiMacros側からUWSCをコントロールする良い方法なないですかね?
643 :
名無しさん@お腹いっぱい。 :2012/09/15(土) 21:56:54.54 ID:jyO60AwCO
どこの団体ですか?
なんでchkimgってjpg使えないの? いや、仕様なのはわかるけど。
圧縮された画像だから
素直に変換して使えばいいのに。
>>644 jpgで保存したら元の画像と変わっちゃうだろ?
そんな別な画像を比較したって一致するわけないんだから意味ないじゃん
三回目で画像をクリックさせるマクロを作っているのですが、 画像を全くクリックしてくれません。 画像の判別部分は別でチェックしているのでその点は問題ありません。 以下の何が駄目なのかご指摘いただけますと幸いです。 sleep(1) while True if GETKEYSTATE(VK_ESC) then exit // ESCキーを押すと終了させる number = 0 Ifb number=3 then ifb CHKIMG("無題.bmp",0) // 画面上に画像があった場合以下へ x=G_IMG_X // 画像の座標をxへ代入 y=G_IMG_Y // 画像の座標をyへ代入 BTN(LEFT, CLICK, x+10, y+10, 80) // 画像の場所を左クリック number = 0 sleep(1) else number = number + 1 sleep(1) endif endif wend
一生numberが0
1になっても直後に0にされてしまう哀れなnumber
これでnumber働かねーとか怒られる可哀想な役回り
初心者です 普段imacros使っててimacrosではできないようなのをuwscに任せようと思ってます ひたすら1を押し続けてたまに2が出てきたら2を押すって感じのやつ 簡単で短いのに動作が糞遅い、なんとかならないのですか?
初心者ならヘルプを熟読するところから始めよう おわり
すみません 文が長すぎて理解できないみたいですね uwscの動作が遅いんですよ、何か原因ってありますか?
動作の遅い関数は使わないとか、タイムアウト指定できるなら指定するとか そういった色々な初心的項目を潰していく発想が無い脳みそに原因がある
俺の環境では遅いと感じたことないけどな PC環境とかスクリプトの原文とか見せてもらわないと誰も答えようがないのでは
ループにsleep入れてないとかだろ
>>648 forループ使えばいんじゃね?number = 0以下5行は不要(sleepはあっておk)
while true
for number = 1 to 3
Ifb number=3 then
next
wend
画像判定は他にあるってことだし別処理も入れてるんでしょ? for使うと他のチェックがその間止まるからifにしてるんだと解釈してるが 普通にループ中のnumber = 0を外に出せばいいだけ
質問です。 1週間前までは問題なかったのですが突然ショートカットが使えなくなってしまいました ver 4.6b ホットキー alt + F1 alt + F2 alt + F3 alt + F4(ブラウザを閉じる) や 単独のF3(フォルダ検索)は動作します。ほかにいれたソフトはありません。 パソコン初心者なので簡単なミスかもしれませんがよければ教えてください
久しぶりになぞなぞか
最新版にする、ウィンドウズの再起動(何らかの形で前に起動したソフトが残っている可能性)、アンチウィルスソフトの設定確認(自動アップデートで変わってる可能性あり)
お答えありがとうございます 再起動して治りましたが原因はわかりませんでした
665 :
名無しさん@お腹いっぱい。 :2012/09/17(月) 14:38:38.37 ID:VhPEHJ5AP
何回か起動を繰り返してショートカットが使えなくなったのなら終了プロセスがうまくいってない場合がある この場合に多重起動状態になってお互いが干渉してキーが効かないなど 同じ症状が出た時にタクスマネージャーのプロセス確認してUWSCが複数あった場合はこの可能性が高い
>>665 お答えありがとうございます。今度同じ症状が出たら確認してみます
スケジューラーって設定しておkしたら他何も弄らずともそれ繰り返すの?
試した?
IFB (( 変数A > 変数B ) and ( 変数C >= 変数D )) then 変数Aが変数Bより大きく、かつ変数Cが変数D以上 という条件で分岐させたいのですが、上記の式だと右側の変数CとDの条件だけで判断してしまいます 誰かお助けください・・・
なんかそんなバグあったような気がする ifb 条件1 ifb 条件2 endif endif ってすればおk
変数A = 1 変数B = 2 変数C = 2 変数D = 1 IFB (( 変数A > 変数B ) and ( 変数C >= 変数D )) then msgbox("あ") else msgbox("い") endif こんなんで簡易に試してみたら4.7bではちゃんと動いたよ 他の部分が予想と違うのかもしれないから、変数をprintしてみたらどうだろう?
672 :
669 :2012/09/17(月) 20:41:05.87 ID:8PgRO0Zp0
お答えありがとうございます 一通り試してみたのですが上手くいかず、何がどうなっているのやら・・・ print 変数1→69436.5 print 変数2→110408 この状態で IFB ( 変数1 > 変数2 ) とするとなぜかTRUEがorz
こんなんでは? 変数A = input("変数Aの値",3) 変数B = input("変数Bの値",2) 変数C = input("変数Aの値",4) 変数D = input("変数Aの値",1) ifb 変数A > 変数B ifb 変数C >= 変数D msgbox("処理1") else msgbox("処理2") endif else msgbox("処理2") endif
>>672 変数1が文字列になってるとかじゃない?
>>673 の変数C・Dのinput説明直してなかった
変数A = input("変数Aの値",3)
変数B = input("変数Bの値",2)
変数C = input("変数Cの値",4)
変数D = input("変数Dの値",1)
ifb 変数A > 変数B
ifb 変数C >= 変数D
msgbox("処理1")
else
msgbox("処理2")
endif
else
msgbox("処理2")
endif
>>672 試してみたがおきないな
というかなんで)とか とか変な文字使うの
コピペできないじゃないか
677 :
669 :2012/09/17(月) 21:58:52.56 ID:8PgRO0Zp0
みなさんの意見を参考に色々いじった所、意図する挙動になりました
ありがとうございます
>>674 さんのおっしゃる通り文字列判定になっており
>>672 のような現象が起きていたのと
楽をしようとしてA>B>Cと繋げて式を書いていたのが原因だったようです
数値の取得方法の変更と、不等号を一段ずつ分けて書いた所上手くいきました
どうもお騒がせしましたorz
有料版にはデバッグモード機能付いてるぞ。 一行ずつトレース実行できる(ステップ) 申し訳ない気持ちがあるなら買ってやれ
単純なブラウザ(IE)上の操作の記録なんだが ALT+F3とF2の記録と停止によるショートカットボタンでの記録内容が全く保存されてないんだ 何故・・・管理者で実行はしてる Windows7 64bit 4.7pro
proなら付属のRecIE使えば?
試してみる、試行錯誤中なので(スクリプト書けないし意味わからんち(´・ω・`)
記録し終わったあと保存してないとか ・・いやまさかなw
あ、いや 記録開始して停止するじゃないですか 保存しようとするとすんなり保存できる→でも再生すると何も起こらない 内容見ると何も記録されてないorz または、停止した後保存しようとすると何も記録されてないで!とか言われたり色々です
これはひどい
>>683 設定で高レベル記録でなく低レベル記録にチェック
低レベル知能にもチェックな
低脳は自己診断が困難だよ IQテストで100以下なら低脳と言える 70以下なら重症
アホクサ
たとえUWSCのように単純なスクリプトでも知能指数は重要だよ。 ルールを見出して組み立てるわけだから。 そして、世の中の大半の人はルールを組み立てるのではなく、ルールに従って生きているだけ。
IQ110あるのによくスクリプトが止まるんだが なんだろう
アスペルガーかな 相手(操作対象)が完了してなかったりエラーを起こしているのに こっち(UWSC)がそれを無視してどんどん話を進めていってるとか。 あとはUWSC内部で期待する動作がされてないとか。 または操作対象が期待する動作してないとか。 たとえばWindowsのバージョンによってはハンドルの無効になるタイミングとか違ったり プロセスが終了した通知をくれたりくれなかったりとかで 制御するほうは確認作業が大変だったりするらしい。
692 :
名無しさんの野望 :2012/09/21(金) 21:45:40.19 ID:OH//9bbD0
プルダウンメニューを画像認識無しで操作したいんだが 誰かヒントだけでも教えてくれ
>>692 CLKITEM を使う
意味がわからなかったら録画機能で適当にプルダウンメニューを操作してみればわかると思う
×録画機能で ○録画機能を作動させた状態で
すいません。教えてください。 gettimeで今現在の時間を取得してsendstrで送りたいんですが 2012/09/21/22:00みたいなフォームで送る方法教えていただけませんか。 お願いします。
ヘルプ読んで出直し
すいませんできました。ありがとうw
GETTIME() SENDSTR(ID,G_TIME_YY4+"/"+G_TIME_MM+"/"+G_TIME_DD+"/"+ G_TIME_HH+":"+G_TIME_NN)
最近、ワンクッション置かずに安直に質問するやつ増えたよな。 分からん→聞けば教えてくれるのが当たり前 的な思考回路。 本当に解決したい気があるなら何か試行してるはずだし ここまでこうこうやったけど動かなかったって提示が無い
さいきんのはどーみてもつりやん
プルダウンなんだけど、高度な記録でクリックしたいボタン名が記録されたんだけど、 実際再生してみるとクリックされない 何でだと思う?
>>701 http://www.uwsc.info/faq.html#n29 アプリの操作ができない、記録ができない(Vista, Win7) #n29
実行レベル(UAC)を合わせてください。
アプリが管理者権限で実行されている場合には、UWSCも管理者権限が必要です
UWSCを起動する時に、右クリック "管理者として実行..."より起動する
もしくはプロパティの"互換性"タブより"特権レベル"にチェックを入れてください
逆にアプリが一般ユーザの場合には、UWSCも管理者権限ではなく一般ユーザにしてみてください
IEの操作が正しく働かない、IEが2つ起動する(Vista, Win7) #n30
IE上での動作を記録しようとしても記録ができない
IEの保護モードを解除する必要があります。
インターネットオプション -> セキュリティの "保護モードを有効にする" を解除してください
また COM操作にて機能がダメな場合は、IEの互換表示をオンにしてみてください
つかヘルプ読めってレスはいらない、無駄にも程がある 何回同じ事書き込んでんだよヘルプバカは
最初から完成品作ろうとする人も多いんだろうな わかりにくい部分があれば秀作作ってみたらいいじゃないってね
>>703 お前のレスの方が無駄だよ
何も生産できない馬鹿は消えろ、二度と来るなカス
知らない知らない わからないならわからない 相手したくないなら相手したくない ほっとけばいいだろ、ヘルプ読めってレスはいらない なんの意味もないただ無駄なだけ
>>706 ヘルプ読んだら解決するだろ?
なんで無駄なんだ?
>>707 ヘルプ読めって奴らは必ず単発でうぜえから
何も生産できない馬鹿だろ消えればいい
ヘルプに書いてあるって言うことを教えてるだろ
ペルプ読むのめんどくさいから 一から十まで教えろってことかw
めんどくさいならほっておけばええやん 上にもそう書いてるやん
L22 存在しません()
713 :
名無しさん@お腹いっぱい。 :2012/09/22(土) 18:28:04.39 ID:iRXlPjliP
チート乙
概要をさらっと述べた上で詳しくはヘルプ読め、ができる男のレス
715 :
名無しさん@お腹いっぱい。 :2012/09/22(土) 23:17:23.01 ID:8sc3gfwm0
超初心者で罵られるの覚悟です。教えてください GETKEYSTATEで、テンキーのピリオドキーの状態を知りたいのですが、 キーコードは何で調べればいいのでしょう?
VK_DECIMAL
VK_○○のキーコードは初期の頃ちょっと苦労したな。 ヘルプだけだと、やや言葉の足りないところがある。 見りゃ判るだろ、って感じでぶん投げてある感じw
>>720 これは簡単な方だろ
線を導き出して折れる方向のパターンで判別できる。
他ツールの手を借りないとまず無理だろうな
一応解析突破モジュールは昔からある。 一括垢取得や掲示板荒らしとか、怪しい用途にしか普段使われてないが。
irvineなんかに搭載できてたような気がするな。
726 :
701 :2012/09/24(月) 21:27:27.95 ID:6hqehviZ0
すいません。プルダウンの自動化で質問です。 高レベルな記録でボタン名記録されて実際動くんですが、 記録したボタンを探すまで20秒ぐらい時間がかかってしまいます。 何が原因があるんでしょうか? スクリプトを見ても綺麗に書いてあって、別にsleepが入ってたり処理まで時間がかかる要素が見当たりません。
アイテムの検索は基本的に遅いです 沢山アイテムがあれば特に
728 :
701 :2012/09/24(月) 21:41:44.57 ID:6hqehviZ0
>>727 そうなんですか。画像キャプチャしてクリックする方式にしたいんですが、マウスオーバーすると
文字の色が変わる仕様なのでどうすればいいですかね?
画像認識の時はマウスを隅とかに移動させればいい
sendstrで番号知る方法ってない
731 :
名無しさん@お腹いっぱい。 :2012/09/25(火) 01:04:05.87 ID:38aw+QsmP
1から順位番号入れてどこに入るか見ればいいじゃない
それをforで回せばいいじゃない。
fcuc.uws
言い出しっぺの法則 まあ解説が必要なほどのものとも思えないけど
736 :
名無しさん@お腹いっぱい。 :2012/09/25(火) 18:20:04.38 ID:+N/Rep3WP
>>735 解説書が1冊(しかも相当古すぎる)しか存在しないのを知らないのか
恥ずかしいやつだなお前w
正直、操作したい相手のプログラム次第だからなぁ 言語的には全然難しくない というか、もうちょっとオブジェクト指向に対応して欲しいくらいだ
>>736 解説書が必要になるほど難しいものじゃないってことだろ
そんなことも分からんか
Win32APIとかdllのやつは詳しい解説があると有難いな
その辺はちゃんと解説書あるし それだって相手次第の部分だ
しかし、uwscで何ができて何ができないのか全然わからない。 使いこなしている人も、全機能把握はできていないだろ。 マニュアルをHELP形式でのみ提供というのがねえ。見づらくて検索しづらくてたまらん。
742 :
名無しさん@お腹いっぱい。 :2012/09/25(火) 19:04:31.06 ID:38aw+QsmP
HELP見てわからないレベルに理解させるwikiなんて作れるのか?
さすがにこんな簡単な言語で全機能把握できないは言い過ぎだろw
試行錯誤が必要なのは相手に合わせる部分だけだからなぁ〜 とは言え、GETKEYSTATE関数が瞬間値じゃない件は HELPではこれで察しろってレベルなんだけれどねw 戻値 TRUE:クリックがあった、 FALSE:なし
745 :
名無しさん@お腹いっぱい。 :2012/09/25(火) 19:18:09.42 ID:38aw+QsmP
使用例も載ってるしそれ以上の説明も必要ないでしょ 他に何載せるの?
個人的にHELPでわからなかった部分は今までで上の件と LOCKHARD関数でもフラグがリセットされるって件だな これはHELPにヒントすらないけれど 言われてみれば理由がわからなくは無いレベルの挙動なんだよね
あのHELP見てわからないって人は関数って何?とか戻値って何?ってレベルの人位でしょ? もしくは目次に気が付いてないでキーワード検索のみだと思ってるとか
クラウド経由のIEをuwscのCOMコンポーネントで操作することは可能ですか?
ネット上に普通に情報を置いておいてくれれば学習に無駄な時間を取られないで済むのに、 公式情報がHELP形式のみしかないため、導入学習に無駄な時間がかかる →じゃあやめよう こうなるのは当然のこと。
いまいち理解できないんだが なんでヘルプはダメでネットだといいんだ? そこのところがまったくわからん ヘルプに充分な情報載ってるぞ? どういうものを求めてるんだ?
必要な場所の検索、閲覧が非常にしづらい。 この見難いという問題が非常に大きい。 大昔から使っていた極一部のマニアは軽視するだろうけど。 検索エンジンは既存のデータを検索しやすく、見やすくしただけで、インターネット上の大革命になった。 そして、ネット上にあればそこへリンクしたりして発展性が生まれるが、 ローカルマシン上のHELPにしか情報がないとなると、お前らが知っている事を俺が知るためにググっても無駄。 見づらいHELPを必死こいて読み込み、またお前らが10年前に通過した試行錯誤を全員が繰り返さなくてはいけない。
>>751 じゃあネット上にヘルプの内容まるまるコピーしてるとこいくつもあるからそこ使えよw
753 :
名無しさん@お腹いっぱい。 :2012/09/26(水) 01:51:44.86 ID:iT9Y9AcqP
×HELPがわかりにくい ○コピペでしかスクリプトを組めない ってことだろ
新規で開発するものじゃなし自分が楽するためのツールなんだからそれぐらい苦労しろや
>>753 今のプログラミングって切り張り99%だろ
うん。否定しないから言い出しっぺの法則で作ってよ
そういわれても俺はこのソフトの利点とか全然知らないし。 ユーザーサイドjavascriptだけで割と十分だし。 ヌルヌルとマウスが動くのは面白いと思うけど、低レベルマクロで連打君程度しか使ってないし。
それで満足してるんだからいいじゃん
結局のところ プログラミングを覚える気はない、コピペで使えるものをよこせ っていうただの駄々っ子か
スクリプトとはいえプログラミングの醍醐味って 想定した動きに近づける試行錯誤の部分なんだけれどねぇ 普段使う分にはなんの感動もなく使うけれど 相手側の仕様変更等で動作しなくなったら 嬉々として原因をしらべて対応したくなるってモンだけどな
761 :
名無しさん@お腹いっぱい。 :2012/09/26(水) 22:51:48.38 ID:zEA5T7o50
初心者はuswcの有料の試用でRECie機能とデバック使うとかなり勉強になるぞ
762 :
名無しさん@お腹いっぱい。 :2012/09/26(水) 22:52:30.82 ID:zEA5T7o50
初心者はuswcの有料の試用でRECie機能とデバック使うとかなり勉強になるぞ
大事なことなのでry
L22 存在しない
質問です VBAで作ったユーザーフォームの記入してある文字をUWSCのgetstrで読み取ることは可能ですか?
766 :
名無しさん@お腹いっぱい。 :2012/09/27(木) 00:44:31.68 ID:6SlxkSRtP
試せばすぐ答え出るじゃん
出来なかったんだけど;;
>>767 MDIなプログラムはウィンドウIDじゃなくてそのオブジェクトのIDを指定しないとダメだぞ
ごめん 出来た ありがとう。 続いて質問なんだけど、画面のタイトルの3文字目から11文字目だけを取得したいんだけど そういうことも出来る?getidだとフルになっちゃうからどうにかして取りたいんだけど
>>769 それはヘルプの文字列操作関連を見れば一発だろ
>>770 せめてヒントだけでもください。関数だけでも・・・
完全に固定なら COPY 関数で出来るだろ 戻値 = COPY( 文字列, 開始位置, [コピー文字数] )
id=getid() COPY(id,3,11) こうでいいですか?
ただ、HELPを読んでみようとする気が全くないのは問題だよ
776 :
名無しさん@お腹いっぱい。 :2012/09/27(木) 01:13:52.76 ID:X5TdQDbf0
できない・・・・
777 :
名無しさん@お腹いっぱい。 :2012/09/27(木) 01:23:07.99 ID:6SlxkSRtP
関数どうこうよりも戻値っていうのが何かっていうところから勉強しなおした方がいい
print関数で変数の中身を確認しながらやればどこが悪いか分かる
最初のレスでVBAで作ったユーザフォームってあったので 最低限のスクリプト知識は有るもんだと思ったけれど無さそうだね それにしては3文字目から11文字目なんて発想が出るのが不自然なんだよね ネタじゃない可能性もあるので とりあえず getid は id を取得する関数 STATUS 関数に id を引数で与えたらタイトルは取得できる その戻り値を copy 関数に渡してみ ほとんど答えだけど後は頑張れ
ヘルプ読んで分からない人に日本語まで教えて使わせるくらいなら諦めさせる方が優しいと思うんだ。
あのヘルプを読めという方が酷だよ。
プログラミングの基礎を知っている人は大変便利なヘルプだが 全くのド素人は何を書いてあるのかサッパリだぞ
ヘルプ見てわからないようなレベルならもっと先にやることがあるだろ それを何でUWSCで教えないといけないんだって話なわけで 変数って何?とか関数って何?とかフローチャートって?そんなレベルの奴でも覚えようとする意思があるなら普通はまず自分で調べると思うけどな
前の流れも含めてだが、考えるのをやめて楽しようとするやつと 参考情報があれば(あるだけ)助かると主張してる人は別だろ なんでお前ら勝手に前者と決めつけて勝手にファビョってんの?アスペか?
普段から人と接してないからコミュニケーションが取れない
そもそも楽しようとしてUWSC使おうとしてるんだろう? 楽をするのは楽じゃないって話だ
UWSCでクリティカルセクションってAPI叩かないと使えないの? スレッドが使えるならこれも実装して欲しいは
>>788 それ不正シリアルで登録した時にのみ出るエラー
>>779 ユーザーフォームは形だけです。メモ帳みたいな入力して置くだけの箱物です。
そこの箱に置いた情報をUWSCで読み込んでインプットしていくって作業をしてます。
TITLE = status(GETID(GET_ACTIVE_WIN),st_title)
a=COPY(TITLE,3,11)
print a
これで試してみたんですが、表示されるのがUWSCのスクリプトを保存した
gamencopy.uwsのうち「mencopy.uws」が表示されました。
確かにコピーされたんですが、そうじゃなくて、仕事で使ってるエクセルファイルのタイトルがコピーしたいんです。
No.01234567891のファイル.xls
みたいな感じで仕事上意味があるナンバーがあって、その情報を自動で取得したかったんですが。
スクリプトの起動方法にもよるけれど GET_ACTIVE_WIN 使っているんだから そうなる可能性が高いよね 先ず、タイトルの取得したいウインドウのIDを取得しないと意味ないよね 因みに GetID の引数のタイトルは一部でもおkらしいよ〜 その例だと No. だけでとりあえずIDだけ取得してタイトル文字列を取得して 加工するって方法が使えるかもしれないね 名前が無理ならマウスで指定するとか 作業に使いたいウインドウを特定する方法はそれなりに工夫しないとね
変数の中にはuwscのウィンドウのタイトルが入ってるのが分かったんだから どこがおかしいのかも分かるだろ もう少し試行錯誤して考えてみなよ
TITLE = status(GETID("No."),st_title) a=COPY(TITLE,3,11) print a できた!!!!!!!!ありがとう神様!!
794 :
名無しさん@お腹いっぱい。 :2012/09/29(土) 05:00:48.52 ID:NzxEm7haP
エポック秒を 好きな形式にフォーマットする関数は用意されて無いでしょうか? 420184611を HH;NN;SSと言った感じにしたいと思っております
>>794 GETTIME使ったら?
n = 420184611/86400
GETTIME(n,19700101090000)
796 :
名無しさん@お腹いっぱい。 :2012/09/29(土) 06:04:01.34 ID:NzxEm7haP
おおおお できましたありがとうございます
画像の文字をOCRのように識別し文字列に変換することはできますか?
798 :
名無しさん@お腹いっぱい。 :2012/09/29(土) 12:10:45.41 ID:cdD+TvAsP
簡単にできるという意味では無理 OCRもパターンを調べてそれに合う文字に変換してるだけだから同じように数千数万ってパターンを登録して変換させることは可能 まぁ現実的ではないが
800 :
名無しさん@お腹いっぱい。 :2012/09/29(土) 15:42:53.30 ID:MRWfBTXG0
リモート経由のIEってcomコンポーネントで操作出来ない どうすればIEの項目取得とか出来るの?
801 :
名無しさん@お腹いっぱい。 :2012/09/29(土) 16:36:43.68 ID:cdD+TvAsP
リモート経由のIEの意味がよくわからないがリモート先でIEを実行しているって事ならリモート先で情報の取得をすればいい
>>802 ググって調べてみたんだが、どうやら不正キー(出回り過ぎて作者にバレた公開キー or バレた法則で生成されたキー)を入れると、
一応登録画面通過するが、作者の小細工で一部機能(少なくともIERECは確定?)がL22エラーで起動しないんだとか。
UWSC自体はその後も起動可だし、不正者として裏で通信走るわけでもないくほとんどの機能は使えるんで支障ないレベルらしいが。
キーを再登録するには、いったんUWSCをアンインストールする必要がある。(上書きインストールだとダメ)
まだ作者にバレてない4.xの公開キー or バレてない法則で生成されたキーは
最新版4.8bでも全機能完動するようだが5.xになったら使えなくなるだろうな。
>>801 なるほど。それでCOMコンポーネント使って情報取得したり出来るってことですね
複数タブ開いてるブラウザでUWSCを使って操作させてます ACW(GETID("指定タブ〜指定ブラウザ","windowclass"),位置) MOUSEORG(GETID("指定タブ〜指定ブラウザ","windowclass")) とタブを指定したうえで動かしてますが、たまーに指定タブを開いてなくて誤作動起こしてしまいます とりあえず指定ブラウザ探して、 次に複数タブの中から(指定タブを探して)選択する方法ありましたらヒントください 非IEです
806 :
名無しさん@お腹いっぱい。 :2012/09/30(日) 17:11:22.38 ID:o08NRIPbP
ALL_ITEM_LIST
807 :
名無しさん@お腹いっぱい。 :2012/09/30(日) 17:19:57.03 ID:o08NRIPbP
getitemの ITM_TABを使ってすべてのタブの情報を取得 タグ名はALL_ITEM_LISTに入るからリストから目的のタグを指定
標準コントロールを採用していなければその方法は無理 そしてメジャーなブラウザはマルチプラットフォームのために標準コントロールを使用していないケースが殆ど
ま、非IEとか書いて情報出さない時点で答えもらうつもりはなさそうだけど
>>806-807 ありがとうございます。やってみます。
>>808 ありゃ無理ですか・・・
>>809 作業させてるブラウザはOperaですが、普段はFirefoxやSRWare Ironを使ってまして
IE以外なら何でも構わないという意味で書いたんです。
IEを使わないとできないのなら、、う〜ん悩ましいですね。
811 :
名無しさん@お腹いっぱい。 :2012/09/30(日) 20:02:25.78 ID:o08NRIPbP
getitem使えないならGETIDの戻値を見て-1ならCTRL+TABでタブ切り替えって感じでやってみたら?
COMコンポーネント使うばっかりじゃなくて自らCOMコンポーネントになってほしい 自動操作と関係ないルーチンはオブジェクト指向スクリプトで書きたいわい
dim array[5] array[1]="こんにちは。" で格納したデータを sendstr(title,array[1]) で送ってるんですが、送られていません sendstr(title,"こんにちは。") ↑だと送られるんですが。。。 何が原因でしょうか。変数は送られない仕組みですかね?
バラバラの画像を連結させるために 某所で公開されていた画像を扱うクラス(別言語)を ScriptControl を使ってuwsc内で生成して利用したことはあるなぁ
815 :
名無しさん@お腹いっぱい。 :2012/10/02(火) 00:25:41.18 ID:OrCtgffDP
>>813 普通に変数でも大丈夫だけど?
prinf使って正常に格納されてるか確認してみたら?
816 :
名無しさん@お腹いっぱい。 :2012/10/02(火) 06:27:43.48 ID:McW6Hy550
>>815 printはできました
msgboxも
出来ないのはsendstrだけです
817 :
名無しさん@お腹いっぱい。 :2012/10/02(火) 08:16:50.68 ID:OrCtgffDP
print文で確認できているならtitleの部分のIDが間違っているなもしくは番号の指定が必要か
818 :
名無しさん@お腹いっぱい。 :2012/10/02(火) 12:49:02.64 ID:zEM0NuNI0
IE上の文字検索で 例えばだけど あなたはX回腕立てしました って文章のXが規定の数字以下の場合何かしらの操作をするマクロ組みたいんだが ifb pos("",IE.document.parentWindow.frames(1).document.body.innertext)にどう表記したらいいのかな IE上に数字いっぱいあるから あなたは〜回腕立てしました の部分も検索したいんだが アドバイスお願いしたいです
まずposという関数が何をするものなのかヘルプ読んでみたらいいんじゃないかな
820 :
名無しさん@お腹いっぱい。 :2012/10/02(火) 12:56:55.03 ID:OrCtgffDP
BETWEENSTRで あなたは と 回腕立て の間の文字を抜いたら? そのうえで戻り値の値を規定数以下の条件で記述
フォルダ内の全テキストファイル(*.txt)の文字列一括置き換えやるにあたって テキストツール使わなくてもUWSCでできそうと思ったんだが フォルダ内の全ファイル参照する方法ってある?
質問する前になんでHELP読んでみようと思わないのだろうか
>>821 エディタのGrep使うのがいいと思うよ
>>822 分からない無知は黙ってろ
恥をかくだけというのが分からんのかks
>>823 それ抜き出しであって処理じゃないだろ
頭が足りない説明能力不足乙
いつもの荒らしだろ
>>821 FlexibleRenamerなどのツールをUWSCで自動操作しろ屑め
ってよく読んだらテキストファイルの中身をgrep一括置換したいって内容なのに 生半可にgrepを誤解してるのでアドバイス蹴ってる屑なのか
828 :
816 :2012/10/02(火) 19:42:38.77 ID:McW6Hy550
間違ってました。 ありがとう。
質問です。 C=CHKBTN(GID,"CheckBox1") = 0 でチェックボックスがオンだったらMSGBOXでオンです オフだったらオフですってコメントを流したいんですがどうすればいいですか
830 :
名無しさん@お腹いっぱい。 :2012/10/04(木) 02:28:04.84 ID:pjpoFeUHP
>>829 まず○=○=○という形はない
条件はIF(1回だけの判定)だったりWHILE(条件が一致するまで繰り返す場合など)だったりそのほかだったり使い方に応じて
この場合はIF文が良いと思う(HELPみてわからなかったら自分で作ったサンプルでも書き込めば誰かしら修正個所教えてくれるんじゃない?)
一応捕捉で C=CHKBTN(GID,"CheckBox1") みたいに必ず戻値を格納する必要はない IF CHKBTN(GID,"CheckBox1") = 0 などの使い方でOK C=CHKBTN(GID,"CheckBox1")とする場合は一度記述したうえで IF C = 0 などの使い方をする
>>831 できました。ありがとうございます。
あともう1つ質問です。
COMコンポーネントで操作をしたいんですが
COM_Error:Interger型からDispatch型へのバリアント型変換はできません。
と出て操作できません。
ソースは
IS=getid("Internet Explorer \\リモート,256bit")
ctrlwin(IS,activate)
IS.visible = True
IS.navigate("
http://www.yahoo.co.jp ")//ここで↑のエラーが出る
本当はISのところはIEが正解かもしれませんが、
セキュリティの関係でリモート接続したサーバー上で表示してそのデータをこっちで見ている感じなので
それができません。
どうにかして操作したいんですが、無理ですかね?
833 :
名無しさん@お腹いっぱい。 :2012/10/04(木) 23:43:06.17 ID:pjpoFeUHP
IEは変数名なのでISでもIEでも関係ない CREATEOLEOBJでCOMオブジェクトを作成していいない そもそもリモート先で取得っさせるならリモート先にUWSC
つーか getidでgetできるのはIDであって、COMオブジェクトじゃないが正解。 たぶんやりたいのは既に開いているIEを掴んで、開いてるサイトを変えたいのだと思うが、面倒な手順が必要。 新たにIEを開いて特定のサイトに飛ばすだけなら、公式サイトのサンプル見れ。
面倒な手順ってあったっけ? 手間は変わらん気がするが
836 :
名無しさん@お腹いっぱい。 :2012/10/05(金) 00:20:30.94 ID:NxCNtQsm0
>>833 リモート先で取得じゃなくてこっちのPCで情報を取得したい。
コピペとかはできるけど、COMコンポーネント使えば自動で情報収集出来るって聞いたからそれをやってみたかった。無理ならいいですごめんなさい
>835 言葉が足りなかった。 「起動済みのIEをCOMオブジェクトとして掴んで」操作するには面倒な手順が必要。 ただ>836の内容を見るにCOMとかどうでも良いと見えるので、もっと簡単にできますわな。
>>837 GETACTIVEOLEOBJで一発だろ?
839 :
名無しさん@お腹いっぱい。 :2012/10/05(金) 01:26:49.78 ID:NxCNtQsm0
できるの? 一応こっちの画面でIE(リモート経由で得た情報)を見れる
>838 すまん、今確認したら動いた。 不具合(?)治ってたのか。
>839 IEにリモートの情報を表示させて、そこからデータをコピペしたいという意味?
842 :
名無しさん@お腹いっぱい。 :2012/10/05(金) 08:39:43.63 ID:NxCNtQsm0
>>841 IEは普通に見れるから。ただ、サーバー経由のIEだから
こっちのPCに入ってるIEとはバージョンも違うし。
ただ見た感じはほとんど一緒のIEなの。
そこのサーバー経由のIEのある特定の項目をExcelに自動で貼り付けしたいの。
ただ、コピペは普通にできるけど、ファイルから名前をつけて保存をすると、
そのサーバーのディレクトリに保存されちゃうの。
仕様上、サーバーにはuwscなんて入れられないし。
サーバー経由のIEって、 会社?ネットカフェ?
RecIE
サーバ経由のIEというのが分からん。 ・リモートデスクトップ等で遠隔操作してるIE ・ネットワークドライブ上から起動したIE ・リモートデスクトップと融合したIE(そんなものがあるとは聞いた事はないが…) ・その他 のどれだ。
スケジュール設定で5分毎に決まったマウスの動きをさせているのですが、 数分〜数時間でUWSCがフリーズしてしまうのですが、何か対策はありますか? POFF(P_UWSC_REEXEC)を最後に追加してみましたが変りません。 宜しくです。
デバッグでどこの行で止まってるか確認すればいいんじゃないの?
>>847 1つの○○.UWSファイルをスケジュール設定で毎回起動させています。
○○.UWSは正常に動きのですが、何回も繰り返して起動してるうちに
UWSC本体がフリーズしてしまうんです。
別プロセスで動かしてみたら?
>>849 ありがとうございます。
別プロセスで実行のチェックは入っています。
タスクスケジューラ使ってみるとか
>>848 要所要所にfukidasi入れたらどうだ?
出しっぱなしになってる所で大体特定できる
らちが明かないなw エスパー検定のようなもんだは うpしろ 5分毎なら短いんだろうし
スクリプトには問題なくてUWSCの起動終了を繰り返してたらフリーズするってことなのかな スケジュール自体もUWSCで管理するようにしてみれば?
855 :
842 :2012/10/06(土) 19:19:29.97 ID:dgl9wkrs0
>>845 ・ネットワークドライブ上から起動したIE
これです。会社のログインページに行って
ユーザー名とパスワードを記入すると、その画面にIEのアイコンが現れるから
それをダブルクリックするとIEが立ち上がる。
そのIEは会社の社内のサーバー機で動かしている。
それはむしろリモートデスクトップの類じゃないのか
・シンクライアント ・リモートデスクトップのUIがIE上にある特殊クライアント
なるほど。会社のシステムを自分のPCから乗っ取ろうと
質問です。getstrであるテキストボックスから"2012/10/07 10:00"という情報を取得します。 もしそのテキストボックスの日付時間が現在の日付時間より過去だった場合、1の動作を 未来の時間だったら2の動作を走らせたいと考えています。 これって動作できますか?
できる
多分やり方としては 取得した日時-現在の日時という風にするのかなと思うんですけど どういう風に書けばいいですか?
gettime使えば出来るとだけ言っとく
>>862 それも知ってます。
問題はどうやって引き算するかです。
gettimeがどういう関数かで戻り値がなんなのかヘルプでも読んだら
>>863 GETTIMEと変数とマイナス記号で引き算できる。
ヘルプを読んだ結果それが出来無いなら
プログラミング向いてないので使いこなすのは諦めよう。
866 :
名無しさん@お腹いっぱい。 :2012/10/07(日) 13:53:01.19 ID:bWqmbs96P
フローチャートで1個1個手順を書いて行くと何をやろうとしてどこがわからないのかがわかる 情報の取得、2012/10/07 10:00という文字を時間に変える、現在時刻の取得、引き算、条件による分岐 5つの手順のどこがわからないのか それがわかれば関数の使い方がわからないのかなどわからない部分が見えてくる プログラムの基本
型があってないorオーバーフローって出る
GetTime() t=G_TIME_YY4 +"/"+G_TIME_MM2 +"/"+ G_TIME_DD2+" "+G_TIME_HH+":"+G_TIME_NN2 t2="2012/10/07 10:00" time=t-t2 print time これです
869 :
名無しさん@お腹いっぱい。 :2012/10/07(日) 14:00:39.95 ID:bWqmbs96P
2012/10/07 10:00 は文字にすぎないからこれを秒とかに変換して計算させないとだめ
戻り値っていうヒントを出したのに
引数の書式が融通利かなくてめどい
>>868 ヘルプをまだ読みきっていない。
まず、文字列が受付可能書式に合致していない。
次に、文字列の引き算なんて元から出来ない。
足し算は文字でも出来るが、引き算が出来るのは数字だけ。
その調子じゃ、スクリプト構文の変数の章も読む必要がある。
ヘルプの例の所も読んで書いたっぽい書き方ですな。
しかし通常のEXCEL-VBA以上プログラマが
直ぐに思いつくやり方がその例には載っていない。
(普通は戻り値(数値)を式の一部として使ったり変数に入れて式を書く。)
だからコピペプログラマとしては、もっと別の例を見る必要がある。
その場合、普通は人に聞く前にまずググる。
検索ワード:uwsc 日付 →
http://goo.gl/tnfdG これだと元のヘルプそのまま乗せただけのサイトばかりで見つからない。
検索ワード:uwsc 日付 引き算 →
http://goo.gl/Y8dBi ちらほら出てきます。しかし元々わかっていない人には、
ヒントが出ていてもヒントと気付きません。
このあと色々な単語や、UWSCでなくExcelVBAでも
検索してみましたが、これ以上わかりやすいところがドンピシャというのは
直ぐには出てこない。
シリアル値だの何だのって単語はまだ知らない段階の検索なので、
ここまでで後は検索結果を舐め回すことになるが、プログラマ向いてる人なら
検索ワード:uwsc 日付 引き算 の段階で、すぐに「察して」式を書けるようになる。
やっぱオマイラは優しいなw
まぁ最初から教えて君じゃなくて
何が分かってないのか分かる
>>868 を出してれば話も早いってこったね
874 :
名無しさん@お腹いっぱい。 :2012/10/07(日) 22:48:03.25 ID:Rgc6BpHG0
よくわからない。ヒントください
875 :
名無しさん@お腹いっぱい。 :2012/10/07(日) 22:56:19.45 ID:bWqmbs96P
t2="2012/10/07 10:00:00"//取得した情報10:00だけだと下部のgettimeでエラーが出るので秒数まで追加 比較時間=GETTIME(0,t2)//t2に入力した時間を基準とした現在の時間 現在時刻= GetTime()//現在の時刻 比較時間と現在時刻を比較して+か-かをIF文などで分岐
876 :
名無しさん@お腹いっぱい。 :2012/10/07(日) 23:05:40.46 ID:bWqmbs96P
+か-というよりもどちらが大きいkが正しいか
hh:nnなことを祈ってるわ
例えば5時〜7時の前に繰り返し実行ってどうやんの?
5時から7時の間に繰り返し実行するように書く
gettime v1 = G_TIME_HH2 v2 = val(v1) ifb v2 > 4 and v2 < 7 // 5:00~6:59 // msgbox("実行") else sleep(0.1) endif 久々で忘れたけどこんなだっけ
すげえ、やるじゃん
HH2つかってわざわざキャストせんでも
gettime ifb G_TIME_HH >= 5 and G_TIME_HH < 7 // msgbox("実行") else sleep(0.1) endif 単純にこれでいいのかw
創・価 死・ね 創・価 死・ね 創・価 死・ね 創・価 死・ね 創・価 死・ね 創・価 死・ね 創・価 死・ね 創・価 死・ね 創・価 死・ね 創・価 死・ね 創・価 死・ね
>>875 できました。ありがとうございます。
でも比較時間の情報は
array[4]に格納されていて、
その情報というのが00秒が入っていません。
1つの変数にあとから情報を追加することって出来ますか?
その配列がどこから出てきたのか知らんが さすがにそんなuwsc以前のプログラミングの基礎は自分で調べろよ
変数がなんなのか配列がなんなのか そんなことを手取り足取り教えるスレじゃないぞここは
889 :
名無しさん@お腹いっぱい。 :2012/10/08(月) 12:29:11.47 ID:JbGqZM6TP
+":00"
いい加減じぶんでググれよ
マウス記録以上の動作をさせたくて予備知識もなしで自分で調べる事も出来ない奴に扱えるツールじゃないよ
本当に他からのコピペだけでコピペしたスクリプトがどの行で何をしてるとか考えたことないんだろ
あやしいスクリプトは裏で個人情報を中華サーバーに送るから気を付けろよ
誰も求めてない無駄なレス集っと こんなん書く暇あるならスクリプト書いてろやカス 887 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2012/10/08(月) 11:56:29.12 ID:kUNAqCrN0 その配列がどこから出てきたのか知らんが さすがにそんなuwsc以前のプログラミングの基礎は自分で調べろよ 888 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2012/10/08(月) 12:26:56.55 ID:E6vnKBWX0 変数がなんなのか配列がなんなのか そんなことを手取り足取り教えるスレじゃないぞここは 889 名前:名無しさん@お腹いっぱい。[] 投稿日:2012/10/08(月) 12:29:11.47 ID:JbGqZM6TP +":00" 890 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2012/10/08(月) 12:52:41.34 ID:/sKymyZ20 いい加減じぶんでググれよ 891 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2012/10/08(月) 15:26:31.91 ID:CVUaNXaa0 マウス記録以上の動作をさせたくて予備知識もなしで自分で調べる事も出来ない奴に扱えるツールじゃないよ 892 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2012/10/08(月) 15:42:53.57 ID:PSg9ymaQ0 本当に他からのコピペだけでコピペしたスクリプトがどの行で何をしてるとか考えたことないんだろ 893 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2012/10/08(月) 18:36:52.08 ID:CnZE3GdE0 あやしいスクリプトは裏で個人情報を中華サーバーに送るから気を付けろよ
>>894 無駄のない返事が欲しければ本家掲示板で質問すればいいだけ
誰も求めてないレスの最たるものが、 自分で調べようともせず答えだけを教えてもらって 楽に目的の動作を得ようとする無賃プログラム発注者の 内容小出し要エスパー質問な
もういい加減初心者騙った荒らしには反応すんなよ
初めて書き込みます。 ファイルのコピーについて質問です。 フォルダ内にあるデータを一括で指定場所へコピーというのを考えています。 UWSCを見ていた所コピーはdosで行うと書いてありましたが、 コピー元のファイル指定をどのようにすればいいのかが 分からず立ち止まっています。 データはエクセルやワード等様々なデータが混在しています。
そこまで分かってるなら dos コピー で検索すればいいんじゃないかな
>>899 ワイルドカードでいいのかな?
*.xls
>>899 複雑になることがわかってるコピーなら、dosコマンドのxcopyが良いよ。
また、FFCをコマンドラインで使うのも割りと便利。
これらの使い方はUWSCの使い方ではないからここで聞かないでね。
SENDSTR(0, IE.document.body.innerHTML) という動作と同じことをchromeで行いたいのですが、何か良い方法はありませんか? 現在はソースを表示→全選択してコピーという方法で代用していますが、 あまりスマートではなく、誤作動が多いので・・・
>>905 どうもそんな感じがしてましたが、chromeとは相性が良くないんですね
別の方法を検討してみることにします
ありがとうございました
907 :
名無しさん@お腹いっぱい。 :2012/10/11(木) 20:53:12.24 ID:uLDQ+11O0
質問です。クリップボードに複数行の文字をコピーして 2行目だけ配列して、とかって出来ますか?
908 :
名無しさん@お腹いっぱい。 :2012/10/11(木) 20:57:12.55 ID:hXRoTmYu0
できる
split
910 :
名無しさん@お腹いっぱい。 :2012/10/11(木) 21:53:06.15 ID:uLDQ+11O0
STR=getstr(0) ARR = SPLIT(STR,"< #CR>") FOR A = 0 TO RESIZE(ARR) PRINT ARR[A] NEXT ここまではできました。あとは、1行ずつ配列したいんですが やり方が思いつきません。教えてください。
配列したいという日本語の意味が分からない
912 :
名無しさん@お腹いっぱい。 :2012/10/11(木) 22:01:09.68 ID:uLDQ+11O0
クリップボードで 「909 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2012/10/11(木) 20:58:16.11 ID:DSLOmZsI0 split」 をコピーしました。 arr[1]には909 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2012/10/11(木) 20:58:16.11 ID:DSLOmZsI0 arr[2]にはsplit みたいに入れたい。
914 :
名無しさん@お腹いっぱい。 :2012/10/11(木) 22:11:39.66 ID:uLDQ+11O0
>>913 何か2行目だけを表示させようとしたらできなかった。
print ARR[2]ってやつとバリアント配列の範囲を超えていますってエラーメッセージが出てしまう。
理由がわからない。
配列のキーは0からスタート
916 :
名無しさん@お腹いっぱい。 :2012/10/11(木) 22:17:37.22 ID:uLDQ+11O0
print arr[0]にしたら同じのが2つ繰り返された。意味わかんない。 俺はクリップボードの中の真ん中の行の文字列を取得したいの! 11111 22222 33333 って文字列があったら、22222だけコピーしたいの。
for文を何だと思ってんの
そこからかよ PRINT ARR[A] の前に PRINT A 入れてみろ
配列のことが全く分かってないんだろうな 基礎は自分で調べてこいって言ってたろ
921 :
名無しさん@お腹いっぱい。 :2012/10/11(木) 23:28:01.48 ID:ZfM+z7mOP
MacromediaFlashPlayerActiveXをフラッシュサイトすべてで使っているわけではない
922 :
名無しさん@お腹いっぱい。 :2012/10/12(金) 00:34:50.04 ID:40LGAyKoP
>>916 print arr[0]にしたら同じのが2つ繰り返された。意味わかんない。
for文で繰り返した回数だけarr[0]を表示って書いてるから
print文は条件じゃない、真ん中の行を表示なら真ん中の場合という条件が必要
923 :
名無しさん@お腹いっぱい。 :2012/10/12(金) 07:09:18.74 ID:jbe0odTY0
違う!! 111 222 333 444 555 って文章があります。コピーしました。クリップボードに送られました。 そん時にARR[0]に111 ...ARR[4]に555を入れたいの。 そんで、例えば、ARR[1]とARR[2]を取り出したいってなった時、配列に入れて置いたほうが便利でしょ
924 :
名無しさん@お腹いっぱい。 :2012/10/12(金) 07:16:05.96 ID:ZMW2hFUX0
>>910 のでARR[0]に111 ...ARR[4]に555って入っているが
配列に入れてというか配列にしておいたらじゃね?
926 :
名無しさん@お腹いっぱい。 :2012/10/12(金) 07:27:36.22 ID:jbe0odTY0
できたあああああああああああああああ
ガキんちょの一問一答にいつまでも付き合ってやるとか優しいなお前ら
質問です ブラウザchromeにてRecIE機能を使いたいです 現在カメラモードで記録して使っているのですが エラーが多くRecIE機能で記録のやり直しをしたいです 諸事情からブラウザはgoogleのchromeしか使えません windowsxpsp2 どなたかお願いします
できません
あら、FireFox 17 は POSACC でマウス位置の文字情報とか取得できなくなっちゃた 自作の支援スクリプトとか動かなくなるので乗り換えを含めて検討しないとなー
931 :
名無しさん@お腹いっぱい。 :2012/10/12(金) 21:52:05.97 ID:KRNdNRVW0
chromeはいいぞ
>>930 自己訂正、手動再起動させた後だと
FireFox 17 でも POSACC でマウス位置の文字情報は取得できました
自動更新直後だったからなのか?とりあえずもう少し様子見します
933 :
名無しさん@お腹いっぱい。 :2012/10/12(金) 22:15:43.14 ID:40LGAyKoP
934 :
名無しさん@お腹いっぱい。 :2012/10/13(土) 03:30:26.25 ID:0XiR7I2j0
chromeでIEみたいな制御ってできないの? タブ開きとか指定URL移動とかもショートカット駆使しないとだめかな。
935 :
名無しさん@お腹いっぱい。 :2012/10/13(土) 10:07:29.14 ID:MkmS22bL0
既にYahooページを開いているchromeのウィンドウのURLを
書き換えたいのですが、下記の内容でうまくいきません・・・。
アドバイスを頂きたいです(´・ω・`)
wID = GETID("Yahoo")
CTRLWIN(wID,activate)
SENDSTR(wID,"
http://www.hyperdia.com/ ",1,True,False) //ハイパーダイヤへ
936 :
923 :2012/10/13(土) 10:10:28.11 ID:c2mpYdBY0
質問お願いします。 arr[0]~[5]をセレクトボタンに入れて ボタンを押した時、配列の中のものをクリップボードに送ることってできますか?
937 :
名無しさん@お腹いっぱい。 :2012/10/13(土) 11:01:02.03 ID:feVP+BBu0
出来る サンプル作って試せばすぐ答え出るだろ
938 :
名無しさん@お腹いっぱい。 :2012/10/13(土) 11:05:24.44 ID:jnk1ulH0P
>>937 サンプル作る程度の能力も無い無脳がなんか言ってるw
煽ったってサンプルは出てこないぞ
この程度のサンプルすら作れない奴なんていないだろ
丸投げしたいなら作成依頼スレ行ってくれ
>>935 sendstrの最後の引数をtrueにしたらいいんじゃない
訂正 俺が使ってた4.6bなら上手く行ったんだけど 最新版の4.8bで試したら上手く行かないな
4.6bなら sendstr(id, "test", 1, true, true) で上手くいく 4.8bだとあらかじめchromeのurl欄にフォーカスを移しておかないと上手くいかない uwsc側のバグか何かじゃないかな
>>944 自分のは4.7なのですがダメですね・・・。
で、Alt+Dでアドレスバーにフォーカス移してから
ご教授されたとおりやったらうまくいきました。
ありがとうございました。
指定のボタンやら画像が出てきたらそこをクリックさせるのはどうやればいいですか? Aのボタンが出てきたらAを押してその後の操作に繋げていく BのボタンだったらBを押してその後の操作に繋げていくって感じです
947 :
名無しさん@お腹いっぱい。 :2012/10/14(日) 15:49:20.00 ID:OB5O9yhT0
まず自分でどこまでやったのか書かないで全部丸投げか? フローチャートを書いてどこで詰まっているのか、ブラウザは何か、どこをどういう処理をさせたいのか(画像の比較チェックかタグ情報でチェックかなど) 何もかもわからないのだとしたらまずHELPを全部見て公式のサンプル見てってところかっら始めろよ
文字通りAかBが出るまでSleep関数入りでループさせつつ その中でAがでたら処理Aを纏めた自作関数を呼び出し Bがでたら処理Bを纏めた自作関数を呼び出すといい 終了処理をスマートにするのはやりくりを覚えてからでも良いんだし 上にもあるようにやりたいことを順序立てて整理するしかない
imageClick関数を自作して使っている。 戻り値には、指定BMP画像の有無を返すようにしてるので、副作用付き判定関数としてIF文に使うと非常にシンプルに書ける。
950 :
名無しさん@お腹いっぱい。 :2012/10/17(水) 22:32:21.43 ID:v49WnRZF0
いつも質問してくれるあいつが居ないとこのスレはまるでだめだなw
何がどうダメなのかkwsk
3秒止まったら○○する というようなスクリプトを組むことはできますか? また、組める場合どのように書けばいいですか? スペック的にたまにフリーズしてしまい、動作がズレることがあるのです
基本的には無理 その動作が実行可能な状態か確認するか 又は ある動作をした結果が反映されるのを確認してから次の動作に移行する ロジックにするモンです
ソースとか動的に動く部分を参照して変化がなければとか特定位置のスクリーンショットを定期的にとって変化がなければとかいろいろ作ることは可能だと思うけど もちろんサイトとかプログラムによって出来ることできないことはあるけど ただ3秒止まったくらいで問題が出るようなスクリプトだとそれ自体が負荷かけすぎな気もするから実行頻度落とすとか(簡単なところではsleepを多く入れるとか)で負荷の軽減の方を先に試した方が良いと思うけど
>>818 親知らずが原因かもしれないから歯医者受診オススメ
抜いたら空を飛べるかもってくらい楽になった
958 :
名無しさん@お腹いっぱい。 :2012/10/21(日) 03:36:16.21 ID:xBL2+CF40
そうだな。コードも捗る。
>>953 いつもなら1秒以内に終わるけど処理落ちすると3秒以上かかるような処理?
止まったらズレては困る部分に入るところと出る所で現在時刻をチェックして、
3秒以上の差が出ていたら例外処理に行けばいいじゃん?
超初心者ですいません chromeで自分の押したいボタンの名前て言うのかidて言うのかわからないんですが uwscに押したいボタンを正確に伝えたいんです ie使う時はRecieで記録してるので全く問題ないのですが chromeではRecieが使えないのでカメラ記録したものをループさせているのですが そのサイトは数時間おきにボタンの位置を縦に20〜30ズラすのでエラーになってしまいます そこでクリックするのをボタン指定にしたいのですが ボタン名の取得がサッパリわかりません 公式にあるchromeでGoogle検索のサンプルを見たり chromeの機能「要素」でせのページを見たりしましたが 基礎知識が全くないのでちんぷんかんぷん状態です どなたかchromeでボタン指定する方法(その部分のコード)教えて下さい windowsxpsp2 どうぞよろしくお願い致します
961 :
名無しさん@お腹いっぱい。 :2012/10/21(日) 19:08:56.46 ID:dHE3+HVy0
chromeもIEもFirefox、その他ブラウザでもボタンの名前とか使い方は基本変わらないよ ボタンの操作はCOM使うわけでもないからIEと同じようにCLKITEMで押せると思うけど
>>961 いや標準コントロール使ってないから使えないよ
昔のバージョンのchromeにはclkitem使えた
964 :
名無しさん@お腹いっぱい。 :2012/10/21(日) 20:51:41.35 ID:t2Lbobrd0
昔の担任に会った。おっぱいがおっきくなってた。 僕のおちんぽもおっきくなった。
>>960 です
レスありがとうございます
ちょっと誤解を招いてましたすいません
ボタンの名前を知る方法が知りたいです
chromeじゃなくてieでも
Recieがなければ自分にはわかりません
ieでボタン名を調べたい時はRECIE使って調べています
これだけでも正規ユーザーになって良かったと感謝しています
しかし、自分にはRecieを使えない環境ではボタン名を知る方法を知りません
何度もすいません
chromeでボタン名を調べる方法(コード)あればお願いします
ソースを見て<button ○○ aria-label=○○>のラベルの部分
fcuc.uws
>>960 です
早速のレスありがとうございます
今から試してみます
感謝です
969 :
名無しさん@お腹いっぱい。 :2012/10/22(月) 23:11:41.23 ID:citX7pUi0
970 :
名無しさん@お腹いっぱい。 :2012/10/22(月) 23:12:14.65 ID:citX7pUi0
こっちは埋めようか
それじゃ、すこしksk
こんな事くらいにしか貢献できないからksk
ksk
自動化ツールの総合スレってありませんか?
CLKITEM、同じ処理でも反応にばらつきがあってsleepだけじゃ足りんね PEEKCOLORところどころに入れてやっとなめらかに動くものができた
976 :
名無しさん@お腹いっぱい。 :2012/10/23(火) 12:25:44.90 ID:M1HNqcUrP
WHILEとか使ってるか? 戻り値見てTRUEが返ってくるまで待機させるとか
地味にhelpにある ms: 実行までの待ち時間 (ミリセカンド)ってポイントだよね なんとなく省略しがちだけど 場合によってはタイムアウトしてるケースも当然ある訳で クリティカルな操作ならちゃんと実行前確認か実行後確認しないと、ね
IE以外のブラウザの文字、例えば検索エンジンの検索結果から特定のリンクを認識させてクリックする処理って、 画像として認識するしかないですか?
コマンドラインから使えるテキストブラウザ探したほうが早そう
980 :
名無しさん@お腹いっぱい。 :2012/10/23(火) 17:09:49.67 ID:M1HNqcUrP
firefox使ってるが普通に文字の取得とかできるよ 昔はクロームでもできたが今はいろいろ変わったみたいでそっちはわからないが
981 :
名無しさん@お腹いっぱい。 :2012/10/23(火) 17:15:38.18 ID:TJ9o4Bm50
簡単に取得できないのはクロームだけじゃね? 公式ページにあるサンプルの マウスカーソル下の文字と位置を取得、Shiftキーによりクリップボードへコピー #n30 を動かしてみれば簡単に取得できるものとできないものはすぐわかる
982 :
名無しさん@お腹いっぱい。 :2012/10/23(火) 17:34:27.85 ID:M1HNqcUrP
ヒントになるかわからないが 全体の文字を取得>キーワードとの比較>一致するものがあればその付近にあるリンクっぽいアドレスをコピーもしくはその部分の前の文字の位置をクリック処理 グーグルの場合 サイト名 リンク - キャッシュ 日付 - サイト内の本文 みたいになってるので取得した文字の上の部分のアドレスっぽいところの前の文字をクリックって方法で IEオブジェクト使えばもっと楽だけど使えない場合の方法としての一例
FireFoxで画面に表示されている(座標までは調べた)事が前提だけど POSACC 関数で ACC_NAMEなら リンクの表示文字列 ACC_VALUEで リンク先のURL が取得できるよ
firefoxもIEやSleipnirみたいにCOM操作できればいいのに
便利すぎるとセキュリティホールになるから仕方ない。 ブラウザを外部から簡単に操作できてしまうと、知らん間に各種情報抜かれたり、アカウントを乗っ取られたりする恐れがある。 昔は怪しいサイト行ったら、最悪同時に開いてたサイトのアカウントが乗っ取られたりしたもんだ。
どちらかというと他のブラウザは マルチプラットフォームだから独自のクラスライブラリで構築している事の方が大きい理由だと思うよ コントロールすら独自のケースがあるからね
コマンドラインツールでhtmlのソースをテキスト取得して正規表現で抜き出して欲しいURLをゲットしたほうが良くね?
そうそう ForeFoxだとGETITEMでITM_ACCCLKを取得すると クリック可能な文字列としてリンクの表示文字列が取得できるよね (前半はFireFoxのクリック可能な情報があるので照査が必要だけどね) とだらだらとFireFox小ネタで埋める
地味に梅
990 :
名無しさん@お腹いっぱい。 :2012/10/25(木) 23:34:15.95 ID:hcmxN7yXI
あと10!
Windows8購入手続きを自動化してる人いる?
梅
うめ
994 :
名無しさん@お腹いっぱい。 :2012/10/26(金) 03:09:28.43 ID:uB8M/TlO0
どんだけ埋めずに放置してんだよ 埋め
995 :
名無しさん@お腹いっぱい。 :2012/10/26(金) 03:10:58.34 ID:uB8M/TlO0
次スレ使うのは埋めてからが基本だろうに
996 :
名無しさん@お腹いっぱい。 :2012/10/26(金) 03:13:03.76 ID:uB8M/TlO0
埋め
997 :
名無しさん@お腹いっぱい。 :2012/10/26(金) 03:14:24.42 ID:uB8M/TlO0
埋め
998 :
名無しさん@お腹いっぱい。 :2012/10/26(金) 03:16:41.73 ID:uB8M/TlO0
埋め
999 :
名無しさん@お腹いっぱい。 :2012/10/26(金) 03:19:06.17 ID:uB8M/TlO0
埋め
産む
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。