1 名前:名無しさん@お腹いっぱい。 [2009/12/09(水) 05:27:33 ID:J1DL1P1U0] Windowsを自動化させるツールUWSC。 www.uwsc.info/ uwsc使いのみなさま、マターリ己のスクリプトを晒しましょ。
345 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/22(木) 22:38:55 ID:BzTJSDhd0] 上書き確認のダイアログ処理とかエラーメッセージの対応とか 動的ページの処理とか 結構大変やん? 僕は一度作って改良して使いまわし出来るようになってからはそれほどかからんようにはなったけど、 半年くらいみっちりやらんとちゃんとしたもんは作れん。 いや、単純な操作なら録画・再生程度でそれなりにできるけどね。 フリー版入手よりも、シェア版のお試しを勧めるべきだったか。 んでIEオブジェクトのスレッド間使い回しがなんかバグりまくって動かんしね。 OLEEVENTで受け取ったIEオブジェクトも高確率で使えんし。 どーゆー条件でなら使えるのかよく分からん。
346 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/24(土) 08:10:49 ID:6nk6f6hV0] これってUWSCを動かすファイル? www.dotup.org/uploda/www.dotup.org835021.jpg
347 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/24(土) 08:17:59 ID:kCRize2QP] ・・・情報提供料としていくらまで出せます?
348 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/24(土) 12:55:57 ID:Xrgo5/kc0] www
349 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/24(土) 17:10:01 ID:ZblMfkgKP] ゲームでキャラの位置を正確にしたいんだけど 何かいい方法ある? 東西南北に敵キャラがいて丁度真中迄移動したいんだけど 微妙にずれていくので教えて下さい 東との距離が近くなれば西との距離が遠くなり 南との距離が近くなれば北との距離が遠くなる 上記のような感じでぴったし真中に合わせられないんですよ ゲーム内の位置とPCの座標を合致させる方法あれば教えてください UWSCをゲームに云々のくだらない回答は不要です 答えられないならスルーでいいですから >>302 と>>343 書き込んだ人は自分へのレス禁止 うざいからお前のレスなんて要らねーから お前のレス必要ないから返事すんなよ ていうかお前わかってないのに答えようとするから邪魔なんだ罠 消えろ変人解答者 ここでうざい解答者ってお前のことだわ 別人の振りしてレスすんなよ
350 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/24(土) 17:11:45 ID:IaNfdo2A0] チートするための方法は教えられないなぁ
351 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/24(土) 17:17:38 ID:ZblMfkgKP] >>349 です 色判定で3点あわせることに成功 自己解決しましたので349への回答は不要です
352 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/24(土) 17:18:41 ID:ZblMfkgKP] >>350 おまえさー 答えられないのに出てくんなよ マジうざっ お前がまともな回答したことあるの? それ聞いてみたいわw
353 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/24(土) 17:20:13 ID:e4lY74IeP] スルーな
354 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/24(土) 17:28:03 ID:ZblMfkgKP] 2chのソフト板全体で言える事だけどw 質問者が何も前進しないレスが多いな 本人必死でやってんだから そっとしておいてあげればいいのに 前進どころかw 足をひっぱりにかかるからなー 質問者をこき下ろす事だけ書いた奴が解答者ぶってるのは 変だと思う 解答者の答えを答えつつ罵倒するならまだしも こいつわかってて解答者ぶってるの?みたいなのばっかしwww 解答者ぶりたいから張り付いてるのが趣味なんだろw
355 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/24(土) 17:32:53 ID:ZblMfkgKP] >>350 >>353 ご苦労さん お前は今後このスレで回答しなくていいからね アホな質問に答えられないのはアホだから 意味わからんやろねw 人が楽しんでるんだからおれでいいだろ 誰にも迷惑かかってないし 万が一かかっていたところで お前がパトロールする必要ないから 回答できない解答者は消えろ
356 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/24(土) 17:50:07 ID:ZblMfkgKP] UWSCは大変魅力のあるソフトなのに 誰かのせいで質問者来ないw ここは答え返ってくるよりまず罵倒されるの目に見えてるからなw UWSCの魅力が一般人に伝わらないのは こういうアホ解答者が蔓延るからだろ まともな回答できないのかできるけどしないのか知らんけどw 作者のうみうみさんも痛し痒しだろなー 勝手な推測で罵倒された方はたまったもんじゃない 6700円払って怒鳴られた挙句に自分のやりたい事は一歩も前進しない 6700円は社会勉強代として放置する人が多いのはお前の責任だ>アホ解答者 UWSCはいいソフトだよ もっと広めればいいのに アホ解答者は正義の味方を装うライバルソフトの関係者か? チート使用者がチートの質問者に対して 「チートは不正!!!」って叫んでライバルを増やさないよう無駄な努力してるのと同じだわw クズ解答者の振りして実はUWSCの反映を阻止してるんだろなw
357 名前:343 mailto:sage [2010/04/25(日) 01:53:03 ID:MDkvEHtj0] >>356 まあ、作者サポートのある本家掲示板でいらんことを書き込んだことは確かにある。 でもここは2ちゃんねるだ。 だから本家掲示板で禁止されているネトゲのマクロの話もできる。 ID:ZblMfkgKPは作者をよいしょしているが、 ID:ZblMfkgKPだって本家掲示板からは追い出されるような人間だと言うことを自覚しろ。 俺は>>328-332 を書き込んだものだけど、UWSCで位置探知は難しいのであんまりやってない。 多少なりともコントロールできているなら>>349 はすごいと思うが、基本的なことが分かってないらしい。 正確なコントロールに必要なのは事象を数式化することだよ。 単純な座標計算ではなくね。 別に関数式一つで表せと言うことじゃなく、配列データを使ってもいい。 UWSCは複数のものを同時に探査できないからキャプチャタイミングがずれる。 タイムラグもあるのでそれを想定した操作をしなければならない。 だからTドット単位でのコントロールは、そこまでやっても大変だ。 結局、UWSCをメインに使うとしても、DLL関数を作らないといけなかったりする。 グラフィック処理がもっと多様に記述できて高速に動作する言語ならスクリプトだけでもいけるかもしれないが、 その辺がUWSCの限界だよ。 敵が移動しなくて時間もかけていいのなら、UWSCでもちゃんとぴったりあわせられるけど、 ぴったりあわせるのが目的なら、発想を変えて計測だけ自動で行い、自分で操作するという手もある。 UWSCを使いこなすのは立派だが、優れた人間は効率よく作業するためにいろんな道具を使うし、場合によっては道具を自作する。 僕がUWSCのことをあまりよく書かなかったのは、「あなたがやろうとしていることにUWSCが適しているだろうか」という疑問を投げかけただけだよ。 探せばフリーソフトで簡単に実現できるようなことかもしれない。 お金を出すんならもっといろいろあるだろう。
358 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/25(日) 02:24:53 ID:PrF2KgzeP] >>357 お前のレスはなんでそんなにひねくれてるんだ 美味いもの食ってゆっくり寝てみ ちょっとは考え方変わるから どーでもいいこと1人で理論付けて面白いのかどうなんだかw
359 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/25(日) 06:23:28 ID:5DiiqLEb0] 面白いキチガイが二人もいるとは 愉快なスレだな
360 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/25(日) 15:59:04 ID:inGnxg/U0] 思わぬ真性が釣れたみたいだな
361 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/25(日) 18:33:50 ID:O5DTM8+t0] ふりー版使用。 あるURLのページのソースを取得したいのですが IEのメニューで「ソース」を実行すると表示されるコードを取得するには public ie = CreateOLEObj("InternetExplorer.Application") IE.Visible = True ie.navigate(URL) REPEAT SLEEP(0.1) UNTIL !(ie.Busy) AND (ie.ReadyState = 4) allhtml=ie.document.body.innerHTML では違うんでしょうか? URL="www.google.com/images?hl=ja&source=imghp&q= 検索ワード" で画像検索したページのソースを取得したいのですが、 メニュー・表示・ソースで出てくるコードと innerHTMLで得られるコードが違うのです
362 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/25(日) 19:32:32 ID:zNMUBgVl0] 64bitでSkScriptは動きますか?
363 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/25(日) 23:45:37 ID:MDkvEHtj0] >>361 IEのソースは受信したそのまんま FireFoxのソースは文字コード変換済み ie.document.body.innerHTMLはそのときの(動的な処理が施された後の)HTML。(だと思う) ie.ReadyStateが3から4になるときに動的な処理が施される。 で、どうやったらその飯が取れるかだっけ? ↓のoHttp.responseBody が多分そのまんまだよ oHttp = CreateOLEObj("MSXML2.XMLHTTP") LastModified = "Thu, 01 Jun 1970 00:00:00 GMT" while true sleep(5) // Webページ読み込み COM_ERR_IGN //COMエラー無視 oHttp.Open("GET", url, True ) oHttp.setRequestHeader("If-Modified-Since", LastModified); oHttp.Send("") ifb 200 = oHttp.status Then // ok else continue endif LastModified = oHttp.getResponseHeader("Last-Modified") ifb COM_ERR_FLG continue endif COM_ERR_RET //エラー処理復帰 str = DECODE(oHttp.responseBody, CODE_BYTEARRAY) break wend print str
364 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/27(火) 15:23:05 ID:GVvjxkxo0] UWSCで空きメモリ容量を取得したいんですが、どうやったらいいでしょうか? x264のエンコードをuwscを使って自動化しようとやっているんですが、 空きメモリが一定以上無い時は処理をスルーするようにしたいと思っています。
365 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/27(火) 16:49:04 ID:QTDzfzJxP] message = doscmd("systeminfo") msgbox(message) dosのsysteminfoから取ってくればいいんじゃね?
366 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/27(火) 17:22:53 ID:GVvjxkxo0] そんなものが…と思って調べてみたらPro限定コマンドでHomeの自環境では 不可能でしたorz
367 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/27(火) 19:31:57 ID:5iz8oRr40] >>366 タスクマネージャ起動させといてパフォーマンスタブ-物理メモリ-利用可能読めば?
368 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/27(火) 22:37:02 ID:GVvjxkxo0] >>367 ありがとうございます。タスクマネージャは常時起動しっぱなしだったんで これでなんとかなりました。 ところで、UWSC単体あるいはWSH等を含めてUWSCのスクリプト上?で 空きメモリを取得するにはどうしたらいいんでしょうか。
369 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/28(水) 01:26:20 ID:IFvYJtzA0] >>368 ttp://www.upken.jp/kb/HdPBaCEihTHpWKzfDZZsVhEJEYkamv.html FreePhysicalMemory ってプロパティがある。 上記を拡張子 .vbs で保存して実行すればとりあえず空きメモリが取得できる。 コマンドラインからファイルを指定してもダイアログが出るんだけど、 > cscript test.vbs っていう風に、コマンドプロンプトからコンソール向けスクリプトで実行すると、 コマンドプロンプトに結果を返してくれる。 これをDOSCMD()で呼び出せば結果を文字列で受け取れる。 でも余計な文字列はDOSコマンドで除去した方がいいので > cscript test.vbs | find "Free" として、空きメモリの行だけ受け取ればいい。 数値だけ受け取りたければ、findstrで正規表現を使って数値部分だけを返すようにも出来るけど val()に渡すだけで数値化できるならその方が簡単だね。
370 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/28(水) 02:23:37 ID:BNDwd4xF0] >>369 これ、殆どそのままUWSCでも使えるじゃないかw COMオブジェクトを触れるなら わざわざコンソールの文字列をfindしなくてもいいと思う。 まぁ、COMは難しいなぁ、と思うなら369のやり方でも実用上問題ないだろう。
371 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/28(水) 02:31:36 ID:5rPFMVrg0] UWSC上でVBScriptのfor-eachに該当するのってどういうやり方になるの?
372 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/28(水) 02:32:05 ID:IFvYJtzA0] >>370 UWSCに直そうと思ったんだけど、For Each 〜 in をfor 〜 nextで実現する方法が分からなかった。 .lengthの回数配列でまわす程度のイメージは持ってるんだけど・・・できなかった。 そんな苦労をするくらいなら結果だけ使った方が簡単だと思ったんだ。
373 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/28(水) 03:26:20 ID:IFvYJtzA0] .length じゃなくて .Countだったっぽいけど、配列アクセスはできないものもあるらしい。 よくわからないけどもしかしたらそれかも。 WSH(・∀・)スレッド! Part 4 ttp://pc12.2ch.net/test/read.cgi/tech/1243095768/210-218 Item Items ItemIndex とかいろいろ試したんだけど。 ・・・UWSCでのやり方出てきた。GetOleItem使うのか。 ttp://siromasa.xxxxxxxx.jp/Term/4ta1.html Function Processor(Obj_CS) Dim Col_Processor = Obj_CS.ExecQuery("SELECT * FROM Win32_Processor") Dim i, Str For i = 0 To GetOleItem(Col_Processor) - 1 Dim Obj = All_Ole_Item[i] If i > 0 Then Str = "<#CR>" + Str Str = "Cpu" + "[" + GHz(Obj.MaxClockSpeed) + "] [" + Trim(Obj.Name) + "]" Next Result = Str FEnd
374 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/28(水) 06:07:04 ID:TGzzLXVI0] google画像検索で出てきた画像をまとめて保存するスクリプトを書いたのだが、晒すべきかどうか迷う… google画像検索で出たダウンロード先はそれぞれ別のサーバーだから、特定のサーバーに過重な負担をかける心配はない。 だが、pixivやふたば掲示板のような画像の置いてあるサーバが同一の掲示板やサイトで、同じようにスクリプトでダウンロードした場合、 あっという間にサーバーが悲鳴をあげる。そして管理者が対策をし、そのスクリプトは使えなくなってしまう。 サーバーに過重な負担をかけないよう、画像一枚に二分とか「手動でダウンロードするのと同じくらいのインターバルを置けばそういう事態は回避できるだろうし、 サーバーの貧弱なところからダウンロードする場合、自分ならそうする。 注意書きをしたからと言って百人に一人の馬鹿がそれを平気で破り、サイトそのものに大迷惑をかける恐れもある。 自分の発表したスクリプトが改変されてpixivやふたばに大迷惑をかけないという保証はどこにもない。 バカや不心得者にスクリプト技術を持たせばそれは凶器。 スクリプト荒らし一つで簡単に2chで特定のプロバイダがアク禁されてしまうことを考えれば、ちょっとの改変で画像サイトに大迷惑をかける恐れのある スクリプトは、やはり自分ひとりで使うのが正解だろうか…
375 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/28(水) 06:51:38 ID:IFvYJtzA0] IEを自動操縦するぶんについては、鯖から対策されると言うことはないよ。 2ちゃんねるはプロ串とか荒らしツールの対策はされるんだけど、 IEの自動操縦についてはブラウザ情報がIEなもんだからソフト的な対策は施されない。 同じURLを書き込めば制限されたりするけど、それは自動か手動かを判断しない。 コピペ投稿したらIPアドレスで書き込み制限されるだけであって、ログ取得については無制限。人大杉にはなるけど。 Googleが負荷を気にするかについてだが、 今Youtubeが次々に自動的に動画を再生している。Youtubeの機能で。 つまり、Googleは情報を配信したがっているわけだから、収集ツールなんかはむしろ臨むところなんじゃないかな。 要するにくださいってことです。
376 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/28(水) 10:35:49 ID:5rPFMVrg0] >>373 369のをGETOLEITEMを使いアクセスするのはやったけど エラーも何も出ない代わりに何も出力されず終わる…
377 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/28(水) 11:32:02 ID:BNDwd4xF0] >>376 //--------------------------------------------------- Locator = CreateOLEobj("WbemScripting.SWbemLocator") objService = Locator.ConnectServer objEnumerator = objService.ExecQuery("Select * FROM Win32_OperatingSystem") GetOLEitem(objEnumerator) print "Free : " + ALL_OLE_ITEM[0].FreePhysicalMemory print "Total: " + ALL_OLE_ITEM[0].TotalVisibleMemorySize objEnumerator = null //--------------------------------------------------- WMIを使うなら、MSDNあたりを眺めておくと何が入っているかの見当がつくよ。 msdn.microsoft.com/en-us/library/aa394084%28v=VS.85%29.aspx (Win32以外もたくさんあるけど) 巷にあふれるVBからのコード変換をする際の手助けになるはず。
378 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/28(水) 11:32:14 ID:IFvYJtzA0] >>376 出来たんだけど 【実行結果】 Count : 1 Free : 265140 Total: 523760 【ソース】 Locator = CreateOLEObj("WbemScripting.SWbemLocator") objEnumerator = Locator.ConnectServer.ExecQuery("Select * FROM Win32_OperatingSystem") print "Count : " + objEnumerator.Count for i = 0 to GetOleItem(objEnumerator) - 1 Obj = All_Ole_Item[i] print "Free : " + Obj.FreePhysicalMemory print "Total: " + Obj.TotalVisibleMemorySize next sleep(10)
379 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/28(水) 11:39:28 ID:BNDwd4xF0] >>378 短時間でかぶりすぎだろw
380 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/28(水) 12:05:41 ID:5rPFMVrg0] あれ? コードほとんど同じはずなんだけど… なんかミスってたかな。 ちょっとやってすぐ消したからどこが間違ってたのかわからんw
381 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/28(水) 13:01:21 ID:IFvYJtzA0] >>379 うん。書いた瞬間やっちゃったって感じだた。 >>380 for i = 1 とかがありがちなミス あとはprintした瞬間にスクリプトが終了とか。 結果を見るためのsleep(10)だからね。 UWSCを通常起動して実行すればログ窓は残ってるけど、 関連付け実行ならsleep()入れないとすぐ消える。
382 名前:374 mailto:sage [2010/04/28(水) 19:57:44 ID:TGzzLXVI0] 結局晒してしまう google画像検索で出た画像を指定数、自動保存する ここから keyword="九龍城" // 検索キーワード downKazu=30 // ダウンロードしたい数 folder="C:\Documents and Settings\k\My Documents\My Pictures" // 保存先フォルダ public FS = CreateOleObj("Scripting.FileSystemObject") ifb FS.FolderExists(folder+"\"+keyword)=false then FS.CreateFolder(folder+"\"+keyword) endif for page=0 to ((downKazu+17)/ 18) pagenum=page*18 URL="www.google.com/images?hl=ja&source=imghp&q= "+keyword+"&start="+pagenum+"&ndsp=18" public ie = CreateOLEObj("InternetExplorer.Application") IE.Visible = True ie.navigate(URL) REPEAT SLEEP(0.1) UNTIL !(ie.Busy) AND (ie.ReadyState = 4) allhtml=ie.document.body.outerHTML
383 名前:374(2) mailto:sage [2010/04/28(水) 19:58:59 ID:TGzzLXVI0] cutword="</A>" cut=toScanWord(str2,cutword) //print cut str2=afterScanWord(cut,"imgurl=") str2=beforeScanWord(str2,"&") print str2 nokori=copy(str2,pos(cutword,str2)+length(cutword),length(str2))// print nokori ie.navigate(str2) ieWait(ie) sleep(2) id=GetID(str2,"IEFrame") sckey(id,vk_alt,f,a) number=page*18+i numberStr=""+number orgName=copy(str2,pos("/",str2,-1)+1,length(str2)) orgName=chgmoj(orgName,":","") name=folder+"\"+keyword+"\"+numberStr+"_"+orgName print name id2=GetID("画像の保存","#32770") ifb id2>0 then sendstr(id2,name,1,true) sleep(2) sendstr(id2,name,1,true) sendstr(id2,name,1,true) sleep(1) clkitem(id2,"保存",CLK_BTN) sleep(1) else id2=GetID("Web ページの保存","#32770") clkitem(id2,"キャンセル") endif next
384 名前:374(3) mailto:sage [2010/04/28(水) 19:59:41 ID:TGzzLXVI0] next function fromScanWord(str,scan) // 検索ワード以後の文字列を切り取る 検索ワード含む result=copy(str,pos(scan,str),length(str)) fend function toScanWord(str,scan) // 検索ワード以前の文字列を切り取る 検索ワード含む result=copy(str,0,pos(scan,str)+length(scan)-1) fend function afterScanWord(str,scan) // 検索ワード以後の文字列を切り取る 検索ワード含まない result=copy(str,pos(scan,str)+length(scan),length(str)) fend function beforeScanWord(str,scan) // 検索ワード以前の文字列を切り取る 検索ワード含まな result=copy(str,0,pos(scan,str)-1) fend procedure ieWait(ie) REPEAT SLEEP(0.1) UNTIL !(ie.Busy) AND (ie.ReadyState = 4) fend
385 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/04/29(木) 04:18:51 ID:EPCxEO3u0] >>382-384 半角スペースだからインデント消えたのかと思ったら最初から入ってなかったぜ。
386 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/02(日) 09:40:15 ID:doL+vkcY0] GETSTRみたいに、ネットフレームワークのDataGridViewのセルのデータを取得する方法は、 UWSCだけでは出来ずにWin32APIで取得するしかないでしょうか? もしそうなら、そのAPI名を教えていただければありがたいです。 具体的には、データグリッドビューで表示されているドル-円のレートを1分毎に取得したいです。
387 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/04(火) 06:36:01 ID:0Qq9JDW3P] このソフトに挑戦しようと思います。 ふつうにネトゲで使えるようには かなり時間を要しますか? Autohotkeyは初級は使いこなせてると思います。 ぐぐったらゴールデンウィークにこのソフトに出会ったという人の HPみたのでやってみようかと
388 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/04(火) 07:01:47 ID:Q0DkcYUl0] >>387 そのままでUWSCが使えるゲームなら、キーの記録と再生した奴をちょっと弄ることを覚えたらそれで応用はできるよ。 連打だけしてればいいようなものもあるだろ? そういう単純作業をするマクロをたくさん作ってれば上達するよ。
389 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/04(火) 07:11:09 ID:0Qq9JDW3P] >>388 既存のもの弄ることからやってみようと思います。ヘルプ読んでみたが 数学捨てた低学歴文系にはこの記号の押し寄せに一瞬で圧倒される。AHKよりもぜったいムズイだろう。 AHKは飛び抜けて優れたソフトだと思うが、これにも可能性感じる。 サンプルが動かしたが嬉しい。色や文字を認識しての条件分岐が使えるようになれば ワクテカしてきそうだ。
390 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/04(火) 07:25:47 ID:7yDjLHFl0] こいつは二重人格なのか?
391 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/04(火) 15:34:19 ID:wfwIxOPI0] いまでこそ色々使ってはいるモノの、はじめて落としてから、ああこういうことか、と仕組みを理解して動かし始めるまでに結構なタイムラグがあった。 ヘルプはたしかに、仕組みを理解しない人間にああこういうことかと理解させるにはちょっとキツイな、
392 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/05(水) 05:12:36 ID:bhIlqqXN0] 俺も昨日から使い始めた。UWSCは難しい、と聞いて敬遠してたけど、 自分の操作を記録したものを修正する方法を使えば実に手軽だった。 ところで、 「コンピュータのロック」(Win + L)中はFirefoxへのマウスクリックが 動作してないんだけど、回避策ある?それともロックの仕様? 環境は Vista(x64)SP2 + Firefox v3.6.3 + UWSC v4.6。
393 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/05(水) 19:16:43 ID:oF5LYxqnP] このソフトって何年に発表されたものなんですか? 相当昔からあるみたいですね。いまでも最前線のソフトなんでしょうか?
394 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/05(水) 22:36:46 ID:kH509+ir0] >>393 www.uwsc.info/history.html 10年前からあるね。すげえなあ。
395 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/07(金) 07:43:29 ID:YqDfIqgLP] 3Dゲームウインドウ上で半角キーを押すことをUWSCにさせたいのですが、 まったく押してくれません。どうやれば改善するのでしょうか? 自分で半角キーを押したのを記録して再生してもおしてくれません。 KBD(VK_KANJI,CLICK,20) というのはちゃんと記録されているみたいなのですが。 おしえてください。
396 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/07(金) 10:20:09 ID:ygJ5pRgT0] >>395 よくある質問です。 ・大半の場合おいて出来ません。 ・出来る可能性の中でも知識を持つ人が居ない事が多いです。 ネットゲームの場合は自動化を不正と考え 実行を阻止するプログラムが入っている場合が多数あります。 (阻止するプログラムが入っていないほうを探すのが大変なぐらいです) そのほかのゲームでもタイトルが不明では返答のしようがありません。 また、タイトルが判っても、プレイしていない人が大半ですので 「UWSCの知識」+「そのゲームをプレイしている人」という…返答できる人が非常に限られた話です。 答が帰ってくることを期待しても望みは薄いでしょう。 //次のスレでは、ゲーム関係の質問はテンプレに入れてほしいなぁ…
397 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/07(金) 10:41:17 ID:R/Hz/ZTE0] >>396 > 「UWSCの知識」+「そのゲームをプレイしている人」という 「UWSCの知識」+「そのゲームをプレイしている人」+「チートしようとしてる人」だろう。 ゲームする奴が全てチートする気のある奴ってわけではないんだから。
398 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/07(金) 10:48:58 ID:YqDfIqgLP] 395です。UWSCにある特定のバグのようなものがあるのかと思って聞きました。 AutoHotKeyでは半角キーにバインドするとバグるので(まぁあっちは海外製ソフトですが)。 じゃぁ質問を返させてください。 メモ帳の上で半角/全角キーを押す作業をUWSCにさせても 半角キー以外の作業だけせずに工程を終えてしまいます。 ほかのキーバインド関係のソフトは終了させています。日本語入力ソフトは google日本語入力です。その設定で空白を半角キーに割り当ててみました。 あとチートのやってたわけじゃないです。うっとおしい設定を毎度させられるからです。 おしえていただけませんか?
399 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/07(金) 10:53:59 ID:ygJ5pRgT0] >>398 割と短い行で済むスクリプトでしょうから >メモ帳の上で半角/全角キーを押す作業をUWSCにさせても >半角キー以外の作業だけせずに工程を終えてしまいます。 を見せてみてはどうでしょうか。
400 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/07(金) 11:25:23 ID:YqDfIqgLP] これです。手入力で自分で一度したのを記録しました。 ACW(GETID("無題 - メモ帳","Notepad"),200,10,400,400,0) MOUSEORG(GETID("無題 - メモ帳","Notepad")) BTN(LEFT,CLICK,178,295,47) KBD(VK_CONVERT,CLICK,40) KBD(VK_S,DOWN,40) KBD(VK_A,DOWN,40) KBD(VK_S,UP,40) KBD(VK_A,UP,31) KBD(VK_G,DOWN,40) KBD(VK_A,DOWN,40) KBD(VK_G,UP,40) KBD(VK_A,UP,40) KBD(VK_KANJI,CLICK,20) KBD(VK_S,CLICK,40) KBD(VK_I,CLICK,10) KBD(VK_M,DOWN,40) KBD(VK_A,DOWN,40) KBD(VK_M,UP,10) KBD(VK_A,UP,40) KBD(VK_N,CLICK,40) KBD(VK_E,CLICK,40) KBD(VK_RETURN,CLICK,40) ちなみに半角キーはgoogle日本語入力の「変換前入力中-左の文字を削除」 に割り当てました。二回半角キーを押しました。(一回しか記録されていない?) 手入力では「しまね」の文字のみが残りますが、UWSCでは「さがしまね」 と前の言葉を削除してくれません。 AutoHotKeyではちゃんと入力して削除してくれました。
401 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/07(金) 11:42:26 ID:ygJ5pRgT0] >>400 こちらでは、半角キーの操作も忠実に実行されました。 …google日本語入力では在りませんが。 IMEをMS-IMEでやってみてはいかがでしょう。 それで出来たら、ゲームと同じでgoogle日本語入力を使っている人が来るまで待ってね。 あと記録に関してはヘルプをよく読むといいよ。取りこぼしが無くなる。
402 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/07(金) 11:55:01 ID:YqDfIqgLP] >>401 ありがとうございます。そうですか・・・。 ウチの環境に起因してるみたいですね。 googleIMEからAtokに変えることなんて確率高すぎだし、 そうなると半角キーが動作しないことは痛すぎる。
403 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/07(金) 12:01:01 ID:ygJ5pRgT0] >>402 まぁ、UWSCで出来るとは思うけど 現状の、制御をせずに操作記録をしてるだけじゃぁ辛いかな。 中に書いてあるスクリプトの意味合いを調べて キーをどのウィンドウに送る、とかを考えて記述してみてくださいな。
404 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/07(金) 13:26:54 ID:nRrWodtj0] >>400 sendstr(id, "ほげほげ") とか iesetdata(id, "ほげほげ") じゃだめなん?
405 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/07(金) 13:46:28 ID:LRAtWfIh0] >>395 そのゲームがキーを操作できるか出来ないかは知らないけど、 漢字キーというのは対象アプリケーションがアクティブな状態でクリックしないと意味がありません。 ためしにメモ帳を使って文字の入力と漢字キーのクリックをセットでやってみてください。 文字が入力できないならアプリケーションがキー入力対象になってないから漢字のOnOffができていないと言うことになります。 アプリケーションはアクティブでもゲームは文字入力可能状態になっていないとだめですよね? そこもちゃんと出来ているかが大事です。 >>400 ・・・よく分かりません。
406 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/07(金) 13:59:02 ID:YqDfIqgLP] >>404 わたくし初心者なのでわかりません。調べます。 ただ極めて簡単な手入力なのに再現できないのがありえないと思ったのです。 しかも記録には半角キーを押すという記述があるのに。 こういうのが多発するんであれば手入力から記録するのはしんどいなと。
407 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/07(金) 14:30:07 ID:Os/9wnHl0] >>395 ネットゲームなんかだと KBD(VK_KANJI,CLICK,20) じゃ認識してくれないこと多いな KBD(VK_KANJI,DOWN) KBD(VK_KANJI,UP,30) こういう風にすると認識するかもしれない これでも認識しないときは30を50とかに変えると良いかも
408 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/07(金) 21:39:44 ID:YqDfIqgLP] >>407 僕の環境じゃ無理だったっす。手入力じゃできるのになぜ再現できん。
409 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/08(土) 02:25:23 ID:KCjmmf/Y0] 2010/05/08 UWSC Ver4.6a、 Pro版と Free版をリリースしました。
410 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/08(土) 06:32:02 ID:JqIMMq5FP] 昨日からさんざん書き込んでいる初心者ですが、Google日本語入力からATOKにしてみました。 そうするとメモ帳への半角/漢字キーの入力の再現ができました。 ただ、やはり3Dゲーム上での半角キーの入力の再現はやはりできませんでした。 しかしちょっとすっきりしました。
411 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/08(土) 11:18:11 ID:ASg7DSZb0] 4.6aでやっとこchkimgのバグが修正されたか。
412 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/08(土) 11:33:41 ID:QYwcVRY00] >>411 どういうバグ? 俺はたまに repeat に入れたchkimgで止まることあるんだけど・・・ 関係ないか?w
413 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/09(日) 00:22:33 ID:YB83BsnNP] >>408 仮想キーボードやらソフトウェアキーボードやらを使って間接的に入力するのは? やった事ないから出来るかはわからないけど
414 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/09(日) 22:44:32 ID:wzyOTChL0] こんにちは。 先週初めて競艇場に行った女子大生です。 競艇場内ののトイレに入ってウンコをしようと思ったのですが、 「トイレットペーパー以外の物は流さないで下さい」 と張り紙がしてあったのでウンコをビニール袋に入れて持って帰りました。 非常に不便さを感じました。競艇場ではこうなんですか? 皆さんはどのようにしているのでしょうか? 参考に聞かせてくれませんか?
415 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/10(月) 00:35:50 ID:LYMCbv6H0] >>414 うんこは食べてしまえば荷物にならなくていいです。 と言うのは冗談で、ウンコを流してダメなトイレはないので素直に流してください。 いつものコピペだけど念のため。
416 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/10(月) 11:09:35 ID:xjPPSIWT0] トイレで流れない極太ウンコをしたことを思い出した
417 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/11(火) 13:33:04 ID:tljPtQDt0] print と UWSC本体のログの書き込み時間の違いってコントロール出来るんでしょうか? print実行した直後にログも更新されてるといいんですが…
418 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/11(火) 13:59:34 ID:A7VZNycf0] >>417 それってログファイルを開いて最後の書き込みを監視して動くとか? 書き込みするファイルを常に開いて中身をチェックするのはあんまりよくないから、 クリップボードとか環境変数とか使ったほうがいいと思うんだけど。
419 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/11(火) 18:18:28 ID:tljPtQDt0] 基本的に単に見るだけです。 問題があったらUWSC自体を止めるのが目的。 今スクリプトを書いてる最中で何度もテストしてるんですが、doscmdの実行中は UWSC自体が応答無しになっていてprintのウィンドウを大きくできない状態になります。 UWSCを使って動画のエンコード等しているんで9割以上の時間応答無しになったままです。 一度doscmdが終わってUWSCに実行が戻ってくる瞬間はprintのウィンドウが更新されるんですが ログの方は更新されない。 関数の中だと書き込まれないのも違うし、時間やある一定量書き込んだらというのも違うし… ログじゃなくて、FOPEN-FCLOSEでやった方がいいんでしょうかね。
420 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/12(水) 11:07:41 ID:a5vstssbP] 教えてください。getIDでタイトルなしでクラス名のみでIDを取得することはできますか? 自分がIDがほしいアプリのウインドウは毎回タイトルを変えたり、空白だったりするので。
421 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/12(水) 11:19:12 ID:8thtGBLI0] getID("",”クラス名”) でやってみそ
422 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/12(水) 11:40:57 ID:a5vstssbP] ありがとうございます。成功シマシタ。 id = getid("", "MozillaUIWindowClass") のクラス名の前に置くスペースの位置でつまづいていました。 ど素人にイチからちゃんと学ぶことができる筋道ってありますか? windowsマクロテクニックの本は有効なのでしょうか?買って損したみたいな 感想もみたりするので・・・。 >>2 の上の方の初歩の初歩のサイトを2日かけて読みました。 あとはヘルプみながらサンプルスクリプトを弄るしかないのでしょうか? >>2 のようなサイトでずっと続きが読みたかった。
423 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/12(水) 12:22:53 ID:henq843t0] UWSCの解説本なんかあるのかよ… UWSCは基本だけ押さえておいて、あとはWSH関連をやったほうがいいと思うぞ。 WSH等コンポーネントを呼び出して使うことが多いから。 UWSCのヘルプとWSHのヘルプ ( www.microsoft.com/downloads/details.aspx?displaylang=ja&FamilyID=e74494d3-c4e1-4e18-9c6c-0ea28c9a5d9d のscd56jp.exe) だけで結構なんとかなる。
424 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/13(木) 12:59:27 ID:8TRBb1jz0] 去年は残念ながら失敗した
425 名前:424 mailto:sage [2010/05/13(木) 13:00:08 ID:8TRBb1jz0] ゴバ━━━━(゚∀゚)━━━━ク!!!!
426 名前:名無しさん@お腹いっぱい。 [2010/05/14(金) 12:27:28 ID:ps7Xn0cn0] すみません、あるネットゲームにおいて2つのパソコンを使い 自動で対戦したいのですが、かんじんなマクロ言語をまったく知りません;; なので、知識のある方にお願いして(PC詳しい友人無し) 画像認識を含むマクロスクリプトを作って頂きたいのですが、 そういた類の者をオファーできる会社等はあるのでしょうか? 勿論無料とはいいません よろしくお願い致します!
427 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/14(金) 12:28:58 ID:hrZJMe7r0] >>426 ゲームによるけど? タイトル言わないと来るものも来ないよ?
428 名前:名無しさん@お腹いっぱい。 [2010/05/14(金) 12:41:53 ID:ps7Xn0cn0] >>427 ファミスタオンラインという恐らくネットゲームでは単純な方 のゲームだと思います
429 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/14(金) 12:53:41 ID:hrZJMe7r0] >>428 で、いくら出せるんだ?
430 名前:名無しさん@お腹いっぱい。 [2010/05/14(金) 12:56:18 ID:ps7Xn0cn0] >>429 3万くらいじゃ無理でしょうかね?
431 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/14(金) 19:24:06 ID:rBaz5SrhP] バルーンメッセージを取得してテキストに出力したいのですが、取得方法がよくわかりません 出来れば特定ソフトのみのバルーンを取得したいのですが、なにか良い方法はありませんでしょうか 外部ソフトを使うなどでも全然おkなんですが・・・
432 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/14(金) 19:50:47 ID:JLo169nCP] >>431 情報料として8万円でいかがでしょうか? 業者に調べてもらうとなれば20万はするでしょう。 ご検討ください。
433 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/14(金) 20:18:15 ID:+o0AXIKx0] 何勘違いしてるの? 2ちゃんはそういうところじゃないよ。 情報出し合う掲示板だよ。 商売したいなら出て行くか、 2ちゃんの広告枠買いなさい。
434 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/14(金) 21:41:20 ID:/UXjpTM40] >>432 は何を考えて言っているんだ・・? 426に言うならわかるけども
435 名前:名無しさん@お腹いっぱい。 [2010/05/14(金) 21:48:11 ID:wySSdIwP0] uwscでできることは基本的にWSHでも出来ますか?
436 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/14(金) 22:00:32 ID:MQnw18qw0] >>433 何細かいこと言ってるんだよ。 ネトゲのアイテムやツールやキャラなどを2ちゃんねるで売買するのは普通のことだよ。 2ちゃんねるで車の売買とかもやってんだぜ? 車どなたか譲ってください。 ttp://namidame.2ch.net/test/read.cgi/car/1273073007/ >>426 プレイ動画をちょこっと見たけど、ちょっと難しいね。 ・・・仮にボールのビットマップが固定だとすれば座標サーチでいけると思うけど、・・・ あ、変化無しでただ投げるだけ打つだけならもうちょっと簡単かも。 投げる操作をすると同時に、投げましたよともう一台のPCにメッセージを送る。 打つ方は画面は見ずにメッセージを受け取ったタイミングで打つ。 それでもキャラごとにスピードが違うからなあ・・・ 通信回線によっても、バッター側に届くタイミングがずれるし・・・
437 名前:名無しさん@お腹いっぱい。 [2010/05/14(金) 23:04:27 ID:ps7Xn0cn0] >>436 アドバイスありがとうございます こんなこと言っては失礼ですが、違うんです><試合中はもうD連打だけでいいんです>< 打つタイミングとか投げるタイミングとかもランダムで... 自分が行って貰いたいのはポイントを簡単に纏めると 試合開始する→ロビーから出る→また試合開始する この一連の作業をUWSCのマクロスクリプトで行いたいだけなのですが>< まったくPC知識もないもので.. している方に聞けば、マクロ知識と画像認識ソフトがいるみたなのですが やっぱり人に頼むのは無理ですよね><
438 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/14(金) 23:10:48 ID:t4ypZjEx0] >>437 それなら簡単そうだから勉強する意味でも自分で組んでみたらどう? わからなかったらその都度ここで聞けばいいし とりあえず流れ的には 1.PC1で部屋を作る 2.PC2で1で作った部屋に入る 3.試合を開始する 4.PC1、PC2共にD連打する 5.試合が終わりロビーに出る 6.1へ戻る でいいのかな? 画像判定は試合中なのかロビーにいるのかを判定する時に使うくらいじゃないかな そういうのはUWSCで全部できちゃう
439 名前:名無しさん@お腹いっぱい。 [2010/05/14(金) 23:39:28 ID:ps7Xn0cn0] >>438 さすが頭のいい方は仕組みの理解が早いですね;; おっしゃるとうりです 上級者の方にはやっぱり簡単なプログラミングなんですね;; マクロ知識まったく皆無で半年はかかりそうですが、自分で試す事 にしてみます! この度はどうもありがとうございました!!
440 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/15(土) 16:35:52 ID:qdoKfTAuP] このスレ終わってんな
441 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/15(土) 20:10:08 ID:gQIYbWRy0] >>435 基本的にWSHはCOM経由で操作するために設計されてるものなので低レベル入出力はほぼできない
442 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/15(土) 22:17:03 ID:g7rDCx6T0] ctrlwinでウィンドウをTOPMOSTとNOTOPMOSTでトグルしたいんだけど TOPMOSTになってるウィンドウかどうかというのを知るにはどうすればいい?
443 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/16(日) 03:08:18 ID:QQZQPNYAP] キッチンのカウントダウンタイマーみたいな効果を UWSCで実現したいのです。ぐぐって見つけたのですが、 www3.bigcosmic.com/board/s/board.cgi?id=umiumi&start=20&log=ON&cnt=16 このページの一番上の書き込みをそのままコピペして 新しく作った.UWSファイルにペーストしても まったく動いてくれません。どう編集すれば 動いてくれますか?おしえてください。 (TimeWaitみたいな関数ないですよね?ヘルプにのってないし)
444 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/16(日) 03:37:10 ID:xeTkbS2L0] >>442 TOPMOSTにしてないやつはなってないはずなので、 自分でどっちに制御したかを変数で持ってればいいんじゃね? >>443 スクリプトは Function TimeWait(time_remain, RepeatTime) から始まっていますよね。 これは自作関数を定義するものですが、どこかから呼び出される必要があります。 具体的には、ファイルの先頭から TimeWait( 60, 3 ) Function TimeWait(time_remain, RepeatTime) ・・・(省略) Fend というように、TimeWait()を呼び出すコードを先に記述しなければなりません。 具体的にどんな引数を渡すべきなのかとかは、めんどくさいので見てません。 > TimeWaitみたいな関数ないですよね? 何もしないで休んでいる組み込み関数ならあります。 sleep() です。 でも、それでは何が起こっているかわからないのでいろいろするわけですね。
445 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/05/16(日) 03:53:09 ID:QQZQPNYAP] >>444 ありがとうございます。ためになります。 ということは、投稿されたものよりも前に たくさんのコードがあってそれが 消されてるということなのかな。 自作関数っていうぐらいだから、それを定義する コードがたくさん必要なんでしょうね。 ただ1〜2行ぐらい変数を定義してやればいいとぐらいにしか 思ってませんでした。 分ー秒の単位でカウントダウンの経過がわかる スクリプトを探していたのですが先は長そうですね。