自動化ツールUWSC使いよ集まれ10
: 名無しさん@お腹いっぱい。 [sage] 2013/05/01(水) 01:45:36.14 :UFD+MPgf0 Windowsの作業を自動化するツール フリーソフト版とシェアウェア版の2種類がある ttp://www.uwsc.info/download.html ●UWSC 掲示板(※作成依頼掲示版ではありません) 質問の際には自力で作ったスクリプトを晒すか、具体的な解らない場所を提示すること 上級者が常駐、たまに作者も現れるため過去ログには有益情報の宝庫 ttp://www3.bigcosmic.com/board/s/board.cgi?id=umiumi ttp://www3.bigcosmic.com/board/s/board.cgi?id=umiumi&mode=past ●UWSC - Wikipedia ttp://ja.wikipedia.org/wiki/UWSC ●使い方・基礎解説学習サイト ttp://uwsc.g.hatena.ne.jp/cx20/20100131/1264938584 ttp://www.confrage.com/uwsc/ ttp://necro.jp/dev/uwsc/ ttp://park14.wakwak.com/~simizu/uwsc/fruwsc.html ttp://canal22.org/ ttp://big.tm.land.to/handbook/uwsc.htm ttp://www.game-rev.com/review/gameut/uwsc.html ●スクリプトテンプレサイト ttp://izagne.com/uwsc/ ttp://scripts.web.fc2.com/ ttp://www.nagomi-jp.net/~liners/ ttp://nem.symphonic-net.com/uwsct/0610uwsct.html ttp://siromasa.digi2.jp/uwsc/ ttp://iriyak.adam.ne.jp/uwsc.html Q.シェアウェア版で「L22が存在しません」とエラーが出て一部機能が動作しない A.割れシリアルを使った時に出る、ささやかな割れ対策 : 名無しさん@お腹いっぱい。 [sage] 2013/05/01(水) 01:46:34.50 :UFD+MPgf0 ●Pro版の追加機能 EXE化ツールが付属しています。(EXE化後は単体での実行が可能であり、ライセンスフリーにて配布できます) IE(Web)用記録ツールが付属しています。(Web上の動作をUWSCのスクリプトとして記録する事ができます) HTMLを利用した画面関数が使えます。 EXCELシート用関数が使えます。(OpenOffice.org/LibreOfficeの表計算(Calc)に対しても可) デバッガが付属しています。 ●質問したい方へ 「○○作れますか?」→ 可能か不可能かを聞いているのなら答えは「作れる」 「○○が作りたい」→ 自分が作れば?並大抵の事ならググれば似たようなスクリプトや知識が見つかる 「○○作って下さい」→ 依頼スレじゃありません。 過去ログを見る、検索する等、自分で出来る事を書き込む前にするように。 自力で作ったのを晒すか、具体的な解らない場所を提示して、改善点や解決策を求めるようにしましょう。 ●スクリプトを晒す上での注意 他人が読みやすいようにインデントを付けるように。解らない人はググレ。 (タブインデントは使えないんだぜ 全角スペース等に 変換しておくべし) 言いたい事に関係無い部分は 〜○○の処理〜 や 処理A 等のようにし、 必要な部分を晒すようにする。 ●他人の書いたスクリプトを安易に実行しないように。 ハードディスクをフォーマットされたりしても、自己責任。 ●前スレ 8 ttp://anago.2ch.net/test/read.cgi/software/1333915056/ 7 ttp://anago.2ch.net/test/read.cgi/software/1312390804/ 6 ttp://hibari.2ch.net/test/read.cgi/software/1291347103/ 5 ttp://hibari.2ch.net/test/read.cgi/software/1260304053/ 4 ttp://pc12.2ch.net/test/read.cgi/software/1235990960/ 3 ttp://pc11.2ch.net/test/read.cgi/software/1176677869/ 2 ttp://pc11.2ch.net/test/read.cgi/software/1156416884/ 1 ttp://pc7.2ch.net/test/read.cgi/software/1107738590/ : 名無しさん@お腹いっぱい。 [sage] 2013/05/01(水) 01:47:59.74 :UFD+MPgf0 次スレは がお願い。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/01(水) 01:57:31.78 :J8309YQV0 で、前スレどこっすか? : 名無しさん@お腹いっぱい。 [sage] 2013/05/01(水) 02:21:26.46 :UFD+MPgf0 ●前スレ 自動化ツールUWSC使いよ集まれ9 9 ttp://anago.2ch.net/test/read.cgi/software/1350040751/ 8 ttp://anago.2ch.net/test/read.cgi/software/1333915056/ 7 ttp://anago.2ch.net/test/read.cgi/software/1312390804/ 6 ttp://hibari.2ch.net/test/read.cgi/software/1291347103/ 5 ttp://hibari.2ch.net/test/read.cgi/software/1260304053/ 4 ttp://pc12.2ch.net/test/read.cgi/software/1235990960/ 3 ttp://pc11.2ch.net/test/read.cgi/software/1176677869/ 2 ttp://pc11.2ch.net/test/read.cgi/software/1156416884/ 1 ttp://pc7.2ch.net/test/read.cgi/software/1107738590/ 9入れたつもりが入ってなかった : 名無しさん@お腹いっぱい。 [sage] 2013/05/01(水) 02:39:56.34 :JLKkaJw60 乙 : 名無しさん@お腹いっぱい。 [sage] 2013/05/01(水) 06:16:54.32 :hAM2hSNN0 おつ!ROM勢だけどおつ! : 名無しさん@お腹いっぱい。 [sage] 2013/05/01(水) 23:27:08.12 :Dey3AEuf0 呼び出し関係をまとめてみた ◇UWSC スクリプトからの呼び出し UWSC.exe └[MyScript].uws ├CALL [MySubScript].uws ├DLL 関数 ├COM オブジェクト ├PowerShell スクリプト ├DOS コマンド ├EXEC 各ファイルの実行 └キー、マウス、コントロールの制御 ◇UWSC 関数の呼び出し ┌COM オブジェクト イベント ├キー イベント 自作関数 がんばれば Win32API 使ってメッセージループできるけど向いてない。 ウィンドウクラスだけダミーで作って GetMessage の後、DispatchMessage をせずに UWSC スクリプトの中で回せば簡単だけどこれは非推奨。 HSP に、ウィンドウメッセージ受信用 DLL (hsgetmsg.dll) がある。 これは HSP 専用プラグインだが、これと同様の DLL があれば UWSC でも簡単にメッセージを受信できる。 ウィンドウ関連の構造体データを DOM 的にアクセスできるようになれば、 ネイティブコントロールの作成とかも手軽にできるようになるかもしれない。 あ、それをやってくれるのが seraphyscripttools とか SFCmini のような COM オブジェクトなのか。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/01(水) 23:32:52.72 :2h2u3XE30 UWSCのグループチャットってやつか 作者同士がUWSCネットワークを介して交流とか夢が広がるな : 名無しさん@お腹いっぱい。 [sage] 2013/05/02(木) 22:13:22.41 :0OJElBe90 Aは画像認識→あったらクリック という命令として 今の自分の書き方だと [A1 A2 A3 … A25] みたいに画像認識がすごく多くて1週するのに時間が結構かかっています。 ↓みたいに命令を実行させたいのですが、どう書けば良いでしょうか? ・A1〜A20は連続の3個を1ブロックとして、どれか1個実行されたら1個ずつずらしていく 例:[A1.A2.A3]→どれか実行→[A2.A3.A4]→どれか実行→[A3.A4.A5]→… →[A18.A19.A20]→略→[A19,A20.A1]→略→[A20.A1.A2]→略→(最初に戻る) ・A21〜A25は常に実行 : 名無しさん@お腹いっぱい。 [sage] 2013/05/03(金) 11:21:57.02 :WnnnYhHu0 3つずつ for i = 0 to (length(A)-1)/3 step 3 jMax = i + 2 if length(A)-1 < i+j then jMax = length(A)-1 while true for j = i to jMax ifb CHKIMG(A[j]) 処理 break 2 endif next // ここで毎回の処理 sleep(0.1) wend next 処理後に exit する関数にすれば for i のループ 3つずつの関数(A, i) 毎回処理する関数(A, 開始位置, 終了位置) sleep(0.1) next って感じで少しすっきりする。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/03(金) 11:44:55.02 :WnnnYhHu0 ttp://cx20.main.jp/blog/hello/category/win32-gui/ UWSC の GUI 版 Hello World! ソース見てびびった。 UWSC も PowerShell も、C#のソースを文字列定義して呼び出してるだけ。 ただ、.net ”開発”環境もいらないし PowerShell 実行制限を迂回できると言うことで、 単に実行するだけならいい環境だったりするかも。 で、その下の Lua ってのが Win32API 使ってGUI使ってる。 Lua は以前チャレンジしようとしてやっぱ手が出なかったんだけど、 ネイティブの GUI が使えるとなると・・・ ま、RAD ツールがないと面倒なんだけどね。 それで、ちょっと、 UWSC と Lua の言語比較してみた。 すると、Lua の記述が UWSC と近いことが判明。 今までは Lua っぽいコードばっかり見てたから受け付けなかったのかな。 UWSC と違う部分は C言語っぽい。 ttps://docs.google.com/spreadsheet/ccc?key=0AnJADoDttLA2dDhmU1dDR2s1R2tQcmJNQW5UYWVraFE#gid=4 最初は UWSC に Lua を組み込もうかと思ってたけど 見れば見るほど「Lua すげー」ってなってる。 コールバックが使えるスクリプトとして、MIKO スクリプトってのも考えたけど、 Lua なら UWSC にコールバック機能を持たせることができるかも。よく知らないけど。 UWSC+API でやるのとどっちが簡単だろうね。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/03(金) 20:40:37.35 :OYSIXHk10 ありがとうございました 改善案からさらに改良していくのが面白い(できたら : 名無しさん@お腹いっぱい。 [sage] 2013/05/03(金) 20:40:45.70 :wT0yks5g0 乙! : 名無しさん@お腹いっぱい。 [sage] 2013/05/03(金) 22:27:43.92 :WnnnYhHu0 は /3 とか変なのが残ってたね。 j を i*3 〜 i*3+2 ( i は step 1 )でやるか i 〜 i+2 ( i は step 3 )でやるか迷ってて消すの忘れてた。 UWSCと関係ないけど、 3回ずつだと端数が出るからループ脱出条件が2つになる。 もし、3で割り切れる個数ならそもそもループする必要がなく、こう書ける。 for i = 0 to max step 3 print data[i] print data[i+1] print data[i+2] next 端数をループの外で書けば端数の問題は解消するけど、同じ処理を他の場所でやることになる。 C言語とJavaではこんな書き方がある。 書き換えるのがめんどいのでこぴぺ。 register n = (count + 7) / 8; switch(count % 8) { case 0: do { *to = *from++; case 7: *to = *from++; case 6: *to = *from++; case 5: *to = *from++; case 4: *to = *from++; case 3: *to = *from++; case 2: *to = *from++; case 1: *to = *from++; } while(--n > 0); } : 名無しさん@お腹いっぱい。 [sage] 2013/05/04(土) 00:57:47.63 :EHWA8zF+0 RGB=PeekColor(512,384) これやると真ん中指定しますが X座標を502〜522、Y座標を374〜394くらいの範囲で指定したいんですけどできますか? イメージはこんな感じです ttp://www1.axfc.net/uploader/so/2889577.png : 名無しさん@お腹いっぱい。 [sage] 2013/05/04(土) 01:02:00.35 :jsdWHLfU0 できますよ : 名無しさん@お腹いっぱい。 [sage] 2013/05/04(土) 02:02:27.40 :EHWA8zF+0 よかったら教えてください RGB=PeekColor(502,374,522,394) ↑こうではないですよね・・・? : 名無しさん@お腹いっぱい。 [sage] 2013/05/04(土) 09:57:57.81 :RMywkBWm0 範囲でってどういうこと? A. その周辺の色を混ぜ合わせた色? B. それとも、その周辺のドットの集合? どちらにせよUWSCでは2重ループで繰り返し実行ですね。 A の場合はそれを配列に入れて平均値を計算。 WindowsAPI なら BitBlt で矩形指定してコピーもできる。 ただし、メモリイメージそのままなので色の平均値は自分で計算だし、 BitBltするまでがちょっとめんどい。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/04(土) 13:10:04.43 :EHWA8zF+0 RGB=PeekColor(512,384) これだと画面の真ん中のみ有効じゃないですか 画面の真ん中から少しずれてもいいように多少大きく範囲をとりたいと思ってるんです 色ではなく場所です : 名無しさん@お腹いっぱい。 [sage] 2013/05/04(土) 13:36:51.44 :RMywkBWm0 いや、PeekColor に範囲とかないから。 アクセサリのペイントを開いてスポイトツールを使ってみて。 それが PeekColor と同じ機能。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/04(土) 14:10:16.36 :bgLiGgAt0 だから取りあえず2重ループでやってみればいいじゃん スピードが遅いんならそんとき別の方法を考えれば良いんだし : 名無しさん@お腹いっぱい。 [sage] 2013/05/04(土) 14:13:21.57 :fhgFSR4lT 範囲をとりたいってどういう意味だ : 名無しさん@お腹いっぱい。 [sage] 2013/05/04(土) 18:52:56.14 :D1FvgZDG0 なんか1ドットの画像用意してchkimgのほうが… : 名無しさん@お腹いっぱい。 [sage] 2013/05/05(日) 08:21:48.74 :X98CB5ag0 たぶんそういうことなんだろうね。 テスト駆動開発 ttp://appkitbox.com/knowledge/test/2013/01/15/tdd_basic 1.エラーになるコードを書く (呼び出し、エラーを返す。つまり、エラー処理を書く。) 2.正常処理するコードを追加 (正常でない場合、1のコードに飛ぶので、またひとつコードが増える。) 3.書いた分をきれいにまとめる。 4.1〜3を繰り返す。 正常なコードをすぐに書ければいいけど、やっぱり試行錯誤になるよね。 試行錯誤を繰り返すとコードは汚くなるので、動いた時点できれいに書き直したほうがいい。 それを少しずつ積み上げることで、全体として完成したときに全体がきれいに仕上がっているはず。 とは言え、これは言語やライブラリを理解したうえでコードを書くことが前提なので、 関数がどう動くのかどう使えるのか分からないときには その関数だけのためにテストコードを書かないとひどいことになる。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/07(火) 13:33:15.13 :Lu0ACr7p0 uwscの別プロセスのものが何故か自動で機能しなくなりました 関連ないことなのかもしれませんけどほぼ同時期に 一部ソフトを再起動させても、そのまま終了し起動しなくなりました 問題が曖昧すぎですが、何が問題なのか自分でもサッパリ分かりません どうか分かる方がいましたらお願いします。 : 名無しさん@お腹いっぱい。 [] 2013/05/08(水) 00:09:08.30 :zkJ+gGFf0 IEを起動したら、ウインドウのIDを取得して操作したいんだけど、 IE = CREATEOLEOBJ("InternetExplorer.Application") IE.visible = True IE.navigate("about:blank") repeat sleep(0.1) until !IE.busy AND IE.readystate=4 IEid = GETID("Windows Internet Explorer",-1) いつ迄待ってもIEidが-1のままになってしまいます。 何か、間違ってます? : 名無しさん@お腹いっぱい。 [sage] 2013/05/08(水) 00:28:37.51 :Sp3KJhYH0 クラス名を -1 にするからだろ IEid = GETID("Windows Internet Explorer", "", -1) : 名無しさん@お腹いっぱい。 [sage] 2013/05/08(水) 03:12:47.87 :awrNk5up0 画面は消えているように見えるのにプロセスが残っているために二重起動防止で落ちてるとかよくある。 : 27 [sage] 2013/05/08(水) 03:14:22.22 :zkJ+gGFf0 できました、ありがとうございます! : 名無しさん@お腹いっぱい。 [] 2013/05/09(木) 00:28:49.53 :L2rgOZUy0 今janeを開いてて、 <<ITM_ACCCLK>>の113)が 自動化ツールUWSC使いよ集まれ10のこのスレなんだけど、 こういうののACCCLKってどうやって取得するの? getstrとかでも取得できないんだけど、 ネットにあがってるスクリプトだと出来る 何が違うの?やり方教えて : 名無しさん@お腹いっぱい。 [sage] 2013/05/09(木) 08:49:34.24 :e+gJTAz80 そのツールで取得できたんならよくね? もし、クリック以外の何かをしたいんならツールと同じように取得すればよくね? 取得方法は以下のやつをループ GetAllWin() の ALL_WIN_ID[] GetItem() の ALL_ITEM_LIST[] : 名無しさん@お腹いっぱい。 [sage] 2013/05/09(木) 21:56:55.50 :L2rgOZUy0 わかんない!おしえて!! : 名無しさん@お腹いっぱい。 [] 2013/05/10(金) 00:45:03.85 :L/LQJXd50 入力したいフォームに高レベルな記録で 文字を入力してみましたが、保存したuwsのファイルには 何も書かれていませんでした。 こういう場合自動で入力は不可能ですか? また、 フォームが1〜5まであって getstrで文字を全て取得したいんですが、 なぜかアクティブになってるフォームしか取得できないです。 VK_TABで1個1個アクティブにして取得するのは格好悪いです こういう場合どうすればいいですか? : 27 [sage] 2013/05/10(金) 03:08:15.93 :iZDIOuiS0 そんな場合、どうしたらいいですか? : 名無しさん@お腹いっぱい。 [sage] 2013/05/10(金) 04:01:48.08 :IYZT/2Fo0 > なぜかアクティブになってるフォームしか HTML なら DOM 使う。 Winフォームなら裏側は非表示だろうから無理なんじゃね? スパイアプリでコントロールIDでも取れれば API 経由でいけるかも。 ALL_ITEM_LIST とかでぐぐる ヘルプ見る タスクマネージャから終了するか taskkll コマンドで終了するか PowerShell の Stop-Process か Windows を再起動。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/10(金) 11:03:26.01 :XLdy1TSW0 ("Microsoft.XMLhttp")を呼び出して ソースを引っ張ってくるようにしてるんですが オフラインなどで エラーが出る時の処理を分岐させたいんですが エラーを感知する方法が分かりません・・・ sendを先に書いておかないと statusを取れないし sendを先に書いてしまうとエラーを感知して止まってしまいます : 名無しさん@お腹いっぱい。 [sage] 2013/05/10(金) 11:14:22.74 :BMB7v3wc0 try 〜 except 〜 endtry または COM_Err_Ign 〜 COM_Err_Ret して COM_ERR_FLG で判断 : 名無しさん@お腹いっぱい。 [sage] 2013/05/10(金) 13:11:55.92 :IYZT/2Fo0 MacromediaFlashPlayerActiveX を Chrome と FireFox でもできんかと GetWindow で GW_CHILD して GW_HWNDNEXT のループして GetClassName してたけど 前スレにあったわ。 GETCTLHND() で取れる IEFrame だけが可能なだけだったんだな。 GetAllWin() で取れる TabThumbnailWindow を対象にしても駄目だったんだ。 無駄な努力だった。 Win7+IE9の場合 IEFrame └Frame Tab └TabWindowClass └Shell DocObject View └Internet Explorer_Server └MacromediaFlashPlayerActiveX しかし、ActiveX ならHTAでもアプリでもいける・・・ ってな感じで2ヶ月くらい迷走してるわ。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/10(金) 13:20:58.75 :vQF21Pdv0 ありがとうです 後者で何とかいけそうです : 名無しさん@お腹いっぱい。 [sage] 2013/05/15(水) 14:50:39.17 :8Ef9V77q0 いいことが書いてあった これからコードを書く人に絶対やって欲しいこと★2 ttp://kohada.2ch.net/test/read.cgi/prog/1365269189/36 12 :仕様書無しさん [↓] :2013/03/10(日) 16:47:33.91 動的型付け言語なら高機能なテキストエディタを使え 静的型付け言語ならIDEを使え。 なぜなら、動的型付け言語ではIDEのサポートが十分に得られない。重いだけ。 静的型付け言語はコード自体は冗長になるが、IDEのサポートで大幅に生産性が上がる。 15 :仕様書無しさん [↓] :2013/03/10(日) 16:55:11.95 コードは書くことよりも、読む時のことを考えろ。 短く書いたとしても、読みにくければそれは駄目なコードだ。 コーディングにかける時間の8割は、コードを読むことに使わている。 > 理由が書いてない(納得出来ない) コーディング規約はゴミだ。作るな。従うな。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/16(木) 11:11:10.72 :fge6S+mG0 コーディングにかける時間の8割は、コードを読むことに使わている。 あぁ、そう言えば全くのその通りだった。殆どの時間読んでるわ。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/16(木) 18:50:31.65 :hpeuLRSK0 スレチ : 名無しさん@お腹いっぱい。 [sage] 2013/05/16(木) 20:18:54.78 :n6eGebxe0 最近変なやつが居座ってオナニーしてんのな : 名無しさん@お腹いっぱい。 [sage] 2013/05/19(日) 13:06:25.09 :EcUCy2sL0 そのスレ参考になったぞ そしてUWSCの言語仕様の限界を改めて認識してしまったな : 名無しさん@お腹いっぱい。 [sage] 2013/05/19(日) 14:17:27.94 :1aluXXUfT そのスレに興味を持つレベルならuwscなんて卒業しろ uwscなんて本格的なプログラミングするためのものじゃない : 名無しさん@お腹いっぱい。 [sage] 2013/05/19(日) 15:03:43.05 :m3wI8dtS0 これでline荒らしたら、人間関係崩れたんだけど このソフト糞だわ : 名無しさん@お腹いっぱい。 [sage] 2013/05/20(月) 01:35:00.14 :TQJJeLFcP Lineやってことないんだけど PC版Lineの画面ってどんな感じ? : 名無しさん@お腹いっぱい。 [sage] 2013/05/24(金) 19:55:46.71 :e0QL6y9C0 クリックの繰り返しの際に、 for i=0 to 100 BTN(LEFT,DOWN,964,553,100) BTN(LEFT,UP,964,553,62) SLEEP(1) next こんな感じになると思うんですが、繰り返し回数(この例では100)を、コマンドラインから、 UWSC.exe TEST.UWS 100 のように引数で渡すことはできますか? : 名無しさん@お腹いっぱい。 [sage] 2013/05/24(金) 20:05:39.37 :ZALXYKaU0 できますよ : 名無しさん@お腹いっぱい。 [sage] 2013/05/24(金) 20:22:36.77 :e0QL6y9C0 スクリプトの方では、引数をどう受け取ればいいんですか? for i=0 to 100 の100のところなんですけど・・ : 名無しさん@お腹いっぱい。 [sage] 2013/05/24(金) 20:27:58.59 :ZALXYKaU0 ヘルプの起動時パラメータを見ろ : 名無しさん@お腹いっぱい。 [sage] 2013/05/24(金) 20:39:18.13 :e0QL6y9C0 for i=0 to =PARAM_STR[0] BTN(LEFT,DOWN,964,553,100) BTN(LEFT,UP,964,553,62) SLEEP(1) next コマンドライン UWSC.exe TEST.UWS 100 こうですな。どうもありがとう UWSCのHELP、俺のPCだと開かないんだよね・・なんか環境がどうのこうのみたいなんだけど。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/26(日) 16:45:15.20 :79a+oPyO0 UWSCの配列まわりでバグを発見した。 データが欠損するバグだ。これは致命的だ。 検証し速やかに報告をしなくては。 と思ったら俺オリジナルのバグだったまる : 名無しさん@お腹いっぱい。 [sage] 2013/05/26(日) 22:07:51.28 :u6CyF/yT0 おまおれ : 名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 12:47:44.70 :Vb6K8W270 配列の添字の仕様がアレですからねぇバグも出るよ。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 19:28:11.14 :wLizV2di0 配列添字の仕様で何かあったけ? : 名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 20:08:20.89 :UeY4Jb/F0 ifb CHKIMG("check.bmp") then SOUND("bell.wav") endif check.bmpという画像を元に、 "色を無視して形でチェックする"動作を行わせたいのですが、この場合どう記述すればいいのでしょうか? CHKIMG("check.bmp",-1)ってやっても認識されなかったんだ・・・ : 名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 20:12:28.36 :UeY4Jb/F0 何か日本語おかしいな check.bmpと同じ画像ではなく、同じ形の画像を認証させたいんだ : 名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 20:31:14.36 :YVez0SZR0 C系言語が広がったんで 配列は0から始まるのが普通になったけど それ以前は1から始まるのも結構あった : 名無しさん@お腹いっぱい。 [] 2013/05/28(火) 20:41:49.26 :8GBjDRZd0 Cが広まったのってもう20年以上前のことじゃね? : 名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 21:10:40.04 :w2XUmqDx0 配列が1から始まるのってBASIC系くらいじゃないの? それよりも DIM A[10] ってしたとき A[0]〜[10]になるほうが慣れないなぁ : 名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 21:11:42.12 :wLizV2di0 UWSCだって0始まりだよ。SafeArrayはともかく。 配列定義で DIM a[2] とやると 0〜2 の3つになるのはBASIC系言語の仕様でしょ VBA、VBS、VB.NET、ActiveBasic …。もちろんUWSCはBASIC系。 社会人なら、エクセルのVBA位さわった事あるだろし C系言語だけしか知らないのはどうかと思う : 名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 21:38:44.82 :fFOk9yr80 今でもCOBOLのような業務系言語は基本的に1から。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 22:52:34.23 :SHgBZdOG0 これこれ これが原因 添え字最小〜最大 = 配列数 1〜配列宣言時の数値 = 配列宣言時の個数 BASIC系 0〜配列宣言時の数値−1= 配列宣言時の個数 C言語系 0〜配列宣言時の数値 = 配列宣言時の個数+1 UWSC FOR ループでは for i = 0 to length(配列) -1 next UWSC : 名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 23:09:52.74 :wLizV2di0 何言ってんの? BASIC系も添え字最小は0だろが : 名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 23:11:26.96 :SHgBZdOG0 マジで? length(配列)じゃなくてmax(配列)として、添え字の最大値を使えればミスらないんだけどな。 for i = min() to max(配列) next これで解決。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 23:19:58.95 :wLizV2di0 上限値が欲しいなら Resize(配列) for i=0 to Resize(配列) next : 名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 23:20:47.73 :SHgBZdOG0 maxだと要素中の最大値を求めるっぽくて駄目だな。 配列の添え字の最大って分かるようにしないと。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 23:35:21.36 :SHgBZdOG0 resizeで取れるならいいけど、一見して分かりにくいワードだな。まいっか。 C言語と同じ比較すればいいんだけどな。 添え字のカウントアップを忘れそうなのがな。 i = 0 while i < length(配列) i = i + 1 wend だいたいBasic系の to って言葉が悪いよ。 なんで「〜の手前まで」って表現がないのか。 「To the front of」とか長すぎ。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/29(水) 00:29:57.62 :zRGJR7FJ0 VBのUBound、LBoundが欲しいのか。 ごちゃごちゃしょーもねーな。 今更言ってもかわらねえよ。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/29(水) 08:45:43.23 :1YG70QEx0 俺はCに慣れてるのもあるから0からが当たり前だと思っているがUWSCさわる人ってプログラムは知らないけどエクセルは使っていてエクセルマクロ(VB仕様?)で考えてる人が多いのかな? 俺はVBほとんどさわらないからその仕様もよくわかってないがw : 名無しさん@お腹いっぱい。 [sage] 2013/05/29(水) 14:33:51.97 :klbIS0c8P COBOLのような勘定系だけは1からだよ C言語やVBで組んだとしても : 名無しさん@お腹いっぱい。 [sage] 2013/05/29(水) 14:37:31.39 :2iSRKVo60 デフォルトは兎も角 環境の宣言で指標の使い方は自由に決める事が出来る言語は多い : 名無しさん@お腹いっぱい。 [sage] 2013/05/29(水) 18:39:31.86 :4vdE1OTv0 俺ずっとそれでやってた上で、 > 0〜配列宣言時の数値−1= 配列宣言時の個数 C言語系 だと思い込んでやってたぜ。 VBAって > 1〜配列宣言時の数値 = 配列宣言時の個数 BASIC系 だったか? VB6のVBAけっこう使ったが、俺そこでも間違えてたのか? UWSCってオブジェクト指向プログラミングで開発してるだろうに、提供する言語がコレって何かずるいw : 名無しさん@お腹いっぱい。 [sage] 2013/05/29(水) 19:14:49.51 :VcYHKjX50 ttp://www.relief.jp/itnote/archives/001048.php 23区(23個)だから、「str23ku(23)」としたくなるところですが、 インデックス番号が「0」からはじまるため、 「Dim str23ku(22)」という宣言で計23個の配列が用意されることになります。 この「0」からはじまるという点が、配列を難解にしている要因の一つではないかと思うのです。 VBA(Visual Basic for Applications)ではこの0オリジンを1オリジンにすることができます。 > モジュールの宣言セクションに > 「Option Base 1」 > と記述する で、これがまたバグの元なので の UBound、LBound で範囲を設定すると言うわけか。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/29(水) 19:36:42.32 :VcYHKjX50 数値とか個数という表現がさらにややこしくしてるんだな。 配列宣言時に入れる数値が最大なのか個数なのかが違う。 個数 = 10 最大 = 個数 - 1 として ・C言語 int 配列[個数] for( i = 0; i < 個数; i++ ) {} ・VB, UWSC (「Option Base 1」 を使わない場合) Dim 配列[最大] for i = 0 to 最大 next で、最大 を入れるべきところで 個数 -1 を使ってたからややこしいと。 VBの場合は「Option Base 1」とか UBound、LBound を使って分かりやすく、間違いにくくできるけど UWSC の場合は 0 が固定なので。 しかし、配列を処理する関数とか作ればUWSCでもなんとかなるかな。 イテレーターとか言うんだっけ。 token 切り出すみたいに1個ずつリターンしてもらう・・・ あ、配列にセットする場合はセットする関数が必要になってややこしいか。 関数作って覚えるなら、配列の扱いを覚えたほうが早いと言う。 っていうか、連想配列使えば1からでも好きなように出来るけど。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/29(水) 19:39:11.02 :zRGJR7FJ0 true/falseで-1、0、1、 返り血で正常異常その他、-1、0、1、他、 色々さまざまあるじゃん 勝手な思い込みしないで、どっちだっけ?と確認する癖をつければいいんだよ。 てかレス遡ると配列サイズを得るのにlength()使うひとみたいだし、ヘルプや仕様をろくに読まないで文句いってるんでしょ。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/29(水) 21:13:32.76 :ly6EKzsC0 sa = SafeArray() が、sa = SafeArray(1,0) と等価になるは納得いかん 上限値はResizeで変更できるけど、下限値は変更不可だから、1始まりのまま。 DIMで作る配列は0始まりなのに、紛らわしい仕様だ。 引数省略できなくするか、または、SafeArray(0,-1)をデフォルトにすべきだと思うな 長さ0の配列作ることのない人には関係ないかもしれんけど : 名無しさん@お腹いっぱい。 [sage] 2013/05/30(木) 13:17:18.62 :/ebxCDEe0 どっちにしても全言語で統一されん限り確認は必要なのになに暴れてるんだ : 名無しさん@お腹いっぱい。 [sage] 2013/05/30(木) 14:17:39.43 :AiY4CFow0 ttp://officetanaka.net/excel/vba/statement/OptionBase.htm これ見ると、VBでも、A[5]は0〜4または1〜5であって、0〜5じゃないみたいだけど…? : 名無しさん@お腹いっぱい。 [sage] 2013/05/30(木) 14:20:04.29 :AiY4CFow0 A[5]が0〜5になる言語なんて他にあるの? : 名無しさん@お腹いっぱい。 [sage] 2013/05/30(木) 14:50:19.86 :AiY4CFow0 true/falseが定数名使わないと何であるかなんか、 定数名使う時点で関係なくなるから配列の添字の問題と関係無いじゃん… 確認するっつったって、確認した上で間違えるだろ、 あの素っ気ないHELPじゃ。 > 多次元配列には宣言が必要: DIM 変数名[数] > (配列での初期値代入: DIM X[2]=1,2,3 配列数の省略可 DIM X[]=1,2,3 ) これだけだぜ。 「0〜4でも1〜5でもないので注意が必要です」とは書いてないからな。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/30(木) 14:53:00.40 :AiY4CFow0 あと「ろくに読まない」について。 ヘルプに書いてない仕様が多すぎ。 > // For Next 文 > FOR 変数 = 初期値 TO 終了値 [STEP 刻み値] > 処理 > NEXT // NEXTの後に変数を書いてはダメ この変数が変更不能であるとは何処にも書いてない。 結果、様々な仕様テストPGを書きまくる必要が出てくる。 : 名無しさん@お腹いっぱい。 [sage] 2013/05/30(木) 14:53:23.18 :/ebxCDEe0 え…? お、おう : 名無しさん@お腹いっぱい。 [sage] 2013/05/30(木) 14:54:39.41 :arC1A+OO0 サンプルコードが、たまたまそうしてるだけでしょ ttp://ameblo.jp/tech-note/entry-10157307186.html : 名無しさん@お腹いっぱい。 [sage] 2013/05/30(木) 15:13:40.43 :arC1A+OO0 俺も以前それにハマッタわ for i=1 to 5 MsgBox(i) i=i+1 next ↑これ、VBSでもUWSCでも動作するコードだけど VBSは、1,3,5 と表示される UWSCは、1,2,3,4,5 と表示される : 名無しさん@お腹いっぱい。 [sage] 2013/05/30(木) 15:38:52.61 :YYGEPe170 自分も前にハマったわ 他の言語じゃ普通に出来るので結構盲点 : 名無しさん@お腹いっぱい。 [sage] 2013/05/30(木) 15:39:43.26 :AiY4CFow0 VB6のVBAで試したら、 Option Base 0 '0と1でテスト Public Sub testArrayUBound() Dim testArray(5) As Integer Debug.Print "LBound = " & LBound(testArray) ' Option Base で指定した数 Debug.Print "UBound = " & UBound(testArray) ' 常に5 End Sub 正直すまんかった : 名無しさん@お腹いっぱい。 [sage] 2013/05/31(金) 17:35:19.78 :98FmSm6p0 画像認証の場合でPCが小さくて画面サイズが小さい場合や 画像認証する画像が一番上に来ていない場合は動作しないの? : 名無しさん@お腹いっぱい。 [sage] 2013/05/31(金) 17:44:29.14 :Tw3jfhbR0 1ドットの画像でも検索できる バックグラウンドの画像でも検索できる : 名無しさん@お腹いっぱい。 [] 2013/05/31(金) 19:25:46.81 :xbW2hM4i0 そもそもPCの解像度は関係ないだろ : 名無しさん@お腹いっぱい。 [sage] 2013/06/01(土) 04:01:53.53 :OrBbD9si0 バックグラウンドはできないだろ。少なくともXPでは。 Vista以降ではウィンドウの表示イメージをアプリごとに持つようになったからできるかもしれないが。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/01(土) 05:43:07.34 :IvQurseST XPでも出来るよ : 名無しさん@お腹いっぱい。 [sage] 2013/06/01(土) 17:39:15.30 :VghlwZOf0 VMwareで全て解決 : 名無しさん@お腹いっぱい。 [sage] 2013/06/01(土) 21:12:15.24 :Qq0Dkwxd0 XPmodeでも解決 : 名無しさん@お腹いっぱい。 [sage] 2013/06/02(日) 16:57:26.43 :dT70ZztK0 www.uwsc.info/history.html > DOSCMD関数にてマルチ行の実行を出来るようにした このマルチ行とはどのように記述すれば実行できるのでしょうか。 マルチ行の実行とは、DOSCMDの画面表示をTrueで実行すると 例えばバッチファイルに echo テスト1 pause echo テスト2 と記述して実行した場合と同じように複数行の実行ができると理解していますが、 理解が間違っているでしょうか。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/02(日) 18:37:36.07 :75ivKy8G0 コマンドラインで1行ずつ入力するのと同じでしょ バッチファイルとは異なり、gotoやサブルーチンコールなどは無理 : 名無しさん@お腹いっぱい。 [sage] 2013/06/02(日) 21:18:13.48 :qz1LaLI/0 確認してないけどマルチコマンドの事かと思ってた echo テスト1 & pause & echo テスト2 こんな感じね : 名無しさん@お腹いっぱい。 [sage] 2013/06/02(日) 21:53:53.39 :75ivKy8G0 command = "echo テスト1" + "<#CR>" + "pause" + "<#CR>" + "echo テスト2" DosCmd(command, false, true) 改行文字を自動的に&に変換してのと同じになるってだけだよ : 名無しさん@お腹いっぱい。 [sage] 2013/06/02(日) 22:06:17.70 :oZqy933X0 ファイルが大きくなってきたのでファイルを分割したいんですけど、複数のファイルを読み込む方法があったら教えてください。お願いします。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/02(日) 22:15:17.97 :pE3hSVB30 ファイルの数だけオープンすりゃいいだけでないの? 何が聞きたいのか分からん・・・ : 名無しさん@お腹いっぱい。 [sage] 2013/06/02(日) 22:21:25.83 :rUqBSzew0 xpからprintwindowっていうAPIがあってバックグラウンドでもイメージを取得できるようになった UWSCはこれを使っていると思われる : 名無しさん@お腹いっぱい。 [sage] 2013/06/02(日) 22:26:41.51 :oZqy933X0 すみません hoge.uwsが大きくなったので、hoge1.uwsとhoge2.uwsに分割して、 二つを一つのスクリプトファイルとして読み込んで実行したいです。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/02(日) 22:32:32.69 :pE3hSVB30 hoge1.uwsに call hoge2.uws と書いて呼び出せばいい : 名無しさん@お腹いっぱい。 [sage] 2013/06/02(日) 22:41:16.73 :oZqy933X0 ・・・まじですか!! ありがとうございます。 なんかすみません。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/03(月) 10:06:18.60 :ZGvrm2Kx0 UWSCを使ってPCから音声出力があったらマクロを実行ってできますか? また、音の高さで分岐とかの処理はできたりしますか? 教えてエロい人 : 名無しさん@お腹いっぱい。 [sage] 2013/06/03(月) 10:51:37.40 :PFaPKpzq0 音声出力や音の高さを判定するソフトを操作すればいいんじゃないの : 名無しさん@お腹いっぱい。 [sage] 2013/06/03(月) 11:02:05.21 :y4dsxozF0 UWSCの恐ろしい所は単体で機能がなくても ソフト連携で理論上なんでもできるところだ 波形ソフトで数値を取得したり、最悪画面描画でどうにかできそうだな(適当) : 名無しさん@お腹いっぱい。 [sage] 2013/06/03(月) 11:10:36.74 :ZGvrm2Kx0 なるほどなるほど また調べます thx! : 名無しさん@お腹いっぱい。 [sage] 2013/06/03(月) 16:32:29.59 :9yUXIAt80 音声入力のチェックだけならDICTATE関数で出来なかったっけ? 自分で使ったこと無いからどういう動作するかは知らないけど : 名無しさん@お腹いっぱい。 [sage] 2013/06/04(火) 12:41:59.78 :D2R+OfVf0 オシロ表示できるソフトの画面監視すりゃいいんでね? : 名無しさん@お腹いっぱい。 [] 2013/06/07(金) 21:26:36.21 :Nu5G3z9f0 ある数値を表示するとき、その数値>0の場合には+記号を付けたいのですが、どうすればいいですか? : 名無しさん@お腹いっぱい。 [sage] 2013/06/07(金) 21:41:11.73 :wDDNi1sr0 それ用の関数を作ればいいよ v = 3 MsgBox("v = " + cnv2str(v)) function cnv2str( x ) if x>0 then RESULT="+"+x else RESULT=""+x fend : 113 [sage] 2013/06/07(金) 22:09:51.31 :5W9sZJKn0 できました! ありがとうございますー。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/09(日) 09:04:22.89 :fsDGzCHa0 久しぶりに使おうと思って最新のを入れて使ってるのですが A=val("vk_1") でエラーの値しか帰って来ません。 昔はこれで整数に変換されてたとおもうのですが何か変わったのでしょうか? : 名無しさん@お腹いっぱい。 [sage] 2013/06/09(日) 10:47:23.46 :5G4zFpJf0 何がやりたいかわからないがエスパーで A=EVALl("vk_1") : 名無しさん@お腹いっぱい。 [sage] 2013/06/09(日) 11:13:10.51 :af6X3Hrn0 A=vk_1だったり : 名無しさん@お腹いっぱい。 [sage] 2013/06/09(日) 12:15:43.75 :fsDGzCHa0 すいません、説明不足でした。何がしたいかというと STOP= EVAL("VK_" + READINI("設定","停止","設定データ.ini" )) KEY = EVAL("VK_" + READINI("設定","キー","設定データ.ini" )) IF STOP < 0 then exitexit while true fukidasi("tes") IF getkeystate(STOP) then exitexit IF KEY > -1 Then KBD(KEY,0) wend 設定ファイルのキーコードを整数として扱ってそれできちんと設定されているか判断及び設定されているものだけ使用したいのです 教えていただいたEVALだと設定されているのもはきちんと値を返しくれますが使用したくない場合及び間違っている場合では定義されていませんと出て止まります 昔使ってたVALでは間違ってるものはエラーの値を返すだけなので使用したくなければINIで空白にでもしておけば使用しないように出来ました 最新のVALでは仮想キーコードはなぜかすべてエラーの値しか返してくれなかったのでお聞きしました : 名無しさん@お腹いっぱい。 [sage] 2013/06/09(日) 18:42:31.00 :5G4zFpJf0 LENGTHを使えば? 空白なら0、なにか設定されていれば数値が返ってくると思うけど : 名無しさん@お腹いっぱい。 [sage] 2013/06/09(日) 22:57:37.82 :g0cENTRK0 EVAL("VK_1")が構文評価で数値の1として評価されるなんて仕様が 定義されてるとHELPに書いてないから、作者が黙って仕様変更したんじゃね? 素直にPOS関数で文字列操作して数値変換したほうが。 っつか TRY STOP = VK_0 + VAL( READINI("設定","停止","設定データ.ini") ) EXCEPT STOP = ERR_VALUE ENDTRY で済んだりして… ttp://homepage3.nifty.com/ic/help/rmfunc/vkey.htm : 名無しさん@お腹いっぱい。 [sage] 2013/06/10(月) 14:04:46.47 :ned+Tr5h0 マクロを完全に使いこなすにはどうしたらいいでしょうか? 書店等に本は出版されていますか? Google先生のお陰でほとんどのことは出来るようになりました。 新しい壁に今現在ぶつかってしまい、物事さえうまく、説明ができないので知恵遅れだと感じました : 名無しさん@お腹いっぱい。 [sage] 2013/06/10(月) 14:26:25.64 :5nXP9bfk0 そうですか : 名無しさん@お腹いっぱい。 [sage] 2013/06/10(月) 14:55:17.31 :aLd1WaM10 構造化プログラミング ttp://www.pro.or.jp/~fuji/mybooks/cdiag/index.html : 名無しさん@お腹いっぱい。 [sage] 2013/06/12(水) 19:57:45.20 :dUBULt7r0 膨大なテキストから、特定の文字が含まれてたら その行の文字を抜き出したいのですが やっぱり全行を配列に格納してforによる総当たりposやるしかないですか? もっと効率の良い方法ありませんか? : 名無しさん@お腹いっぱい。 [sage] 2013/06/12(水) 20:26:20.96 :3W+l57Sd0 不可能ではないが、UWSCはWindows操作自動化ツールであってテキスト処理ツールではない。 出来たとしても専用ツールと比べ遅くてメモリも沢山食い潰しそうだ。 それより別のツールにやらせてその操作をUWSCで操作するのが本来的な使い方。 プログラミングでやるにしても他にもっと優れた言語が沢山ある。 バッチファイル+コマンドラインツールですらUWSCに勝るだろう。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/12(水) 20:37:14.22 :3W+l57Sd0 っつか膨大なテキストをファイルに保存して1行ずつ処理すればメモリ食わないなw : 名無しさん@お腹いっぱい。 [sage] 2013/06/12(水) 20:54:30.51 :HbO9IEH90 grepとかでざっくり抜き出し、その後uwscで処理が楽そう : 名無しさん@お腹いっぱい。 [sage] 2013/06/12(水) 20:56:13.06 :5C+Yw55kT 正規表現使ったら? : 名無しさん@お腹いっぱい。 [] 2013/06/13(木) 04:31:11.40 :dpmxU0lB0 メールを常に監視させて、条件に合致するメールを受信したらそれをトリガにしてある動作を走らせたいと考えています。 今風なやり方は、どんなですか? メールは、Gmailです。 受信したら即座に反応してほしいので、時間差のあるPOPではなくて、IMAPでメーラーを設定するべき? できればIEだけで何とかしたい。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/13(木) 04:48:28.60 :fKmP/Ss20 即座に反応が重要ならメールサーバー立ち上げて転送機能を使ったほうがいいと思うよ。 送信は規制があってできないけど、受信は無料のサーバーで可能。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/13(木) 11:12:32.27 :AtEMVCre0 メールトリガ手法は5年前に既に雑誌掲載済みだぞ メール1通でPCを遠隔操作「GmailRemoteControl」 :教えて君.net ttp://www.oshiete-kun.net/archives/2008/06/1pcgmailremotecontrol.html まさに自爆スイッチ! Eraser&UWSCで緊急証拠隠滅 :教えて君.net ttp://www.oshiete-kun.net/archives/2008/06/eraseruwsc.html : 名無しさん@お腹いっぱい。 [sage] 2013/06/13(木) 18:05:51.60 :oTWqIS7D0 お勧めしないがBecky!2などの有料メーラーは フィルタリング設定で条件マッチメール受信時に 実行ファイルの実行などを設定できる。 あとはやりたい放題。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/14(金) 16:08:53.14 :gyZAJIqA0 なんでお勧めしないの? GmailRemoteControlの方がいい? : 名無しさん@お腹いっぱい。 [sage] 2013/06/14(金) 20:38:19.10 :VzX8I5H00 使いはじめるとベンダーロックインされる。 ベッキーのメールデータや振り分け設定などは他のメーラーに移行することが困難 : 名無しさん@お腹いっぱい。 [] 2013/06/15(土) 12:48:14.34 :zirlsqE10 画像判定について調べてると ペイントで切り出すと精度が落ちるのでGIMP等で切り出そう!とか書いてるブログがありますけど これってオカルトですよね? 単純なbmpなのにペイントとGIMPで生成画像に差が出るわけがないと思いますし それとも何か理由があるんでしょうか? : 名無しさん@お腹いっぱい。 [sage] 2013/06/15(土) 12:54:10.56 :1sbplwI70 ただの妄想だな : 名無しさん@お腹いっぱい。 [sage] 2013/06/15(土) 13:59:42.24 :uIPTuPji0 あれだろ?精度が落るから繰り返しの中で画像が見つからなくなって止まるんだとか思っちゃう人だったんだろ? : 名無しさん@お腹いっぱい。 [sage] 2013/06/15(土) 15:57:40.49 :qj2sql+LT よくわからんけどマウスで切り取りの範囲選択しにくいってことじゃない gimpだと細かく調整できる : 名無しさん@お腹いっぱい。 [sage] 2013/06/15(土) 19:40:59.65 :RLdsHwZ/0 知り合いの話なんだけどで切り出されるネタが自分の妄想というのは バレてるけどブログの話として自分の妄想を語る手口ってのは斬新だな : 名無しさん@お腹いっぱい。 [sage] 2013/06/16(日) 08:31:03.91 :+GNRXPkP0 どういうこと? もしベッキーしか使わないと決めるなら、メールをトリガーにしてマクロ起動するのに最適? : 名無しさん@お腹いっぱい。 [sage] 2013/06/16(日) 23:11:39.40 :+GNRXPkP0 ttp://www.m88sb.com/Main/Sports/Sports.aspx ここのユーザーネームとパスワードを入力させたいんだけど、RecIEを使っても記録されない。 inputがtableのなかにあるとできないっけ? IE.document.getElementsByName("txtLoginID").Item(0).value = "test" IE.document.getElementsByName("txtPassword").Item(0).value = "test" も IE.document.forms[0].elements[0].value="test" IE.document.forms[0].elements[1].value="test" も IE.document.forms[0].txtLoginID.value = "test" IE.document.forms[0].txtPassword.value = "test" も IESETDATA(IE,"test","txtLoginID","ユーザーネーム") IESETDATA(IE,"test","txtPassword","パスワード") も、みんなダメだった。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/16(日) 23:38:52.75 :gFP3JC8Y0 ちょい質問 id = GETID("Microsoft Excel - 新規Microsoft Excel ワークシート.xls", "XLMAIN", -1) これの xlmain と -1 って言うのは何か意味があるのでしょうか? : 名無しさん@お腹いっぱい。 [sage] 2013/06/16(日) 23:50:05.57 :Ow9DJoNE0 あるよ : 名無しさん@お腹いっぱい。 [sage] 2013/06/17(月) 00:03:47.36 :DRHhmxFu0 IFRAME内にフォームがあるから、フレームを辿る必要がある たぶん IE.document.getElementById("frameLogin").document.loginForm.txtLoginID.value = "test" IE.document.getElementById("frameLogin").document.loginForm.txtPassword.value = "test" : 142 [sage] 2013/06/17(月) 00:42:44.37 :B4TdB57y0 ありがとうございます。 でも、早速やってみましたがダメでした。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/17(月) 16:43:54.90 :+1hECav50 ページ見てないけどインフレームでの入力ならこれじゃね? RE:教えてください! umiumi ドメインが違うIFRAMEの場合は、セキュリティ上 DOMでの制御はできません。 この場合は、SENDSTR関数(ACCを指定)を使用して下さい。 id = GETID("Sleipnir") SendStr(id, "123456", 6, True, True) : 名無しさん@お腹いっぱい。 [sage] 2013/06/18(火) 06:11:02.84 :mv3185SE0 エクセルを開いてマクロを実行させたいんだけど excel = CreateOLEObj("Excel.Application") excel.Visible = True excel.WorkBooks.open("ファイル名") excel.run("マクロ名") だと マクロは実行されるんだけど COM_Error :例外が発生しました。 ○行目:EXCEL.run("マクロ名") って出るんだけどどこがダメなんでしょうか? : 142 [sage] 2013/06/18(火) 12:16:56.15 :QeaOqY7V0 ありがとうございます。 ユーザーネームは SendStr(id, "test", 3, True, True) でいけましたが、パスワードは SendStr(id, "test", 4, True, True) でダメでした。 検証コードは SendStr(id, "test", 5, True, True) でいけます。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/18(火) 20:31:43.75 :Q44JXB9F0 エクセル? エクセルのあらゆる自動操作がエクセルVBAで可能で マクロ記録機能使えばどんな操作もコード化してくれるのに UWSCでエクセルに何いじるの? : 名無しさん@お腹いっぱい。 [sage] 2013/06/18(火) 20:43:30.44 :Q44JXB9F0 こういうことするしかないんじゃね?俺はSENDSTRがACCでフリーズするので直接入力。 アルファベット対応版つくってくれ // SENDSTR代用関数(フォーカス済みのテキストボックスに数字をタイプ) FUNCTION sendNumDirectly(sourceNum, lPosX, lPosY, lFlgF10AndEnter=TRUE) RESULT = FALSE sourceNum = VAL(sourceNum) IF sourceNum=ERR_VALUE THEN EXIT LeftClick(lPosX, lPosY, 1) IF GETKEYSTATE(TGL_IME) THEN KBD(VK_KANJI,CLICK,500) KBD(VK_HOME, CLICK, 300) FOR lI=0 TO 5 KBD(VK_DELETE, CLICK, 300) NEXT IFB sourceNum < 0 THEN KBD(VK_SUBTRACT, CLICK, 300) sourceNum = ABS(sourceNum) ENDIF sourceNumStr = "" + sourceNum FOR lI=1 TO LENGTH(sourceNumStr) aChar = COPY(sourceNumStr, lI, 1) KBD(VK_0 + VAL(aChar), CLICK, 500) NEXT //冒頭の対策でもIMEが解除できなかった(あるいは逆にIMEが起動してしまった)場合の対策 //F10で半角英数、ENTERで確定。 IFB lFlgF10AndEnter THEN KBD(VK_F10, CLICK, 300) KBD(VK_RETURN, CLICK, 300) KBD(VK_ESC, CLICK, 300) ENDIF RESULT = TRUE FEND : 名無しさん@お腹いっぱい。 [sage] 2013/06/19(水) 10:41:01.38 :KHwMYtgZ0 これ、どうやって使うの? : 名無しさん@お腹いっぱい。 [sage] 2013/06/19(水) 13:31:15.16 :KHwMYtgZ0 LeftClickがありませんってエラー出る。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/19(水) 18:45:02.33 :r7rd+SAb0 FUNCTION LeftClick(cx, cy, lSec=1, lBeforeSec=0.1, lAfterSec=0.4) RESULT = FALSE SLEEP(lBeforeSec) TRY BTN(LEFT, Down, cx, cy) SLEEP(lSec) BTN(LEFT, Up, cx, cy) RESULT = TRUE EXCEPT //writeLogAndFukidasi("ERR: LeftClick("+cx+","+cy+","+ly+")") SLEEP(10) ENDTRY SLEEP(lAfterSec) FEND : 名無しさん@お腹いっぱい。 [sage] 2013/06/20(木) 09:24:04.48 :xmgRBjlU0 問題は、どうやってそのテキストボックスにフォーカスするかだよね。 番号で指定できないとすると、タブ移動くらいしかないか。 : 名無しさん@お腹いっぱい。 [] 2013/06/20(木) 10:58:28.36 :HTL8kg6U0 のサイト見たけどSendStrで名前入れられるならその後TABキー(KBDで)でPASSWORD、検証コードって移動できるよ : 名無しさん@お腹いっぱい。 [sage] 2013/06/20(木) 12:45:53.55 :cBQF4D4A0 とりあえず低レベル記録を再生して成功したら パスワードを引数としてKBDで自動操作する関数を作りこめばいいだろうな アルファベットや記号をVKにマッピングするのは面倒くさそうだ 例によってナンカのAPIだとtoStringで一発で出来るみたいではあるが : 142 [sage] 2013/06/21(金) 09:21:10.08 :IAXRAkYw0 ありがとうございます。 さんが作ってくれたのは、残念ですけどよく分かりませんでした。 結局、これで何とかやることにしました。 SendStr(id, "test", 3, True, True) sckey(id, vk_tab) Sleep(0.2) sckey(id, vk_t) Sleep(0.1) sckey(id, vk_e) Sleep(0.1) sckey(id, vk_s) Sleep(0.1) sckey(id, vk_t) : 名無しさん@お腹いっぱい。 [sage] 2013/06/22(土) 11:03:44.42 :E5xi7mLz0 仮想マルチモニターとか仮想デスクトップ使って UWSCで監視できる範囲を広げたいんだけど、何かいいツールない? やっぱ、でっかい液晶モニタ買って物理的に画面でかくするしか方法ないんだろうか : 名無しさん@お腹いっぱい。 [] 2013/06/22(土) 11:21:22.95 :J7eZCuiw0 モニタのサイズは関係なくね? : 名無しさん@お腹いっぱい。 [sage] 2013/06/22(土) 11:49:14.19 :E5xi7mLz0 モニタが大きい分、ウィンドウを多く並べて監視対象を増やせる : 名無しさん@お腹いっぱい。 [] 2013/06/22(土) 12:33:32.38 :J7eZCuiw0 モニタ関係ないでしょ 解像度の問題 : 名無しさん@お腹いっぱい。 [sage] 2013/06/22(土) 15:40:07.83 :np8pCKDJ0 監視ってそもそも何をどうやってなのか後出し臭がするので聞かないが、 肉眼で目を離さずに見比べ続けるとかでなければ ウィンドウを複数開いて自動操作対象のウィンドウ以外を最小化すればいい : 名無しさん@お腹いっぱい。 [sage] 2013/06/22(土) 21:10:34.31 :KkoGM7lcP 窓ID指定すれば隠れてるウインドウも監視・操作できるはずだけど。 それじゃいけないのかな。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/22(土) 22:22:53.30 :E5xi7mLz0 0.1秒毎に各ウィンドウの指定の座標をクリックし続けるようなスクリプトなんだけど ウィンドウID指定しても、ブラウザのバグなのかうまく最前面に来てくれない事がある。 最小化はさすがに頻繁にやりすぎて何かしら問題が起きそう 仮想マシンとか試してみたけど無理っぽいから 諦めてでかい液晶モニタ買うわ : 名無しさん@お腹いっぱい。 [sage] 2013/06/22(土) 23:07:54.83 :7z0zXQJ60 acwとか使わないの? : 名無しさん@お腹いっぱい。 [sage] 2013/06/22(土) 23:14:06.51 :E5xi7mLz0 そのacwでウィンドウID指定して最前面に持ってきてるよ : 名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 00:03:07.18 :KkoGM7lcP ちがうちがう。MOUSEORGで直接窓IDを指定。 MOUSEORG(窓ID,2)って書いたあとはMOUSEORG(0)で閉じるまで その窓IDがキーやマウス操作の対象になる。 acwで全面に持ってこなくても、隠れたまま操作可能。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 00:36:39.41 :gaCUD+RD0 HELP見てみたが 第2引数の指定って 何でわざわざ0と1があんのかね 2が出来て完璧なら0も1も要らないじゃん 0や1じゃないといけないケースって何 と思った。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 00:40:23.21 :gaCUD+RD0 複数ウィンドウを0.1秒=100msごとにクリックって相当過酷な操作だな 仮に自動操作じゃなくて超速くて正確な手動操作したとして ウィンドウのほうが処理落ちでついてこれないことがあるんじゃね? WindowsもLinuxもリアルタイムOSじゃないからね : 名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 00:42:07.19 :+D0W6Ffx0 直接送れない対象もあるからだろ : 名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 00:49:10.89 :hzDrnjpnP 窓内の相対的な位置で座標指定できれば、PC自体の解像度が変わっても 問題なく動作するっしょ。 0.1秒間隔でクリック連打するマクロは使ってるが、意外と大丈夫だ。 ぜーんぜんなんともない。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 00:51:09.28 :m4lgJVDw0 2が効かないケースがあるからな、ゲームとか : 名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 02:05:38.05 :gaCUD+RD0 Ready状態後のウィンドウ上でなら100msぐらい余裕で反応するが リソース不足気味のPCで FLASHやUnityなど重いページを表示したブラウザなどを タブでなく複数のウィンドウで何枚も立ち上げたりすれば ウィンドウの切替だけでも数十msは待たされる印象がある 最小化したりすると目に見えて軽くなる : 名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 02:07:19.36 :gaCUD+RD0 2が効かないケースが有るってことは 逆に言えば、最初から2を試して 効かない場合のみ下げていったほうが良いのかな… 今度やってみよう : 名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 16:35:06.97 :Was00iAI0 MOUSEORGなんて便利なものがあったのか…… ただ、今からやろうと思うと膨大な量の書き変えと ポチった液晶モニタのキャンセルが必要にorz まあおいおい対応させよう : 名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 17:39:07.22 :w8xoYb+30 MOUSEORG 使っても、画面より大きい範囲は指定できないと思うが。 : 名無しさん@お腹いっぱい。 [] 2013/06/23(日) 18:47:19.07 :qLhcglRE0 ここを見て、メール受信をトリガにしてマクロを動かすにはBeckey!がいいことはわかりました。 では逆に、マクロを動かし続けて、ある条件が発生したときにメールを送信して通知させるには、どうするのがよいでしょうか。 これも、やっぱりメーラー動かした方がいい? : 名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 20:26:37.63 :hzDrnjpnP Beckey!ってマクロ機能あったっけ? そういうのなら秀丸じゃないかな?? UWSCは操作を自動化するソフトに過ぎないから メールを送信するにはどうしたらいいかで 難しく考える必要は無いかと。 いつも使ってるメーラーがあれば、それを操作してメール送ればいいし Pro版でよければWebブラウザの操作を丸ごと記録再生できるから それでWebメール操作するのがラクかもしれない。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 20:53:21.71 :eCLLFT3s0 CDO.Messageを使えばGmailとかでメールできる ただし、アクセス数多いとアカウント停止する : 名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 21:29:13.24 :ITAURYwvP アプリ立ちあげずにメール送れるその方式、 前から便利だと思ってたんだが、1日200通くらいまでなら大丈夫そう? : 名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 21:46:22.65 :eCLLFT3s0 自分の場合は200通くらいで停止した アプリのスクショとって添付してたのも原因かもしれない。 アカウントは一日で再度アクセス可能になったし、複数アカウント用意しておいて 何通かで切り替えるかアカウント停止したのがわかれば、 そこで切り替えてもいいかも : 名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 21:51:26.49 :ITAURYwvP Twitterの短時間フォローみたいに 一定の規定に達したらしばらく強制休憩ってことか。参考になった。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 21:52:59.01 :ITAURYwvP これか バリュードメイ○の社員だけど、無条件解雇されそう ttp://toro.2ch.net/test/read.cgi/hosting/1366267840/ 時期的にもこれで合ってるっぽいな : 名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 21:55:03.70 :ITAURYwvP すまん、誤爆した。 : 名無しさん@お腹いっぱい。 [sage] 2013/06/24(月) 01:05:01.91 :EGunV/Pd0 Vectorで探せばいくらでも出てくるよ 俺は数年前、コマンドラインでテキストファイルをメール送信するツール使ってたな : 名無しさん@お腹いっぱい。 [sage] 2013/06/25(火) 09:50:49.93 :VirZPVgE0 俺それ使ってたけど 自分宛にしか送れなかった : 名無しさん@お腹いっぱい。 [sage] 2013/06/25(火) 12:56:10.80 :paIsEIm90 そりゃプロバイダのポートブロック回避や自分のPCのファイアウォール設定とか必要だし : 名無しさん@お腹いっぱい。 [] 2013/06/26(水) 14:27:30.32 :2WyGqAvE0 COMオブジェクトの操作のまとめコードみたいのってあります? ヘルプに載ってないみたいで IE.visible = True IE.navigate("") こういうのが載ってるのです : 名無しさん@お腹いっぱい。 [sage] 2013/06/26(水) 15:02:28.37 :7m8/o62z0 MDSNに全部載ってる : 名無しさん@お腹いっぱい。 [sage] 2013/06/26(水) 18:57:39.59 :9l7/Hty60 Visual Studio でインテリセンスに頼りながらプログラミングしたほうが幸せそうだ。。。 : 名無しさん@お腹いっぱい。 [sage] 2013/07/05(金) 17:49:24.76 :YiRDgNimO 輪郭が背景に溶け込んでぼやけてる縦横15ドットくらいの文字列画像認識したいんですがいい方法ないですかね chkimgだとどうも上手くいかなくて : 名無しさん@お腹いっぱい。 [sage] 2013/07/05(金) 19:12:47.46 :kUEgHuAz0 captraだっけ? : 名無しさん@お腹いっぱい。 [] 2013/07/05(金) 19:42:42.22 :JxXZfGli0 ぼやけてる部分削ればいいじゃない? : 名無しさん@お腹いっぱい。 [sage] 2013/07/06(土) 04:50:41.30 :OpOoU1O6P 俺も背景が変化する半透明っぽいボタンの認識に苦労してる 良く出来た「あいまい認識」の実装が急務だと思う 最近のゲームはボタン一つにもエフェクトがかかってたりして手が込んでるから ゲーム用マクロツールとして見ると正直時代遅れの感が否めない 公式サイトを見ても、掲示板はかつてのteacupのようですごく古臭いし 最近流行りのSNSやgoogle+のシェア機能なんかも全く利用してないし、 作ってる人の感覚やPCを使うスタイルみたいなものが10年前で止まってそう たぶん40歳越えたおっさんだと思う : 名無しさん@お腹いっぱい。 [] 2013/07/06(土) 08:27:22.40 :hglpgn4w0 いや俺ゲーム用じゃないし 公式掲示板でもゲームのたぐいの話はNGだからな : 名無しさん@お腹いっぱい。 [sage] 2013/07/06(土) 09:10:23.25 :kyU6RCLv0 無理 重ねあわせ処理によりbmpとして見た時に異なる画像になってしまうからこれ当たり前 CAPTCHA(キャプチャ)なら絶対無理 CAPTCHA画像をSAVEIMGしてメール送信して回答メールから解読結果を書き込むことは出来る OpenCVやOCRじゃないと無理 そこまでやろうとするともやはUWSCでは全くの力不足 ロボットの視覚ソフトウェア作るレベル だがゲームのbotツールとして見るなら方向性としてはパケットやメモリを覗いたほうが正しい でもUWSCはbotツール用のソフトではないので。 まぁ俺は使ってるけどね。 の場合なら単に背景に溶け込まない部分を探して使うだけ。 無ければそういう状況を探し出し作り出す。 当然その代償として作業全体としては遅くなる。 : 名無しさん@お腹いっぱい。 [sage] 2013/07/06(土) 09:16:28.53 :kyU6RCLv0 UWSCの最も生産的な使い方はコレな ttp://jasst.jp/archives/jasst11e/pdf/E4-1.pdf botツールでも何でもないから 甚だしい勘違いを力説されても聞いてるこっちが恥ずかしいから : 192 [sage] 2013/07/06(土) 09:23:20.86 :epmGhJbJO 丁寧な解答ありがとうございます 文字の太さが1ドットなので溶け込んでない部分がないんですよね OCR系のソフトと連携する方向で考えてみます : 名無しさん@お腹いっぱい。 [sage] 2013/07/06(土) 10:21:24.19 :kyU6RCLv0 敢えて言おう 無理であると もしそれがゲームであるなら、無理であることが意図通りであるということ もしそれがゲームでないなら、別の手段でアクセシビリティが提供されていることに気づいていないか、 単にアクセシビリティが糞過ぎて使えないソフトかサイトであるということ : 名無しさん@お腹いっぱい。 [sage] 2013/07/06(土) 11:26:29.25 :/UtYagXK0 公式掲示板が古臭いのは同意。俺も前から思ってたわ。 せっかく作者や使い手の交流が活発なのにもったいない。 誰か、スレッドフロート型にしてgoogle+1ボタン、facebokボタン、はてブボタン、mixiボタン、ツイートボタンとか設置することを提案してくれないかな。 今の仕組みじゃレス返信の固定URLを取得したい時にGETで繋げるの疲れるんだよね ttp://www3.bigcosmic.com/board/s/board.cgi?id=umiumi&resno= ここにレスナンバー 例 -> ttp://www3.bigcosmic.com/board/s/board.cgi?id=umiumi&resno=4908 これじゃSEO的にもよろしくないっていうか、シェアウェアなのにサポートがレンタル掲示板な時点でもはや・・ : 名無しさん@お腹いっぱい。 [sage] 2013/07/06(土) 13:02:04.79 :kyU6RCLv0 まぁ > 作ってる人の感覚やPCを使うスタイルみたいなものが10年前で止まってそう > たぶん40歳越えたおっさんだと思う は同意かなw : 名無しさん@お腹いっぱい。 [sage] 2013/07/06(土) 21:05:33.51 :DYoRTlI/P SNS連携だけはやめてくれ : 名無しさん@お腹いっぱい。 [sage] 2013/07/07(日) 06:26:24.80 :Mu49Yu+8P その何とかボタンってのまったく必要性ねぇwww : 名無しさん@お腹いっぱい。 [sage] 2013/07/07(日) 10:20:59.59 :YJfmcDrT0 と思ってる無知なおっさんは時代に付いていけないのであった : 名無しさん@お腹いっぱい。 [sage] 2013/07/07(日) 13:51:16.97 :S/QyIBwg0 SNS連携って何に使うの? ゲームの知り合いとかに俺マクロしてるって言いたいだけ? : 名無しさん@お腹いっぱい。 [sage] 2013/07/07(日) 13:56:46.56
:rs/+Gfht0 SNSで汎用関数群提供とか? : 名無しさん@お腹いっぱい。 [sage] 2013/07/07(日) 15:28:14.50 :U0TriCwN0 そういう余分な気持ち悪い機能はいらん : 名無しさん@お腹いっぱい。 [sage] 2013/07/07(日) 20:17:12.81 :CVZ4X/m/0 意味不明なマクロ構文が垂れ流されるぐらいなら余計な機能なんてイラネ そもそも公式じゃなくて自分でその手のコミュ立ち上げてから口を開けよ : 名無しさん@お腹いっぱい。 [sage] 2013/07/07(日) 23:09:37.41 :YJfmcDrT0 余計な機能なんてイラネ(キリッ なんで上から目線なの? お前みたいな屑の方がよっぽどイラネ(キリッ : 名無しさん@お腹いっぱい。 [sage] 2013/07/07(日) 23:26:35.41 :3PhSIZj50 カスNSのボタン云々は蛇足じゃないの デザインがショボいお、が真意じゃないかな 本気で連携ボタンほしいお、ってんなら、 いやどっちにしろ痛い子夏の風物詩だね : 名無しさん@お腹いっぱい。 [] 2013/07/08(月) 05:59:21.52 :pgmJvHrF0 イイネボタンやツイートボタンで利用者アップ、 RSSフィードで更新情報や新トピックの配信、 Google+やトラックバックで関連記事と紐付ける、とかの 重要性が理解できないのは時代についていけなくなってる証拠 ガラケーで充分と言ってるのと同種の人間 本人は必要ない余分なものだと信じて疑わないが 実は価値観が出来上がってしまって頭が固くなってるだけ 気付くと新しい物に疎い中年の一丁上がり ラジカセなんか要らないレコードの方が音がいい! 昔から延々と繰り返されてる : 名無しさん@お腹いっぱい。 [] 2013/07/08(月) 07:53:06.27 :7JZtb1q3P 見ず知らずの情弱にイイネなんてつけられたら恥ずかしくて自害して果てる : 名無しさん@お腹いっぱい。 [sage] 2013/07/08(月) 08:34:16.67 :4eIz7QGFT 本人は必要だと信じて疑わないが 実は価値観が出来上がってしまって頭が固くなってるだけ : 名無しさん@お腹いっぱい。 [] 2013/07/08(月) 08:50:44.70 :1aHjlsVQ0 気付くと流行に踊らされるガキんちょの一丁上がり そんなに新しい物が好きならこんな古臭い言語仕様のソフトなんて使うなよ : 名無しさん@お腹いっぱい。 [sage] 2013/07/08(月) 11:25:46.46 :5EJiXE380 クソワロタwww これ本気で言ってんだよな・・・? すごい重要性だな!w : 名無しさん@お腹いっぱい。 [sage] 2013/07/08(月) 13:30:16.57 :/3F9/myf0 検索 ※過去ログ記事を検索するには、各過去ログ上で検索して下さい ※20件以上は表示されません 自前で掲示板一括全文検索できないなら googleサイト検索のテキストボックスぐらいつければいいのに… あ、レンタル掲示板でドメイン名がアレだから、それも無理なのかw : 名無しさん@お腹いっぱい。 [] 2013/07/09(火) 07:47:45.63 :AZFmw7ltP 効いてる効いてるwww : 名無しさん@お腹いっぱい。 [sage] 2013/07/09(火) 09:37:07.16 :r2U0dQBlP ”無いことのメリット”を説明できずに個人的な使用目的や感情論しか 垂れ流すことができないのって哀れだな。反論になってない事に気づいてない時点で論外。 新しいものを認めたくてキャンキャン泣いてる負け犬なのは誰がどう見ても明らかだが、この手のやつは まともなスクリプト書く知能も思考能力も無いから短文や草、オウム返しとかでしか切り返しできないから見てな。 : 名無しさん@お腹いっぱい。 [sage] 2013/07/09(火) 09:45:20.47 :Qa5NRFrK0 きっとSNSに親でも殺されたんだろう。 仮にSNS=厨房が沸く的なイメージで固執してるならそれは大きな間違いだし 海外の技術フォーラムとか見た事あるスレ民なら説明しなくてもいわずもがなWeb連携のメリットは分かってるはず。 100歩譲ってボタンは省いたとしても、有用トピが超初心者のトピで沈むのを避けるために 形式変更はあった方が使いやすいね。掲示版住人も住み分けできてるから、例えば 一行の回答で終わるような話題は初心者トピに集めるとかすれば技術トピの発展もしやすい。 : 名無しさん@お腹いっぱい。 [sage] 2013/07/09(火) 10:59:32.03 :IlJj8ete0 uwscなんて本格的にプログラミングするためのものじゃない これに尽きる : 名無しさん@お腹いっぱい。 [sage] 2013/07/09(火) 11:24:58.08 :0nBCWq7U0 いや、お前の言う重要性とやらはよく分かったよ お前にとってはかなり重要なことなんだろう けどいちいち押し付けんなよ : 名無しさん@お腹いっぱい。 [sage] 2013/07/09(火) 15:15:44.50 :FHocinqH0 使いたくないやつは機能実装されても使わなきゃいいだけじゃないの? 俺は使わん : 名無しさん@お腹いっぱい。 [sage] 2013/07/09(火) 15:20:55.95 :FHocinqH0 他はともかくみたいなのは病気でしょ いいねボタン押されようが押されまいが思われたら一緒じゃね? いいねがつくつかないで何か変わるの? むしろ「恥ずかしくて自害して果てる(キリッ」なんて書き込みの方が恥ずかしいと思うんだが さっさと自害しろって話 : 名無しさん@お腹いっぱい。 [sage] 2013/07/09(火) 17:04:48.50 :8y8XUxcY0 高尚(のつもりらしい)論を展開するのがなぜここなのか、というのが一番滑稽なんだが。 作者さんに直接、僕の考えた最強のサイト!案を出してこいよ。 : 名無しさん@お腹いっぱい。 [sage] 2013/07/10(水) 02:29:52.13 :dTtS8g6U0 まだいたのかよさっさと作者に凸ってこいよくそめんどくせぇ そんなことよりimacrosに変数受け渡すスマートな方法誰か教えてくれ : 名無しさん@お腹いっぱい。 [sage] 2013/07/10(水) 06:54:27.21 :xsW6IVFI0 つーかそういうことこそ公式サポート掲示板で聞いたらよくね? このスレいらなくね? : 名無しさん@お腹いっぱい。 [sage] 2013/07/10(水) 08:45:22.07 :agiaWkGQ0 恥ずかしくて自害して果てるってイイネ : 名無しさん@お腹いっぱい。 [sage] 2013/07/10(水) 11:47:59.20 :TBTyy4PN0 ネチネチと粘着して気持ちわりーやっちゃなぁ・・・ なんでも自分の思い通りにならないと気が済まないんだろうけど いらんと思うなら来なけりゃいいだけじゃねーの? : 名無しさん@お腹いっぱい。 [] 2013/07/10(水) 11:54:12.30 :4B9H8XFU0 新しいものを取り入れられないどころか 拒絶するようになったらいよいよ老化が進んでる証拠だな : 名無しさん@お腹いっぱい。 [sage] 2013/07/10(水) 12:00:53.95 :xsW6IVFI0 公式掲示板で聞けって何か間違ってた??? : 名無しさん@お腹いっぱい。 [sage] 2013/07/10(水) 12:31:41.68 :ZJ6IruZ30 間違ってないから公式掲示板に行け 戻ってくんな : 名無しさん@お腹いっぱい。 [sage] 2013/07/10(水) 20:04:55.53 :OXCghVA50 戻ってくるとか自由なのになんで強制されなきゃいけないの? そんなことよりお前らに答えてやれよ : 名無しさん@お腹いっぱい。 [sage] 2013/07/10(水) 21:47:40.16 :lpqeO91F0 義務を伴わない自由や意味不明な個性が大切にされる社会なんてのは 空想上の社会なのよ?w : 名無しさん@お腹いっぱい。 [sage] 2013/07/10(水) 22:47:15.88 :OXCghVA50 は見てるならコテでもつけてもう一度降臨してほしい 気に食わない書き込みを全てお前だと決めつけている粘着キチガイが常駐しちゃってるぞ : 名無しさん@お腹いっぱい。 [sage] 2013/07/11(木) 00:39:44.06 :gALvQ5k/0 検索 ※過去ログ記事を検索するには、各過去ログ上で検索して下さい ※20件以上は表示されません 自前で掲示板一括全文検索できないなら googleサイト検索のテキストボックスぐらいつければいいのに… あ、レンタル掲示板でドメイン名がアレだから、それも無理なのかw : 名無しさん@お腹いっぱい。 [sage] 2013/07/11(木) 13:50:32.00 :aFdSHBsc0 呼ぶなw 公式掲示板にいいねボタンつけろだとか ここで喚いても意味ないことくらい分かるだろ? : 名無しさん@お腹いっぱい。 [sage] 2013/07/11(木) 20:43:53.36 :62sGAFOb0 > googleサイト検索のテキストボックスぐらいつければいいのに… その程度のことなら自分でできるだろ。 できることは自分で何とかするのが自動化ツールなんだってこと忘れるな。 : 名無しさん@お腹いっぱい。 [sage] 2013/07/11(木) 20:48:50.31 :U1mXYRfP0 はい、結論出ました 自動化ツールなんだから自分で何とかしろ : 名無しさん@お腹いっぱい。 [sage] 2013/07/12(金) 08:03:05.90 :NYZtOCk50 缶切りの入った缶詰みたいな話ですね〜 イイハナシダナ〜 : 名無しさん@お腹いっぱい。 [sage] 2013/07/12(金) 09:18:48.77 :7rGn/c8R0 自分でgoogleサイト内検索できないような情弱はお断りなんだが : 名無しさん@お腹いっぱい。 [sage] 2013/07/12(金) 10:00:38.86 :kwWda01y0 作者さんでもない人に何かを断られても何の影響も無さそうだが… レンタル掲示板ドメインであってもUWSC掲示板のみターゲットとするサイト内検索方法を教えてくれないのなら、確かに困ったな。 俺情弱だから判らん。 : 名無しさん@お腹いっぱい。 [sage] 2013/07/12(金) 10:14:32.04 :kwWda01y0 Googleが独自ドメインとして扱う物はURLのスラッシュからスラッシュまでの間、 つまり http://この範囲/ 「この範囲」の部分です。 ですから独自ドメインを取得していなくても ”http://自分のID.ホストのドメイン/” 等、 エイリアスの場合も Google の検索システム上では独自ドメインとして扱われます。 ダメなのは http://ホストのドメイン/自分のアカウント/ の様に途中を/で切られてしまう場合です。 この場合はホスト下層のディレクトリーとして扱われます。 困ったな〜 情弱だから判らん : 名無しさん@お腹いっぱい。 [sage] 2013/07/12(金) 13:25:54.11 :rd0TuFRI0 ttp://nem.symphonic-net.com/uwsct/0610uwsct.html UWSC掲示板の過去ログ検索 UWSC掲示板の過去ログと現行ログを検索し、htmlファイルへ保存・表示します。(2008/04/13改版) 「 uwsc site:bigcosmic.com inurl:umiumi 」 約 845 件中 53 ページ目 (0.25 秒) 直リン ttp://google.co.jp/search?q=site:bigcosmic.com%20inurl:umiumi : 名無しさん@お腹いっぱい。 [sage] 2013/07/12(金) 18:51:51.98 :kwWda01y0 それサイト内検索じゃなくてフリー検索だけど 総論であなたが情強です : 名無しさん@お腹いっぱい。 [sage] 2013/07/12(金) 19:15:20.50 :swEyN7iT0 ローカル保存してそこから検索するのならUWSC掲示板の一番下に置いてあるやん : 名無しさん@お腹いっぱい。 [sage] 2013/07/12(金) 22:11:06.92 :rd0TuFRI0 サイト内検索でぐぐって一番最初に出てくるんだけど。 ・普通はオプションを隠し属性で渡してるだけ。 ・フリー検索じゃねーから ttp://www.hyuki.com/netserv/google.html 検索サイトGoogle.comの検索用のテキスト入力のところでsite:というキーワードを利用すると、 指定したサイト内の検索を行うことができます。 でも上記の方法だと、site:www.hyuki.comという文字列が表示されていて、 ちょっと不恰好ですね。 このページでは site:www.hyuki.com を表示させずに サイト内検索をする方法を示します。 <input type="hidden" value="hyuki.com" name="as_sitesearch" /> ttp://www.google.co.jp/intl/ja/faq_freewebsearch.html よくある質問 -- Google フリー検索 (カスタマイズ版) : ウェブ検索 よくある質問 -- Google フリー検索 (カスタマイズ版) : サイト検索 : 名無しさん@お腹いっぱい。 [sage] 2013/07/13(土) 17:36:37.53 :BzGdfk6A0 結局、 公式掲示板がコレ使わずに 過去ログを20件づつ分けてしか検索できないようにしてるのは つけようと思えばつけられるけど 俺達への愛の試練として 敢えてつけないってことでFAなのか? : 名無しさん@お腹いっぱい。 [sage] 2013/07/13(土) 19:40:24.85 :o1MYRZkK0 馬鹿はヘルプすら読まないから掲示板のその他の内容にも 目を通しておけってこった。意味不明な改行するぐらいなら : 名無しさん@お腹いっぱい。 [sage] 2013/07/13(土) 20:55:28.55 :BzGdfk6A0 バカがヘルプすら読まないと なんで掲示板が出てくるんだ? ヘルプ読めば掲示板の過去ログなんて不要だから検索を便利にする必要もない、 なら筋は通るが : 名無しさん@お腹いっぱい。 [sage] 2013/07/14(日) :8G/7BQ3a0 沸いてるのが沸いてるナ : 名無しさん@お腹いっぱい。 [sage] 2013/07/17(水) :ifWXJKcRP スレタイ読めよ。「UWSC使いよ集まれ」だよ。 「UWSC使いたい人集まれ」じゃないんだよ。 : 名無しさん@お腹いっぱい。 [sage] 2013/07/17(水) :wTQ+6tj40 クリックイベントをバックグラウンで送れるように タッチイベントをバックグラウンドで送りたいんだけどなにか方法ないかな : 名無しさん@お腹いっぱい。 [sage] 2013/07/17(水) :qVNMOs0q0 公式で聞け : 名無しさん@お腹いっぱい。 [sage] 2013/07/18(木) :vba2ML/t0 作ったスクリプトがどう動いてるか知りたいのですがよい方法ありませんか? printを使って一文毎やると凄い手間がかかってしまいます。わかる方教えてください : 名無しさん@お腹いっぱい。 [sage] 2013/07/18(木) :XY1/hefU0 ttp://www3.bigcosmic.com/board/s/board.cgi?id=umiumi&mode=all&no=4907 : 名無しさん@お腹いっぱい。 [] 2013/07/18(木) :+5oWFf0C0 デバッガー : 名無しさん@お腹いっぱい。 [sage] 2013/07/18(木) :vba2ML/t0 ありがとうございます。正にコレですね ただ…高い…。試用期間2週間って何度も出来るわけじゃないですよね? そういえば、昔Excelのマクロを少し勉強した時にデバッグって目にした覚えがあります。調べてみます : 名無しさん@お腹いっぱい。 [sage] 2013/07/18(木) :CloOvDmV0 msgboxを入れてる : 255 [sage] 2013/07/21(日) :15KbCEU/0 デバッガをググってみたけど、pro版しかなさそうでした…。 ありがとうございます。msgboxはその都度止まってしまうし、print使うのと手間が変わらないです : 名無しさん@お腹いっぱい。 [sage] 2013/07/21(日) :CiMFRvso0 ・関数分割による構造化の徹底 ・CALL文によるファイル分割 ・main()に相当する本分は1ファイルとし、他ファイルは関数ライブラリとする ・多用する基本命令を関数でラッピングし、エラー処理する ・ファイル入出力関数を使い、デバッグログ関数を作る ・長い関数は分割するのが基本だが、やむを得ない場合、 関数内のどこまで進んだかの進行度変数を持たせ、 ログやPRINTに表示させる。 PUBLIC LOG_FNAME_DEBUG = "debug.log" PUBLIC gFlgLoggingDebug = TRUE PUBLIC gMaxLinesNumOfLoggingDebug = 2000 PROCEDURE writeLog(lStrLog) IF !gFlgLoggingDebug THEN EXIT lFID = FOPEN(LOG_FNAME_DEBUG, F_READ or F_WRITE) deleteLinesUntilTargetLineCount(lFID, gMaxLinesNumOfLoggingDebug - 1) FPUT(lFID, getCriteriaDateTimeStr() + " " + lStrLog) FCLOSE(lFID) FEND PROCEDURE writeLogAndFukidasi(lStrLog, lMsgPosX=0, lMsgPosY=0) FUKIDASI(lStrLog, lMsgPosX, lMsgPosY) writeLog(lStrLog) FEND : 名無しさん@お腹いっぱい。 [sage] 2013/07/21(日) :CiMFRvso0 FUNCTION deleteLines(lFID, lStartLine, lEndLine) RESULT = FALSE TRY //IF lEndLine < lStartLine THEN swapVariable(lStartLine, lEndLine) FOR lI=lStartLine TO lEndLine FDELLINE(lFID, lI) NEXT EXCEPT EXIT ENDTRY RESULT = TRUE FEND FUNCTION deleteLinesUntilTargetLineCount(lFID, lTargetLineCount, lDeleteDirection=0) RESULT = FALSE lLineCount = FGET(lFID, F_LINECOUNT) IFB lLineCount <= lTargetLineCount THEN RESULT = TRUE ELSEIF lDeleteDirection = 0 THEN //先頭行から削除 RESULT = deleteLines(lFID, 1, 1 + lLineCount - lTargetLineCount) ELSE //最終行から削除 RESULT = deleteLines(lFID, lTargetLineCount + 1, lLineCount) ENDIF FEND : 255 [sage] 2013/07/21(日) :15KbCEU/0 これ自分に対してですよね? そうだとしたら素人なのでよくわかりません。すいません。 これをスクリプトのどこかに貼れば良いんですかね? 無知ですいません。 : 名無しさん@お腹いっぱい。 [sage] 2013/07/21(日) :RgGEVbsd0 ただのオナニーだから相手にしなくて良し : 名無しさん@お腹いっぱい。 [sage] 2013/07/21(日) :CiMFRvso0 関数分割(メソッドの抽出) ttp://d.hatena.ne.jp/steel-plate/20080206/1202302846 ttp://www.woodensoldier.info/computer/refactoring/ExtractMethod.htm ttp://www.pwv.co.jp/~take/TakeWiki/index.php?%E3%83%AA%E3%83%95%E3%82%A1%E3%82%AF%E3%82%BF%E3%83%AA%E3%83%B3%E3%82%B0%2F%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89%E3%81%AE%E6%8A%BD%E5%87%BA 構造化プログラミング ttp://www.pro.or.jp/~fuji/mybooks/cdiag/index.html : 255 [sage] 2013/07/21(日) :15KbCEU/0 すいません。 今日は7月21日ってことで許してください 纏めれるものは纏めてしまえば解析が楽になるということですね 先程のスクリプトは何ですか? : 名無しさん@お腹いっぱい。 [sage] 2013/07/21(日) :CiMFRvso0 あらうまいw 出来ればコードを読んで使って欲しかったが… デバッグ用のログファイルを出力するのに使う関数ですよ。 PRINT文の代わりにwriteLog("デバッグメッセージ")とすれば テキストファイルに残るので、長時間の動作見るのに使える。 もっともPRINT文は、 > 同じ内容をUWSC.LOGに保存 > (最大行数は uwsc.ini の LogLines= にて指定可、もしくはOptionにて) とあり、Optionでパスやモードも指定できるので、 ログファイルのファイル名が単一で良い場合は不要ですな… 私はPRINTのウィンドウが邪魔なのと ファイル名を起動PCによって変えたりするのでコレでやってます。 あ、getCriteriaDateTimeStr() が無いとダメですね。 FUNCTION getCriteriaDateTimeStr(lOffsetDays=0, lRefDt="") IFB lRefDt = "" THEN GETTIME(lOffsetDays) ELSE GETTIME(lOffsetDays, lRefDt) ENDIF // YYYY/MM/DD HH:NN:SS RESULT = G_TIME_YY4 + "/" + G_TIME_MM2 + "/" + G_TIME_DD2 + " " + G_TIME_HH2 + ":" + G_TIME_NN2 + ":" + G_TIME_SS2 FEND 全角スペースは半角かタブ文字に置き換えてね : 255 [sage] 2013/07/21(日) :15KbCEU/0 すいません。 まだ始めたばかりの素人なんで…。せっかく親切に教えて頂いたのできちんと時間ある時に一つずつググります。 それと、内容は全く理解してないですが ,262,267をスクリプトの最初に貼り付けてみましたが、動かなくなりました。 : 名無しさん@お腹いっぱい。 [sage] 2013/07/22(月) :Ew9PK0rK0 関数を最初に貼りつけたら その後ろのベタ書き(main()相当)は動かないよ 後ろに貼り付けるか別ファイルにしてCALL でもそれ以前の段階みたいだね プログラミングの基礎から関数までのテキスト読んだほうがいいな : 255 [sage] 2013/07/22(月) :iklThCsb0 すいません。 本当にそれ以前の段階です。 皆様はどうやって学習していったのでしょうか? 自分はにある初歩のサイトでスクリプトをコピペして動かして少し変えてみて動きを理解している段階です。 : 名無しさん@お腹いっぱい。 [sage] 2013/07/22(月) :5CMbpVX70 ttp://pgtop.net/category/7687666-1.html ttp://www.amazon.co.jp/dp/479812253X ttp://moeprog.web.fc2.com/moe/sb/index.htm UWSCは、言語仕様やそれについての情報の出方など、 初学者に極めて不利な言語。 こんな言語でプログラミング始めちゃうと袋小路に陥るよ。 : 255 [sage] 2013/07/22(月) :iklThCsb0 そうなんですか…。 数年前事務職でEXCELとACCESSを少し使っていて、マクロに興味を持っていたんです。 最近UWSCの存在を発見したので遊び心で時間ある時にやりはじめたんです。 参考URLをご丁寧にありがとうございます。見てみます。 : 255 [sage] 2013/07/22(月) :iklThCsb0 というか、自分スレ汚ししてるような気がするので、捨てアド貼った方が良いですかね? : 名無しさん@お腹いっぱい。 [sage] 2013/07/22(月) :MQGVK2XO0 メールだと誰かレスしたのかどうか分からないし 特定の人に依存することになるからよくない。 メールでやるくらいだったら公式掲示板で作者に質問したほうがいい。 2ちゃんねるは喧嘩とかにならなければ自由に書き込んでいいんじゃね? 時期によって常駐してる人も違うし、書き込んでみて何か言われたら考えればいい。 夏休みとかになると子供が多いんで適当なこといいまくるけど そういうのは気にしなくていいお。 : 名無しさん@お腹いっぱい。 [sage] 2013/07/22(月) :tB0sLBW60 UWSC使いが集まるチャットがあれば便利そうだな ちなみに一昔前はグループチャットといえばIRCが定番中の定番だった 今もネット古参達の間では当たり前のように使われてるそうだが : 名無しさん@お腹いっぱい。 [sage] 2013/07/22(月) :T+NuwD250 別にこのままがベストだと思うけどな チャットだと常に誰か居るわけでもないしすぐ過疎るのが目に見えてる このスレで別に他のことで盛り上がってるってわけでもないし : 名無しさん@お腹いっぱい。 [sage] 2013/07/26(金) :udXNnBBY0 Linuxで同じようなソフトないかなぁ : 名無しさん@お腹いっぱい。 [] 2013/07/28(日) :JPJ+NpRD0 画像認識を含むスクリプトをexe化したいんだけど誰か方法わかりませんか? iexpressでやってもやっぱり意味無いですもんね・・ : 名無しさん@お腹いっぱい。 [] 2013/07/28(日) :Sb1g5G6j0 pro : 名無しさん@お腹いっぱい。 [sage] 2013/08/01(木) :MIPwYUryP ちょっと質問なんですが chromeで画像認識の簡単な操作してるんですが、デスクPC(i5、8GB、win7home)で再生すると 開始数分で通常時40%前後のメモリ使用率が80%を越えます。終了しても減らず、 タスクマネージャーで確認してもその使用率の上昇分が表示されず何に使われているのか不明です。 同じものをノートPC(i3、8GB、win7home)で再生してもこの現象は起きません。 原因わかる方いますか? : 名無しさん@お腹いっぱい。 [sage] 2013/08/01(木) :D5v7PAGU0 エアロ切ってないとかじゃない? : 名無しさん@お腹いっぱい。 [sage] 2013/08/02(金) :92qyhKvwP 回答ありがとうございます。 試したところ異常はなくなりました。ただどちらもエアロが有効のままだったので 片方だけ起きたのが謎ですね。 : 名無しさん@お腹いっぱい。 [sage] 2013/08/10(土) :34t+9fGZ0 ピークカラー関数を使って、あるポイントの色($FF0000)の識別をしているんですが たまに色が変わってないのにエラーが出る(ポイントの色が変わった時用のif分岐動作)ので調べてみると $000000と$FFFFFFを吐き出しているようなんですが、これは仕様でしょうか? 負担をあまりかけないようにピークカラーは1秒おきに使用しているし PCのスペックはそこそこで、使用中は余裕があるほどなのでスペック不足ということも無さそうなのですが…。 どなたか分かる方いらっしゃいますか? : 名無しさん@お腹いっぱい。 [sage] 2013/08/10(土) :qauz7CzG0 まずは再現する短かなソースかif周辺のソースを貼ったほうがいいかと : 名無しさん@お腹いっぱい。 [sage] 2013/08/10(土) :34t+9fGZ0 ソース張り忘れ失礼しました。 ┌─┐ │; ↓ │while true │; sleep(1) │; color = peekcolor(25,25) │; ifb color = $FF0000 │; ; break │; elseif color = $000000 │; ; break │; elseif color = $FFFFFF │; ; break │; else │; ; エラー時の処理 │; endif │wend │; │ └─┘ (25,25)が$FF0000色だったらbreak→再び1秒後カラーチェック 今はelseifで$000000と$FFFFFFを吐き出した時も問題ないようにして正常に動いてるんですが、なんかスッキリしなくて…。 もちろんチェックしてる座標に黒い物や白い物を被せたりはしてないですorz : 名無しさん@お腹いっぱい。 [sage] 2013/08/10(土) :LIYTDKH/0 色が変わってるんじゃない? : 名無しさん@お腹いっぱい。 [sage] 2013/08/10(土) :34t+9fGZ0 チェックしている対象は色が変わるような物ではないので大丈夫だとは思うのですが 一応各break、elseの部分に「print color」を入れてしばらく数値をチェックしてみましたが 自分で意図的に座標部分を隠した時以外は$FF0000(チェックしたい色)$000000、$FFFFFF以外の数値は出て来なかったので 目で判別できないレベルで色がひっそり変わってるというのは無さそうですorz : 名無しさん@お腹いっぱい。 [sage] 2013/08/10(土) :qauz7CzG0 今まで使ってきてpeekcolor()が変な値を返した事はないなぁ、mouseorg()とかは大丈夫? あと可能ならuwscのバージョン変えて確認してみるのも1つかもよ 最新だから良いって物でもないしね : 名無しさん@お腹いっぱい。 [sage] 2013/08/10(土) :EdiHYuHy0 printでのチェックは他の部分も含めてのチェック? そのループ部分だけの状態でのチェックだと他の部分が悪さしてるのとかわからないからエラーはかないってこともあるよ : 名無しさん@お腹いっぱい。 [sage] 2013/08/10(土) :DHhr1DP90 後出し後出しにならないように、サンプル作ってUPしてくれ。それが早い。 環境依存か仕様かどうかを、(俺以外の)スレ住人が総力を挙げて全力で調査してやる。 : 名無しさん@お腹いっぱい。 [sage] 2013/08/11(日) :XK8uab3i0 elseでcolorが何になってるか吐かせればいいだけ。 何ならその時をSAVEIMGすればいいじゃん。 : 名無しさん@お腹いっぱい。 [sage] 2013/08/11(日) :XK8uab3i0 ん?$FF0000色「しか」有り得ないはずって前提か? ならば色判定する必要性自体が皆無なんだが… $FF0000色になるのを待つ、って処理で、 $FF0000色になっているはずなのに$0や$FFFFFFを取得し続けるのか? ループの中にウィンドウID再取得とMOUSEORG入ってないが? : 名無しさん@お腹いっぱい。 [sage] 2013/08/14(水) 17:34:28.14 :mCz48KBM0 質問です、ネットゲームの話なんですが メインPC側でUWSCを動かして仮想PC側のネットのキャラを動かしたいのですが 画像認識が上手くいきません ACW(GETID("Windows 7-1 - VMware Player","VMPlayerFrame"),0,0,1170,928,0) ifb chkimg("A.bmp",0,0,0,1000,0500) mmv(G_img_X,G_img_Y) endif これで動かしているのですが目的の画像の上にマウスポインタが移動しません bmpも24ビットで保存していて、画像自体も一色のみです もしかしてメイン側では仮想PC側の画面を判定するのでできないのでしょうか? : 名無しさん@お腹いっぱい。 [sage] 2013/08/14(水) 20:22:21.79 :uSPijeZ10 そっかー : 名無しさん@お腹いっぱい。 [sage] 2013/08/15(木) 01:50:27.92 :8rADeWfMP A、Bはそれぞれの行動であるとして・・・ Aを3回繰り返した後、Bを1回する。 これをループさせたいんですがどうすればいいんですか? for kaisu=1 TO 3 A next B からわかりません : 名無しさん@お腹いっぱい。 [sage] 2013/08/15(木) 01:59:13.68 :SvjJrj/h0 リピート 1 A、B : 名無しさん@お腹いっぱい。 [sage] 2013/08/15(木) 02:11:15.01 :hHgj9zWnP それをループさせればいいんじゃない? : 名無しさん@お腹いっぱい。 [sage] 2013/08/15(木) 19:43:21.12 :bN9bHqqX0 本当に画像判定が失敗しているってことが特定できているのかな? SAVEIMGで画像が取得できていることを確認してみ。 実は、判定に成功してマウス移動しているけど、VMToolsのラグで操作が無効になってたりする場合も考えられるよ。 その場合は、画面内を一度クリックしてから操作するとか何とかが必要かもね。 VB 多重ループ でググる : 名無しさん@お腹いっぱい。 [sage] 2013/08/21(水) 13:33:36.57 :U3XmayND0 UWSCでブラウザの操作を自動化したいのですが、同時に 二つのブラウザを使うもののそれぞれのセッションを別けな いとダメのようです。 ブラウザを起動するときは -nomerge と言うオプションを使 って別けているのですが、UWSCで起動するときは IE = CreateOLEObj("InternetExplorer.Application") IE.Visible = True 以外にどの様な命令を出せば良いでしょうか? : 名無しさん@お腹いっぱい。 [sage] 2013/08/21(水) 13:45:48.60 :qXvQQLco0 IE = CreateOLEObj("InternetExplorer.Application") IE2 = CreateOLEObj("InternetExplorer.Application") と2つオブジェクト作って操作するのはダメなの? : 名無しさん@お腹いっぱい。 [sage] 2013/08/21(水) 13:55:54.75 :U3XmayND0 すいません説明不足でした。 UWSCを実行するときは既に一つブラウザが開いて使っている状態です。 それとは別にUWSC経由でブラウザを開いて、それは元から開いている のとは異なるセッションを持たせたい感じです。 理由は特権権限でログインしてログを表示させながら一般権限でログ インしてデータの投入を行いたいのです。IEとFirefoxを使えば実現出 来るかと思ったのですがシステムがIEでしかダメで、パソコンを別ける のも難しいので悩んでいます。 : 名無しさん@お腹いっぱい。 [sage] 2013/08/21(水) 14:55:07.69 :g5EsATWj0 IE8以上使ってるならだったら InPrivateブラウズモード使うといいかも doscmd("start iexplore -private") sleep(3) //IE起動を待ってみる InPrivateIE = GETACTIVEOLEOBJ("InternetExplorer.Application", "InPrivate") : 名無しさん@お腹いっぱい。 [sage] 2013/08/22(木) 17:37:22.45 :wqTqUzdp0 クラス感覚で機能単位のuwsファイル用意してcallで呼び出そうとしたら返値的なもの受け取る方法ないよね どうしたものか : 名無しさん@お腹いっぱい。 [sage] 2013/08/22(木) 17:51:34.83 :PVn8WfTn0 publicな変数で渡せばいいんでない? : 名無しさん@お腹いっぱい。 [sage] 2013/08/22(木) 18:12:07.89 :7bTVXJ8F0 ありがとうございます! なんとか行けそうです。 本当に助かりました。 : 名無しさん@お腹いっぱい。 [sage] 2013/08/22(木) 18:16:35.68 :wqTqUzdp0 そんなんアリなの?と試したらできたー 返値専用のpublic変数を用意しておけば捗るね : 名無しさん@お腹いっぱい。 [sage] 2013/08/22(木) 19:46:27.29 :vQyzv3p30 IEのReferer弄ってUser-Agent変えたりReferer: ttp://www.jasrac.or.jp/ とかにして遊んでるんだが Use-Agentもそうだったが偽装って、開いたそのページ単体限定だよね。 サイトのアクセス解析には記録されるの? : 名無しさん@お腹いっぱい。 [sage] 2013/08/29(木) 13:02:01.57 :2farnKmb0 androidでUWSC的な自動操作したいのだけどまだそういうソフトないのな : 名無しさん@お腹いっぱい。 [sage] 2013/08/29(木) 13:43:50.78 :1Ek6LF/I0 Android マクロで検索すればいくつか出てくると思うけど? アンドロイド端末でやらせるよりもリモート操作だったりPでCで操作できるようにさせてPCからマクロ実行っていうのが多いと思うけど(アンドロイド端末でやらせるよりも処理が軽い) : 名無しさん@お腹いっぱい。 [sage] 2013/08/29(木) 18:17:30.86 :34ZOVHgZ0 PC対応ソーシャルゲームだがandroidの標準ブラウザでも一応動くのでスマホでマクロ操作させたい。 PCつけっぱは電気代がもったいない : 名無しさん@お腹いっぱい。 [sage] 2013/08/29(木) 19:24:50.17 :zao0VB880 そうですか : 名無しさん@お腹いっぱい。 [sage] 2013/08/29(木) 20:45:07.57 :AVh0QSJW0 電気代ケチる人が自動とか考えちゃダメだよ。 省電力PC組むだけじゃない。 この際出費も考えちゃダメ。 : 名無しさん@お腹いっぱい。 [sage] 2013/08/29(木) 20:51:51.16 :mLvRtgsAP 新調が必要なら、ノートPCならデスクトップと比べて遥かに電気代安いからノートがいいぞ いまどき充分な性能のなんて3-4万でごろごろしてる ttp://kakaku.com/pc/note-pc/ranking_0020/ : 名無しさん@お腹いっぱい。 [sage] 2013/08/30(金) 06:48:05.76 :coTgE53C0 電気代をケチるレベルならそもそもそのゲーム止めれば そんなはした金ケチる必要ないんじゃね? : 名無しさん@お腹いっぱい。 [sage] 2013/08/30(金) 07:24:24.28 :zYVg1Tzt0 PC一台マクロに占有されたくなく、使ってない旧いスマホなら占有されてもいいっていうか使い道ないから活用したい ってならわかる : 名無しさん@お腹いっぱい。 [sage] 2013/08/30(金) 07:49:19.92 :WlOSyuJl0 でもそうなると完全にスレチなので適切なスレへどうそって話だわな : 名無しさん@お腹いっぱい。 [sage] 2013/08/30(金) 11:36:29.34 :DQoTlwfU0 単純に動作を記録再生だけならFRepとか使ってればって思う AndroidはJAVAで簡単にプログラムも組めるしゲームのマクロ位ならツール探すよりも自分で作っちゃったほうが簡単な気もする ただアンドロイド端末でずっとつけっぱなしとか熱対策とかそっちの問題のほうが難しとおもうが : 名無しさん@お腹いっぱい。 [sage] 2013/08/30(金) 13:59:23.20 :/Qv/PnyoP Tasker : 名無しさん@お腹いっぱい。 [sage] 2013/08/30(金) 18:32:19.34 :3AgqLMPl0 UWSCの強みは、低レベル操作関数の作り込みと画像判定。 オブジェクトを取得してOLEで自動操作するのは VB.netやC#などのオブジェクト指向言語+総合開発環境のほうが普通に楽だろ。 自動操作を考慮されてないアプリに対して自動操作を強行するには 画像判定でゴリ押しするのが手っ取り早い。 自分でやろうとしたら画像処理を自作で作り込むか、OpenCV使わないとだめだろう。 Linux系で無いのが残念。 : 名無しさん@お腹いっぱい。 [sage] 2013/08/30(金) 20:44:31.86 :jT4prRdU0 全角英数→半角英数にするの一番上手いやり方って何かね。 ヘルプ見てもこの変換はできないようだ。カタカナは変換したくない。 今はテキストエディタでやってるから問題ないし 26種×2をreplaceするのもなーって思った。 正規表現は分からんので参考になるURLあったら張ってくれ。 : 名無しさん@お腹いっぱい。 [sage] 2013/08/30(金) 21:10:26.29 :3AgqLMPl0 DOSCMDでこういうの使えば? ttp://hp.vector.co.jp/authors/tfuruka1/software/zen2han/zen2han.html StrConvをOLEで使うと書くのは楽だが重そう。自作するとこうなるらしい。 ttp://blog.livedoor.jp/midorityo/archives/51064633.html : 名無しさん@お腹いっぱい。 [sage] 2013/08/31(土) 00:38:53.45 :95E4IqPW0 このくらいしか思いつかないわ FUNCTION strconv2(str) for i=1 to length(str) ascii=asc(copy(str,i,1)) if (ascii>=65296 and ascii<=65305) or (ascii>=65313 and ascii<=65338) or (ascii>=65345 and ascii<=65370) then ascii=ascii-65248 RESULT=RESULT+chr(ascii) next FEND : 名無しさん@お腹いっぱい。 [sage] 2013/08/31(土) 11:14:47.78 :Ra07XkvF0 そうだぱーるでだぶりゅえすしーをかこう : 名無しさん@お腹いっぱい。 [sage] 2013/09/01(日) 01:16:23.84 :n0EYOx0F0 電気代もそうだがこの時期無駄に部屋が熱くなる。 まぁお前は視野が狭いからどうでもいいんだろうが : 名無しさん@お腹いっぱい。 [sage] 2013/09/01(日) 01:17:53.58 :n0EYOx0F0 なんか大げさだろ スマホでできることをわざわざPCでって 自鯖とかもお古のスマホで十分 UPSいらないしな : 名無しさん@お腹いっぱい。 [sage] 2013/09/01(日) 01:19:35.37 :n0EYOx0F0 ああそれそれ カタイ事言うな : 名無しさん@お腹いっぱい。 [sage] 2013/09/01(日) 01:43:22.16 :5txjSDWV0 ぷw : 名無しさん@お腹いっぱい。 [sage] 2013/09/02(月) 13:31:29.18 :RIvn3m7+0 [Ver4.9] TRIM関数の全角指定にて UNICODEのスペース($2029-$202E)も削除するようにした GETACTIVEOLEOBJ関数にて順番に-1が指定された時は最新(一番最後)のものを取得するようにした SAVEIMG、CHKIMG、PEEKCOLOR関数にてクリップボードを利用するモードを付けた CTRLWIN関数にてトップにするがアクティブ化しない TOPNOACTV を付けた STATUS関数にて IDが有効かを調べる ST_ISID を付けた GETSTR関数にてアイテムが存在しない場合は EMPTYを返すようにした FUKIDASI関数のエリアス名として BALLOON を付けた スレッド使用にてエラーが出るパターンがあるのを修正(スレッドの安定化、最大数を64に) COM_ERR_IGN、MOUSEORGの有効範囲が全範囲だったのをスレッド単位にした SENDSTR関数にて DateTimePickerに日付を送れなくなっていたのを修正 Pro版: SETFORMDATA関数直後の Navigate("javascript:") が実行できないを修正 Debugger: メニューから登録スクリプトを実行できるようにした(初期状態で4つのスクリプト) RecIE: デフォルトのレンダリングモードが IE7相当だったのをインストールされているIEに合わせた RecIE: BusyWait関数のロジックを変更した(JavaScript、マルチフレーム対応の為) RecIE: 再生時に IEが終了されたらスクリプトも終了するようにした RecIE: 環境によりマルチフレームでの記録ができなくなっていたのを修正 ダウンロード ttp://www.uwsc.info/download.html : 名無しさん@お腹いっぱい。 [sage] 2013/09/02(月) 19:38:33.80 :Nt7TOesx0 復帰 : 名無しさん@お腹いっぱい。 [sage] 2013/09/03(火) 20:50:15.38 :L+RViJsF0 公式掲示版ってたまに白熱した展開になるよな : 名無しさん@お腹いっぱい。 [sage] 2013/09/03(火) 22:11:26.98 :HF32yzN2P ff14の単純作業でマクロを作ってみようと思うのですが AutoHotKeyとUwscだとどちらが機能性充実していますか? またどちらが覚えやすいでしょうか? : 名無しさん@お腹いっぱい。 [sage] 2013/09/03(火) 23:14:41.89 :4iodfhPU0 どちらもそんなんに変わらん UWSCは外部のAPIとかDLLを読み込めるが実行ファイルとかにするには有料版が必要(配布とか考えているなら) AutoHotKeyはGUIの作成が簡単、実効化ファイル作るのが無料で出来る : 名無しさん@お腹いっぱい。 [sage] 2013/09/03(火) 23:40:05.18 :WHaArix60 ありがとうございます。 UWSCの方が日本産まれなので参考になるサイトが多いかなと思ったのですが 少し触ってみるとたしかにAutoHotKeyは直感で組み立てることができますね。 : 名無しさん@お腹いっぱい。 [sage] 2013/09/03(火) 23:44:18.43 :SmAJC8yp0 ホットキーとしてつかうなら断然AHK。速度も早い ただ書式がとっつきにくい… (自分は) : 名無しさん@お腹いっぱい。 [sage] 2013/09/03(火) 23:54:40.02 :4iodfhPU0 ゲームのマクロって画像認識させてとかレベルのものでしょ? テストで適当に特定条件下でのボタン押しマクロみたいに単純なもの作ってみて作りやすい、精度が高いと思ったほう使えばいいんだよ ゲームマクロ程度ならUIも外部のAPIやDLLなんてほとんど関係ないんだから 中華のmobみたいなもの作ろうと思ったらマクロツールじゃなく本格的なプログラミング覚えた方が良い : 名無しさん@お腹いっぱい。 [sage] 2013/09/04(水) 00:04:19.93 :WHaArix60 その通りです。画像認識を使って単純作業の効率化を目論んでます。 BOTを作るにはバイナリーのレベルで解読しないと無理なんですよね? 憧れますけどかなり敷居が高いですね。マクロすらまともに扱えない素人なので : 名無しさん@お腹いっぱい。 [sage] 2013/09/06(金) 23:21:54.79 :kJgC51VJ0 > STATUS関数にて IDが有効かを調べる ST_ISID を付けた やっとか 今までハンドルに変換してからウィンドウIDに再変換とか無駄なことさせられてたよ。 : 名無しさん@お腹いっぱい。 [sage] 2013/09/08(日) 10:19:18.58 :eECp2ZLU0 みんなahk使ってるのか せっかくuwsc覚えてそこそこ使えるようになったのに : 名無しさん@お腹いっぱい。 [sage] 2013/09/08(日) 12:22:57.05 :eosrxOyP0 主観をみんなと表現しちゃう人って : 名無しさん@お腹いっぱい。 [sage] 2013/09/09(月) 09:18:55.35 :JNaRIkU70 さくらエディタでスクリプト書いてる人はこれやってる? makoto-watanabe.main.jp/program.html#sakura : 名無しさん@お腹いっぱい。 [sage] 2013/09/09(月) 11:00:39.95 :3ZzSIi720 それやらないとサクラエディタ使ってる意味殆ど無くね? : 名無しさん@お腹いっぱい。 [sage] 2013/09/09(月) 11:15:45.62 :3fkjxtgS0 半端なurlだる それってなに : 名無しさん@お腹いっぱい。 [sage] 2013/09/09(月) 13:01:00.83 :VcrUiu1f0 ttp://anago.2ch.net/test/read.cgi/software/1350040751/909-911 909 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2013/04/10(水) 10:45:29.23 ID:W+/E9QGj0 サクラエディタで .uws の色分け設定手順 のメモ (後略) 911 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2013/04/10(水) 12:38:32.28 ID:v0JIHrgl0 ttp://makoto-watanabe.main.jp/program.html#sakura に既にあるよ : 名無しさん@お腹いっぱい。 [sage] 2013/09/09(月) 13:01:29.80 :3ZzSIi720 頭にhttp:付ければ見れるよ 強調ワードとかF1でUWSCのヘルプ検索とかそういう設定 : 名無しさん@お腹いっぱい。 [sage] 2013/09/09(月) 13:07:15.68 :JNaRIkU70 頭にhttp:付けなくても今時のブラウザなら自動補完してくれるわけだが 開くの面倒とか思ってるやつは頭おかしい : 名無しさん@お腹いっぱい。 [sage] 2013/09/09(月) 14:34:05.62 :3fkjxtgS0 なるとん :が入ってたら補完してくれるかな : 名無しさん@お腹いっぱい。 [] 2013/09/09(月) 18:49:38.33 :Y7+Rnm/L0 ttp://qb5.2ch.net/test/read.cgi/operate/1377674620/871 アドレスの修飾を省略するのが流行ってんのか? : 名無しさん@お腹いっぱい。 [sage] 2013/09/09(月) 20:16:01.50 :KRdjHckK0 忍法帳のレベルが低いとURLかけないのよ : 名無しさん@お腹いっぱい。 [sage] 2013/09/09(月) 21:08:20.83 :Y7+Rnm/L0 ああ、そういうことだったか。 確か :// あたりに反応するんだっけ。 : 名無しさん@お腹いっぱい。 [sage] 2013/09/09(月) 23:44:14.60 :UZG+jAID0 にんにん : 忍法帖【Lv=40,xxxPT】(1+0:8) [sage] 2013/09/11(水) 09:50:04.09 :IKpy+pD/0 にんにん : !ninja [sage] 2013/09/14(土) 12:53:49.32 :8bZZxalT0 名前欄に !ninja : 名無しさん@お腹いっぱい。 [] 2013/09/16(月) 16:07:59.86 :gkEdeY2B0 データグリッドビューを操作することってできないんですか? : 名無しさん@お腹いっぱい。 [sage] 2013/09/17(火) 02:14:41.63 :6N2JIO6OP call(ブレイク)の数に制限ありますか? 今まで20個コールして自動運転できてました 25個に増やすと必ず22個目にハングアップ uwscをタスクマネージャーでプロセス終了してはテストしてます 呼び出す順番変えても22個目にハングアップ 13個と12個に分けて2つのスケジュールにすると止まらず運転できます windows xp sp3 uwsc4.8 Google chome ブレイクかコールが怪しい気がしてます どなたかご教示お願いしますm(_ _)m : 名無しさん@お腹いっぱい。 [sage] 2013/09/17(火) 02:36:37.14 :cQEK+mzT0 そういう仕様についての質問は開発者しかわからんだろうし公式で聞きなよ ちなみにテストで PRINT ("番号") だけ書いたファイルを25個用意して順番に読み込ませるテストしてみたけど正常に動作した : 名無しさん@お腹いっぱい。 [sage] 2013/09/17(火) 04:00:11.21 :KYAFdips0 だからコール1回きりの関数プログラミングにしとけとあれほど… : 名無しさん@お腹いっぱい。 [sage] 2013/09/17(火) 04:13:58.67 :6N2JIO6OP 354です 早速レスありがとうございます うみうみ氏のところで質問しようとしたら 書き込みのところにゲーム関係の質問はしないで下さいとありました 嘘ついてまで質問できないのでこちらで質問させて頂いた次第です 今も全く別のスクリプトを作ってテストしました やはりコールの23番目にハングアップします 開発者しかわからない仕様かもしれないですね 2つのスケジュールにわけて25個を動かす事にします 70分毎なのでスケジュールに設定するのが倍の手間になり面倒なので 一つのスクリプトからコールしたかったんですが 2つのスケジュールでやりくりしてみます ありがとうございました : 名無しさん@お腹いっぱい。 [sage] 2013/09/17(火) 04:33:07.49 :6N2JIO6OP 354です 書き漏れありました コールで呼んだスクリプトの中にコールが一つあります 25個とも同じ作業です Chromeを起動する時にUAで識別させているので 中身で違う部分はUAのユーザー部分だけでバイト数は全て同じにしてあります 失礼しました : 名無しさん@お腹いっぱい。 [sage] 2013/09/17(火) 09:13:03.56 :ibplWCXa0 >356氏の言うようにコールじゃなくて関数化 UWSCのコールは都度読込みのではなくて、起動時に一括読込みだから おそらくメモリ管理あたりでハングしてる : 名無しさん@お腹いっぱい。 [sage] 2013/09/17(火) 11:32:39.30 :36GibZDU0 CALLは命令の文言的に誤解されちゃうのかな? 非関数部分のスクリプトは動作しちゃうから その誤解を助長してしまう部分もあるかもしれないけれど CALLはincludeな使い方をする命令 CALL先のスクリプトは出来るだけ関数のみ定義して 必要に応じて関数を呼び出す方が良いよ 同じファイルをCALLで複数呼び出すと変数の管理が想定外の自体になりやすそう : 名無しさん@お腹いっぱい。 [sage] 2013/09/17(火) 21:01:18.94 :nJ6vraJi0 ネトゲ関係の質問しないでってそういう意味じゃないだろw : 名無しさん@お腹いっぱい。 [sage] 2013/09/18(水) 00:49:53.48 :QV8bh5a60 も言ってるけど、ネトゲ関係の質問するなってそういうことじゃないと思う。 掲示板のログ全部読んだわけじゃないけど、◯◯のゲームで××出来ますか、どうやるんですか、みたいな質問が多かったんじゃね? お前の場合ならCALLで呼んでる別スクリプトの個別の内容の書き方を聞くような、ドキュメント嫁で終わる内容のさ。 その手のアホ質問じゃないから公式凸っていいと思う。というよりはうみうみ氏もバグ出しありがとうなネタなんじゃないかな : 名無しさん@お腹いっぱい。 [sage] 2013/09/18(水) 09:17:25.86 :PCLMBNx00 何も考えず試さず、どうやってbot作るの教えれみたいな思考停止厨が嫌われてるだけで 掲示版は優しい人多いから理由(根拠)述べれば大丈夫だよ : 名無しさん@お腹いっぱい。 [sage] 2013/09/18(水) 12:58:02.74 :z8shnxZb0 まぁその後ろめたい気持ちは忘れずになw : 名無しさん@お腹いっぱい。 [sage] 2013/09/18(水) 13:37:30.75 :ukO20Gtq0 自動ログイン程度のことも出来ないスクリプトの知識がまったく無いやつが 一からUWSCを使えるようになるのに有用な本やサイトがあれば教えて頂きたい。 : 名無しさん@お腹いっぱい。 [sage] 2013/09/18(水) 14:26:13.78 :Ipi6esCZP 一からどこまでやりたいのかわからないとアレなんじゃねぇか? : 名無しさん@お腹いっぱい。 [sage] 2013/09/18(水) 15:21:23.31 :cyy5QVev0 >1 : 名無しさん@お腹いっぱい。 [sage] 2013/09/18(水) 19:37:30.60 :1+41nBuCP 357です 原因わかりました callでは無かったみたいです callでスクリプト@を呼び出す chromeをUA付きで起動して ピークカラーで色判定 閉じる callでスクリプトAを呼び出す chromeをUA付きで起動して ピークカラーで色判定 閉じる 作業内容は全く同じです テストではprintとsleepだけです 23個目にハングアップ chromeの起動する時にUAを付けないとハングアップしない ピークカラーを使わずにsleepで時間待ちするとハングアップしない うみうみ氏のサイトのサンプルでchromeの読み込み待ちを試したところ UA無しでは機能していますが UA付きでは機能しません それでピークカラーでの色判定で読み込み確認していました やりたい事はUA付きでchromeを起動して読み込み待ちです 22個目までは動きますが23個目にハングアップ 呼び出したスクリプト内にはcall無しに書き換えてもハングアップしました ここまでわかりました長文すいません : 名無しさん@お腹いっぱい。 [sage] 2013/09/18(水) 21:08:21.58 :1+41nBuCP 368を一部訂正 うみうみ氏のサイトのサンプルでは UA付きでchromeを起動しようとしたら エラーでChromeが起動しないです もしかしたら私のUAの付け方に問題あるかもしれないです 拡張機能をオンにしてUA無しでChromeを起動させて読み込み待ちはできました ChromeでUA付きで起動させて読み込み待ちをご存知の方おられましたら ご教示お願いしますm(_ _)m : 名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 10:28:53.98 :LLboGBuX0 宜しくお願いします。久しぶりにUWSCを使ってスクリプトを書いてみたのですが 私の想像通りの動きをするかの確認とスクリプトのアドバイスお願いします。 【Aループ開始】 画像1があればクリック→画像2があればクリック どちらも無い場合【Bループに突入】 画像3を見つけてクリックするまでクリックできたらBreakでAループに戻る 上記の動きを上手く書けているかの確認と バックグランドで動かしたいのでMOUSEORGを入れてますが現在上手く動きません。 なのでCTRLWINでアクティブにしてるのですがもう少し良いアドバイスあればお願いします。 id = GETID("F") ifb id = -1 then MOUSEORG(id, 2) While True CTRLWIN(id,ACTIVATE) if GETKEYSTATE(VK_ESC) then exit endif sleep(2) IFB CHKIMG("1.bmp") BTN(LEFT,click,G_IMG_X+25,G_IMG_Y+5) sleep(2) IFB CHKIMG("2.bmp") BTN(LEFT,click,G_IMG_X+25,G_IMG_Y+5) else While True IFB CHKIMG("3.bmp") BTN(LEFT,click,G_IMG_X+25,G_IMG_Y+5) eles Break endif WEnd endif WEnd : 名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 10:52:28.44 :rxRV5QPu0 クリックできたらBreakじゃなく画像が見つからない場合はBreakになってるよ クリックできたらにしたいならBTNの下にBreakでしょ : 名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 11:11:19.81 :GS2M5JEb0 これ実行してエラー出ないの? 色々ぐちゃぐちゃだけど : 名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 11:20:03.00 :rxRV5QPu0 While True if GETKEYSTATE(VK_ESC) then exit sleep(2) IFB CHKIMG("1.bmp") or CHKIMG("2.bmp") BTN(LEFT,click,G_IMG_X+25,G_IMG_Y+5) sleep(2) ELSE While True IFB CHKIMG("3.bmp") BREAK ELSE BTN(LEFT,click,G_IMG_X+25,G_IMG_Y+5) ENDIF WEND ENDIF WEND こんなかんじだな : 名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 11:20:53.43 :rxRV5QPu0 あ、上のままにするならね これだとESC押しても3.bmpのループ中には終了しないとか問題ありそうだけど : 名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 14:00:08.99 :LLboGBuX0 ほんとですねorz御指摘助かります。 画像3が出なかったら一応動きますよ。 or文って使えるんですか!勉強になります 画像3が必ずあるわけではないので 画像1をクリック→画像2をクリックまでは一連の流れなのですが 画像2をクリックしたあとアプリが更新されて20〜30秒待たされるんです その後、アプリが問題なければまた画像1で エラーだったら画像3をクリックしないと駄目なんです とりあえずループさせて待ち時間を回避しようとしてますが何か良い案ありますか? : 名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 14:16:06.48 :8Lperdvt0 コピペでエラー出る 13-14行目 endif追加 18行目 eles → else : 名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 16:16:58.07 ://1K/9uk0 ネトゲ不正スクリプトを添削してもらえるスレ : 名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 18:52:21.22 :ZcqEfqq00 え?艦これの登録スクリプトだと思ってたぜw : 名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 19:32:38.11 :Ab7uiD7Q0 画像1クリック→画像1が消えて画像2がでる 画像2クリック→エラーなしの場合は画像2が消えて画像1が表示 エラーの場合は画像2が消えて画像3が表示 ってこと? それとCHKIMG("1.bmp") or CHKIMG("2.bmp")って書き方はダメ 1.bmpが見つかって2.bmpが見つからなかった場合にG_IMG_X,G_IMG_Yに値がはいらない : 名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 19:33:01.29 :zfAR1vuf0 // main() while true ifb click1and2() then continue while true ifb click3() then break wend wend // functions function click1and2() result = false if !CheckWindowAndMouseorg(2) then exitexit ifb clickImage(LEFT, "1.bmp", 25, 5, 2) then ifb clickImage(LEFT, "2.bmp", 25, 5, 2) then result=true endif endif fend function click3() result = false if !CheckWindowAndMouseorg(2) then exitexit ifb clickImage(LEFT, "3.bmp", 25, 5, 2) then result=true endif fend : 名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 19:34:38.08 :zfAR1vuf0 function CheckWindowAndMouseorg(lAfterWaitSec) result = false id = GETID("F") if id = -1 then exit result = true mouseorg(id, MORG_DIRECT, MORG_BACK) sleepWithEsc(lAfterWaitSec) fend function clickImage(lButton, lBmpName, lOffsetX, lOffsetY, lAfterWaitSec) try result = CHKIMG(lBmpName) except result = false exit endtry BTN(lButton, click, G_IMG_X + lOffsetX, G_IMG_Y + lOffsetY) sleepWithEsc(lAfterWaitSec) fend function sleepWithEsc(lSec) for ldSec=0 to lSec*10 if GETKEYSTATE(VK_ESC) then exitexit sleep(0.1) next fend : 名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 19:36:13.58 :zfAR1vuf0 訂正:main() の ifb は全て if : 名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 19:44:49.21 :zfAR1vuf0 も一々callせず、 やりたいことを関数分割して main() の入ってないサブスクリプトを冒頭でcallしておき、 あとはcallではなく関数を呼び出すといい。 : 名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 20:02:21.70 :Ab7uiD7Q0 それだと画像3がでるまで無限ループしね? : 名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 20:27:20.81 :zfAR1vuf0 どうしたいのか判らんけど ここまで抽象化したら一目瞭然のはずなので 後は好きな様に変更すればよろし : 名無しさん@お腹いっぱい。 [sage] 2013/09/22(日) 00:03:55.37 :vq2VKzfx0 IEのお気に入りとかのサイドバーが開いているか、閉じているかの判定はどうしたら良いのでしょうか? : 名無しさん@お腹いっぱい。 [sage] 2013/09/22(日) 02:54:15.60 :cQEOBztW0 オプション指定して開くところから組み込めば好きに出来るんじゃね? : 名無しさん@お腹いっぱい。 [sage] 2013/09/27(金) 13:19:38.89 :NbziS2wX0 幾つかthread命令を使った関数を走らせてる状態で、 メインは走らせつつ、メインから全threadの一時停止と再開、 メインは走らせつつ、とあるthreadから自分以外のthreadの一時停止と再開、 こういうことは可能でしょうか? 検索でヒットしたんですけど、何やら危険な香りが・・・ ttp://siromasa.digi2.jp/uwsc/u_sample/Base/SuspendThread.txt > 排他制御中にサスペンドされるとデッドロックの可能性があります。 > それらを考えると、使用は全く勧められません。 PUBLIC変数をフラグとして使って、 好きなときに一時停止・再開をやろうとすると、 極端な話、1命令毎に変数チェック とかやらないとダメなんでしょうかねぇ・・・ 何か安全で良い方法は無いでしょうか? : 名無しさん@お腹いっぱい。 [sage] 2013/09/27(金) 17:06:08.33 :yLJlY9pV0 全部止めたい時の一番簡単な方法はメッセージボックスの表示 特定のスレッドなら一旦そのスレッド閉じさせるとかフラグ作ってというのが簡単じゃない? : 名無しさん@お腹いっぱい。 [sage] 2013/09/27(金) 19:34:14.13 :RZyz2ytJ0 厳密にやりたいならそれなりの言語にした方がいいよ。 外部からの強制一時停止だとか見るからに危険そうじゃん。 いつなら止まっても安全なのか知ってるのは、走ってるスレッド本人だけ。 既に思いついている通り、自作の一時停止願いシグナルを発行し、 スレッド側が出来るだけ常にそのシグナルをチェックし、スレッド側が自主的に一時停止。 シグナル用のあるグローバル変数がTRUEのとき一時停止として、 スレッドは一時停止していいタイミングごとにシグナルをチェック。 TRUEなら、それがFALSEになるまでSLEEP挟んで無限ループする関数に跳ぶ。 ゾンビスレッド対策に、そのループのときに別のシグナルでスレッドを終了してしまう箇所も設けておく。 どうかね? : 名無しさん@お腹いっぱい。 [sage] 2013/09/27(金) 19:40:08.89 :RZyz2ytJ0 しょっちゅう使うSLEEPなどをラッピングしてぶっ込んだらどうか。 gSignalPleaseSuspendAllThreads = FALSE gSignalPleaseTerminateAllThreads = FALSE function eSleep(lSec, lUnitSec=0.2) //remoteExtendableSleep略してeSleep ifb lSec<lUnitSec then sleep(lSec) else lRemaining=lSec while lRemaining>0 sleep(lUnitSec) if gSignalPleaseTerminateAllThreads then break lRemaining=lRemaining-lUnitSec wend endif while gSignalPleaseSuspendAllThreads and !gSignalPleaseTerminateAllThreads sleep(lUnitSec) wend result=!gSignalPleaseTerminateAllThreads fend スレッド側でeSleep使う時は if !eSleep(5) then exit などと使う。 動作確認はしていない。 : 名無しさん@お腹いっぱい。 [sage] 2013/09/27(金) 19:49:05.49 :RZyz2ytJ0 スレッド個別に制御したい場合は、まずスレッド生成時に一意のスレッド番号を必ず付与して区別できなければならんだろう。 このスクリプトでやるならその仕組は当然自作w んで、シグナル発行直前に、複数の個別対象スレッドを指定する番兵付配列を設定してシグナル発行だ。 正直、それを以ってやりたいこと自体をもっと洗練させて、こんな手段が必要ないようにした方がいい気がするが… : 名無しさん@お腹いっぱい。 [sage] 2013/09/27(金) 19:57:17.58 :RZyz2ytJ0 関数の前半訂正 function eSleep(lSec, lUnitSec=0.2) //remoteExtendableSleep略してeSleep lRemaining=lSec while lRemaining>0 ifb lRemaining<lUnitSec then sleep(lRemaining) break else sleep(lUnitSec) endif if gSignalPleaseTerminateAllThreads then break lRemaining=lRemaining-lUnitSec wend 以下略 : 名無しさん@お腹いっぱい。 [sage] 2013/09/27(金) 22:39:35.03 :eK2BCJYE0 画面のド真ん中(上下左右周囲誤差2ミリ)に指定した色があるとクリックしてくれるような物を作りたいのですが できるでしょうか? またクリックは時間0.1〜1秒単位で調整できないでしょうか? 色はF8F848位の明るい黄色からD3D822くらいの暗めの黄色です イメージはこんなかんじです ttp://i.imgur.com/GblFtqB.png WHILE TRUE RGB=PeekColor(512,384) R=RGB AND $0000FF G=(RGB AND $00FF00)/$100 B=(RGB AND $FF0000)/$10000 //ifb GETKEYSTATE(VK_RBUTTON) then ifb ((R>=$色 AND R<=$色) AND (G>=$色 AND G<=$色) AND (B>=$色 AND B<=$色)) then BTN(LEFT,CLICK) Endif //Endif Endif sleep(0.002) WEND これだとど真ん中しか意味がなくて困ってます : 名無しさん@お腹いっぱい。 [sage] 2013/09/27(金) 22:53:29.94 :is10BqEK0 chkimgで範囲指定すれば簡単なんじゃね? : 名無しさん@お腹いっぱい。 [sage] 2013/09/27(金) 22:56:26.95 :HUGPg872P >できるでしょうか? できます。 : 名無しさん@お腹いっぱい。 [sage] 2013/09/27(金) 23:06:32.69 :/HDIC86x0 repeatの式に範囲指定入りのchkimgをセット。 ネトゲの自動操縦のために同じ操作のもん作って使ってる。 : 名無しさん@お腹いっぱい。 [sage] 2013/09/28(土) 08:30:07.43 :OD1sw5uA0 そこまで色の幅があって、もし色がその幅の間を連続的に変化するとかだと、 仮に出来たとしても非常に辛いことになる(判定が安定しないだとか思いだとか) まずは全力で、判定に使える変化しない画像が間接的に取得できないか考える。 : 名無しさん@お腹いっぱい。 [sage] 2013/09/28(土) 09:13:11.52 :U0jDnT+n0 色幅ありすぎるとchkimgでは厳しいから、 範囲も2mmと狭いし、素直に考えればまぁ ループで回して1ピクセルずつ判定だろうなぁ for py=384 to 394 for px=512 to 522 : 名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 13:57:55.41 :kbraxm0W0 これ最初の変数 PUBLIC 書かなきゃダメだったね : 名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 17:48:06.67 :kbraxm0W0 SPLIT関数の戻り値で配列を生成する場合、 データが無かったなどでSPLITの戻り値が要素のない謎の配列になる。 この状態の謎配列を、配列を引数に取る関数に渡すことが出来てしまう。 その時点でエラーにならない。 HELPには、SPLITの戻り値はSAFEARRAY型と書いてあるが、それ以外何の説明もない。 UWSCのHELPにSAFEARRAY型の仕様について記載はない。 ネットでググると、.NETのオブジェクトの一つっぽい。 UWSC自体を開発している言語に属するものなのだろう、と推測できるだけで解決には役立たない。 さてこの謎配列、関数側のエラー処理のつもりでこの配列の中身に指1本でも触ろうとすると、 「GetValue:バリアント配列が範囲を超えています」というエラーで止まってしまう。 配列サイズをRESIZEで調べると、配列でない変数は -1 になるはず(HELPに記載なし)だが、 この謎の配列はそうではないらしく、添字最大値判定でチェックできない。 そして、正常な配列であれば、少なくとも配列[0]だけは存在するはずだが、 その配列[0]の中身を参照しようとした時点で初めてエラーとなる。 エラーの原因が、異なる型を代入しようとしたのか、謎の配列を渡されてしまったのかを区別するために、 TRY〜EXCEPTで配列[0]の内容をログとして残そうとしても、エラーとなり記録に残せない。 そのため腫れ物に触るように2重3重にエラー処理を書くことになった。 元々UWSCのHELPにエラーメッセージ表すら無いのだから、GetValueの記載もバリアント型の説明もあるはずがない。 ネットでググると、.GetValueはNETのメソッドらしい。 UWSC自体を開発している言語に属するものなのだろう、と推測できるだけで解決には役立たない。 別に何らかの解決を望んでいるわけではない。 これがUWSCというスクリプト言語なのだなぁ。と感じるだけ。 プログラミング言語初心者にお勧めできない理由を巧く表現できないが、まぁそういうことなんですよ。 : 名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 18:27:35.08 :h7eXmv9f0 白馬の王子様まで読んだ : 名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 19:44:00.67 :WpPp5CbK0 sckeyをバックグラウンドに送れたらいいのに : 名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 20:02:40.88 :ifGtCVgR0 こんな感じでread processmemoryで読み込むアドレスを繰り返し処理で変動させてサーチみたいのしたいんだけど DEF_DLL ReadMemory(string, DWORD, var DWORD, DWORD):int:Memory.dll PUBLIC pname="○○" PUBLIC size=4 public Buffer = 0 public Size = 4 public PowerAd = $△△△△ for i = 0 to 1000000 ReadMemory(pname,PowerAd+i,Buffer,Size) IF (Buffer = $××××) THEN next これだと糞遅いんですけどどうにかなりませんかね : 名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 20:03:50.02 :ifGtCVgR0 メモリを読み込んで指定範囲内のアドレスで特定の値があったら○○とかいうスクリプトを組みたいんです どうすれば高速でできますか? : 名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 20:06:38.84 :ifGtCVgR0 まあ画像認識とかでなくメモリサーチ型のbotを組んでみたいんだけどどうしたらいいか分からんとです : 名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 20:09:56.48 :53zdW4H+0 素直にcでも使えよ : 名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 20:17:12.50 :ifGtCVgR0 デバッガみたいな機能をスクリプト内でどうにかしたいんだがな メモリ検索ソフトなんかすると一瞬でサーチできてる訳で : 名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 20:39:19.42 :HJOF9n570 c++で作れば瞬時で終わるわ uwscに拘る意味がわからん : 名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 20:43:54.85 :ifGtCVgR0 一応UWSCとデバッガだけでどうにかする方法は思いついた プログラミング言語も勉強したいけど… : 名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 23:00:04.50 :5ZZUoNLo0 アプリのメモリ変更機能も欲しいが、俺はパケット生成機能の方が欲しい : 名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 23:35:39.21 :ZgTfUU3i0 gui作成機能ほしい : 名無しさん@お腹いっぱい。 [sage] 2013/09/30(月) 00:00:57.94 :5KavxXSQP ttp://www.microsoft.com/ja-jp/dev/express/ 開発環境ならマイクロソフトが無料で配ってるから大人しくCでやれ。 UWSCがまともに使えてるならこっちもやることはたいして変わらない。 : 名無しさん@お腹いっぱい。 [sage] 2013/09/30(月) 00:14:37.03 :acbWQbDh0 せめてC#にしたほうが (unsafeの中なら何でもできる) : 名無しさん@お腹いっぱい。 [sage] 2013/09/30(月) 01:42:46.48 :NliY0HqK0 分からんあるよ 完成品をいじるとかならともかくいきなりは無理ぽw : 名無しさん@お腹いっぱい。 [sage] 2013/09/30(月) 07:53:20.05 :gQTBIC150 安鯖(2core以上,IntelNIC)買ってESXi5.1が最強。バックグラウンドに沈める必要自体が無かった。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/02(水) 23:42:02.84 :7J20suBX0 早速visual studioダウンロードして動画やサイトを見ながらやってなんとかドラクエ10のメモリサーチするプログラムは組めました でもc++で組んでも遅いんだよな cheat engineなんかだと検索が一瞬で終わるのに : 名無しさん@お腹いっぱい。 [sage] 2013/10/02(水) 23:51:34.58 :Ri4AmZEu0 スレチだけどサーチする範囲指定してないんだろ : 名無しさん@お腹いっぱい。 [sage] 2013/10/03(木) 05:32:50.00 :WsYRHfXM0 マジこれ : 名無しさん@お腹いっぱい。 [sage] 2013/10/03(木) 06:43:15.83 :QB4OoNl80 2013/10/03 UWSC Ver4.9a、 Pro版と Free版をリリースしました。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/03(木) 07:20:50.68 :dkjQxuTt0 おう : 名無しさん@お腹いっぱい。 [sage] 2013/10/03(木) 08:18:08.73 :yFcS95K90 pro版でhtml使えばいいじゃん : 名無しさん@お腹いっぱい。 [sage] 2013/10/03(木) 11:56:25.13 :CObtDnQx0 直接CreateWindow叩いてウィンドウ作ればいいじゃん それかサンプルの「PowerShellより .Net Frameworkを利用しフォームを作る」みたいにやるか : 名無しさん@お腹いっぱい。 [sage] 2013/10/03(木) 13:30:33.68 :T/UN8W/Z0 .NETからUWSCをコンポーネントとして使えるようにすれば全て解決なんだがなぁ : 名無しさん@お腹いっぱい。 [sage] 2013/10/03(木) 13:44:32.21 :6toiXf0z0 誰かがブログでやってたが、 メッセージループとコールバック関数が必要になり、裏技的にしか解決できない。 具体的にはマシン語のバイナリでそれを用意してスレッド作成とかで・・・だったような。 で、そこまでやったとしても、そのバイナリコードに UWSC のスクリプトを呼び出す仕掛けを作りようがなかったような。 まあ、メッセージループは UWSC で回せなくもないので割り込んで制御を読み取るなんて事は可能かな。 しかし、スクリプトが遅いので窓枠をマウスでいじると落ちたような。 PowerShell 経由で画面を作れるけど、結局、普通に UWSC としてコントロールするしかないので 特別リアルタイムに画面を作る必要でもない限り、HTML で作ったほうがいい。 ただ、ローカルの HTML を開くとセキュリティの警告がウザイ。 HTA で開けば警告は出ないけど COM オブジェクトがなくてコントロールできない。 マルチスレッドのプログラミングでメッセージのやり取りで同期を取る仕組みがあるんで それを使って呼び出してるように見せることは可能じゃないかと思うけどめんどくさすぎ。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/03(木) 15:54:26.66 :T/UN8W/Z0 GrapeCityみたいにコンポーネントの使用ライセンスで売れば商売になるだろ〜 PRO買った人には割安で頼むぜ : 名無しさん@お腹いっぱい。 [sage] 2013/10/03(木) 19:03:11.64 :yFcS95K90 そのブログ知ってるけどあんなクソめんどくさいことやらなくても createwindowはできる : 名無しさん@お腹いっぱい。 [sage] 2013/10/03(木) 19:06:52.53 :6toiXf0z0 メッセージループでそのまま処理するんだっけ? 推奨されてない方法だけど。 : 404 [sage] 2013/10/04(金) 00:54:56.85 :+qKH2C550 read processmemoryの読み込みバイト数が4バイトずつ読み込んでたのが遅い原因でした c++でプロセスメモリ検索みたいなのは組めたからuwscでも同じやり方でいけると思う : 名無しさん@お腹いっぱい。 [sage] 2013/10/07(月) 21:15:28.05 :PdumpsxW0 win7だとバックグラウンドで実行できない? : 名無しさん@お腹いっぱい。 [] 2013/10/07(月) 22:46:18.21 :uuINVVvt0 どっかのブログで既に開いているIEを取得して 操作するってのがあったけど思い出せない 誰かわかったら教えて : 名無しさん@お腹いっぱい。 [sage] 2013/10/08(火) 01:18:22.15 :v32VmwGG0 できる GETACTIVEOLEOBJ : 名無しさん@お腹いっぱい。 [sage] 2013/10/08(火) 11:57:28.16 :YtPkArXU0 まじかー、xpからwin7に変えたらできなくなったんだよなぁ : 名無しさん@お腹いっぱい。 [sage] 2013/10/08(火) 13:24:52.57 :gUrftZgt0 タブブラウザになってややこしくなってるだけじゃね? : 名無しさん@お腹いっぱい。 [sage] 2013/10/08(火) 21:56:38.67 :ijSJS1eMi ありがたい : 名無しさん@お腹いっぱい。 [sage] 2013/10/10(木) 17:00:36.70 :Al5LPAbd0 POFF(P_MONIPOWER2) sleep(10) POFF(P_MONIPOWER3) 10秒間モニターOFFにしようと上記を実行したんですが 一旦オフになってすぐにオンになってしまいました どうすればできるでしょうか? : 名無しさん@お腹いっぱい。 [sage] 2013/10/10(木) 17:14:40.98 :EE93X4Sf0 最初に Sleep(1) を入れてみて : 名無しさん@お腹いっぱい。 [sage] 2013/10/10(木) 17:41:44.21 :Al5LPAbd0 やってみましたがダメでした : 名無しさん@お腹いっぱい。 [sage] 2013/10/10(木) 17:45:25.44 :EE93X4Sf0 じゃあ権限がなくてスルーされてるか 省電力動作を拒否してるアプリがいるかのどっちかかな。 管理者権限でUWSCを起動して実行するとか、 怪しい常駐ソフトを全部落とすとか。 デバイスドライバが省電力機能をに対応してない可能性もあるけど。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/10(木) 18:10:58.90 :Al5LPAbd0 管理者権限で実行したら出来ましたー ありがとうございます : 440 [sage] 2013/10/11(金) 17:52:41.00 :nLsJdmZj0 訂正 原因は管理者権限ではなく 省電力動作を拒否してるアプリの方でした : 394 [sage] 2013/10/16(水) 13:37:25.27 :D+9oU0+e0 Repeat //Aの色があればクリックしてX地点へ ifb CHKIMG("色") x=G_IMG_X y=G_IMG_Y BTN(LEFT, CLICK, x, y, 300) endif X地点 //Bの色があればクリック、無ければZ地点へ戻る Until CHKIMG("色") x=G_IMG_X y=G_IMG_Y BTN(LEFT, CLICK, x, y, 300) endif これを繰り返せばいいんでしょうか? 初心者なもので質問ばかりですいません・・・ : 名無しさん@お腹いっぱい。 [sage] 2013/10/16(水) 13:57:25.66 :wmvgywDY0 悪かった。君はもういいから掃除てもしてなさい。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/16(水) 19:21:55.26 :C+VZh1h00 kusoresu.quit() : 名無しさん@お腹いっぱい。 [sage] 2013/10/16(水) 19:34:55.28 :vyBCanNi0 このスレの人間は閉鎖的だな リアルでもそうなんだろうけど : 名無しさん@お腹いっぱい。 [sage] 2013/10/16(水) 19:58:14.38 :Dtwhp/0w0 xyに格納する理由が分からないけどまぁいいや。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/16(水) 21:13:52.43 :o0LxKudr0 閉鎖的も何も三角関数はUWSC独自の話じゃないのよ 普通に検索して発見したロジックを移植したらいい : 名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 08:27:06.80 :AbPeGgMt0 BOTスクリプト欲しがってるアホはUWSCの機能に関する質問とか一切せずに 糞BOT用に組んだ動かない馬鹿文の添削させようとしてるだけですし : 名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 16:26:38.82 :sd51e1PI0 RGB=PeekColor(512,384)って座標指定してるからでほ 素直にフォーーーーーーーーーーって回してればええやん for Xi = 500 to 505 for Yi = 380 to 390 RGB=PeekColor(Xi,Yi) ifb 似ている色 クリック breakbreak endif next next : 名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 19:10:26.34 :zUXVQmaR0 あ〜ふぉーやるのか〜 : 名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 19:20:44.33 :yie1+zES0 にある通り色幅ありすぎだから。 CHKIMGのオプションでカバーできる範囲を超えてる。 提示した通りの判定方法でやるならフォーしかないが重い処理になる。 もっといい判定方法を探した方がいい。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 19:31:01.03 :sd51e1PI0 どんな使い方するのかしらんがそこまで重くなるか? option SHORTCIRCUIT は必須な : 名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 20:46:58.80 :pxJlxHYnP 失礼します。 先生方、モバゲーで自動操縦しようと簡単なマクロを試験したら右クリックは可能なのに左クリックだけが対策されてるようで実行されないようなのですが 左クリックの代理となるショートカットキーやその他の抜け道をご存知でしたら教えてください。 よろしくお願いします。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 21:00:01.90 :zUXVQmaR0 よし、マウスのドライバで右左のクリック反転しようぜ。 しかし、対策されてたかなぁ? : 名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 21:09:22.63 :imzyr2Zl0 聞いたことないけど : 名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 21:16:58.13 :/rq1237LP 左クリック対策? モバゲーのなんてゲームだろか はじめて聞いた : 名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 21:47:38.29 :yie1+zES0 重いと ,CLICK では反応しない場合があるぞ。 ,DOWN ,300) ,UP ,700) SLEEP(0.2) ぐらいで、クリック成功を判定するまで何回でもクリックするループ組んでみ : 名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 21:55:22.58 :pxJlxHYnP モバゲー星矢っす。 手動だと左クリック可能ですけど、uwscで操作だと左クリックできません。 何かがおかしいのかな。 でもネットにも載ってるスクリプトで特におかしなとこはないと思うんですが。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 22:01:52.93 :4OIyHLEK0 自分で書いてないんなら書いた奴に言えよ : 名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 22:34:56.25 :pxJlxHYnP ありがとうございました。 教えの通りやってみましたがやはり不動でした。画像の場所までは行くのですがね。 星矢自体なぜかプロテクションが多くて嫌になります。 ネットに載ってる方法だけではPCプレイもできず、更にsgviewerを使って初めてPCプレイが可能になるほどです。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 22:41:37.26 :e0Uz+Nah0 UWSCが敗北する時がこようとは : 名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 22:58:38.33 :sd51e1PI0 VMも無理なん? : 名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 23:06:00.42 :pxJlxHYnP VMってググったけど見ただけで俺がギブアップですw : 名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 23:12:48.37 :Y/JXjsR60 先にMMVできちんと座標移動してからクリックでもだめなん? : 名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 23:31:12.00 :/rq1237LP CLICKではなく down,upで時間の調整してみては? 自分は時間調整したり 連続DOWNのあとUPしてみたりしてるよ BTN(LEFT,DNWN,座標x,座標y,20) BTN(LEFT,UP,座標x,座標y,20) BTN(LEFT,DNWN,座標x,座標y,40) BTN(LEFT,UP,座標x,座標y,20) BTN(LEFT,DNWN,座標x,座標y,100) BTN(LEFT,UP,座標x,座標y,20) BTN(LEFT,DNWN,座標x,座標y,20) BTN(LEFT,DNWN,座標x,座標y,20) BTN(LEFT,DNWN,座標x,座標y,20) BTN(LEFT,DNWN,座標x,座標y,20) BTN(LEFT,UP,座標x,座標y,20) : 名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 23:33:03.63 :pxJlxHYnP ありがとうございます。座標移動は省略可能なので試す意味がないかと思います。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 23:44:09.50 :pxJlxHYnP ありがとうございました。 それ全部試して全滅でした。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 00:08:15.81 :RYIBRo1HP ブラウザはGoogle Chrome ? 星也やらないからわからないけど 他のモバゲーでクリック対策された時に ブラウザの拡張機能 Mouse2 Touch これをChromeに拡張したらクリックできたよ 多分、ここに聞きにくる前に試してるとは思うけど念の為。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 00:10:26.14 :yFjnc+Dh0 違うよ ゲーム側がどうやって判断してるかの推測、化かし合いでしょ。 マウスポインタが、人間が操作した時のように動いてからクリックしたのではなく、 いきなり特定の座標に瞬間移動してからクリックしたら、 自動操縦ソフトだと判断して操作を受け付けないような仕掛けがしてあるかもしれんでしょ。 操作の記録で、MMV省略しないよう設定してやってみればすぐ確認可能でしょ。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 07:21:05.54 :LcZccTmmP ありがとうございます。クロムです。 Mouse2 Touchの拡張機能探してみたけど現在はないみたいで代わりにchromeタッチで スライドタッチできるようにしてみたけどやっぱり不動です。 ありがとうございます。mmvでも動きませんでした。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 08:07:39.45
:1O6VRs/l0 というかそれゲームではなくクロームの拡張機能が制御してるんじゃないの? ソーシャルゲームビューア使って無理やりスマホ用のゲームPCので動かしてるんでしょ? : 名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 10:38:56.79 :LcZccTmmP ということはsgviewerを使うと左クリック禁止になるってことですか?その他のモバゲーゲームでまだ試してないんで帰宅したら試してみます。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 10:42:53.55 :LcZccTmmP 寝マクロくんでも左クリック可能かどうか試してみます。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 18:41:35.68
:1O6VRs/l0 ちなみに下のサイトの一番下に書いてあるのは試してるよね? ttp://nanapi.jp/67082/ : 名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 21:06:18.19 :LcZccTmmP ありがとうございます。 設定弄るのは初耳だったので早速やってみましたがやっぱ不動です。 あと、モバゲーのガンダムコレクションも同様にやってみましたが星矢と同じで左クリックできませんでした。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 21:17:51.66 :LcZccTmmP 寝マクロも左クリックできん。詰んだ。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 21:33:00.01 :I5Mw1X2O0 普通にできるじゃん そもそもUWSCとか寝マクロの問題じゃないからこれ以上は他所でどうぞ : 名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 22:19:05.12 :LcZccTmmP sgviewer環境で星矢できてるんですか?ブラウザなら普通に出来ると思いますけど。 あと、ここ以外UWSCの話題はスレ違いで入れないですよ? : 名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 22:33:42.89 :IpIzhm5mP ブラウザで普通にできるならブラウザでやれよ : 名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 22:46:51.02 :RYIBRo1HP ガンダムコレクション 今やってみた やり方わからないから「探索」ってのを押して適当にクリックしてたら 新しいエリアってのに行けるようになった UWSCのカメラモードで記録して再生しても同じようにできた 特別な事は何もしてない Windows XP sp3 で試した : 名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 23:12:37.97 :RYIBRo1HP GoogleChromeの拡張検索でマウス2タッチは何故か検索できないようになってた マウス2タッチをインストール済みのChromeでマウス2タッチのURLを調べた そのURLへマウス2タッチのインストール無しのChromeから移動してみた まだ無料でマウス2タッチをインストールできた URLは長いから要請あれば教える 他のタッチで代用できてるなら要らないよね : 名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 23:24:30.02 :LcZccTmmP 他にもctouchとか拡張してみましたがやっぱり左クリックできません。 解決したらもう消えますので、なんとかマウス2タッチのurlを教えていただけませんか? うざくて申し訳ありません。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 23:59:36.42 :RYIBRo1HP エッチてぃてぃぴーえす//chrome.google.com/webstore/detail/mouse2touch/bmokioijeefenglkpfnbalmpmocnodo ガンコレはこれ無しでできたと書いてる しかも代用も見つけたと書いてる なんで今更これがいるのかね 自分が思うに左クリック出来ないのはUWSCが原因ではないと思う つまりここで聞いても解決しないと思うね まあやってみて。多分UWSC関係ないところで解決の糸口みつかる思う UWSCはクリックするだけ クリックのタイミングは変えれるがあくまでクリックするだけ。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/19(土) 05:46:08.24 :xB2YOrMK0 堂々とゲームマクロ宣言してる上にこんな痛い奴相手にしてあげるなんてやさしいのな 違うスレにきたかと思ったわ : 名無しさん@お腹いっぱい。 [sage] 2013/10/19(土) 07:20:21.12 :9pl7tSgXP すみません。url行ってみましたが関係ないstylishという拡張機能のページが出てきました。 あと、ガンコレでできたとはどこにも書いていません。それは他の方がテストしてくれたものです。 代用タッチも失敗なので見つかっていません。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/19(土) 07:48:33.33 :Bp61+rvoP ガンコレで出来たって俺がテストしてあげてここに書いたけど クリック出来ないのはUWSC関係ないかもね クリックの問題=UWSCの問題 そう思ってるのならずっと解決しないよ : 名無しさん@お腹いっぱい。 [sage] 2013/10/19(土) 08:49:10.13 :9pl7tSgXP 僕もそう思ってまして誠意調査中です。テストありがとうございました。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/19(土) 10:28:26.21 :OmYFilmN0 単に画面右に時計やらカレンダーやら表示したままやろうとしてるだけじゃね? : 名無しさん@お腹いっぱい。 [sage] 2013/10/19(土) 14:17:21.22 :Fn0sTgkK0 メモ帳にSENDSTRで文字列を送信すると メモ帳がアクティブになってしまうんですが バックグランドのまま送信することはできるのでしょうか? : 名無しさん@お腹いっぱい。 [sage] 2013/10/19(土) 15:52:34.09 :uQg3rBD40 sendstr( id, "文字列", 1, false, 2) : 名無しさん@お腹いっぱい。 [sage] 2013/10/19(土) 17:23:20.92 :Fn0sTgkK0 ありがとうございます それ単体で動かすとアクティブにならずに送信できるんですが、 私がやりたいマクロに組み込むと送信ができないので 別問題ですかね ,1, false, 2)を使わなければアクティブにはなりますが送信はできるので歯痒いです : 453 [sage] 2013/10/20(日) 00:36:51.79 :NlPrYuIzP 魚おおおおおおおおおおおおおっ。 できた。左クリック。 みなさんに色々提案していただきましたが、根気強く検索して自力解決できました。 windows7とvistaはそのままじゃUWSCが実行できないエラーが出る時があるんです。 解決方法はクロームとUWSCの両方ともダブルクリックじゃなく、右クリックで管理者として実行を選択するとエラー回避になるそうです。 これで僕も皆さんも一つ賢くなれました。ありがとうございました。約束通り消えます。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/20(日) 01:04:35.44 :4+oRDMn30 UWSC一時敗北したと思ったがまた勝ってしまったか : 名無しさん@お腹いっぱい。 [sage] 2013/10/20(日) 01:39:29.22 :ZKv2vJCO0 てか、管理者実行って基礎中の基礎… : 名無しさん@お腹いっぱい。 [sage] 2013/10/20(日) 03:56:40.30 :ouHJd/VBP そんなの当たり前だ ここに来る連中はお前以外全員知ってる あまりにも初歩的なので ワザとではWindows XPで試したって書いておいたのに 読み飛ばしていたとはな 案の定管理者権限かよ ここに書くのも恥ずかしいくらい初歩の初歩。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/20(日) 10:20:04.51 :vvpxdxQO0 皆さんも一つ賢くなれました() : 名無しさん@お腹いっぱい。 [sage] 2013/10/20(日) 10:34:05.79 :EA+PKxdl0 顔真っ赤で書いたんだろスルーしてあげろよそれが日本人の優しさだろ : 名無しさん@お腹いっぱい。 [sage] 2013/10/20(日) 12:46:30.02 :zsqO5NmJ0 皆さんも一つ賢くなれました (=_=;) なれてるとしたら次回から、こうすることに決めたことか。 真っ先に「管理者権限は?」と聞いて、 まともに答え(られ)ない奴を門前払い。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/21(月) 07:16:17.15 :PFP4qAku0 香ばしいな 芋ケンピかってくるか : 名無しさん@お腹いっぱい。 [sage] 2013/10/22(火) 23:41:10.23 :KqgMYyGLi IE=createoleobj でIE操作をするとき、1回の起動だったらだいたい問題ないんだけど、 何度も開いたり閉じたり、タブを複数扱ったりするとうまくいく時といかない時があるんだけど 、対処法ってあるんですか? うまくいかない:スクリプトは間違っていないのに(何度かは開けている)のにたまにCOMエラー、 5回IEを開く命令をしたのに3回目でIEがずっと読み込み中のまま停止、 IE.document.forms[n].elements[i].value=1 とかでも、だいたいはうまくいくけど、たまにCOMエラー。 Excel = getactiveoleobj("Excel.application")これでもCOMエラーが出る時もあるんだけど、 対処法わかる人いたら教えて下さい。 ちなみに自宅でも職場でも似たような事態になるので、PCスペックとかではないかと。 一応自宅のはウインドウズ7、職場は確かXP。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/23(水) 01:02:39.86 :uoD4c3xn0 間違ってなくてもタイミングでCOMエラーは出るよ。 たとえばドキュメントが空の時にページ内にアクセスしようとしたときとか。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/23(水) 03:09:10.59 :7vLU54oT0 例外処理するかCOMエラー無視するかすればいいのでは : 名無しさん@お腹いっぱい。 [sage] 2013/10/23(水) 08:09:09.53 :vfNEFuSR0 管理者権限忘れてるとかUWSCの問題じゃなく 知能が低すぎた事が原因じゃねーかw : 名無しさん@お腹いっぱい。 [sage] 2013/10/23(水) 11:14:16.46 :lEAE4a4C0 ,502 あざっす! そういうときはやっぱりの言われるようにCOMエラー処理で皆さん対応されてるんですかね。 例えば、1.IE開く 2.navigateで特定URLへ誘導 3.そのサイトのフォームへ入力して送信 みたいな場合の2でCOMエラーが出ちゃう場合は、エラー無視してもしなくても(フォームが表示されないので) アウトになっちゃいますかね?COMエラーは今まで触ったことないんで、これから学んでみます。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/24(木) 04:08:05.90 :JZhyDuiY0 UWSCの「ChkCtlID.uws」というスクリプトを どなたか、「AutoIt3」か「AutoHotKey_L」用に 移植していただけませんか? どうかよろしくお願いします。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/24(木) 04:15:45.52 :IuI8Dxub0 : 名無しさん@お腹いっぱい。 [sage] 2013/10/25(金) 14:02:44.40 :myLg+qn90 いくら出す? : 名無しさん@お腹いっぱい。 [sage] 2013/10/25(金) 15:13:58.37 :QeOGckb30 お金は出せないが、 ・無炭酸ノーマル味トンスル2本 ・炭酸入りノーマル味トンスル2本 ・無炭酸キムチ味トンスル2本 (1本350ml)なら用意できまする。 残念ながら、炭酸入りキムチ味トンスルは人気ゆえ現在在庫を切らしてる。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/26(土) 01:08:28.88 :Mz3zlYRoP そんな報酬じゃ朝鮮人しか引き受けねぇよな : 名無しさん@お腹いっぱい。 [sage] 2013/10/26(土) 17:25:47.01 :rbH32/6B0 マクロ実行中にブラウザが消えてしまいました もしやと思いctrlwinを試したところ無事表示されたんですが、原因の見当がつく方いらっしゃいますか? スクリプトの内容は、単純なFlash操作で、せわしなくクリックを反復する類です 以前に一度だけあったような気もしますがそれだけなので、再現率はかなり低いと思いますが 不可解なので理由を知りたい : 名無しさん@お腹いっぱい。 [sage] 2013/10/26(土) 17:42:44.72 :0nwTKMHm0 ポーズ入れて噴出しいれて何の処理したら消えるのか自分で確かめろよ お前のローカルにあるスクリプトなんざ誰が確認できるんだよアホ : 名無しさん@お腹いっぱい。 [sage] 2013/10/26(土) 19:20:35.62 :3BLZFps70 吹き出しよりもプリントの方が放置できるでしょ UWSC以外の原因でもブラウザのバージョンアップで消えていたとかいろんな可能性はあると思うが : 名無しさん@お腹いっぱい。 [sage] 2013/10/26(土) 20:47:58.42 :Clsf+Y8x0 これからの季節に最高の犬肉サムゲタンを2名様 炭酸入りキムチ味トンスルをお一人様1本ずつ サービスするから作って〜 : 名無しさん@お腹いっぱい。 [sage] 2013/10/26(土) 21:07:25.61 :nHVY41Qv0 スクリプト作成で困っている人を対象に 有料サポート掲示版を設置するのはどうだろう。 互いがWIN-WINになるだろうし。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/26(土) 22:00:03.19 :3BLZFps70 金払うなら普通に業者に頼んだほうがいいだろ 後はクラウドソーシングとかはすでにあるしその手のサイトでも結構UWSCのスクリプト作ってみたいのはあるぞ : 名無しさん@お腹いっぱい。 [sage] 2013/10/27(日) 15:08:15.28 :Bc3CZdr90 POSの引数の左右間違えちゃうわー : 名無しさん@お腹いっぱい。 [sage] 2013/10/27(日) 16:32:38.67 :B8b8MZAV0 そうそう。 クラウドソーシングでUWSCの依頼あるね〜 放置されてるけどw : 名無しさん@お腹いっぱい。 [sage] 2013/10/27(日) 19:16:52.28 :Er3d5o3V0 まじか。過疎るってことは重要無いってことなのかな それとも日の当たりを浴びてないだけかどっちだろ : 名無しさん@お腹いっぱい。 [sage] 2013/10/27(日) 19:38:25.66 :B8b8MZAV0 依頼者が技術を甘く見てるとか、 そんなのUWSCで無理やりやるの? みたいなパターンのほうよ。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/28(月) 01:00:24.02 :23r+fMxT0 windows7で動いていたのが、持出し用のwindows8ノートパソコンに移したら全然動かなくなった。 マウスのクリックが全然記録・実行されないようだ。 SONY VAIOタッチパネル付。タッチパネルが悪さしてるのかな? まだ過去ログあさってないのだが、こういう事象って解決してますか? : 名無しさん@お腹いっぱい。 [] 2013/10/28(月) 01:04:13.93 :23r+fMxT0 70くらい上のレスに「管理者として実行」というのがあったので、 これか!と思い試してみたところ、見事に問題解決しました。 本当にありがとうございました。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/28(月) 12:46:50.48 :rcD6MX+X0 皆さんも一つ賢くなれました(名言w) : 名無しさん@お腹いっぱい。 [sage] 2013/10/28(月) 22:15:45.87 :s3Odbqit0 ご教授をお願いします。 UWSC4.9aのプロ版を試供状態で作ったスクリプトが、ライセンス登録後に動かなくなりました。 原因のわかる方いらっしゃいますか? 現在試したこと ○アンインストール後、試供版での動作 ×アンインストール後、ライセンス登録での動作 ○友人pcでの試供版での動作 いずれもver4.9aです。 : 523 [sage] 2013/10/28(月) 22:18:02.60 :s3Odbqit0 以下は実際に動かしているスクリプトになります。 Sleep(3.0) while true ifb CHKIMG("開始.bmp") x=G_IMG_X y=G_IMG_Y BTN(left,click,x,y) SLEEP(3.0) if CHKIMG("中止.BMP") THEN KBD(VK_1,CLICK) SLEEP(3.0) endif ifb CHKIMG("中止.bmp") x=G_IMG_X y=G_IMG_Y MMV(x, y) endif Wend : 名無しさん@お腹いっぱい。 [sage] 2013/10/29(火) 00:29:40.82 :rweRPAld0 登録済みでも動くけど : 名無しさん@お腹いっぱい。 [sage] 2013/10/29(火) 00:42:04.95 :XWXNqM+o0 ライセンス登録したならデバッグツール使ってみれば? 無駄は多いけど変なところはないと思うけど : 名無しさん@お腹いっぱい。 [sage] 2013/10/29(火) 00:57:17.70 :Gp8ITveT0 行数少ないんだから、とりあえず1行ずつ消してみて、どこで動かなくなっているか見るのも手だわな 動いてる人もいるんだし : 名無しさん@お腹いっぱい。 [sage] 2013/10/29(火) 01:08:57.87 :lvzW+Lk60 left,click : 523 [sage] 2013/10/29(火) 05:33:25.28 :q+h1Wa5+0 ご返信ありがとうございます。 デバックツールで確認したところ L20が存在しません。 というエラーが表示されました。 エラー内容が解釈できないのですが、どなたかご教授をお願いします。 何度も質問ばかりで申し訳ない。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/29(火) 08:16:56.44 :Ra6FInjq0 それは是非公式に聞いてください : 名無しさん@お腹いっぱい。 [sage] 2013/10/29(火) 08:38:42.45 :6if1SN5D0 もっと、お勉強してからにしましょうね! : 名無しさん@お腹いっぱい。 [sage] 2013/10/29(火) 13:52:40.26 :rweRPAld0 ちゃんとライセンス買ってください : 529 [] 2013/10/29(火) 16:09:49.91 :q+h1Wa5+0 ご返信ありがとうございます。 もう少し調べてみます。 ライセンスは自分で購入したものです。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/29(火) 16:59:42.19 :2s2ZtBSO0 の最後にあるように割れ対策じゃね 誤爆だから作者に連絡し : 523 [sage] 2013/10/31(木) 05:59:37.30 :JXFIbavg0 L20のエラーについてですが、アドバイスを頂いたとおり、公式にて問い合わせをして解決しました。 アドバイスを頂きありがとうございました。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/31(木) 08:16:04.43 :9Pw/9XzB0 原因なんだったんだ? 折角なんだから一言ぐらい書いておこうぜ。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/31(木) 08:45:34.29 :rFsYD34F0 虚偽でなければ、(違法割れ業者とか割れ友人から)購入したんじゃね。 都合が悪い事から書けないでしょ。 : 523 [sage] 2013/10/31(木) 09:22:37.25 :Yb7q90j80 私が購入した、シリアルナンバーの入力を誤っていたのですが、偶然にもその数字が通ってしまい、アドバイスを頂いた割れ対策のエラーがでていたようです。 以下、公式からのお返事です。 登録するのは 伝票番号の xxxxxxxxx ではありません。 ベクターより 17桁のライセンスキーが発行されているはずですので 一度 UWSCをアンインストールしてから 再インストールをして 17桁のライセンスキーを入力してください。 たまたま、伝票番号の xxxxxxxxxx が登録処理を通り その後に 不正キーの扱いになり、機能制限がかかったようです。 大変に失礼いたしました。 こんなミスをする人はなかなかいないと想いますが、L20のエラーを次回のテンプレのL22の次にでもそっと追加をお願いします。 : 名無しさん@お腹いっぱい。 [sage] 2013/10/31(木) 09:57:29.35 :VEqL6FdH0 > 登録処理を通り > その後に 不正キーの扱いになり、 あるんだね@ : 名無しさん@お腹いっぱい。 [sage] 2013/10/31(木) 10:15:17.48 :8eXda3A3P 報告おつでした : 名無しさん@お腹いっぱい。 [sage] 2013/10/31(木) 10:44:56.89 :a28apKJB0 試しに何度か適当にキー打ってみたら登録ありがとうございますって出た もっともエラーコードも出なくて試用状態のままだから本当に不正キーとして通ってはないようだけど : 名無しさん@お腹いっぱい。 [sage] 2013/10/31(木) 22:45:52.07 :xspnaOUP0 むう…Chromeでブラゲーをバックグランドでも動かしていたのだが とーとつにクリック情報を認識しなくなってしまった。 id = GETID「ウィンドウ情報」 hnd_id = GETCTLHND(id,"Chrome_RenderWidgetHostHWND",1) MOUSEORG(hnd_id,2) アクティブならちゃんと動作するし、hnd_idで出力してもIDちゃんと吐くんだけど 他にバックグラウンドで動かすのに必要な要素を 見落としてそうなら、ぜひ教えてください : 名無しさん@お腹いっぱい。 [sage] 2013/10/31(木) 23:56:57.15 :+mcM++QP0 ヘルプに、バックグラウンドだか非アクティブだかって単語があったようなないような : 名無しさん@お腹いっぱい。 [sage] 2013/11/01(金) 08:35:33.60 :4cR8MTIl0 UWSCのキージェネレータって今もアプリ版とVBS版2種類出回ってるんだな。最新版には対応してないけど。 VBS版は普通にテキストエディタでソースもろ見えだから見たけど結構単純なアルゴリズムだった。 悪意なく偶然にも通ってしまったのか。疑ってすまんかった。 UWSCの試用期間と登録キーは2エントリ共レジストリで管理してるけど 登録キーってアンインストールしてから 再インストールをすれば直ったっけ? 過去にいずれもピンポイントでバックアップ取って14日制限を復活させたり、 UWSCProを一度も立ち上げずに正規登録済みにして遊んだ事があったが アンインストールでは試用期間は復活しなかったのは覚えてるけど そういや登録キーの方は試してなかったんで気になった。どうでもいい事だが。 試用期間消えないダミー処理もあるのか。 IERECやデバッグツールが動くかどうかで正規として通ってるか判断できると思う。 まぁエラー出ると思うが、その番号がL22かL20かそれ以外なのかをできれば報告頼む。 : 名無しさん@お腹いっぱい。 [sage] 2013/11/01(金) 23:44:46.17 :PXZP+Eni0 今まで2Dゲームでuwsc使ってマクロ作ってたんだが、3Dゲームになると難易度めっちゃ上がるな… 画像認証なんてのは3Dゲームだと陽当たり、角度で認識が変わるから使えんし、移動も角度によって行き先が変わるから中々上手くいかない 3Dゲームでuwsc使ってる人いたら移動とかのアドバイスくれないか? : 名無しさん@お腹いっぱい。 [sage] 2013/11/01(金) 23:50:44.98 :4z3Ujd150 マップが表示できるならそこで判断 それ以上のことやると座標データ取るのにメモリ解析とかさせないといけないから外部DLL作るとか別ソフトと連動させるとかしないとかなり面倒だと思う そこまでするならUWSCに拘る必要性もなくなるが : 名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 06:32:23.15 :VY3THxib0 アイテムのプロパティだとかダイアログだとかは2Dだろ? : 名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 09:33:50.28 :V9ftTVrJ0 CHKIMGのG_IMG_X、G_IMG_YってTHREAD実行で二つ以上の画像判定を並行させて 同時にヒットしたときってどーなってんだろ? てかG_IMG_X、Yに限らず関数実行結果が返る特殊変数全般なんだけど。 RPGをセミオート化しててなんも考えず 「敵シンボルを認識して追跡」 「同時に戦闘コマンドウインドウを認識(エンカウント)したら追跡中断し戦闘ロジックへ」 みてーなことやってみて今んとこ衝突誤爆らしき事象がないんだが・・・ たまたまかな? : 名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 09:51:00.87 :74szR1uR0 グローバルじゃないから問題ない : 名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 10:27:56.29 :V9ftTVrJ0 おー、グローバルじゃないんだ。ありがと! 特殊変数のスコープってヘルプや公式に記載あるの? 全然見つけられん・・・ : 名無しさん@お腹いっぱい。 [] 2013/11/02(土) 11:50:37.39 :J6jlqaqni 今どきダイアログに透過かかってねぇ3Dゲーなんてほとんどないよ そんだけで単純なchkimgじゃ検知しづらい 2Dオブジェの点滅や回転も多いしね。 まぁUWSCでやる範疇じゃねーな… : 名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 12:43:52.36 :+GHyYRAl0 uwscで使う画像も透過にすりゃいいだけだろw : 名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 16:19:03.00 :VY3THxib0 UWSCにデータシートみたいな上等なもん期待しちゃいかん…w : 名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 16:24:14.97 :VY3THxib0 透過あり画像で出来るかもしれんけど、 行き当たりばったりなプログラミングじゃなくて うまくいかないのが画像判定に失敗してるのかバグなのか 判定するためのテストケースのあるプログラミングが 必要になってくるね。 > IMG_MSK_BGR4: 各色(BGR)に対し 16/256の色幅を許す のオプション以上に曖昧な判定するには OpenCVに手を出さなきゃあかん メモリピークとどっちが楽なんだろw どちらにしてももはやUWSCでやるメリットが少ない : 名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 19:19:02.44 :vmw8hfJt0 UWSCはBOTツールではなくマクロツールだからな BOTを作りたいならCとかCが難しいならPythonとかRubyあたりを勉強するといいよ : 名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 21:06:52.89 :V9ftTVrJ0 ・・・。 特殊変数の有効範囲程度でも自力検証してるってこと? : 名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 21:34:45.68 :gziCldKj0 G_IMG_Xってグローバルだと思うよ 別スレッドでChkimgしたとき上書きされた : 名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 22:01:20.62 :dTg0fzXN0 どういう検証をしたらグローバルだと思うんだ : 名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 22:27:18.22 :VY3THxib0 グローバルだとするとのclickImage関数がリエントラントじゃくて使えない ローカルならもはや関数化しない理由がない FOR文の変数が変更不能なのすら書かれてないしw : 名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 22:34:00.88 :sTaBUkPW0 >FOR文の変数が変更不能なのすら書かれてないしw これ、むっちゃハマったわ : 名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 22:34:47.87 :VY3THxib0 名前 G_IMG のプレフィックス G はグローバルであることを示している可能性大。 グローバルなら、 グローバル変数で割り込み禁止フラグを設定し、 CHKIMG実行前にフラグONなら待機もしくは中止 CHKIMG実行前にフラグON G_IMGの読み取り後にフラグOFF ttp://anago.2ch.net/test/read.cgi/software/1350040751/410 の方法 これも関数化しないとひどい目にあう : 名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 22:41:02.19 :VY3THxib0 そもそもUWSCはスレッドを使うように設計されてないんで スレッドを使わずラウンドロビンにするなど極力避けたほうがいいぞ。 スレッドがリソースのデッドロックで応答なしになった場合、 通常のまともなマルチスレッド言語と違って スレッドを強制終了する方法そのものが実装されて無い。 UWSCは自動操作の相手次第でデッドロック頻発する。 : 名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 22:42:00.41 :VY3THxib0 あと、複数のスレッドから特定の1スレッドを指定するIDも、必要になったら自作だなw : 名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 23:08:37.12 :gkIwz1g90 1ドットの青と赤の画像用意してやってみたけど変わらんやん Thread c2() for i = 1 to 3 CHKIMG("c:\blue.bmp") print "c1 " + G_IMG_X + " " + G_IMG_Y Sleep(1) next print "ここからCHKIMGなし" for i = 1 to 10 print "c1 " + G_IMG_X + " " + G_IMG_Y sleep(1) next procedure c2() for i = 1 to 20 CHKIMG("c:\red.bmp") print "c2 " + G_IMG_X + " " + G_IMG_Y Sleep(0.5) next fend : 名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 23:16:48.66 :VY3THxib0 特殊変数はコンテクストによって ローカルになったりグローバルになったりしてる可能性はあるね 初心者に分かり易くという親切心で謎の挙動になってるんじゃね 検証してみればなんてことはないかもしれんが 他にも仕様が謎の部分だらけなんでやる気起きない : 名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 23:58:23.29 :74szR1uR0 恥の上塗り : 名無しさん@お腹いっぱい。 [sage] 2013/11/03(日) 00:01:34.21 :kJlRwpqy0 スレッド内のchkimgの変数がグローバルかどうかはちょっとコードを書けば確認できるけど それが仕様なのかどうかがHelpとか読んでも判らないのが・・・ : 名無しさん@お腹いっぱい。 [sage] 2013/11/03(日) 01:03:02.93 :v89Bom+B0 仕様だと明記する仕様として確定してしまい黙って変更できなくなる。 その手間すら惜しい開発体制なのだろう。 仕様をせっかく検証しても、「今のところ」という非公式なものとなり その仕様に従って開発するのは自己責任ですということに。 クローズドの典型的な悪い例みたいになっちゃってる。 : 名無しさん@お腹いっぱい。 [sage] 2013/11/03(日) 01:36:52.92 :/CHfXc7v0 ゲームにもよるがchkimgの透過、色幅でどうこうできる範疇超えることが多いねー 一見単純な2Dに見えるもんが実はテクスチャだったり 辺りの話にコマンドウインドウ等の透過処理、アンチエイリアス、光源、エフェクト・・・と 色々絡まって一見同色に見えるもんが刻々と変わってる感じ。 そこをシステムデザイン・UIの穴堀り、なんとか色固定ドット数点と認識幅探して、透過やエフェクト時のマッチングパターンも多数用意して・・・ なんて力技かましゃ「認識できない・・・」から「誤爆が増えたw」になる嫌な予感しかしねーから素直にOpenCVsharpにシフトするも 画像処理の地盤がない俺じゃやれること(勝手にそこまでやってくれるwこと)が多くて 適正な手法を絞れず結局超えられない壁が残っちまうw : HH [] 2013/11/03(日) 08:28:15.18 :gJ3EnPh60 初めて投稿します。 どなたかからUWSC EXECLシートのプリントプレビュー画面の枚数を取得する方法をご存知の方 教授ください。 UWSCでEXCELシート内データを一部を変更して、ファイルセーブするスクリプトを持っています。 これにプレビュー枚数を記録する機能をつけたく思います。 現在は、いちいちプリントプレビューを開き、枚数をずらして、複数枚になっていないかを確認しているのでとても手間が かかっています。 EXCEL(.DOCUMENT(50)なる表現をインターネット上で見つけたのですが、UWSCでの実装方法がわかりません。 どなたか、教授頂けると幸いです : 名無しさん@お腹いっぱい。 [sage] 2013/11/03(日) 09:07:32.86 :v89Bom+B0 EXCELなんてVBAマクロで全て自動化できるだろ マイクロソフトがEXCELをそう作ってある UWSCでEXCEL操作するという発想自体が筋が悪い VBAで出来るはずのことを調べきらずに UWSCで誤魔化す形になってないか : 名無しさん@お腹いっぱい。 [sage] 2013/11/03(日) 09:11:15.26 :i7XdnQhk0 EXCEL = GETACTIVEOLEOBJ("Excel.Application") Page = EXCEL.ExecuteExcel4Macro("get.document(50)") MsgBox(Page) : 名無しさん@お腹いっぱい。 [sage] 2013/11/03(日) 09:13:21.58 :v89Bom+B0 言っておくがUWSCでEXCELを操作しようなんて わざわざ問題を難しくしてるんだぞ UWSCのテキストエディタじゃ EXCELのオブジェクトの後にドットをタイプした後に 候補が表示されたりせんだろ? ttp://ja.wikipedia.org/wiki/%E3%82%A4%E3%83%B3%E3%83%86%E3%83%AA%E3%82%BB%E3%83%B3%E3%82%B9#.E4.BE.8B 調べるのはUWSCじゃなくてEXCELのVBA。 UWSCは必要ないしココじゃわからないしスレ違い。 : 名無しさん@お腹いっぱい。 [] 2013/11/03(日) 15:52:12.39 :RaTkj/Nv0 以下、ダウンロードさせて頂いたプログラムですが デザイン変更で動かなくなってしまいました 1.画像A(反転前)があるか判定する 2.画像Aがあれば、画像Zをクリックする 3.画像A(反転前)が無い場合、画像B(反転後)をクリックしたい : 名無しさん@お腹いっぱい。 [] 2013/11/03(日) 15:53:03.61 :RaTkj/Nv0 PROCEDURE MYPAGE_CHECK() //マイページのチェック、移動 mypage = 0 LOOP_COUNT = 0 WHILE mypage = 0 SLEEP (0.5) PRINT ("LOOP_COUNT: " + LOOP_COUNT) mypage = CHKIMG("mypage03.bmp") PRINT ("マイページ画像検知(WHILE中): " + mypage) LOOP_COUNT = LOOP_COUNT + 1 IF mypage = 1 THEN BREAK IF LOOP_COUNT = 10 THEN BREAK WEND IFB mypage = 1 mypage = CHKIMG("mypage03.bmp") PRINT ("マイページ画像を検出: " + mypage) PRINT ("マイページ画像座標: " + G_IMG_X) PRINT ("マイページ画像座標: " + G_IMG_Y) MMV (G_IMG_X + 5,G_IMG_Y + 5) BTN (LEFT,CLICK) SLEEP (1) MMV (10,10) ELSE PRINT ("マイページ画像を検出不可") CALL reload01.uws SLEEP (2) CALL energy_recheck.uws : 名無しさん@お腹いっぱい。 [] 2013/11/03(日) 15:54:05.64 :RaTkj/Nv0 UWSC 画像判定と条件分岐について質問です 画像判定してボタンを押したいのですが一度ボタンを押すと色が反転してしまいます そのため 押したいボタンの反転前と反転後の双方を候補にして どちらかが判定されたら次の処理に入りたいと思ってます アドバイスお願いします ちなみに次の処理もボタンを押すと色が反転するタイプです 宜しくお願いします : 名無しさん@お腹いっぱい。 [] 2013/11/03(日) 15:57:28.63 :RaTkj/Nv0 ↑ ↑ ↑ なぜか3つに分かれてしまいました ごめんなさい もし アドバイス頂けたら助かります ↑ : 名無しさん@お腹いっぱい。 [sage] 2013/11/03(日) 17:16:01.17 :ATUfXnl+0 FOR loop_count = 0 TO 9 SLEEP(0.5) mypage = 1 IF CHKIMG("mypage03a.bmp") THEN BREAK IF CHKIMG("mypage03b.bmp") THEN BREAK mypage = 0 NEXT IFB mypage = 1 MMV(G_IMG_X + 5, G_IMG_Y + 5) BTN(LEFT, CLICK) SLEEP(1) MMV(10, 10) ELSE CALL reload01.uws SLEEP(2) CALL energy_recheck.uws ENDIF : 名無しさん@お腹いっぱい。 [] 2013/11/04(月) 13:48:07.48 :B13tSujf0 さん ありがとうです 無事クリアしました 助かりました またお願いします 感謝です : 名無しさん@お腹いっぱい。 [sage] 2013/11/08(金) 07:18:41.25 :k2YzIZCi0 最近になってUWSC始めました 現在極々簡単なスクリプトをスケジュールで一回だけ実行に登録して使っています 本当はインターバルがよいのですが、明示的に今から40分毎に・・・ とはできないんですよね?みなさんはこういう時どうされてますか? あともう一点、たまに実行時間を忘れてマウス操作などをしているときに スクリプトが走り出して止まってしまうことがあります スクリプト実行中は、例えばesc以外のkeyやmouseを 受け付けなくする方法などはありますか?(UWSCの処理を優先したい) : 名無しさん@お腹いっぱい。 [sage] 2013/11/08(金) 07:42:26.02 :Zj0emzR20 もう忘れてしまったな現役に教えてもらってくれ 単にこれキックじゃダメなんだっけ ループ終了 SLEEP(40*60*60) 実行処理 ループ終了 実行の数十秒前にこれでも書いて自分に警告ウィンドウ出すとか MsgBox あとは仮想マシン上で実行とか 40分毎って回復のタイミング??ゲームとか? : 名無しさん@お腹いっぱい。 [sage] 2013/11/08(金) 07:43:07.04 :Zj0emzR20 ループ開始をループ終了と書いてた : 名無しさん@お腹いっぱい。 [sage] 2013/11/08(金) 08:34:54.81 :6RBz0/hh0 スケジュール使ってないから知らんけど 式による設定で出来るんじゃない ヘルプに書いてあるのが (YMDNN mod 18)= 0 // 18分間隔 だからmod 40にして=0を適当に変えりゃいいんじゃないの >受け付けなくする方法 LOCKHARDとかLOCKHARDEXとか 特定キー残したいならSETHOTKEYでいらないキー潰すとか? : 名無しさん@お腹いっぱい。 [sage] 2013/11/08(金) 11:04:45.43 :x8SdEe0M0 sleep 1回だとかなりアバウトになる。 のやり方は初めて知ったけどいいね。 どういうときに使うのか知らんけど。 > 今から40分毎 今を基準にするなら ((YMDNN+x) mod 40)= 0 とか言う式になるけど、xはどうやって設定するのか。 UWSC.ini の [SCHEDULE] に登録すれば GetTime で現在の x が指定できるっぽいね x = INT(GetTime() / 60) mod 40 str = "((YMDNN+" + x + ") mod 40) = 0" WRITEINI( "SCHEDULE", "M" + 番号, str, GET_UWSC_DIR + "\UWSC.ini" ) S スクリプトファイル M 条件 P 別プロセスフラグ でも、現在時刻で起動するか分からんな。 重複チェックした上で1回目は起動してやる必要がありそう。 : 名無しさん@お腹いっぱい。 [sage] 2013/11/08(金) 16:58:42.30 :k2YzIZCi0 レスありがとうございます。sleepは最初使っていたのですが、他のスクリプト走らせると とまってしまうので(別プロセスもうまく働かない)スケジュールにしてました msgboxはモニタを見てない時に困るので何かないかな?と 仮想マシンはありかもしれないですね。そちらの導入も少し考えてみます 風景を時々刻々アップしてるサイトのスクリーンショットとか ニコ動でキーワード検索して新しいものがあったらダウンロードなどに使ってます 40分はあくまで例えです。すいません ループのところしか見てませんでした 式による設定、あとで調べてみます >LOCKHARD おー!そういう命令がやはりあるんですね。 一通り目を通したつもりでしたが見落としてました。 どうもありがとうございます ちょっと複雑になってきましたが、詳しくありがとうございます 式による設定しらべてみます せっかくインターバルあるならこの辺りの設定 作者さん見直してくれないかな〜とおもいつつ・・・ みなさんに教えていただいた方法、試行錯誤してみます どうもありがとうございました : 名無しさん@お腹いっぱい。 [] 2013/11/09(土) 13:36:37.84 :gzzGzzLX0 570です 572さん RES どうもありがとうございました。 プリントプレビュー画面を開くことで画面数の取得ができました。 以上 : 名無しさん@お腹いっぱい。 [sage] 2013/11/14(木) 21:12:10.24 :W+xyXMne0 perlとpython使いの先輩がセミオートでドヤ顔しながらPCに張り付いて仕事してたから UWSCでさらっと完全自動なものを作ったら怒られた : 名無しさん@お腹いっぱい。 [sage] 2013/11/15(金) 05:30:52.07 :GLXccNAH0 Ver4.9b3 : 名無しさん@お腹いっぱい。 [sage] 2013/11/15(金) 07:27:44.50 :lGKSYVtG0 自動化で君の仕事がなくなったので明日から会社に来なくていいよクビね : 名無しさん@お腹いっぱい。 [sage] 2013/11/15(金) 16:17:56.80 :ZozEFNAfP Jane Styleのレスボタンをclkitemで押すのは無理なのかな? : 名無しさん@お腹いっぱい。 [sage] 2013/11/15(金) 20:48:39.91 :m9esDzip0 超ど素人なんだけど質問よい? ループで再生するとマウス座標が勝手にずれてくるんだけどなぜ? 例えばAの位置からBにマウスを引っ張って最後またAに戻るとゆう操作を 再生するとAとは明らかにずれた位置から始まる。 しかも最初の頃は問題なかったのに突然こうなった。 どうすれば回避できるのか教えて欲しい : 名無しさん@お腹いっぱい。 [sage] 2013/11/15(金) 20:50:17.23 :m9esDzip0 あとUSWCってセキュリティは大丈夫ですか? なんかこれ使いだしてからクレカの番号盗用されて 不正利用されたんだけどまさか情報吸い取られてたりとかないよね : 名無しさん@お腹いっぱい。 [sage] 2013/11/15(金) 20:50:53.10 :m9esDzip0 失礼 USWC × UWSC ◎ : 名無しさん@お腹いっぱい。 [sage] 2013/11/15(金) 23:17:04.55 :1lkAb53y0 AからBまで、例えばMVしてるなら座標からインターバルから何から何まで見直すか、破棄して一新。 ダメならバージョンやOS諸々晒しつつ再現方法を提示してくれ。暇な住民が検証するかも。 怪しいと疑惑を吹っ掛ける根拠を示してくれ。必要のない背景や被害状況は省いて。 : 名無しさん@お腹いっぱい。 [sage] 2013/11/16(土) 00:12:42.55 :6RqO6Np90 Ver4.9b3にしてみたら既存のスクリプトがエラーが発生したので 調べてみたらこの対応に漏れがあるね UWSC 掲示板 ttp://www3.bigcosmic.com/board/s/board.cgi?id=umiumi&mode=all&no=5077 1行目からCLASS宣言してる自前のCALL用のスクリプトでエラーが発生していた 1行目をコメントにしたらエラーが発生しなくなったぜw エンバグ対応のケース出し甘いよ : 名無しさん@お腹いっぱい。 [sage] 2013/11/16(土) 07:48:08.55 :23B9K16rP オンラインゲームの自動操作のためにUWSCを導入 ↓ 構文を学習せずにマクロスレや親切()な人のサイトでマクロを拾ってくる ↓ アッー! なんてことをしなければね。 自分で書いてる分には大丈夫だよ。 身元不明のEXEファイルを実行しちゃいけませんて学校で習ったよね。 UWSCも同じだからね。 : 名無しさん@お腹いっぱい。 [sage] 2013/11/16(土) 09:07:46.79 :UhpLBBuh0 とあるツールの補助ツール作って限定配布したことがあるが そのツールで表示できる情報なら根こそぎ奪えるよな〜と思ったことはあるな。 ログインから求めるようにすればパスワードも入力するだろうし、 バックグラウンドで何か送信するとかもできるし。まあUWSC以外の全プログラムにも言えるが。 : 名無しさん@お腹いっぱい。 [sage] 2013/11/16(土) 10:26:35.82 :uhNaj/0g0 ど素人の自分にレスくれてありがとう。本当に初心者なので 他人のサイトを参考にwhiel1って入力したぐらいで、他人の作ったマクロは まだ使用していないから盗用の件でUWSCは特に問題なさそうですね。 たまたまタイミング的に近かったから思わず疑ってしまったけど、 自分結構ネットショップとかでクレカ使用してたからそこから漏れたんだとは思うw あとズレに関してはあきらかに同じ位置にマウスを持ってきてるのに 座標みても完全に横にそれてしまってるから、新しく記録を繰り返すんだけど またズレて記録されているといった感じ。素人すぎてなんのこっちゃ 自分にはよくわからないから、ファイル自体を一旦削除してまたDLでやってみても 最初の2〜3回はうまく行くけどまた同じような症状に戻ってくる。 もしかしたら自分のやってるオンゲで狂わせるような対策されてるのだろうか・・・ : 名無しさん@お腹いっぱい。 [sage] 2013/11/16(土) 13:37:28.41 :J8NATlyD0 ブラウザは? 途中からブラウザのツールバー出てきてない? : 名無しさん@お腹いっぱい。 [sage] 2013/11/17(日) 06:08:06.08 :eVkjMAE60 おれも超初心者だけど 再生中に自分でなにか操作すると上書きされたりするよね? ちょっと上のレス参考にして Lockhard で挟んでスケジュール化(while削除) Mouseorg(2) を使うことでうまくうごくようになた ただlockhardはちょっと危険かもしれない : 名無しさん@お腹いっぱい。 [sage] 2013/11/17(日) 17:44:39.59 :jRtTDlcT0 配列IMG[5][5]があったとして、中身が例えば 00122 00122 00122 00122 00122 となっていた場合、0の部分を白、1の部分を赤、2の部分を黒の画像を表示 させる方法はあるでしょうか。 1ピクセルのそれぞれの画像を用意して、それを張り合わせていく方法を考えたのですが、 今回は5*5ピクセルですが、実際に使う場面だと数百*数百になって、とても効率が悪そうです。 uwscでbmp画像を作成、その後表示という方法とか理想的かなと思ったんですが そもそもどう作ればいいのかぐぐればいいのかがよくわからなかったですorz : 名無しさん@お腹いっぱい。 [sage] 2013/11/17(日) 18:34:18.88 :vT4n3l0m0 「BMP ファイルフォーマット」とか「BMPデータ構造」とかでググれば出てくる 32bitBMP形式が一番単純で作り易い : 名無しさん@お腹いっぱい。 [sage] 2013/11/17(日) 18:34:41.83 :GQKDHkCO0 昔グリッド表示させるだけの簡単なツール作ろうとしたけどめんどくさかったからCで作ったの思い出したわ ttp://d.hatena.ne.jp/junjun777/20130221/uwsc_popupmenu_ex この辺りの記事は参考になるんじゃないか? : 名無しさん@お腹いっぱい。 [sage] 2013/11/18(月) 08:35:38.07 :DwKKw/ngP UWSCの紹介して正規ユーザーなったら2000円バックとかないかな? アフィリエイトってやつw あれば結構な人数を紹介できそうなんだよね 作者さんここ見てる? 紹介制度検討して下さい : 名無しさん@お腹いっぱい。 [sage] 2013/11/18(月) 12:32:29.22 :kU4iDUl+0 ゲームマクロ乞食が昇格した? : 名無しさん@お腹いっぱい。 [sage] 2013/11/18(月) 15:31:39.86 :wNf+o+2t0 俺が製作者ならサイトをSEO対策してBBSもスレッドフロート型にした上でSEO対策する : 名無しさん@お腹いっぱい。 [sage] 2013/11/18(月) 16:49:53.63 :8gRgTwhk0 一部のオタクしか課金しないんだからSEOで収益が上がるようなものじゃないだろ : 名無しさん@お腹いっぱい。 [sage] 2013/11/18(月) 18:32:41.67 :bfW4eMwA0 s/UWSC/Win8.1/ < 604 > nul : 名無しさん@お腹いっぱい。 [sage] 2013/11/19(火) 03:19:41.27 :mKl63du20 黙って紹介しろよw : 名無しさん@お腹いっぱい。 [sage] 2013/11/19(火) 06:40:16.19 :p7hxwwtC0 ClkItemのアイテム名はFlashだとどこを見ればわかりますか? : 名無しさん@お腹いっぱい。 [sage] 2013/11/19(火) 07:01:58.05 :8oT7GQ9h0 ソース : 名無しさん@お腹いっぱい。 [sage] 2013/11/19(火) 08:09:19.42 :gHtbsTwx0 お前何も分かってないのなw : 名無しさん@お腹いっぱい。 [sage] 2013/11/19(火) 18:34:32.99 :p7hxwwtC0 swfを落としてflaにして中身を見るということですか? サンプルのIEFlash.uwsが正常動作しなかったので (GETSTR(flashid, 1, STR_ACC_STATIC)以下が効かない) なんとかしたかったのですが、 検索すると昔は ClkItem(flashid, "Pause" が ClkItem(flashid, "" だったということまでしかわかりませんでした GETSTR(flashid, 1, の「1」を30まで増やしてみましたが無理でした どうすれば動くようになりますか? : 名無しさん@お腹いっぱい。 [sage] 2013/11/19(火) 19:40:14.96 :X/HDHiUF0 エスパーして答えるが IE10、IE11だったらFlashハンドルを取得出来ないからそのサンプルは使えないぞ どうしても試したかったら、XPもしくはwin7+IE9(できたっけ?)で動かすしか無い : 名無しさん@お腹いっぱい。 [sage] 2013/11/19(火) 20:32:56.60 :p7hxwwtC0 ありがとうございます 最初に書いてあるのに思いきり見逃していました : 名無しさん@お腹いっぱい。 [sage] 2013/11/20(水) 04:43:53.38 :Pwzu/+cH0 ぬおおお 何で座標指定してクリックするとウインドウが切り替わるんだ 今日休みだから一日使って考えられること全部実行して、解決出来なかったら質問させて頂くかもです その時は宜しくお願いします : 名無しさん@お腹いっぱい。 [sage] 2013/11/20(水) 23:07:26.64 :Pwzu/+cH0 616ですが事故解決しました。 結局直接的な原因が何だったかは分からずでしたが... : 名無しさん@お腹いっぱい。 [sage] 2013/11/21(木) 04:13:19.34 :9tFw0a6v0 フリーの高機能テキストエディター「Mery」v2.2.0.4910が公開 ttp://www.forest.impress.co.jp/docs/news/20131118_624089.html プラグイン機能が拡充、不具合の修正と機能の改善も : 名無しさん@お腹いっぱい。 [sage] 2013/11/21(木) 06:33:02.35 :9HTmfqi30 誤爆 : 名無しさん@お腹いっぱい。 [sage] 2013/11/21(木) 07:18:44.22 :cMbn85Zii 大学の課題全部片付けるスクリプト作ったった 捗るわ : 名無しさん@お腹いっぱい。 [sage] 2013/11/21(木) 08:15:48.30 :6xc710eh0 ツール売れば人生セミリタイアできるくらいには稼げるんじゃね? : 名無しさん@お腹いっぱい。 [sage] 2013/11/21(木) 08:17:19.60 :6xc710eh0 世の中にはUWSCのためなら金払っても構わん人達も少しながらいるらしいな ttp://www.lancers.jp/work/search?keyword=UWSC : 名無しさん@お腹いっぱい。 [sage] 2013/11/21(木) 14:50:53.40 :OGSKo2zj0 某大学の特定のネット上課題を遂行するスクリプトだからなぁ その大学の生徒には売れるかもしれんが : 名無しさん@お腹いっぱい。 [sage] 2013/11/21(木) 16:59:50.95 :23jTyM8C0 1時間程度で出来そうなスクリプト作るのに1ヶ月丸々かかっちゃってるんですけど。 : 名無しさん@お腹いっぱい。 [sage] 2013/11/22(金) 04:40:00.31 :ptSzHs+B0 俺も大学の卒業研究で膨大な量のデータ処理する為にスクリプト組んで処理させてたわ 今年も同じような研究してる筈だけど、プログラムのプの字も知らない輩だから大変だろうな 礼儀が全然な奴らだったからスクリプトも全部消したかそういえば : 名無しさん@お腹いっぱい。 [sage] 2013/11/22(金) 04:46:16.07 :cltufWvl0 あっそ : 名無しさん@お腹いっぱい。 [sage] 2013/11/22(金) 08:38:43.30 :piUdSr0t0 業務が捗りすぎてヤバいのは感じたことあるな RPGでみんな必死にボカスカやってる中でザキやデス覚えてしまったような感覚 : 名無しさん@お腹いっぱい。 [sage] 2013/11/22(金) 18:06:28.36 :3cCwn0Ip0 やぁ、クリフト。 : 名無しさん@お腹いっぱい。 [sage] 2013/11/22(金) 20:01:24.47 :7bdTwuoSP リメイク版ではザキ連発しなくなった代わりに、アリーナがちょっとでもダメージを受けていると最優先で回復するようになったぞ : 名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 00:56:28.34 :K31vMnpx0 uwscで割り込みとか、ある処理を強制的に外部から止めるとかってさすがに厳しいのかな thread 処理() sleep(3) 処理() exit procedure 処理() while true hukidasi("a") sleep(1) wend fend みたいな感じに外部から強制的に処理を中断する手段がほしい : 名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 01:19:21.42 :dTuMZrho0 グローバル変数で自作 スレッド内で変数を見て自主的に終了 : 名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 01:25:22.13 :K31vMnpx0 やっぱりそれしかないかなぁ 実際はスレッド内はいろんなところでループしてるからそのループごとに 監視しないといけないとなるとかなりの手間になっちゃう : 名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 01:40:54.69 :OsoXcu5+0 exitexit すれば強制的に全部終了 個別にやるなら、フラグで制御できるループをスレッドで呼び出して そっから機能を呼び出せば、機能自体はいじる必要がない。 ただし、強制的な終了じゃない。 もっときめ細かくやるなら、処理の最中に常にフラグをチェック。 めんどくさいならSleepを呼び出すときにフラグをチェックして終了する関数にする。 public flag = false って終了フラグと function fSleep(time) Sleep(time) result = flag fend って関数を作っておいて 通常 Sleep(1) とか書くところを if fSleep(1) then exit と書く 長ったらしい行動スクリプトのときにやったけどめんどくさいし反応遅いけどね。 処理時間を引数から出して kbd(vk_a); if fSleep(1) then exit とかやるんだけど いくつかまとまった行動を関数化しているときはその関数内でフラグチェックして if walk() then exit ああ、強制終了が欲しくなるな・・・ : 名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 01:48:36.32 :jh3F0xy70 スレッド生成時に何も受け取っていない時点で・・・ 因みに自分はめんどくさがりなので大抵のバッチ系はこんな感じで動かしてる 何か例外的な事が発生したら自分でおkボタンを押してるわ thread メイン処理() ←※基本無限ループ、正常終了する時は下のおkボタンを押下しちゃう MSGBOX("OKボタンを押下すると終了", BTN_OK, 4, 858) : 名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 02:09:11.19 :K31vMnpx0 説明に不備があってやろうとしてることがうまく伝わっていない様子 読み返してみたら言わんとしてることと確かに違う 上記のは処理の例で、実際にやろうしていることは while true while true 長ったらしい処理 wend 別の処理 wend 基本的にループの「長ったらしい処理」をしてて、目的のことを終えると「別の処理」に移って、 それも終わったらまた最初に戻る ただ、「長ったらしい処理」を待たず、別のスレッドから命令を与えると、そのループを抜けて 「別の処理」を行うようにしたい 割り込みでよくある電話でたとえると、 ・基本的に本を読んでいる 本を読み終えるとAさんに電話をして、電話が終わったらまた本を読み始める っていう処理に、本を読んでいる途中にAさんから電話がかかってくる処理を追加したい ・Aさんから電話がかかってきたらすぐに電話に出る。ただ、電話が終わったあと しおりをはさんでいないので、最初から読み直す という感じにしたい これも例えがわかりにくい気がしてきた・・・ : 名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 02:44:23.12 :OsoXcu5+0 ttp://siromasa.digi2.jp/uwsc/u_sample/Base/SuspendThread.txt umiumi さん が作ったスレッド停止スクリプト。 Win32API を使ってスレッドを停止、再開する。 それで他の関数を探してみたが、 CloseHandle はシンプルだけど終了しなかった。 TerminateThread はUWSCのプロセスが終了しなくなる。 ためしに SuspendThread したまま exitexit しても同様に終了しなかった。 最終的に強制終了は必要になるけど、TerminateThread でスレッドは止まる。 しかし、SuspendThread したまま放置したほうが安全かもしれない。 それは外部から強制終了とか不可能だけど マルチプロセスでやれば可能。 : 名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 03:08:32.59 :OsoXcu5+0 EXECに同期フラグってあるでしょ。 だからこれでおk。 while true EXEC(GET_UWSC_DIR + "\UWSC.exe " + REPLACE(GET_UWSC_NAME, 自分のファイル名, "sub.uws"), true) 別の処理 wend sub.uws を taskkill コマンドで強制終了すれば実現できる。 ・・・どうやって sub.uws と自分を区別できるんだっけ。 タスクリストから自分のプロセスハンドルを除外した UWSC.exe を全部終了すればいっか。 ハンドル見るからちょっとめんどくさいね。 自分のハンドル取得は GetCurrentProcess。 マルチプロセスはデータの共有とか同期がめんどくさいんだよね。 起動に時間かかるからよっぽどじゃないと使わない。 : 名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 03:53:55.49 :K31vMnpx0 の方のが一番しっくりきそうな感じです ただ、ハンドルとかそのあたりのことを一切知らないのでこれから勉強ですねorz あと、replaceがどういう意図で使われているのかがわかりません 普通に"sub.uws"とどういう違いがあるんでしょうか : 名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 05:15:04.45 :OsoXcu5+0 スクリプトの起動方法によってカレントディレクトリが変わるんで ファイルはフルパスで指定したほうがいいかなと。 で、スクリプトファイルのディレクトリのパスを直接取得できないんで スクリプトファイルのパスを取得してファイル名部分を置き換える。 ファイル名を削ってからつなげるのが普通だと思うけど、めんどくさいんで。 あと、REPLACEを使えば みたいに1行で書けるし。 : 名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 08:21:02.06 :aLnYvoV00 読書中にかかってきた電話が偶然にもコーヒーカップを口に運んでる時だとして、 カップを床に落としても問題がないので電話を取るっていうのなら殺すべきだろうけど、 読書中にコーヒーを飲む事ある?あるならカップはテーブルに置いた方がいいかも。 興味本意だけどそこが気になった。しっくり来たならコーヒーは飲まない派だろうけど。 : 名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 20:30:24.72 :zNMIqzEz0 すまんわからん : 名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 20:50:32.77 :w2REF44q0 IE11にしたらルーター操作のIEマクロが動かなくなった 作り直して動けばいいけど、上げるんじゃなかった : 名無しさん@お腹いっぱい。 [sage] 2013/11/26(火) 08:04:06.08 :YSzEgR5B0 俺もアンインストしたぜ : 名無しさん@お腹いっぱい。 [sage] 2013/11/29(金) 09:36:03.76 :util4cTD0 まともな大学生ならスクリプトなんて組まずにプログラムを組むし どんな三流大だよ : 名無しさん@お腹いっぱい。 [sage] 2013/11/29(金) 15:28:00.77 :ei62fL2Q0 スクリプトにはスクリプトの長所ってものもあるのさー 人間の作業負担の代替の場合は基本的に手続き型の操作になるから特にね コスパでどっちを使うか選べば良い : 名無しさん@お腹いっぱい。 [sage] 2013/11/29(金) 17:42:58.03 :PBQCCQCq0 というかどんな作業なのか分からないのに プログラムの方がいいとか判断できるはとってもすごい大学行ってるんだなw : 名無しさん@お腹いっぱい。 [sage] 2013/11/29(金) 19:50:35.10 :ETKomlWdP スクリプトもプログラムの種類なんですけど : 名無しさん@お腹いっぱい。 [sage] 2013/11/30(土) 01:21:28.37 :luoLBufb0 認証させたい画像が良くても5割しか判定に成功しません 切り取る画像の大小、デフォ透過色無視の0,1,-1も試しましたが無理でした 同ゲーム画面の別の画像は問題なく認識します 解決方法をご存じないでしょうか ifb CHKIMG("認識したい画像.bmp",IMG_MSK_BGR6) // x=G_IMG_X Y=G_IMG_Y BTN(LEFT, CLICK, x, y, 80) : 名無しさん@お腹いっぱい。 [sage] 2013/11/30(土) 01:24:45.92 :luoLBufb0 ↑が途中で切れてしました 確認に使っているスクリプトです ifb CHKIMG("認識したい画像.bmp",IMG_MSK_BGR6) // x=G_IMG_X Y=G_IMG_Y BTN(LEFT, CLICK, x, y, 80) else PRINT "みつかりません " endif : 名無しさん@お腹いっぱい。 [sage] 2013/11/30(土) 02:18:38.00 :2vwDJyFb0 画像の撮り方が悪いとかエフェクトがはいってて認識できないとか : 名無しさん@お腹いっぱい。 [sage] 2013/11/30(土) 02:29:13.90 :3O3UvhwD0 それだと透過色/色無視の引数にIMG_MSK_BGR6を指定してるから ifb CHKIMG("認識したい画像.bmp",,,,,,,IMG_MSK_BGR6) これで試してみ それ以外だと情報が少なすぎて分からないな : 名無しさん@お腹いっぱい。 [sage] 2013/11/30(土) 09:09:22.23 :luoLBufb0 原因が分かりました、それより上の行のスクリプトがおかしかったようです PUBLIC id=getid("ゲーム名") 正:MOUSEORG(0) 誤:MOUSEORG(id) 以下↑に同じ どちらもマウス移動の相対化で どこかのサイトには(0)より(id)の方がいいと説明されてました : 名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 08:37:32.64 :VZ9QrxsBi あ : 名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 09:50:07.87 :VZ9QrxsBi UWSCを触り出して2ヶ月になります。色々なサイトを見ながら、仕事に必要な マクロはだいたい組めるようになり、他の人(職場の)に比べて数十倍以上の 効率で処理を行えるようになったと思います。なので、現時点で特に スキルアップの必要性はないけれど、個人的な興味から今より上の技術を 学びたいと思っています。ただ僕はUWSC以外のプログラムはほぼ触ったこと がなく、VBAをわずかに触ったくらいです。UWSCの上級者と思われる人たち は、UWSC以外にも精通している方が多いですよね。色々な点で自分は 相当無知だとも自覚しており、今はある程度全体を俯瞰できるような上達の 目安表が欲しいと感じています。 例えば漫画板ではちょくちょく見かける強さランキング。 Sランク: Aランク: Bランク: Cランク: このような形で「ここまで到達したらUWSCのレベルはこのくらい」みたいな 部分を教えて頂けないでしょうか。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 10:00:28.54 :VZ9QrxsBi 連投すいません。個人的な主観の場合。 ■初級の中:記録機能を使わずとも、最低限の処理は一から書いて対処できる程度。 ウインドウ関連…getid,clikitem,ctrlwin,sendstr,sckey,sendstr,getstrなど ダイアログ関連…input,msgbox,slctbox 制御関数関連…exec,sleep,gettimeなど 文字列操作関連…copy,pos,length,replaceなど スクリプト構文…変数、if(ifb)-endif、for-next,select-selendなど …この辺りの一部を扱い、基本的な処理を形にできる。 ■初級の下:記録機能からの「保存→編集」ができ、不要な記述を カット、編集して効率化を図れる程度。 ウインドウ低レベル関数(mmv,btn,kbd,acw)やsleep辺りを何となくいじれる。 ■触り始めた直後:記録機能を使って「保存→再生」ができる程度。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 10:02:38.69 :qSolREYa0 UWSCに限らずプログラムというのは一方向に知識が偏ることが多いからこれができたらこのランクというものはない あえて言うなら詰まった時に自分で調べて打開できるか出来ないかの違いだけだ : 名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 10:07:11.51 :cGDn0QjY0 物事を1つやるだけでもいろんなアプローチの仕方があるし ソースだって重視するのが見やすさか文字量か処理の早さも人によってこだわりがあるだろうし ただ、レベル高い人は正規表現が使いこなせるイメージがある : 名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 10:09:33.17 :PoC6gXCV0 正規表現なんて初歩の初歩だろ・・・ : 名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 10:15:59.59 :QpNJpLmDP Excelなら読み書き保存で初級、グラフ・関数で中級、マクロで上級ってのが一般だが 会社によって使用頻度の高い機能が違うから、これができてこれを知らないのかよ! ってのはありがちなのと同じだな。 この感覚でいけば、記録再生で初級、ヘルプを読めばソース書けるで中級 外部のAPIやDLLなどと言い出したら上級のような気がしてる。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 10:25:21.13 :R19BYUvk0 >強さランキング ネタをネタだとわからないようじゃあ、いつまでも2ちゃん初心者 : 名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 12:45:04.41 :gtUCgZTV0 UWSCは、他のプログラム言語でそれなりの知識を積んだ人が、使うものだと思うよ ヘルプも、プログラミング中級者以上を対象にした書き方になってるし 少し気の効いた事やろうとすると、COM/WindowsAPI/マルチスレッド&排他処理などが、必要になってくる それらの知識を持たないなら、いつまで経っても初級のまま・・・かもしれない : 名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 13:37:17.63 :BNiYCnON0 初級: ・記録したマクロを、構文や変数などで初歩的な構造化を施し、改変できる。 ・ヘルプのスクリプト関数を調べて7割を活用できる。 中級: ・自作関数による基本的な構造化が出来る。( CALL多用は除外) ・ヘルプのスクリプト関数を調べて9割を活用できる。 ・googleで検索してトラブルシューティングやヘルプ未記載の仕様制限を確認できる。 ・googleで検索して初歩的なAPI活用・OLE使用を行い、UWSCの使用制限を突破できる。 ・基本的な例外処理を行える。 上級: ・自作関数を適切に分類し、自作ライブラリを構築してCALLでincludeしている。 ・ソフトウェアテストの行い易い構造化を行い、大規模になっても部分に切り分けたアジャイルな開発を行える。 ・他の言語と比べたUWSCの欠点を理解し、費用対効果でUWSCが適している場合のみUWSCを使う。 ・高度な例外処理や、リソースのデッドロックによるフリーズに対処出来る。 超上級: ・UWSCを卒業。オブジェクト操作は各種高級言語から、画像判定はOpenCVで行う。 ・あるいは逆に、ソフトウェアテスト業界でUWSCをバリバリ活用しているか、LancersなどでUWSCの仕事を受注している。 余計な一言 UWSCなんぞで数十倍以上の効率で仕事を処理できるなんて、なんて非効率で甘々な仕事なんでしょうか。羨ましいです。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 18:21:51.11 :VZ9QrxsBi やっぱりそうですよね。ヘルプ読んでてそう感じました。 ありがとうございます。こういうのが欲しかったです。 参考にさせて頂きます。 ※「処理が数十倍」というだけで結果は必ずしもそうではなく、極端な例で言うと 漫画家に近いかもしれないです。週1本書けるのが普通の漫画家とすると、 それを30本描けるようになった…みたいな。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 00:18:10.14 :wBtlrZYu0 この土日をフルに使って、某ブラゲの長時間遠征系のマクロの雛形が出来た いい解説サイトがなくて、調べて理解して自分で使って動作検証しての繰り返しでかなり手間がかかった 今までは単純なマウス記録で済ませてた。 使ったのはifb CHKIMG、Else、sleep、xy=G_IMG_Y、BTN(LEFT, CLICK, x,y ,80) くらいだから、UWSC初心者レベルで見ても相当遅いんだろうな : 名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 00:48:47.89 :MJ36lxJ50 吐き出したいけど卑怯だと理解してるからTwitterなどSNSでは言えず、結果ここしかないんだろうけど、目障りだって想像できないのかな まあ実際にはどういうつもりかは知らんけどアプローチの仕方を少しも考えないような、やはりゲームを自動化するような奴は自己中なんだろうって思いました : 名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 01:28:16.53 :uaNtuaug0 なんじゃそりゃ 目障りもなにも、見たくなきゃ見るな、というのが2ちゃんねるなんですけど。 単純作業の自動化は、単純作業で延命するタイプのネトゲでだけ卑怯とされるのであって、 ゲーム以外のほとんど全てでは、推奨される美徳であり、生産的な価値ある行為なんだがなw : 名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 02:01:52.47 :dfQlVJCTP その通り 見たくなければ来るな : 名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 04:13:53.32 :2wsp+l6xi お前目障りだな : 名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 07:35:30.27 :4w3ZnRs7P え、まぁチラ裏すぎてなぜこのスレに書いたのかわからない日記には見えるけどw : 名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 07:39:44.04 :26s67htj0 じゃあ消えろ : 名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 08:08:17.60 :FAVWzEvbi uwscをそこそこ触れるようになった時点で、 次のステップとしてお奨めの言語ってありますか? どれやっても大差ない? : 名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 10:24:52.60 :mkpy9VBG0 VBS : 名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 17:05:02.70 :2nIyQNqZ0 UWSCぐらいの日本語情報がないと厳しいなら 今ならC#あたりじゃない? : 名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 17:50:57.77 :uaNtuaug0 DOBON.NETで勉強できるC#かVB.NETで決まりだな。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/03(火) 08:31:28.07 :JbyZZNIR0 N88BASIC : 名無しさん@お腹いっぱい。 [sage] 2013/12/03(火) 09:03:58.40 :O6KFcVp/0 アプリのメモリ弄りたいんだがどれがおすすめ? : 名無しさん@お腹いっぱい。 [sage] 2013/12/03(火) 10:18:41.78 :4fSifEn90 どれもそう変わらんから自分の好きなの使うといいよ : 名無しさん@お腹いっぱい。 [sage] 2013/12/03(火) 10:33:38.38 :13+niociP どれを好きになればいいのかって事かと : 名無しさん@お腹いっぱい。 [sage] 2013/12/03(火) 12:28:44.85 :pAgmWecwi 皆、どういう目的のプログラム組んでるの? 仕事、私用問わず。 俺は仕事の7割くらいの作業の効率化と、 生活のルーチン化。 アフィリで稼ぐのにプログラム組んでる人ってどのくらい? : 名無しさん@お腹いっぱい。 [sage] 2013/12/03(火) 13:27:08.04 :JbyZZNIR0 俺使ってるよ。年額でたった75万位にしかならんけど。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/03(火) 20:44:23.94 :pAgmWecwi マジか。それってクリック式のとこ? 組み方の問題とか、遊びでやってるレベルだからとか? それともやっぱセンスなのかね。 まぁ75でもお小遣いとして見れば悪い数字ではないよね。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 08:33:53.34 :bw3mM4NP0 そりゃ今どきこんなんもゴロゴロしてるからなw ttp://crowdworks.jp/public/jobs/36700 報酬30万〜50万。 今回はお前らに譲ってやるからサクッと作ってミソ。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 09:27:06.77 :O9PKPAQg0 オープンデータでアプリ開発 総務省がコンテスト ttp://uni.2ch.net/test/read.cgi/newsplus/1386020361/ 総務省はパソコンやスマートフォン向けアプリの開発コンテストを開く。 行政や公的企業が公開する指定のデータを利用するのが条件だ : 名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 10:23:05.97 :Xx/m3zMm0 作れんし 作れても詐欺師の道具なんて金もらえんだろ。 ウィルス作成罪で警察に突き出すと言われて逆に脅し取られるわ。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 11:10:07.90 :Xx/m3zMm0 > オートマウスにての稼働ですが、 > これを完全自動化させた感じで オートマウスでの自動が駄目ならUWSCもダメだろ。 最初から作らないと。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 11:19:36.96 :DDVDxB9Yi 不正でのアクセス稼ぎじゃなくて、送信数を大幅に増やすことで アクセスアップを狙えば問題ないわけだろ。興味のありそうな人への 自動送信とかさ。この「興味がありそう」っていうところをプログラムでの 自動判別にして、手動だったら毎日10人送るのも面倒かもしれない作業を、 自動で毎日1000人くらいに撒けば、最低でもアクセスはそこそこ取れる。 ブログや記事内容が不正や騙しでなければ固定ファンがつく可能性もある。 30〜50の不正プログラムを作るなら、毎月コンスタントに5万稼げる健全な プログラムを考えた方が遥かに良いとは思うな。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 11:35:55.65 :XNzpX2uF0 IEでページ移動した後、いつまで経ってもBusy状態なのだけど、何か考えられる理由ありますか? : 名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 13:48:04.97 :p7b8WpTl0 GetItem(id,ITM_ACCTXT,-1)で まったく取得できなくなったんだけどわかる人いるかな。 他の環境(OS・ブラウザ同じ)だとちゃんと取得できるんだけど。 今の環境だとIE以外のブラウザでも取得負荷。たっけてー : 名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 19:20:32.54 :YzQNco3L0 つかIP偽装しなきゃ毎回変えられんだろ… : 名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 19:21:59.02 :YzQNco3L0 アクセシビリティ経由は超遅くて超不安定。 デッドロックで応答なしもショッチュウだな… : 名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 20:22:51.19 :CfzmkTdX0 JavaランタイムとJava Access Bridge for Windows がインスコ済みかどうかの違いとか? : 名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 21:05:10.25 :p7b8WpTl0 Bridegeはどっちも入ってない ランダイムは入れなおしてみたけどだめだった 他のアプリだと取得できるけど、やっぱりIE,Firefox,Chromeはだめだー : 名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 23:02:14.08 :XNzpX2uF0 IEのポップ(規定のブラウザにしますか?、パスワードを保存しますか等)を uwscで消す方法ってどうするのん? : 名無しさん@お腹いっぱい。 [sage] 2013/12/05(木) 03:45:22.88 :c0ktLMVg0 >やっぱりIE,Firefox,Chromeはだめだー ここ読んで少し試してみたけどIE,FirefoxはACC経由の情報は問題なく取得できるけど Chromeは取得できないな 本家サンプルの // Google Chrome にてGoogleを表示、日本語ページより検索(ACC方式) #n37 ttp://www.uwsc.info/sample.html#n37 も動かない(GETITEM(id, ITM_ACCCLK or ITM_ACCTXT))で戻り値0で表示完了処理でループしてる win7+IE11,Firefox,Chrome,uwscは共に最新 環境によるのかねえ・・・ : 名無しさん@お腹いっぱい。 [sage] 2013/12/05(木) 04:18:30.43 :gM/tAOSd0 最新() : 名無しさん@お腹いっぱい。 [sage] 2013/12/05(木) 09:23:36.07 :Uf0CCUOd0 そのウィンドウが出たら閉じるボタン押せばいいだけでは : 名無しさん@お腹いっぱい。 [sage] 2013/12/05(木) 12:25:33.41 :6PYLkaC6i それを自動的にしたいのだと思われ。 俺も似た症状がしょちゅう出るうっとい。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/05(木) 12:37:24.73 :cllrD0gp0 本来手動で行う操作の自動化なんだろ? ならばその画面が出る可能性がある箇所に 画面が出ていないか判定し出ていたら任意の操作を行う関数を作成 呼び出しすればいいだけじゃね? : 名無しさん@お腹いっぱい。 [sage] 2013/12/05(木) 14:39:29.20 :MK4OvRdJi というかスレッド処理しろよどんだけ無知なんだよ : 名無しさん@お腹いっぱい。 [sage] 2013/12/05(木) 17:48:28.14 :dBf/68S20 というか、IEの設定画面から無効にするか、レジストリを書き換えるかしろよ : 名無しさん@お腹いっぱい。 [sage] 2013/12/05(木) 21:26:11.55 :V0rkpS1D0 While true if GETKEYSTATE(VK_ESC) then exit // ESCキーを押すと終了させる ifb CHKIMG("6.bmp",0) // btn(left,click,g_img_x,g_img_y) endif wend 画像認証で指定の画像をクリックする簡単なマクロですが マウスの移動→クリックの過程の動作を早くすることは出来ますか? : 名無しさん@お腹いっぱい。 [sage] 2013/12/05(木) 23:13:21.36 :xFO7dKYI0 良いCPUのPCで実行する intervalを10にするとなんか早い気がする : 名無しさん@お腹いっぱい。 [sage] 2013/12/06(金) 00:02:10.76 :qtwVC0200 実行までの待ち時間はきちんと入力したほうが早い 詳しくは忘れたがデフォだと100だか200に固定されてるんだっけ? : 名無しさん@お腹いっぱい。 [sage] 2013/12/06(金) 00:30:32.14 :r8O6LCJL0 CLICKよりも、DOWNしてUPさせた方が速い : 名無しさん@お腹いっぱい。 [sage] 2013/12/06(金) 08:09:08.53 :BHCOviGC0 IE/Firefoxに関してはAcrobat proが原因でした。 Chromeは改善せず。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/06(金) 19:26:50.84 :hf02iXmP0 速くするだけなら幾らでも早くすればいいが、 相手があるんだからその分失敗率が高くなるぞ : 名無しさん@お腹いっぱい。 [sage] 2013/12/07(土) 11:52:58.81 :UVBdHf6I0 相手のレスポンス待ってる訳じゃないからな、 やれることは指定時間のウェイトの後にクリックする事出し。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/10(火) 01:01:16.27 :4K0w/5tR0 どなたか詳しい方、教えてください… hoge.dll public class a{ public a(string b){ ... } public int c(){ ... } } こういうDLLがあるとして、UWSCから使うにはどうすればよいのでしょうか? bのaを作って関数cを使いたいです。 DEF_DLLでオブジェクトaを作ろうにも、bの渡しかたがわからず挫折しました。 DLL自体を解ってないのでそもそもの発想が間違ってるのかもしれません… : 名無しさん@お腹いっぱい。 [sage] 2013/12/10(火) 13:01:53.68 :cfeTVeM9i msgboxの自動ループって機能的に無理ですよね? 例えば、ページ1、ページ2、ページ3…ページ100とかあって、 それをOKボタンを押さずに、3秒おきにページを進めていくとか。 printだとちょっとニュアンスが違うような気がして。 fukidasiでも考えてみたいですけど、先にmsgboxから。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/10(火) 13:27:47.75 :nIhaKsx10 DLLの呼び出し規約で、vc++の場合は関数名の後ろに@数字がついてる。 あと、DLL側で extern はしないといけないんじゃないかな。 できないね。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/10(火) 14:09:27.06 :NfZkpDL30 Thread使うと出来そうだけど SLCTBOXで代用したほうがシンプルで良さそうだよ タイマーも付いてるし : 名無しさん@お腹いっぱい。 [sage] 2013/12/10(火) 14:41:42.79 :SrrG4AtL0 エスパーして中断機能が欲しいと予想しても、だ 基本 Thread を使い中断機能部分は msgbox に 進捗状況はその上にオーバーライドさせた fukidasi で表示するのが吉かな : 名無しさん@お腹いっぱい。 [sage] 2013/12/10(火) 21:27:21.09 :zPPbVhv30 WScript.Shellオブジェクト作ってPopUpメソッド呼び出す力技 : 名無しさん@お腹いっぱい。 [sage] 2013/12/10(火) 22:07:52.01 :4t1OnZV20 thread多用し過ぎw それで済んだとしても典型的なバッドノウハウだろ。 SLCTBOXで十分だし、 それで不満ならUWSCを卒業した方がいい。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/11(水) 00:33:45.68 :y4jYxVxx0 勉強になります。 externはDLL側に必要なんですね。 DLL付属のドキュメントには関数ぐらいしか書かれてなかったので、externされていることを祈りつつ呼び出し規約を色々試してみます。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/11(水) 08:13:50.28 :EcETM5+z0 VBscriptにはmsgboxのタイマー設定できるのな。自動で○秒表示。 UWSCにもその機能あればいいのに。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/11(水) 11:43:21.80 :JgCyEb1D0 なぜかChromeのRC版テスターに選ばれて 32.0.1700.41 m Auraを使ってるんだけど クラス名「Chrome_RenderWidgetHostHWND」取得が出来なくなったみたい 影響は少ないと思うけど(UWSCでChrome操作してる人いるのか・・・) 次期Ver32で少し改修しないといけない場合があるかも(安定版でどうなるかわからないけど) Chrome_RenderWidgetHostHWND→Chrome_WidgetWin_1で座標系が少し狂うのかな? : 名無しさん@お腹いっぱい。 [sage] 2013/12/11(水) 12:28:11.98 :ZOveDWBO0 SLCTBOXにはついてるでしょ : 名無しさん@お腹いっぱい。 [sage] 2013/12/11(水) 17:36:06.88 :EcETM5+z0 MSGBOXのこと言ってるのに何こいつ これがアスペか : 名無しさん@お腹いっぱい。 [sage] 2013/12/11(水) 18:40:39.35 :ZOveDWBO0 わがまま言わないのっ : 名無しさん@お腹いっぱい。 [sage] 2013/12/11(水) 18:45:06.85 :NRJZIdbi0 VBSのタイマー付きは、と同じだろ 既に在るのに、何言ってるのw : 名無しさん@お腹いっぱい。 [sage] 2013/12/11(水) 23:42:12.15 :B7dif2gFi スクリプトAを毎日、違う時間で実行させたい時、例えばinputで 「15:20」と入力したら、15:20に起動させるようなことって可能? それが「式による設定」になるんかな? : 名無しさん@お腹いっぱい。 [sage] 2013/12/11(水) 23:59:48.29 :3TsV9WVa0 現在の時刻と指定時間の差を取ってsleepで待つ ってしてるな : 名無しさん@お腹いっぱい。 [sage] 2013/12/12(木) 01:41:31.81 :1iGv0hPy0 WScript.Shellやってみたけど消えなくね? user32.dll、MessageBoxTimeoutAは消えたけど色が変だ : 名無しさん@お腹いっぱい。 [sage] 2013/12/12(木) 01:55:03.43 :1iGv0hPy0 OK押さずにか・・・ こういうのじゃ押しちゃうから駄目ってことか THREAD msgclk() for i = 0 to 10 msgbox("test"+i) next PROCEDURE msgclk() while true sleep(3) id = GETID(, "TFmsgDlg.UnicodeClass", -1) CLKITEM(id, "OK", CLK_BTN) wend fend : 名無しさん@お腹いっぱい。 [sage] 2013/12/12(木) 02:00:29.63 :zx8f+biJ0 MessageBoxTimeoutはミリ秒、PopUpは秒 : 名無しさん@お腹いっぱい。 [sage] 2013/12/12(木) 08:36:12.75 :XPNt3Jjz0 OK押さずにってところで CLKITEM(id, "OK", CLK_BTN) ↓ CTRLWIN(id, CLOSE) これでどうだ(閉じる、キャンセルボタン押した事になる) : 名無しさん@お腹いっぱい。 [sage] 2013/12/12(木) 11:57:57.58 :8RGLip6z0 UWSCのスケジュール機能の式による設定ってのは 設定画面で入力するYMDを使う計算式のことだろ。 YMDと四則演算しかないから違う時刻というのは無理。 > 例えばinputで それはスクリプトで出来るけど既に動いてるスクリプトがあっての話。 動いてるスクリプトがあるんならCALLでもEXECでもなんでもすればいい。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/12(木) 21:42:27.07 :CF+xnjhz0 バグの危険性増やしてまで仕様以上のことをしようとするより 素直にSLCTBOX使えば良い。 ボタンの配置などがちょっとMsgBoxと違うだけで使用上は全く問題ない。 仕様で出来る範囲で割り切って使う。 そのかわり簡単手軽にサクッと使う。 それが“スクリプト”を使う意義。 ボタンの配置などがちょっと違う程度のことも許せずに 延々と不要で煩雑な手間を掛けるのはテクニシャンでも何でも無く ただの暇人。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/13(金) 14:00:04.21 :FL5R9eVIi そういうので全然おkっす。あざっす! 要は、「手動作業を入れずに」ってことですね。 (自動でボタンを押す分には問題ない) 仮にそれが暇の産物だったとして、暇から生まれた有益な開発は多いですよ。 アインシュタインの相対性理論だってある意味そうだし、科学上の重要な発見の多くもそうだと思うので。 個人的にはデフォルトでできることを、 癖のある変則スクリプトなど組んで、傍から見たら 「よくもそこまでやるねぇ」って呆れられるくらいのレベルの人が 細部においても実力がある人が多いように感じます。 uwscとかプログラムに限らず、どんなジャンルでも。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/13(金) 14:21:38.39 :JuAhHeQu0 最初の人かどうかはもはやどうでもいいんだけれどさ それって作業前の応答待機中は何もしないって事なんだぜ って事はそもそも進捗表示じゃないから print や fukidasi を使ってみようかって考えている時点で・・・ そして自動応答なら SLCTBOX にあるのだから メイン処理が止まっているのに わざわざ THREAD を作ってまで MSGBOX 使うって・・・ まぁ、おつかれさん : 名無しさん@お腹いっぱい。 [sage] 2013/12/13(金) 14:57:17.56 :+/SEDNvb0 本当に優秀なプログラマは無駄なコードは書かない : 名無しさん@お腹いっぱい。 [sage] 2013/12/13(金) 18:04:35.00 :0g6Ly3oc0 優秀なプログラマはトリッキーな事はしない シンプル伊豆ベスト : 名無しさん@お腹いっぱい。 [sage] 2013/12/13(金) 19:28:06.15 :Ic4HdSRj0 最近まで動いてたんだけど マウスとキー情報を直接送ることができなくなった 最低限のこのプログラムでも動かなくて //test.bmpのx,y=100,100にクリック mouseorg(getid("test"),2) btn(Left,0,100,100,100) windowsのアプデのせい? 誰か解決策教えて : 名無しさん@お腹いっぱい。 [sage] 2013/12/13(金) 19:46:24.57 :CGWOFh4w0 何がしたいのかいまいちわからん 相対座標にして情報送っただけと指定の座標をクリックするだけで動くも動かないもないかと それだけで何もしないならUWSC自体が動作してないって事でアプデ以前の問題 : 名無しさん@お腹いっぱい。 [sage] 2013/12/13(金) 20:27:53.20 :Ic4HdSRj0 >相対座標にして情報送っただけと指定の座標をクリックするだけで動くも動かないもないかと そう指定の座標をクリックしたいだけ win付属のペイントでtest.bmp開いておいて、 ペイントは非アクティブの状態で、 uwscでマウス情報を直接ペイントに送って、ブラシ(マウス)で点を描きたい 最近まで出来てたのに、、、 : 名無しさん@お腹いっぱい。 [] 2013/12/13(金) 22:45:39.46 :YLPUMqSi0 管理者 : 名無しさん@お腹いっぱい。 [] 2013/12/13(金) 22:47:48.78 :YLPUMqSi0 管理者権限での実行は? 常識だけど… : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 03:24:00.34 :Sfxs7E+C0 興味本位で聞くけど、ペイントで自動操作ってどんな用途で使ってるのか 支障が無ければ教えて あと、Windowsの種類とペイントのバージョンもあれば情報が出やすいかも知れない XPと7のあのペイントは別物だろってくらい違うでしょw windowsのアプデって、XP→8.1にしたとか言う落ちだったら笑うが : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 06:36:55.72 :QbNMeCa10 もちろん管理者権限も確認してます ペイントは最低限の動きを確認するため 即席で書きました 実際は ショートカットキーを押すと非アクティブウィンドウに指定した座標を押すという簡単な作業に使ってます mouseorgの基準指定を(0に)変えればマウスカーソルが動いて点を描くんですが、、、 地味にキー情報を非アクティブウィンドウに送信するというのが便利だったんです : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 06:49:18.20 :4RTqbKED0 解決策システムの復元 : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 06:58:17.03 :XkK8E4tQ0 今まで動作していたって話なら 前提条件が崩れているとしか考えられないから とりあえず getid が成功しているのかとか 処理を分解しながら確認してみたら? 後、成功を前提としたスクリプトを描いていると 何処で躓いているか迷うから最低限のエラー処理は入れておくべきだよ : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 08:44:14.58 :UVZHtyeJi グダグダ入ってないで代替案と代替コード。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 09:08:10.64 :C08spLVQ0 他力本願 : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 09:41:26.92 :Vc79l0iS0 Windows7とかのペイントだったら描画部分をmouseorgでクリックしたい場合はそこのオブジェクトを指定しなきゃダメだぞ? お前何か勘違いしてないか? こんなかんじで mouseorg(getctlhnd(getid("ペイント"),"Afx:0000000000000000:8"),2) // 16桁の0の部分は起動ごとに変わる btn(Left,0,100,100,100) : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 10:04:23.97 :QbNMeCa10 mouseorg(getid("test",,-1),2) btn(left,0,100,100,100) print "end" これでtestのペイント開いてない状態で走らせると、もちろんgetidのところで待ちに入る。 ペイント開いた瞬間endが表示され、プログラムはそこで終了する。 しかし点は描かれない。なぜ〜 : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 10:07:01.84 :QbNMeCa10 mouseorg(getid("test",,-1),0) btn(left,0,100,100,100) print "end" こちらはキー情報直接送信ではない方 マウスカーソルが動くがプログラムとしてはちゃんと動いてるので問題なし プログラムは何も問題無いはずなんだよ(この最低限の3行コードでも動いてくれてないけど キー情報直接送信だけがどうしても、うまく動いてくれない : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 10:31:20.53 :QbNMeCa10 ありがとう getctlhndで動きました オブジェクトを指定しなければならないとはわからなかった アイテム名って簡単に調べる方法や固定する方法はありますか? : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 11:48:17.93 :Vc79l0iS0 調べたいところにマウス合わせて idtohnd(getid(GET_FROMPOINT_OBJ)) とかかなぁ : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 11:57:46.66 :Vc79l0iS0 名前が知りたいならこっちか status(getid(GET_FROMPOINT_OBJ), ST_CLASS) : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 14:41:16.43 :Sfxs7E+C0 なるほど、ペイントは確認のために使っただけで実際は違うプログラムの操作を行っていると とするwindows updateの前にペイントにマウス、キー情報を直接送れてた訳ではない感じか ペイントの場合だけどAfx:以下が変わるのであれば、固定されている所から取得するように作ってみた getallwin(hndtoid(getctlhnd((getid("ペイント")),"MSPaintView"))) id = hndtoid(getctlhnd((getid("ペイント")),status(ALL_WIN_ID[0],ST_CLASS))) //ALL_WIN_ID[0]は子ウインドウ1個の場合なので考慮が必要かも : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 15:32:41.78 :owIcRGV/0 指定したアドレスをchromeで開くのにSENDSTRを使って、 F6 SENDSTR(ID,"アドレス",1,True,True) RETURN で試してみたのですが、まずF6を押して、そのままENTERを押してしまっているようです。 IDはChomeになってるし、アクティブにもなっています。Windows7です。 誰か解決方法教えていただきたいです。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 16:01:45.54 :Sfxs7E+C0 エスパーするとid取得が出来てない 本家サンプルの path = "C:\xxxx\Application\chrome.exe" id = Exec(path + " --force-renderer-accessibility --process-per-tab --new-window ttp://www.google.co.jp/") この形だとidに-1が返ってきてid取れないから id = GETID("Google","Chrome_WidgetWin_1") Chrome開いたあとあらためてid取得しないとダメ : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 16:27:05.55 :owIcRGV/0 chromeっていいましたが、実際はchromiumというブラウザです、すいません。 いつもはchromiumを開いた後にマクロを開始して、一行目に ID = GETID("Chromium") としてやっているのですが、なんせ知識が全くないもので合ってるのかわからないのですが。 そもそもGETID("Chromium")では取得できてないですか? : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 16:56:12.75 :Sfxs7E+C0 idが取得できたか知りたいときは ID = GETID("Chromium") print ID で-1が返ってきた時は取得できてない(通常は1とか2とか) chromiumを使ってないから分からないけど、仮にChromeと同じ感じだとして google( ttp://www.google.co.jp/ )を開いている時のid取得は ID = GETID("Google") クラス名を指定していないから、googleと言うタイトルのプログラムがあれば そちらを拾ってくるかもしれない : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 17:15:57.62 :owIcRGV/0 1が反映されました。 IDが取得できているのなら、SENDSTRのところが間違ってるのかもしれませんね。。。 SCKEY(ID,VK_F6) SENDSTR(ID,"http〜",1,True,True) SCKEY(ID,VK_RETURN)でできないです。 ちなみに、SENDSTRでアドレスをクリップボードに置いて、それを張り付けて移動ということはできました。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 17:40:38.71 :owIcRGV/0 連続してすいませんが、 SENDSTR(ID,"http〜”)で行うと、文字を一文字ずつ打ち始めました。 エディトコントロールとかいうのがポイントかもしれません。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 19:07:48.26 :Sfxs7E+C0 うーん、わからない Chromeだとgoogle開いておいて id = getid("Google",,-1) sckey(id,VK_F6) sendstr(id,"ttp://anago.2ch.net/test/read.cgi/software/1367340336/",0,True,True) //第3引数はF6押してフォーカス持っているので sckey(id,VK_RETURN) これで行けるんだけどな : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 22:56:05.22 :2n9SW1AO0 日々、コピー&ペーストで確認する作業に疲れてしまい UWSCの導入を考えています。 IDを複数所有していまして、順番にサイトにログインして確認する作業を自動化、ルーチン化したいのです。 例えば ID1 ID2 〜 ID50 とIDが50個あり、これをサイトのログインページに自動でログインさせ、表示されたページの特定の数字を.txtなどにID毎に出力をさせたいのですが UWSC コバヤシ式とかいうサイトを見ればできるようになりますか? このようなスクリプトはだいたい既にネット上に落ちているスクリプトをパズルのように組み立てていくと聞いたのですが、 初心者の自分には左も右もわからない状態です。 おすすめの参考サイトなどありましたら教えて下さい。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 23:48:45.77 :XkK8E4tQ0 : 753 [sage] 2013/12/14(土) 23:48:55.79 :Sfxs7E+C0 訂正します >id = Exec(path + " --force-renderer-accessibility --process-per-tab --new-window ttp://www.google.co.jp/") >この形だとidに-1が返ってきてid取れないから Chromeが一つも開いていない状態で実行するとidが取得出来ました Chromeがすでに開いてい状態で(新たにChromeを開く形で)実行すると-1になりました : 名無しさん@お腹いっぱい。 [sage] 2013/12/15(日) 01:19:41.34 :0Dfj/ivV0 楽勝でできる。構文がわかれば10分もかからずに作れる。 構文を学ぶにはをどうぞ。無料だ。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/15(日) 01:27:34.61 :BKUUjItg0 文脈的に単一のサイトに50のIDと読めるがなんだろうな およそまともとは言いがたいだろうと想像してしまうが、どうでもいいことか : 名無しさん@お腹いっぱい。 [sage] 2013/12/15(日) 11:00:26.79 :5waI6v/O0 ちなみに何のID? 簡単なら作ってみるよ!! : 名無しさん@お腹いっぱい。 [sage] 2013/12/15(日) 11:25:36.22 :XL6gRW5r0 RecIE : 名無しさん@お腹いっぱい。 [sage] 2013/12/16(月) 13:36:49.49 :P1CceyfHi ぶっちゃけた話なんですけど、コバヤシ式のサイトに書かれてることとか、 本に書かれていることってあまり上級な内容ってないですよね? 悪口は言いたくないんですけど、あのサイトなり本なり読んで「上級」って 書かれてることは、ちょっと学べば誰でもすぐにできると思うので、 初級〜中級のように感じました。中級を上級と言われると、勘違いしてしまう のが嫌ですね…。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/16(月) 17:49:49.07 :1XaQBdMT0 明確な資格試験が無い以上 自称上級者や勘違いなんて主観の問題なんだよ 他人に主観を押し付けている時点で同類になるから 思うだけにしとけ : 名無しさん@お腹いっぱい。 [sage] 2013/12/16(月) 20:20:54.24 :zXajPP3R0 いままでは PRINT ("ブラウザ再起動開始") 画像A = CHKIMG("画像A.bmp") IFB CHKIMG("画像A") = 1 PRINT ("画像A検知有無: " + 画像A) PRINT ("画像A画像座標: " + G_IMG_X) PRINT ("画像A画像座標: " + G_IMG_Y) MMV (G_IMG_X + 450, G_IMG_Y) SLEEP (2) BTN (LEFT, CLICK) KBD (VK_F5, CLICK, 50) PRINT ("リロード実行") PRINT ("トップ画像検知スタート") 画像B = 0 LOOP_COUNT = 0 WHILE 画像B = 0 SLEEP (1) 画像B = CHKIMG("画像B.bmp") PRINT ("TOP画像検知: " + 画像B) LOOP_COUNT = LOOP_COUNT +1 PRINT ("LOOP_COUNT: " + LOOP_COUNT) IF 画像B = 1 THEN BREAK IFB LOOP_COUNT = 30 PRINT ("ERROR: 画像B NOT FOUND ") PRINT ("ブラウザ再起動失敗") っで問題なく動いてましたが 最近は複数のエラーが多発のため画像を2つ追加して対策したいと思ってます 『新規画像1を感知した場合、新規画像2を左クリック』←追加したい 新規プログラムを以前のプログラム先頭にして 新規画像1を感知しない場合は以前のプログラム通り動いて欲しいと考えてます ご教授 宜しくお願いします : 名無しさん@お腹いっぱい。 [sage] 2013/12/16(月) 21:16:26.16 :jp57wvxR0 >『新規画像1を感知した場合、新規画像2を左クリック』←追加したい 簡単だよ。既存のそのプログラムからも学べるし、のサイトを参考にしてもいい。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/16(月) 23:20:45.53 :zXajPP3R0 さん 是非とも新規プログラムを以前のプログラム先頭にして 発見時は新規プログラム実行後、以前のプログラムへ以降する書き方を 教えていただきたいです プログラム自体を教えて頂きたいのです 参考サイトの伝授は いま現在はパスです ありがとうです : 名無しさん@お腹いっぱい。 [sage] 2013/12/17(火) 00:01:09.71 :b9ycVjHg0 sute.jp のログインスクリプト作ってたらアクセス拒否食らった。 作成済みのアカウントにログインは出来るけど新規が作れない。 アカウントは24時間で無効になるから・・・オワタ 以前、ログインを試行錯誤してたことがあったけどそん時は大丈夫だった。 ログインは今も可能なことを考えると、パスワードミスとかで何度も試行することは許容されるのか。 それとも作成できるアカウントの数に制限があるのか。 めんどっちいから成功失敗関係なく通しで処理したのがいけなかったのかな。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/17(火) 07:46:44.96 :zvnFUH9g0 5万といいたいところだが3万でいいよ : 名無しさん@お腹いっぱい。 [sage] 2013/12/17(火) 22:03:14.47 :YitmULdvi 「スクリプトを組む能力」と「数学的に考える力」は別物と考えて いいんですかね?例えばfor〜next、repeat〜until、while〜wend を多用したスクリプトを見て、「この実行結果はこうなるだろう」って すぐに予想できるのは数学的な力が高い人だと思うんですけど、 プログラムを組む際にそういう力って重要なんでしょうか? (無関係ではないのはわかるんだけど、ここで聞きたいのは 「重要かそうでないか?」ということ) : 名無しさん@お腹いっぱい。 [sage] 2013/12/17(火) 22:51:27.35 :CVky9ZRf0 数学的なのかは知らんが 実装したい手続きを抽象化してグループ分けする力とか そういうのであればあった方が楽なのは確かだよ でもそれって別にUWSCに限った話じゃないしな : 名無しさん@お腹いっぱい。 [sage] 2013/12/17(火) 22:55:50.33 :8wRZFCri0 数字の認識力について、か。 お題としては数学と言うよりは算数だし、重要ではないかな。 その辺りの話なら算数よりもロジックの積み重ね方や閃きの方が重要。 しかし、ループで複数行を使えば実現は可能だが、ある計算式、公式を知っていたらたったの一行で済むということはたまにある。 可読性、バグの発生、メンテナンス性が上がるという点で、重要と言える。 でもUWSCに限らない話だな。プログラミング雑談スレ part836に逝ってよし : 名無しさん@お腹いっぱい。 [sage] 2013/12/18(水) 03:16:38.99 :fCfq0HiW0 ・組む能力 言語的熟語力です。 ・ループを数式に 中高レベルの数列です。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/18(水) 18:43:01.84 :/RT+wXEhi スケジュール設定で、「条件が満たされていなければ実行」 「満たされていたら実行しない」みたいな設定ってできないですよね? 例えば毎時間、「今日はノルマの腕立て伏せ50回しましたか?」っていう 確認メッセージが出てくるとして、「はい」を押したらそれ以後は出てこない (明日になったらまた出てくる)。「いいえ」の場合は、「はい」が押されるまで 24時まで毎時間出続ける…という形にしようと思ったら、 スケジュール設定ではなく、sleepでやるべきなんでしょうか。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/18(水) 19:01:35.73 :anX/Ell/0 条件は実行するスクリプト内で判断すればいいのでは 「実行後、条件が満たされていなければ続きの処理」 「実行後、条件が満たされていれば何もせず終了」 : 名無しさん@お腹いっぱい。 [sage] 2013/12/18(水) 19:52:17.97 :jglqda+X0 これじゃなきゃダメなんてルールはないし自分でやりたいようにやりゃいい スリープでやろうが次官取得なり何らかの条件付けでやろうが思った通りの動作してくれりゃ自分で使うにはなんの問題もないだろ : 名無しさん@お腹いっぱい。 [sage] 2013/12/18(水) 23:15:26.77 :fhnY0MBu0 以前、公式掲示板でUWSC.INIを直接書き換えてスケジュール設定する方法を 考えている人がいたな ポイントは、UWSC.INI書き換え後UWSCを再起動しないと設定が適応されないらしい 興味があれば、(公式掲示板直リンしてもいいのかわからないのでgoogleで 「UWSC.INI ある条件となった際にスケジュールを設定する方法」で検索して)該当スレを探してくれ 一応書いておくけどUWSC.INI壊すと、当然設定壊れるから慎重に、最悪誤動作の可能性もある わからなければスルーが吉 : 名無しさん@お腹いっぱい。 [sage] 2013/12/18(水) 23:28:13.03 :jglqda+X0 再起動なんてしなくても適用されるだろ iniへの上書きだけで変数変えてないとか逆にiniだけ書き換えて再読み込みしていないとかポカしてるだけじゃね? 少なくとも俺が試した限りでは再起動なんて必要ない そもそもUWSC.INIで設定する必要も・・・ : 名無しさん@お腹いっぱい。 [sage] 2013/12/18(水) 23:31:15.75 :Y1sO7Jhr0 いにじゃなくてつくりこもうよたのしもうよ : 名無しさん@お腹いっぱい。 [sage] 2013/12/18(水) 23:42:36.21 :OKj70rsb0 起動するのに、Windows標準装備のタスクスケジューラを使うのは、このスレではご法度なの? : 名無しさん@お腹いっぱい。 [sage] 2013/12/18(水) 23:43:14.59 :I35zS+P70 iniを屠るのもそれはそれで楽しそうだな スクリプトはsleepで待って、PC自体はWindowsのスケジューラでスリープから復帰ってしてるな そんで処理が終わったらPCもスリープに入る の繰り返し : 名無しさん@お腹いっぱい。 [sage] 2013/12/18(水) 23:50:27.90 :fhnY0MBu0 そうなのか、いつか使おうと思って覚えていただけなので 教えてくれてありがとう。 の場合はsleepで待機しての通り条件判断するか、 状態記録するファイルを用意してインターバルで1時間に一回起動 条件判断がいいかもしれないね の言う通り : 名無しさん@お腹いっぱい。 [sage] 2013/12/19(木) 00:09:01.59 :ijTdWfFs0 その方法もあり : 名無しさん@お腹いっぱい。 [sage] 2013/12/19(木) 07:55:43.11 :fN2y80zU0 色々突っ込もうと思ったがが結論出してた 例えば数万行のテキスト処理方法を議論してる中で 正規表現使えよみたいな効率化観点ではない時点で 結局はどういう方面でアプローチしていくかの次元でしょって事 : 名無しさん@お腹いっぱい。 [sage] 2013/12/19(木) 16:00:23.94 :ihCKETXj0 俺なら各スクリプトを制御するマスタスクリプトを走らせるな 何らかの出来合いのもので管理するということは、 その出来合いのものが想定した枠内でしかスケジュールが組めない。 ましてや、サブスクリプトの実行結果をマスタプログラムが見て、 スケジュールを条件分岐させることは不可能だろう。 たとえば二日間連続で実行して次の三日間は実行しない、 なんてパターンはどのスケジューラも既定で持っていないパターンだろう。 スクリプトなら、年間積算日を返す関数などを作っておいて、 ( DayOfYear() MOD 5 ) < 2 で判定できるわな。 サブスクリプトの実行結果をマスタに送信するには、 単にグローバル変数を使ってもいいし、 既存のINIファイル命令を介してもいいだろう。 マスタスクリプトの信頼性に自信がないなら、 自分が活動中であることを示すため、 レポートを好きな形式でログに出してもいいし FUKIDASIで表示してもいいだろうし、 コマンドライン対応のタイニーメールサーバでメール報告させてもいいだろう。 それらを介して外部ツールがマスタスクリプトの生存確認を行い、 生存か確認できなければUWSCの全プロセスを強制停止して再起動すれば良い。 したがって、既存のスケジューラで十分な、単純なスケジュールなら、 マスタスクリプトの製作の手間を省く意味でのみ、既存のものを使い、 そうでないなら、姑息な裏ワザなど追求せずに、マスタスクリプトを書けばいい。 まぁあくまで個人の感想ですが。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/19(木) 16:48:06.28 :2jFgW9wG0 すいません IE.document.body.innerTEXTを取得してprintできるサイトと できないサイトがあります。この違いは何でしょうか? : 名無しさん@お腹いっぱい。 [sage] 2013/12/19(木) 17:37:40.84 :rL44yr4d0 <BODY>が有るか無いか。フレームだけのページなどは<BODY>が無い または サイトの応答が遅いのに、IEの読み込み完了待ち処理をせず、sleepで時間を決め打ちしてるなど : 名無しさん@お腹いっぱい。 [sage] 2013/12/19(木) 18:09:20.16 :2jFgW9wG0 どっちも大丈夫です 何が悪いんでしょうか : 名無しさん@お腹いっぱい。 [sage] 2013/12/19(木) 18:53:24.29 :rL44yr4d0 「エラーが出る」 それとも 「有効な文字列が返ってこない」 どっちなの? サイトのURLは出せないの? : 名無しさん@お腹いっぱい。 [sage] 2013/12/19(木) 23:44:28.88 :2jFgW9wG0 例えばこういうページです 社名とか住所とか抽出したいって思った時に出来なかったので ttp://townwork.net/detail/Fh30010s_lac_01_rid_15469519_axc_40/ ttp://townwork.net/detail/Fh30010s_lac_01_rid_15474704_axc_40/ : 名無しさん@お腹いっぱい。 [sage] 2013/12/20(金) 00:36:11.40 :TwwIyG9Q0 問題なし : 名無しさん@お腹いっぱい。 [sage] 2013/12/20(金) 00:45:46.49 :+ZuJ2gew0 SLEEP(1) SENDSTR(0,IE.document.body.innerTEXT) SLEEP(1) txt=GETSTR(0) SLEEP(1) company=BETWEENSTR(txt,"企業情報・お問い合せ先","住 所 :") sleep(1) print company これでもならないんです : 名無しさん@お腹いっぱい。 [sage] 2013/12/20(金) 00:58:43.63 :cky2JDef0 できたけど IE.Document.body.innerTEXT IEGETDATA( IE, "TAG=body" ) どっちでもできる。 BETWEENSTRで失敗してるだけ。 ”住 所:” ○ ”住 所 :” × エディタで検索したら一発 : 名無しさん@お腹いっぱい。 [sage] 2013/12/20(金) 00:59:23.43 :TwwIyG9Q0 所 と : の間に余計なスペース文字が1つ入ってる SendStr(Exec("notepad"), txt, 1, true) してtxtを確認すべき : 名無しさん@お腹いっぱい。 [sage] 2013/12/20(金) 01:31:06.35 :+ZuJ2gew0 ありがとうございました。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/20(金) 08:28:35.22 :n6HVXl8p0 こういう住所や電話番号などの絡みは テキストを一旦、全角か半角に統一・余計な空白削除・括弧類削除 ーを-に修正etcを統一で行う変換関数を作っておくと便利 : 名無しさん@お腹いっぱい。 [sage] 2013/12/21(土) 12:33:38.88 :7c2sTaTH0 CHKIMG関数の座標なんですがデスクトップの座標をしている為、 他のPCで使用すると座標がずれてしまいます。 起動しているアプリ上の座標を指定するにはどうしたらいいでしょうか? : 名無しさん@お腹いっぱい。 [sage] 2013/12/21(土) 12:43:15.73 :av9VbQcF0 mouseorg : 名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 03:04:59.42 :8CS1lk/R0 すいません uwscでcsvに出力したいんですが、 セルを指定して出力することは出来ますか? A1なら会社名、B1なら住所、C1なら電話番号みたいな感じで : 名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 04:00:41.45 :DeAG8fOO0 エクセルオブジェクト : 名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 08:50:17.39 :TPfcNBRBi comオブジェクト、createoleobjとかgetactiveoleobjでExcel作って、 Excel.range("a"+n).value=kaisya とかで。コバヤシさんのサイトに触りは書いてる。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 09:29:07.73 :DeAG8fOO0 そういえばCSVなら便利な関数あるじゃん : あぼーん [あぼーん] あぼーん あぼーん : 名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 11:54:34.35 :8CS1lk/R0 FPUT(fid,company+address+tell,3,3) これでやると companyが3行目の3列目C3 addressがA4 tellがA5って感じになっちゃいます 列に隣り合って出力したいんですが・・・ 例:A1=company B1=address C1=tell : 名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 12:35:12.55 :r78nVN2p0 FPUT(fid, company, 10, 1) //10行1列のセルにcompanyを書き込む FPUT(fid, address, 10, 2) //10行2列のセルにaddressを書き込む FPUT(fid, tel, 10, 3) //10行3列のセルにtelを書き込む : 名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 12:42:16.01 :bWx3fLwv0 HELPよく読んでなくてFPUTの引数を間違えてるだけか… 実際のテキストがどうなってるかCSVをテキストエディタで開いてすらいないだろうな。 FPUTになまじ列対応機能とかあるのが裏目に出たな。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 13:28:59.09 :8CS1lk/R0 やってるんだけど、出来ないんです 10,1=A10 10,2=B11 10,3=C12 に出力されちゃうんです : 名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 14:06:39.78 :DeAG8fOO0 >10,1=A10 >10,2=B11 >10,3=C12 バグじゃん、開発に報告よろ : 名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 14:10:55.09 :r78nVN2p0 UWSCのCSV機能は中途半端だから、改行やダブルクオートを含んだ文字列だと、正常なCSVにならないよ。 FPUTのCSV機能使わずにやるか、EXCEL/Calc経由でやるかだね : 名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 16:13:29.81 :2PGvt7Kg0 事前に文字列編集してから、FPUTすればいいような : 名無しさん@お腹いっぱい。 [sage] 2013/12/23(月) 00:19:37.24 :AYjBzUmf0 まぁ俺もFPUTの列機能なんて使ったことなくて、 単に FPUT(fid, company + "," + address + "," + tell) ってやってるだけだけどね。 だからさ その出力されたCSVをテキストエディタで開いてみたかい? CSVというのはそもそも何なのかぐぐってみたかい? 出力されちゃうんです、じゃねーよw : 名無しさん@お腹いっぱい。 [sage] 2013/12/23(月) 00:44:54.61 :qo4dX5M80 テストコード書いたよ F_READ or F_WRITE を指定するのが普通だけど それだと前回書いた 4:3 の ”3” が残っちゃって分かりにくいんで。 [test_13_018.uws] filename = replace( GET_UWSC_NAME, ".uws", ".csv" ) FID = FOpen( filename , F_WRITE ) FPut( FID, "a,b,c", 2 ) FPut( FID, "1", 3, 1 ) FPut( FID, "2", 3, 2 ) FPut( FID, "d,e,f", 3, F_INSERT ) FPut( FID, "3", 3, 3 ) FPut( FID, "g,h,i" ) FClose( FID ) DOSCMD("notepad " + filename) [test_13_018.csv] a,b,c d,e,3 1,2 g,h,i : 名無しさん@お腹いっぱい。 [sage] 2013/12/23(月) 01:56:25.79 :JSLVoiAW0 ちゃんとした利用法なら十分な利用性のある関数でしょ 読み書き、蓄積、なんでもござれだよ : 名無しさん@お腹いっぱい。 [sage] 2013/12/24(火) 05:03:39.84 :hIhyC3Zn0 バグなのか ならしょうがないな : 771 [sage] 2013/12/24(火) 06:13:49.26 :4ztCQIgc0 sute.jp は、1日あたり5〜10のメアドが使えるらしい。 それ超えると新規作成を拒否される。 たかがログインするだけのものが意外とでかくなった。 ttp://scripts.web.fc2.com/scriptsup/sute.zip ↑のスクリプトで fukidasi() をスレッドで呼び出そうとしたらなぜか死ぬほど遅くなる。 スクリプト全体が遅くなる。 IEのイベント登録したのが関係あるのかな。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/24(火) 12:35:31.69 :+HAhVDeGi 途中まで書いたけど、そこで断念して放置したまま3ヶ月以上死蔵している スクリプトっていくつくらいあります? : 名無しさん@お腹いっぱい。 [sage] 2013/12/24(火) 14:22:13.79 :MMX97s2G0 module構文なんて使わないから面白かったわ。 変数のスコープをmodule内に限定できるみたいだから便利だね。 コレ使えばよかったわってのが手持ちに沢山あるな… ところで GetTime() date = eval(G_TIME_YMD) time = eval(G_TIME_HMS) // YMDとHMSを同時に処理できない こういうのは凝ったことせず素直に function getDateAndTime(var date, var time) で良くね? ログ出力はFPUT使ってるけどバッチファイル方式かw Function GetWindowTitle( ID ) に status(id, ST_TITLE) 使わないのは何故 > fukidasi() をスレッドで呼び出そうとしたらなぜか死ぬほど遅くなる myfukidasiの中でthreadで更に呼び出して 2〜3秒後に自動的に消える投げっぱなし方式のfukidasiにしたかったとか? 即席でテスト書いてみたけど特に怪しい動きはしなかったよ。 試しに1000個生成しようとしたら64個制限エラーが出て生成できなかったし 64個ではCPU使用率に変化殆どなし。 ただし、試しにスレッドごとにIEオブジェクト生成させてみたら、 20個ぐらいから遅くなり始め、MAX64個生成したら俺の4コアマシンでも応答なしになって UWSCを強制終了するのに数分かかってしまったよ。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/24(火) 14:23:01.20 :MMX97s2G0 げ、UWSC強制終了してもIEのプロセスが64個残ったままだわw : 名無しさん@お腹いっぱい。 [sage] 2013/12/24(火) 17:42:22.81 :4ztCQIgc0 やりたい事と出来る事を突き合わせて作るので未完成と言うのはあまりないけど数は分からない。 他の言語なら未完成があるよ。 UWSCの場合は”出来なかった”と言う確認の積み重ねがほとんどだと思う。 結局、UWSCで出来る事を確認するためのテストコードを大量に書く事に。 動いたコードをGrepで探してコピペだから、一旦動けばずっと使える。 まあ、可能な事なら完成するまでつぎ込める時間があるです。 だけど、Web使うものはWebサイトが閉鎖されたり、仕様が変更されたりした時点で動かなくなって放置なんで 大抵のものが死蔵になってるかな。 gooメールとかメール確認すらなく登録できてたのに・・・ G_TIME_ って GetTime() を呼び出したスコープでしか使えない。 G_TIME_ を使えば、GetTime() の1回の呼び出しでいろいろ自由にできる。 自由に指定できる関数を作ると言う手もあるけど・・・自由度が増せば複雑度が上がる。 > status(id, ST_TITLE) 使わないのは何故 存在を忘れてた。いや、マジで。 WindowsAPIを使いたい中二的意味もあるかも。 > 2〜3秒後に自動的に消える投げっぱなし方式のfukidasiにしたかったとか? そうそう。 スレッドはこういうときに便利に使えるはずなんだけどなぜか重くなっちゃって。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/24(火) 18:17:50.49 :MMX97s2G0 > G_TIME_ って GetTime() を呼び出したスコープでしか使えない。 関数の中でGETTIMEを呼び出してG_TIME_を元に加工した値を返せばいいでしょ。 俺はG_TIME_みたいなシステム変数をメインルーチンの中では一切触らずにやってるよ♪ for id=0 to 65 myfukidasi("thread myfukidasi id:"+id, 3+id) next sleep(10); exitexit procedure myfukidasi(str, wait) thread threadMyFukidasi(str, wait) fend public _staticMyFukidasiId=0 procedure threadMyFukidasi(str, wait) fukidasi(str, _staticMyFukidasiId*20, _staticMyFukidasiId*30) _staticMyFukidasiId=_staticMyFukidasiId+1 sleep(wait); fukidasi("") _staticMyFukidasiId=_staticMyFukidasiId-1 fend この_staticMyFukidasiIdもmoduleで外から隠せるのでそのうち使いたいと思ふ : 名無しさん@お腹いっぱい。 [sage] 2013/12/24(火) 23:02:17.66 :q5yMpqMO0 UWSC 画像判定と条件分岐について質問です どうか宜しくお願いします 1.画像Aがあるか判定する 2.画像Aがあれば、画像Bをクリックする 3.画像Aなければ、いままで使ってるリロード処理を行う 画像A判定→画像Bクリック 以下 いままで使っているリロード処理 IFB ZZ_reload = 1 ZZ_reload = CHKIMG("ZZ.bmp") PRINT ("リロード画像を検出" + ZZ) PRINT ("リロード画像横軸: " + G_IMG_X) PRINT ("リロード画像横軸: " + G_IMG_Y) MMV (G_IMG_X + 5,G_IMG_Y + 5) BTN (LEFT,CLICK) SLEEP (2) BREAK ENDIF IFB LOOP_COUNT = 5 PRINT ("リロード画像無し") BREAK ENDIF 困っています 是非お願いします : 名無しさん@お腹いっぱい。 [sage] 2013/12/24(火) 23:40:02.05 :m3X1dCwI0 .画像Aがあるか判定する これがまず出来てないじゃん IFB CHKIMG("A..bmp") 画像があるときの処理(画像Bをクリックする) ELSE 画像がないときの処理(いままで使ってるリロード処理) ENDIF : 名無しさん@お腹いっぱい。 [sage] 2013/12/24(火) 23:46:14.16 :aJSnW0Lh0 : 名無しさん@お腹いっぱい。 [sage] 2013/12/25(水) 22:08:16.14 :ns18OXLs0 //1.画像Aがあるか判定する 判定A=CHKIMG... //2.画像Aがあれば、画像Bをクリックする IFB 判定A THEN //画像Bをクリック ELSE //3.画像Aなければ、いままで使ってるリロード処理を行う //リロード処理 ENDIF こんなの今や義務教育らしいじゃん? : 名無しさん@お腹いっぱい。 [sage] 2013/12/26(木) 03:17:20.66 :WuxhXLR9i 自分のプライベート用に作ってるプログラムってどんなのあります? 俺はスケジュール管理系ばかり。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/26(木) 08:24:35.33 :QuoI/O7E0 IEと相性良いんで、ネット活動の自動化や一括化やね。 (アフィ)サイトの自動更新、テキスト整形(innerHTML連携で便利なんで) ブラウザPCゲームの自動稼ぎ、一括登録系、一括POST系、一括メール送信 あとはAPI提供が無いサイトからデータ蓄積・抽出botみたいなスクレイピング。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/26(木) 09:42:55.81 :HQsDpckn0 SAVEIMGで保存された時の画像名なんだけど 同じフォルダにその名前のものがあったら違う名前を自動でつけるのってどうすればいいんだ? : 名無しさん@お腹いっぱい。 [sage] 2013/12/26(木) 10:57:51.05 :OI9DnE6z0 basename = "hoge" extname = ".bmp" suffix = "" for i=1 to 10000 filename = basename + suffix + extname if FOPEN(filename, F_EXISTS)=false then break suffix = "(" + i + ")" next if i>10000 then MSGBOX("ファイル多過ぎ") SAVEIMG(filename) : 名無しさん@お腹いっぱい。 [sage] 2013/12/26(木) 11:11:28.23 :OI9DnE6z0 とりあえず上書きされなければいいのなら def_dll GetTickCount(): dword: kernel32.dll SaveImg("hoge " + GetTickCount() + ".bmp") : 名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 00:25:18.14 :RRJWn5gn0 このバグの回避方法教えてください Excel出力は有料じゃないと使えないので無料のcsvでなんとだめなんです : 名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 00:44:46.07 :rgUl75St0 指定通りに出力されるみたいだけどどのあたりがバグなの? : 名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 00:47:08.07 :cb+pHm6l0 頭 : 名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 00:49:13.78 :RRJWn5gn0 されてないじゃん : 名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 00:55:58.66 :RRJWn5gn0 ごめん されてたわ 忘れて : 名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 01:38:32.81 :O962ZiXx0 イラくるなあ : 名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 06:30:55.19 :pqunq3290 バグがある機能は使わない。 直された後でさえ、かつてバグがあった機能は使わない、永遠にだ。 この程度の開発体制のスクリプトに期待を持つな、不当な期待だ。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 10:32:38.11 :muE0Qsfli スクレイピング時の疑問なんですけど、例えば 単語1/単語2/単語3/単語4…単語155 とかってあったとして、単語の文字数も一定ではなく、単語の項目も一定ではない時に、「山」「川」「谷」「田」のどれかを 含む単語だけ抽出したい、っていう場合ってあっさりしたコード記述では難しいですよね?山川…の漢字も4つとかでなく、100以上あるような場合は 結構難解なコード書くしかありませんかね? あと、入力をした数字によって表示される文字列を変えるコードを書く時、今は Dim moziretu[99] test=input("testに数字を入力") select test case 0 ;print moziretu[0] case 1 ;print moziretu[1] case 2 ;print moziretu[2] … case 99 ;print moziretu[99] selend と律儀にやってるんですけど、例えばこれを select test case test ;print moziretu[test] selend みたいにするのはできないんですかね?? さっき試してみて、どちらも撃沈したやつなので、簡略化できる方いたら教えて下さい。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 10:37:49.70 :5l7CgQ1V0 配列を使うかcsvのように区切り文字を使って抽出する範囲を判別させる : 名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 11:00:22.31 :+NM9ZlC40 s = "池本/桜井/中川/釜田/安永/川本" re = CreateOleObj("VBScript.RegExp") re.Pattern = "[^/\s]*[山川谷田][^/\s]*" re.Global = true m = re.Execute(s) for i=0 to m.Count-1 print m.item(i).Value next MsgBox("END") : 名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 12:28:09.90 :cb+pHm6l0 やっぱ正規表現か。だよな。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 14:45:01.00 :uj3SuZ7Y0 質問番号でもつけろよ。 前半の質問 正規表現が最も有効だが 使わないなら、検索対象単語配列の各要素に対して検索語配列の全要素を検索する2重ループにする。 もちろん低速。とはいえ100*100程度なら数秒じゃないか? コードとしてはあっさりしたものになるぞ。 後半の質問 test=input("testに数字を入力") IF CHKNUM(test) THEN print moziretu[test] ではなくSELECTしてる理由は? : 名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 23:36:04.82 :RRJWn5gn0 すいません。URLパターンが ttp://*******@ttss のみを絞るときはどうすればいいですか?↓だと全URLが出てしまいます re.Pattern = "https?:\/\/[-_.!~*'()a-zA-Z0-9;\/?:\@&=+\$,%#]+" : 名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 23:38:23.09 :RRJWn5gn0 事故解決しました : 名無しさん@お腹いっぱい。 [sage] 2013/12/28(土) 00:45:40.44 :n/FJjJDP0 ttp://anago.2ch.net/test/read.cgi/software/1278083626/876 というのをUWSCでやってみた。 最初 (1) を作ったんだけど3つのプロセスのうちひとつしか設定されないうえに タスクマネージャーから開くと権限が書き換わってエラーが出るようになった。 管理者権限でタスクマネージャーを起動すれば見れたけどそんなのあほらしいんで (2) を試してみたらしたらうまく行ったんだけど、これだと start コマンドでやっても同じだなあと。 (1) ID = exec(program) Hnd = OpenProcess( PROCESS_QUERY_INFORMATION or PROCESS_SET_INFORMATION, TRUE, STATUS( ID, ST_PROCESS ) ) SetProcessAffinityMask( Hnd, 5 ) CloseHandle(Hnd) (2) Hnd = GetCurrentProcess() SetProcessAffinityMask( Hnd, 5 ) exec(program) CloseHandle(Hnd) // 定義部分 DEF_DLL GetCurrentProcess(): hwnd: kernel32 DEF_DLL OpenProcess(dword, bool, dword): hwnd: kernel32 DEF_DLL GetProcessAffinityMask(hwnd, var dword, var dword): bool: kernel32 DEF_DLL SetProcessAffinityMask(hwnd, dword): bool: kernel32 DEF_DLL CloseHandle(hwnd): bool: kernel32 public PROCESS_DUP_HANDLE = $0040 public PROCESS_SET_INFORMATION = $0200 public PROCESS_QUERY_INFORMATION = $0400 program = "C:\Users\xxx\AppData\Local\Chromium\Application\chrome.exe" : 名無しさん@お腹いっぱい。 [sage] 2013/12/28(土) 02:02:25.47 :ZNYh/MSX0 数分間、又は数回画像認識できない場合F5を押して途中で見つかったらまた繰り返す処理をしたいのですがどうすればいいでしょうか While True ifb CHKIMG("画像A",0) x=G_IMG_X y=G_IMG_Y btn(left,click,g_img_x,g_img_y) MMV(x+50,y+50,0) sleep(3) //B,D,E,F画像で同じ回数chekimg endif //個数分書いてます IFB chkimg("画像1.bmp")=true THEN ifb CHKIMG("画像2.bmp",0) x=G_IMG_X y=G_IMG_Y btn(left,click,g_img_x,g_img_y) MMV(x+50,y+50,0) sleep(3) endif REPEAT // chekimg数回 UNTIL chkimg("画像3")=true endif wend このような感じです : 名無しさん@お腹いっぱい。 [sage] 2013/12/28(土) 02:57:30.35 :n/FJjJDP0 ほれ どう考えてもperiodに達しないけど dim 秒数 = 60 dim 回数 = 3 dim 画像リスト[] = "画像A", _ "画像B", _ "画像C", _ "画像D" while true // 内while終了条件をリセット period = gettime(秒数/24/60/60) // ループ終了条件1 予定時刻 count = 0 // ループ終了条件2 予定エラー回数 while gettime() < period for i = 0 to length(画像リスト) - 1 // 必要な個数分繰り返し ifb !chkimg(画像リスト[i]) count = count + 1 // なかった回数をカウント else // あったらやり直し? continue 3 endif sleep(0.1) next if 回数 < count then break sleep(1) wend KBD(VK_F5) wend : 名無しさん@お腹いっぱい。 [sage] 2013/12/28(土) 13:40:44.79 :KkqSZHRk0 URLリストからブラウザでIEを起動せず、情報を入手したいんですが それってできますか? : 名無しさん@お腹いっぱい。 [sage] 2013/12/28(土) 14:14:52.97 :VkYFC1vS0 つ Microsoft.XMLHTTP : 名無しさん@お腹いっぱい。 [sage] 2013/12/28(土) 14:16:52.56 :pthmA2h10 可能だよ でも結局ブラウザに類するオブジェクトを内部的に作成して〜って流れになるよ 参考URL ttp://siromasa.digi2.jp/uwsc/u_term/MSXML.html : 名無しさん@お腹いっぱい。 [sage] 2013/12/28(土) 18:11:24.19 :Sm1OlDTO0 IE8以降ならHTML独自仕様ほとんどないから Safari,Chromeあたりと同じ位置づけでいいんじゃない? : 名無しさん@お腹いっぱい。 [sage] 2013/12/28(土) 18:24:57.67 :J11FVOKU0 ChromeもCOM的に操作できたら捗るんだけどなぁ。 : 840 [sage] 2013/12/29(日) 07:34:58.06 :qF357mkgi 返事遅くなりました。 ありがとうございます!正規表現調べて自分のものにします。 参考にさせてもらいます。 VBScriptとか全然触れたことがなかったけれど、コードを見る限り、 全く手が届かないものでもなさそうなので、そちらも調べてみます。 質問番号は確かに。以後気をつけます。 >>検索対象単語配列の各要素に対して検索語配列の全要素を検索する2重ループにする これって「自分が予想できる要素のみで構成されている場合において有効」なもの ではないでしょうか?例えば「単語が100あり、その中に全ての常用漢字が使われる可能性がある」 というような場合、コードを書く時かなりしんどくないでしょうか? CHKNUMは触ったことがなく、用途も知りませんでしたが、確かにそれならいけますね。 勉強になりました。ありがとうございます! : 名無しさん@お腹いっぱい。 [sage] 2013/12/29(日) 13:23:07.10 :y3E8xddb0 スクレイピングと言ったのだから対象要素が不定という要求仕様があるということは 言わなくても判るものだ、というつもりだったのかな? VBScriptも正規表現も使ったことないのに今までどんだけ言語いじってきたか知らないが、 そこまで言うなら金出してスクレイピングソフト買うなり製作依頼の仕事出すなりすべきじゃないか? 要求仕様の後出しはやめようね。 大量のデータ捌くのは、データ構造の設計して、 判定用マスタ情報も自動で読ませるのが普通。 じゃなきゃどんな方法使おうと無意味。しんどいに決まっとる。 まぁ正規表現でやるにしても、常用漢字のチェックとか 不利だらけのUWSCでやらなきゃいけない意味が判らんが。 エラーチェックはChkNumだけでなくもっと沢山必要だぞ。 ループでやるなら判定材料を配列に納めろところさえ自動でやればPG自体は簡単。ただし遅い。 正規表現でやるならさらに、式を文字列操作関数で自動生成することになるが、 果たして何文字までの正規表現ならまともに動くかな?ということになるな。 ちなみに[a-z]とは書けるが[亜-腕]と書けるわけでもない正規表現で 2136字の常用漢字を判定するつもりなら、 正規表現が最適かどうか怪しいぞw 要求仕様の後出しはやめようね。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/29(日) 14:42:01.56 :gH8OCtI+0 もしVBSの正規表現で間に合わないならbregonig.dllでやるのもいいよ そっちならShiftJIS全文字並べた長いパターンでも大丈夫だし、戻り読みにも対応してる : 名無しさん@お腹いっぱい。 [sage] 2013/12/29(日) 18:33:20.42 :6fGhBvbo0 ファンクションを作成したuwsファイルを別のuwsファイルで読み込んで 使うことってできる? : 名無しさん@お腹いっぱい。 [sage] 2013/12/29(日) 18:36:34.33 :U3C3rCXu0 call : 名無しさん@お腹いっぱい。 [sage] 2013/12/29(日) 18:53:21.14 :6fGhBvbo0 できました ファイルの実行しかできないと思ってた、有難うございます! : 名無しさん@お腹いっぱい。 [] 2013/12/30(月) 00:10:29.58 :uCwyxvsg0 IESETDATA( IE, 1, , "A" ) IESETDATA( IE, 1, , "B" ) IESETDATA( IE, 1, , "C" ) これらをwhile trueの間ランダムで選択し続けたいのですがどうすればいいのでしょうか また Aを押したらBかC、Bを押したらAかC、Cを押したらAかBとするのは可能ですか : 名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 00:35:19.60 :iGnraarK0 > Aを押したらBかC HTML内でOnClickイベント時にBかCをするようにinnerHTMLを書き換えればいいけど 直接呼び合うとおかしくなるんで それぞれをクリックしたときの動作を関数として外に出してそれを呼ぶようにする必要がある。 WebページのボタンをクリックしたときにUWSCを呼び出す事は出来ない。 Pro版を使ってGUIを作ったときの話は知らないんで本家で聞いてね。 RANDOM(Range) // 0 <=X <Range の範囲にある乱数を返す select RANDOM(3) case 0 data = "A" case 1 data = "B" case 2 data = "C" selend IESETDATA( IE, 1, , data ) 配列を使ってもいいけどこっちの方が汎用的。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 00:43:07.89 :GBw32SmH0 近頃UWSCと関係ない、それ以前の構造文の基礎の質問だらけだな。 義務教育でプログラミングが採用されてからは習ってるはずだが? chars[] = "A", "B", "C" sel = 0 while true sel = random(3) // 0-2の整数 IESETDATA(IE, 1, , chars[sel]) wend VKABC[] = VK_A, VK_B, VK_C getABC[] = false, false, false for idx=0 to resize(VKABC) getABC[idx] = getkeystate(VKABC[idx]) next resChar = "" for idx=0 to resize(getABC) ifb getABC[idx] then resChar = chars[( idx + random(2) + 1 ) mod 3] //または resChar = CHR( ASC("A") + ( ( idx + random(2) + 1 ) mod 3 ) ) break endif next : 名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 00:49:52.71 :iGnraarK0 ああ、AとかBとかCとかを押したらってのは文字通りキーボードの事だったか。 だけど呼び合う事が出来ないのは同じ。 UWSCでBをクリックすると、Bがクリックされた事を拾ってしまうから。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 07:48:43.41 :dTdK4kbH0 フラグ管理しとけばなんお問題もない : 名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 09:45:35.27 :u85b+QZp0 > 近頃UWSCと関係ない、それ以前の構造文の基礎の質問だらけだな。 > 義務教育でプログラミングが採用されてからは習ってるはずだが? 高等学校情報B ttp://ja.wikibooks.org/wiki/%E9%AB%98%E7%AD%89%E5%AD%A6%E6%A0%A1%E6%83%85%E5%A0%B1B これいつ頃からやってんの?w : 名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 10:40:01.59 :/xfC/q5R0 プログラミングってこと理解した方がいいよな わからないならマウス記録機能だけ使ってろっての : 名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 13:51:06.76 :WqxIqwX90 キーボードは使っちゃいけないの?コード組むよりショートカット使ったほうが捗ることもあるけど : 名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 17:42:00.42 :7PGIvt+4P こういうのってさ、英語と同じで教科書ばっかり進化しても 先生がそもそも知らんわけよ。 ヘタしたら親がPCいじりの好きな生徒の方が詳しかったりね。 もともと義務教育でベーシック言語みたいな項目がさらっとあったはずだけど 先生もまともに説明できないもんだから、歴史の教科書の後半並みに飛ばし読みで 終わりだし。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 17:46:26.77 :jYyFXJvx0 いつから高校が義務教育になったんだ : 名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 18:36:16.98 :JYEaJHQV0 必死にP2使ってまで無知をひけらかすとか何がしたいんだろうな。 もう来るな。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 18:58:55.48 :W3exYdgUP 2chでp2バカにする奴は田舎もん確定 p2使うのはIP規制が頻繁にあるから つまり人口が多い地域に住んでいる証明みたいなもん 地方じゃIP規制なんてならない 年がら年中IP規制なあ時なんて無い人はP2使う 田舎もんには信じられないだろうが あるんだよね 年がら年中IP規制の地域 どこのプロバイダーに替えてもIP規制の多い地域は一緒一緒 結局人口密度だろ 無知をひけらかしたんでは無く 本人大真面目 お前にそういう時期は無かったの? そういう時期だから質問するってさっしてやれよ田舎もん : 名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 19:01:51.74 :eezGA68y0 安定の末尾Pw : 名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 19:49:45.57 :F+f0ZyTmP 地方でもそうでなくても大手のISP使うのは変わらん気がするが? : 名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 20:06:19.02 :uMbXUb3w0 ここ数日、回答もらったのにお礼すら書かない人が多いね 義務教育で礼儀を教えろよ>文科省 : 名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 20:28:48.71 :7PGIvt+4P あれだ、年末でバタバタしてんだろ。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 21:19:17.75 :u85b+QZp0 基礎がないので貰った回答が理解できんのだろう。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 21:28:47.20 :jYyFXJvx0 2chなんかでお礼を期待するほうが馬鹿 : 名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 22:37:42.88 :DADWNRVk0 じゃあ、2chで回答を期待するのも馬鹿ってことになるな : 名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 23:20:45.31 :jYyFXJvx0 そういうとこだろ : 名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 23:21:59.65 :DADWNRVk0 じゃあ、もう回答も不要だな スレ終了w : 名無しさん@お腹いっぱい。 [sage] 2013/12/31(火) 01:33:01.85 :+kaZuARN0 期待するなってことなのに どうして極論なのか : 名無しさん@お腹いっぱい。 [sage] 2013/12/31(火) 02:11:17.39 :IabyV/GM0 ぶっちゃけ、くだらない質問に親切心で答えてやってるやつが 結果的に「荒らしに餌をやる構図」になってる。 答え教えてるやつが結果的にスレ汚しに加担してる形になってるわけだ。 テンプレ読まない、何がやりたいのか説明しない、作成途中のスクリプトすら書かないやつには 直接答えを教えず、道標だけ示せばいいかと。それか放置か叩けばそのうち懲りるんじゃね。 : 名無しさん@お腹いっぱい。 [sage] 2013/12/31(火) 13:23:17.63 :xO+kU/q10 「ぼくの考えた最強の2ちゃんねる」は過去現在未来において存在しません : 名無しさん@お腹いっぱい。 [sage] 2013/12/31(火) 13:32:55.77 :S468KNLe0 それ、次からテンプレに入れるべきだね : 名無しさん@お腹いっぱい。 [sage] 2014/01/02(木) 00:18:59.49 :ccFUumo70 は無駄だったと思ったんだけど意味あったよ。 環境引っ越して chrome-win32 を Program Files (x86) に置いてショートカットを設定しようとしたら start コマンドじゃ登録できなかった。 ダブルクォーテーションが使えないんだな。 C:\Windows\System32\ にあるアクセサリは start コマンドでもいけた。 ただし、Windows 8.1 のスタート画面のショートカットではコマンドプロンプトは開くものの、アプリは起動しなかった。 Windows 8.1 は動作がきびきびしてるが、コマンド関係が不自由になってる。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/02(木) 01:07:24.03 :o8PIdPa50 ウィルス対策だから仕方ないわな : 名無しさん@お腹いっぱい。 [sage] 2014/01/02(木) 05:59:52.19 :ccFUumo70 いや、俺が間違ってただけだった。 ダブルクォーテーションのありとなしで動作が変わるからはまった。 詳しくは ttp://anago.2ch.net/test/read.cgi/software/1278083626/876-877 ttp://toro.2ch.net/test/read.cgi/tech/1374205515/321-323 UWSCでもコマンドライン オプションでプログラムを指定して汎用的に動くようにしようとすると ダブルクォーテーションをつけないと動かなかったんだ。当然と言えば当然だけど。 だけど、UWSCのスクリプトで直接実行ファイルを指定して動かせたから start でも動くかもと試行錯誤する気になったわけで、まあ、意味はあった。 急ぐ場合でもとりあえず動かせるのがいい。 ちゃんと動くコマンドラインのサンプルがこれ。 C:\Windows\System32\cmd.exe /c start /affinity 5 "chrome" "C:\Program Files (x86)\chrome-win32\chrome.exe" "C:\Program Files 3\uwsc\UWSC.exe" "C:\Program Files 3\uwsc\小物\SetAffinity.uws" "C:\Program Files (x86)\chrome-win32\chrome.exe" : 名無しさん@お腹いっぱい。 [sage] 2014/01/02(木) 22:40:55.09 :zaHC9MQ50 バッチファイルユーザーは過去散々、 忌まわしい空白混じりパスに対しダブルクォーテーションで戦ってきたので 例え不要になったとしても省略したりなどしない。 ダブルクォーテーションで囲ってもいいなら是非囲う、それが漢ってもんだろ。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/02(木) 22:47:48.33 :r85/cisY0 コマンドに渡すときだけダブルコートだね 変数定義でダブルコートつけてるやつはニワカ : 名無しさん@お腹いっぱい。 [sage] 2014/01/02(木) 23:48:25.30 :34T51zIfP いやぁ。パスは囲んじゃうね。 囲まないことでトラブることはあっても囲んで悪いことは無いし 習慣として囲むわ。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/02(木) 23:56:15.83 :2HtQnuQy0 Program Files 何度MSってバカじゃねーのと思ったことかw : 名無しさん@お腹いっぱい。 [sage] 2014/01/03(金) 00:37:45.86 :OcF3kY1E0 実はバカじゃなくて、独禁法違反の妨害行為なんだろうけどね。 今回の Program Files (x86) のカッコもわざとだろ。 自爆してるけど。 「Microsoft の使い方が誤っています」 ttp://orangeclover.hatenablog.com/entry/20090903/1251988909 スレ違いだからこの辺にしておくか。 面白いネタをありがとう。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/03(金) 17:53:21.05 :LYGpL4/d0 LFNの完全に正しい仕様 そりゃ20年経ってもLFNに対応しないのがおかしい : 名無しさん@お腹いっぱい。 [sage] 2014/01/04(土) 20:15:04.45 :U27tC0SB0 質問させてください。 id = EXEC("notepad.exe") と書いたuwsファイルを実行すると、問題なく新規メモ帳が開きますが fid = FOPEN("D:\UWSC49\test.txt", F_READ or F_WRITE) と書いてもtest.txtが起動しません。 念のためMSGBOX(GET_CUR_DIR)でテストしましたがtest.txtを置いている階層はあっていますし ファイル名、フォルダ名共に間違いもありません。 何か他に考えられる原因などありますでしょうか? win7proで使用しています。 すみませんがよろしくお願いします : 名無しさん@お腹いっぱい。 [sage] 2014/01/04(土) 20:27:52.00 :lt87u3EU0 fopenはそういう用途に使うもんじゃない : 名無しさん@お腹いっぱい。 [sage] 2014/01/04(土) 20:44:43.31 :AfeuS2620 何が聞きたいのかよく分からんけど、おそらくメモ帳でtest.txtを開きたいってことかな? だったらexec("notepad.exe D:\UWSC49\test.txt")でいいと思うけど : 名無しさん@お腹いっぱい。 [sage] 2014/01/04(土) 20:45:47.93 :Y6uX3Tpp0 fopenはUWSC.exeが自分でFGETしてFPUTしてFDELLINEしてFCLOSEするので notepad.exeは必要ないし起動もしない *.txtを関連付けで起動したいなら、DOSのstartコマンドを使う c:\> start "Hello World" "D:\UWSC49\test.txt" : 名無しさん@お腹いっぱい。 [sage] 2014/01/04(土) 20:55:53.72 :U27tC0SB0 皆様、レスありがとうございます。 fopenは、あくまで内部的に操作をするという事だったのですね。 私が考えていた動作はさんが書いて下さったものでした。 私の質問文が言葉足らずだったようで申し訳ありません。 回答ありがとうございました。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 04:18:01.75 :uecPH+Nc0 とあるブログからコピペした↓を自分の環境で動かしてみたら while True //ループ開始 ifb CHKIMG("ball.bmp") //もし、ball.bmpと同じ画像があったら x=G_IMG_X //xにball.bmpのX座標を代入 MMV(x, 770) //座標(x,770)にマウスを移動(y座標は調整してください) endif //IFbの条件終了 WEND //whileからここまでの無限ループ KansuCall:モジュール 'UWSC.exeのアドレス 004FCD34 でアドレス00000000 に対する読み込み違反がおきました。 2行目:IFB CHKIMG("ball.bmp") と表示されて動かないんだけど何が原因? : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 05:04:04.51 :AIY7SRvH0 画像がおかしいんじゃね? 24ビットカラーで保存してる? : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 05:30:23.89 :uecPH+Nc0 うん 試しに他の画像にしても同じエラーが出る 書き込む前にggってみたけど同じ様なエラーでてる人いないっぽいし : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 05:52:20.72 :RUQK6DJV0 じゃ、他の画像もおかしいんじゃね? : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 06:11:23.55 :uecPH+Nc0 小さくてわかりづらいかも知れないけど ttp://uproda.2ch-library.com/747466sLR/lib747466.bmp : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 06:27:16.80 :bdZGvP5F0 晒せる範囲で環境晒してみたら? 自分はWin7x64環境のV2C(x64)で 設定した板を巡回するスクリプトでCHKIMG()を使っているが 特に問題ないよ 後、問題の切り分けのために 調査対象じゃない画面でCHKIMG()を使ってもエラーになるかとか調べてみるといいよ 要するに自分の環境ではエラーになるという現実を受け入れて どこにその原因があるかを考えるのだ UWSCのバージョンを変えてみるとか 再インストールしてみるとか 頑張れ : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 06:49:43.09 :uecPH+Nc0 バージョン下げてみたらエラーでなくなった ありがとう これで先にすすめるよ : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 07:05:09.19 :BC7rx3sd0 jpgやん : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 07:52:48.18 :rRy9nCfoi 専門馬鹿? >そこまで言うなら金出してスクレイピングソフト買うなり製作依頼の仕事出すなりすべきじゃないか? 要求仕様の後出しはやめようね。 読んでわからない人?後出しせず最初に書いてるがな。 ソフト買うのは目的と違うし、自分は毎回買いながら言わないと筋違い。 >大量のデータ捌くのは、データ構造の設計して、 判定用マスタ情報も自動で読ませるのが普通。 じゃなきゃどんな方法使おうと無意味。しんどいに決まっとる。 それを最初から聞いてるのわからないかな? 結論「俺じゃ無理」とだけ書いておけば、的を射た回答だった。 何かうっすいし疲れるね。プログラム出来てもコミュ(ry ただ、勉強にはなった。今後気をつける。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 08:10:03.80 :rRy9nCfoi 遅くなってすいません。 参考にさせて頂きます。ワードを参考に調べてみますね! ありがとうございました。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 10:09:00.25 :CZaJ7SoX0 メモ帳に以下のようにあります //文字列行数、名前、チーム, //チームは必ず2人1組です 1山田,1 2,田中,2 3,佐藤,3 4,小川,2 5,高橋,3 6,西川,1 : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 10:29:39.15 :+eNMVSJd0 宿題は自分でやりなさい : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 10:32:56.67 :6spSaAVu0 すみません、途中で送信してしまいました。 チーム1の山田さんはチーム2の田中さんのことが好きです。 チーム3の佐藤さんは同じチームの高橋さんが嫌いです。 他にも、チーム替えすべきことが幾つかあります。 相応しいチームに組み替えるCSV処理を教えてください。 なお、サンプルの人達は男子校を想定しています。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 10:59:34.59 :Mqt93rqf0 作成依頼スレで聞いてください : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 11:03:18.70 :p22aiR/T0 腐女子の自動カップリンクスクリプトか? : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 11:06:29.26 :CZaJ7SoX0 すみません、気付かないうちに途中で書き込んでしまっていました。 聞きたかった事は、どの組み合わせが一番効率が良くなるか?という事です。 (組み合わせ=ペアです) それではよろしくお願いします。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 12:56:06.91 :TUVWg/yo0 何も難しいことはない、速度を気にしなければループで処理するだけ、お前以外の誰でも出来る。 正規表現もお前以外だれでもできるが、各正規表現ライブラリの仕様制限がどこまでかに縛られる。 あとのワードはキーワードな。おまえは伸びない。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 12:59:23.33 :0w/qSVoX0 IFB …A IFB …B IFB…C ENDIF ENFIF ENFIF 上記のようにIFBを入れ子にして上からA,B.Cとする Aの式の条件を満たしてない時にBの式の条件を満たしても Bのスクリプトは動作しないよね? : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 13:07:25.45 :CZaJ7SoX0 つかそんなの適当に計算なりカウントなり適当に動作させれば分かるだろ ここで聞く事か? 自分の頭で何も考えられないゆとりは帰れよ : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 13:11:56.95 :GRZ6wbM60 そうそう。屑質問は徹底的に叩き潰せ。 少しでも情けをやると付け上がって俺たちを無料デバッガーか UWSC版Googleのようにこき使うからな。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 13:27:18.93 :0w/qSVoX0 最近始めたばかりで簡単な式で試験的に動作させるという発想がなかったわ ありがとう試してくる : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 13:27:34.78 :4FXrkyqB0 なにがそれでは、だw これはデータ構造と、数理計画・離散最適化の問題で、やればやるほど難しいし、 そもそも操作自動化スクリプトであるUWSCが目的とする課題ではない。 素のC言語やBASIC言語やJavaやらで勉強したほうがためになるよ? //同姓同名を考えず、名前のみで一意な個人が特定できるものとする。 //同姓同名がいる場合は名前に対応するシリアルナンバーが必要。 //好き嫌いテーブル:名前、チーム,好き嫌い,対象の人,対象の人のチーム //一人が複数の好き嫌い対象を持つことも可能 山田,+1,田中 佐藤,-1,高橋 … //判定テーブル 山田,山田,-999 山田,田中,+1 山田,高橋,-1 … 田中,山田,… このような総当り判定表を2重ループで自動生成。 各個人ごとにうまく配列に納めてソートすれば、各個人が誰と一番組みたいかまで判る。 更に、ある個人が一番組みたい誰かと、その誰かがその個人とどれだけ組みたいかの 判定ポイントを合算した配列をソートすると良いだろう。 想定通りにうまく判定させるには好き嫌い判定ポイントを絶妙に設定する必要がある。 また片思いや三角関係やストーカー関係まで判定するには更なる工夫が必要。 ちなみにこの分野はこういうのね。 ttp://www.secom.co.jp/isl/research/cs/report03/ これをBLのカップリングスケジュール問題として応用するわけかw : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 13:33:34.04 :B/Gq4CWU0 悪質な質問は完全スルーしろよ : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 13:33:47.66 :4FXrkyqB0 の訂正 //好き嫌いテーブル:名前、好き嫌いポイント,対象の人 //一人が複数の好き嫌い対象を持つことも可能 山田,+1,田中 佐藤,-1,高橋 … だな。 RDBならクエリを連鎖させれば数発で出る。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 13:34:11.35 :CZaJ7SoX0 おう、そのやり方はコード書く上では必須だから今後も使うといいぜ。 他には FUKIDASI() とか、PRINT() なんかもデバックにはかなり使えるから試してみるといいよ 頑張れよ!! : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 13:35:33.28 :4FXrkyqB0 出来ないのに云々の捨て台詞阻止で どれぐらい無理ゲーなのかを示してやっただけだよ。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 13:36:22.53 :4FXrkyqB0 それハマったけど FUKIDASI("hoge") PRINT "hoge" なんだよなぁw : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 16:45:08.57 :4FXrkyqB0 //このスクリプトはリファレンスに乏しいから、 //一々こうやって調べにゃならんのよ。 // FORのテスト PRINT "FOR loop=0 TO 3" FOR loop=0 TO 3; PRINT loop; NEXT// 0,1,2,3 PRINT "end of 'FOR loop=0 TO 3'" PRINT "now loop="+loop+", out of loop." // ループ抜けた後も生存し、値は4 PRINT PRINT "FOR loop=1 TO 1" FOR loop=1 TO 1; PRINT loop; NEXT // 実行されんの? PRINT "end of 'FOR loop=1 TO 1'" PRINT "now loop="+loop+", out of loop." // ? PRINT PRINT "FOR loop=1 TO 0" FOR loop=1 TO 0; PRINT loop; NEXT // エラー?逆方向にループ? PRINT "end of 'FOR loop=1 TO 0'" PRINT "now loop="+loop+", out of loop." // ? PRINT PRINT "test end." : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 21:17:20.58 :bdZGvP5F0 この言語に限らず 何か気になった時に実際に組んでいる途中のスクリプトだと問題点の切り分けがややこしくなりがちなので 最小単位の独立したサンプルを作成して試すってのは往々にして必要だよね : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 21:21:45.16 :Kggkpa/w0 つ オブジェクト指向 : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 21:22:06.17 :izEOBSmY0 だな、自分はforの変数がループ内で変更出来ないのでハマったわ : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 21:46:31.53 :4FXrkyqB0 お、テストにソレ忘れてたと思って書いてみたら 俺の認識を更に改める結果になったw FOR loop=0 TO 5 IF loop=2 THEN loop=3 PRINT loop NEXT UWSCの仕様だと 0, 1, 3, 4, 5 0, 1, 2, 3, 4, 5 0, 1, 3, 3, 4, 5 どれでしょうか? こんな事がHELPに仕様、書かれてないのがUWSC : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 22:05:10.40 :FYJIQhJu0 それはそれとして for文のループ変数を途中で弄るよう奴が書くコードなんて読みたくないな : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 22:29:50.77 :p22aiR/T0 HELPにキチガイの間違い集とか要らないんで : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 22:55:02.34 :4FXrkyqB0 jpcertのセキュアコーディングスタンダードなどのコード規約や コーディング作法でならば非推奨でも、 仕様に書いていない、何の規格も規約も無いスクリプトで、 禁止されていない書き方をしたのだから、間違いではないなw : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 23:06:37.65 :bdZGvP5F0 うーん、HELPをど親切にしろとは言わないが 例えば GETKEYSTATE() は瞬間値では無いという説明が無いのは良くないと思うぜ While等のループ脱出に使いたい場合空呼びが必要ってのは地味にハマる : 名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 23:39:35.23 :+eNMVSJd0 基本もっと親切にっていう人は他のプログラムにさわったことない人なんだよな ヘルプにUWSCとは別の部分のリファレンスがわからないから説明載せろとか(APIとかDLLとか) : 名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 00:20:50.84 :v0tRZf2D0 >935 While等のループ脱出に空呼びって、どういうこと? ループ中に入れたsleep()にgetkeystate()を押したらダメということ? : 名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 00:53:37.44 :Yt+Bs/7Y0 GETKEYSTATE() は過去に指定したキーが押下されたか判定する関数なので 例えば無限ループをESCキーで脱出したい場合は GETKEYSTATE(VK_ESC) While True if GETKEYSTATE(VK_ESC) then exit //適当な処理 WEnd ってしていないとダメ 長いスクリプトで起動からループまでの間に VK_ESC が押されていたら 適当な処理 が動作しない なのでWhile前に ESCキーの押下判定を一旦クリアする必要があるの : 名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 01:03:46.60 :Krcr01vp0 長い処理させる時には普通キー用の自作関数作って並列処理(厳密には並列処理していないが)させるだろ : 名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 01:45:44.74 :v0tRZf2D0 >938 初めて知った。 今まで、ループ前にキー押下げクリアなんてしたことなかった。 ありがとう。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 01:46:36.63 :+eI3fzs30 なるほど直前にバッファークリアが必要なんだね。 組み込み系のプログラミングに似てるな。 参考になったわ。 長い処理させるときに並列処理で補助するかしないかはスタイルの一つであって 普通かどうかは自明ではないよ。 キー用に限らずあらゆる事を自作関数にして抽象化すること自体は普通だけどね : 名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 07:56:18.49 :Z43t07Si0 ttp://msdn.microsoft.com/ja-jp/library/cc364583.aspx : 名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 08:02:39.22 :ARjq633PP ハマったわー。 ググったら例のせてくれてる人がいてすぐ解決したけど : 名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 08:39:05.70 :+eI3fzs30 やっぱりな〜 「GETKEYSTATEのその他の仕様はMSDNと同じです」 などと書くか、 そのページを丸ごとコピペでもして置いてくれればよかったのにね。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 08:41:50.20 :+eI3fzs30 ってかそもそも、仮想キーコードからしてそうだよな。 「A」が「VK_A」なのも「VK_A=65」なのも、一切書いてないし。 もはやそれがUWSCらしさだよ。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 08:52:16.61 :cZ4NkHVk0 HTML の話だけど ドラッグ&ドロップで受信する方法は何がいい? HTML5 の ondrop を見てるけどうまく動かん。 IEの空ページにドロップして BeforeNavigate2 を受け取ってキャンセルが一番確実かなと思う。 ondrop とか FileAPI 関係見てると HTML と Javascript だけで行けそうと思ってしまうけどダメなんだな。 確かに megaupload とかはやってるっぽいんだけど・・・ : 名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 14:39:48.19 :N4SpDzR00 ゲームが起動してる時だけUWSCで画像が認識されなくて、 ゲームの起動をやめれば画像をちゃんと認識してくれます・・・ ゲームを起動しながら画像を認識してくれるようにするにはどうすれば良いですか? ちなみに仮想マシンのwindowsXPです。 ゲーム起動時の画像と、そうでないときの画像をPrtScnで保存し、拡大して見比べましたが 両方一致しました。 けどなぜかゲームを起動しているときだけ画像認識が動いてくれません。 メインpcはちゃんと動きます 仮想のwin7も動きます xpのだけ動かなくなりました。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 14:51:03.03 :Nift5gto0 本気で解決したいならこれ以上書く事無いと思えるまで情報を書け 情報不足 Aの可能性もあるがBの可能性もある。けれどCという場合もあるしDを試すのも良いかもしれん …という回答でいいなら別だが : 名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 15:02:09.91 :t8gval8A0 win7で記録しようとしても「保存すべき有効なデータがありません」と出て 保存できない症状なんですが、FAQにある他の常駐アプリを消しても UACのレベルをあわせ?ても(管理者で実行等)、症状が改善されません。 他に何か考えられることはありますか? ちなみについ先日購入したばかりの新しいPCです。 今まで他のPCでは使えていたのですが、新しいPCに乗り換えてから 記録できない症状が出ました。何かしらのセキュリティに引っかかってるの でしょうか?セキュリティソフトはESET使ってます。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 15:24:27.45 :Ev3dFHii0 設定-記録方法-低レベル記録 : 名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 15:47:31.64 :t8gval8A0 低レベル記録になっていますね・・ : 名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 16:13:04.21 :Ev3dFHii0 セキュリティソフト全部切ってnotepad等の記録を試しても出来ないのならもう誰も判らん : 名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 16:22:39.58 :Yt+Bs/7Y0 確か記録に必要なのは RecUws.dll だけど同梱されているから とりあえずUWSCの破損を疑った方が良いので再DLしてみたらどうかな 後、環境との相性の可能性も無くはないので過去バージョンも含めて色々試してみると良いかも : 名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 19:28:05.66 :lz3428n30 「設定」−「記録後クリップボードへコピーする」にチェックを入れて メモ帳にコピペでもだめ? : 名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 21:50:09.71 :E/Kpd+Tq0 ゲームがdirect xで画面かいているか、そうでないか程度は最低限書いた方が良いな。 俺は、それ聞いても分からんけど : 名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 00:07:58.21 :gWrRYOEB0 = 皆さんレスありがとうございます。 クリップボードへコピーでもコピーできてませんでしたので 先程バージョンを下げて試したところ無事記録できるようになりました。 相性の問題なのかわかりませんがひとまずこれで やっていこうと思います。 ありがとうございましたm(_ _)m : 名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 08:33:58.44 :FtwaQqTr0 Windows8.1 + IE11 でリンクをドロップしようとしてるんだけど 通常起動したIE11ではドロップを受け付けるのに UWSCで起動したIE11ではドロップを受け付けてくれない。 同じファイルで同時に起動しててもそれぞれ違う動作をする。 タイトルバーにすらドロップできないから移動できない。 動作環境変えて動いたとしてもめんどくさいな。 試しに CreateOLEObj("InternetExplorer.Application") を exec( IEPath + HTMLPath ) GetActiveOLEObj( "InternetExplorer.Application", Title ) に変えてやってみたけどダメだった。 バッチファイルから IE と UWSCを呼び出したら成功。 だけど、start で呼び出さないとコマンドプロンプトが残る。 start使ったからか、カレントディレクトリが変わってしまうので . が使えない。 TIMEOUT はHTMLのタイトルが設定されるまで待つため。 -- test2014_010.bat -- set CURDIR=%CD% "C:\Program Files\Internet Explorer\iexplore.exe" "%CURDIR%\test2014_009.htm" TIMEOUT /T 3 /NOBREAK start "UWSC" /b "C:\Program Files 3\uwsc\UWSC.exe" "%CURDIR%\test2014_010.uws" 同じタイトルのIEが起動してると失敗するから、 IE起動前に同じタイトルのウィンドウを閉じるかリスト化して渡すといいかもしれんがめんどくさいな。 でも確実に動いてほしいから閉じることにするか。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 11:06:27.94 :NfQOr1I/0 DOSCMDとかDROPFILEは使わんの? : 名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 12:12:44.13 :FtwaQqTr0 DOSCMD は戻り値がコマンドが出力した文字列だから意味がない。 やってみたけどやっぱりドロップを受け付けなかった。 DROPFILE はドロップ操作を自動化するものだけど、ドロップされたファイルを処理するものではないし。 そもそもIE起動時に HTML を渡すのはタイトルを指定することで他のウィンドウと区別するためだし。 今やってみたら IE を閉じないと進まなくなったんで START で起動するように変更した。 GetActiveOLEObj の前に GetID() で 見つかるまで待つ(-1)を指定したら、TIMEOUT はなくしても大丈夫だった。 GetID( Title, "IEFrame", -1 ) IE = GetActiveOLEObj( "InternetExplorer.Application", Title ) affinity を指定したとき、UWSC の affinityMask が起動後のアプリに引き継がれたことを考えると、 UWSC本体がドラッグ&ドロップを受け付け・・・・るよな。 なんでこんなことになるのか分からんけどできる方法が見つかったからまあとりあえずおk。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 14:05:27.53 :FtwaQqTr0 ダメだ。 バッチで起動して GetActiveOLEObj だと、ページが遷移したときに OnQuit が飛んできて BeforeNavigate2 の URL も ”about:blank” になってしまう。 キャンセルフラグをセットしてもキャンセル出来ない。 IEの画面では普通にドラッグされたページが開いているのに。 しかも、そのあと IE を終了すると OnQuit を受信してるし。 ログ start get OnQuit getNavigateURL : about:blank getNavigateURL : no match : about:blank OnQuit あ、IEの保護モードのチェックを外したら普通に動いた。 ややこしい。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 14:42:21.78 :QzAVQZuY0 ファイルのドロップだと、ondropでフルパスは得られないからBeforeNavigate2イベントなんだろうけど ウェブページのリンクをドロップなら、JavaScript側からURLを読み取れるでしょ : 名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 15:49:44.75 :B4h7jA6Z0 FGETでメモ帳から数値を読み取り1行目の3列目と6列目の数値を計算させようとしました。 数値A = FGET(ID, 1, 3) 数値B = FGET(ID, 1, 6) 計算結果 = 数値A + 数値B を計算したいのですがエラーが出て上手く計算できません。 エラーは"型があっていないorオーバーフローです"と表示されます。 数値A数値Bはともに小数点以下3桁まであります。 良くわからずググった結果、型が合っていないとエラーが出るのは文字列型になっているのかな?と考え AAA = VARTYPE(数値A, VAR_DOUBLE) と試してみましたが違うエラーが出ました。 "OleStr型からDouble型へのバリアント型変換はできません" ・FGETで参照した値は全て文字列扱いなのでしょうか? ・小数点以下3桁までの計算を行う方法があるでしょうか? 知識不足なので、質問内容自体、変な事を言っていたらすみません。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 16:07:10.65 :B4h7jA6Z0 962です。 自己解決しました。解決方法がuwscのヘルプに乗っていたのを見落としていました。 スレ汚しすみませんでした。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 16:38:20.73 :AAKW+iTv0 質問掲示板で嫌われるタイプ。 ・教えてもらった知識は俺のもの。俺が自力で気付いた知識は俺だけのもの。 ・質問の仕方の不備を指摘されると逆ギレ。 ・自己解決しました、のことを、自決しました、と書いて命を無駄にする奴。 故意ではないだろうが1番目のやつに該当。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 16:41:46.70 :aBW4r/WR0 意味わかんね、安価させよ : 名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 16:53:14.63 :FtwaQqTr0 目的がファイルのダウンロードなんだけど、普通は「名前を付けて保存」ダイアログを操作する必要があるから JavaScript で自動ではできない。 FileAPIはよく分からん。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 17:10:06.88 :B4h7jA6Z0 です。で自己解決したと書きましたが、その内容です。 数値A = FGET(ID, 1, 3) 数値B = FGET(ID, 1, 6) 計算結果 = 数値A + 数値B では、"型があっていないorオーバーフローです"とエラーが出ましたが 計算結果 = VAL(数値A) + VAL(数値B) とする事で問題なく計算が行えました。 小数点云々の私の質問は自分の勘違いだったようで、整数でも少数でも計算可能でした。 ・FGETで参照した値は全て文字列扱いなのでしょうか?() の質問は、これはuwscのヘルプの#n21に該当していました。以下引用です >数値を COPY、POS、CHGMOJ、GETSTR関数等で取得して 数値演算したいのだが文字演算になる #n21 >>文字操作関連の関数は戻り値として文字列を返す為です。 >>VAL関数を使い数値にする必要があります helpにも載っていた事でしたので、あえて詳しい内容までは書きませんでしたが は恐らく自分に対しての指摘だと思いましたので、内容を書かせていただきました。 質問時のマナーを知らず、不快にさせてしまっていたら本当にすみませんでした。 以後気を付けたいと思います。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 17:54:55.00 :AAKW+iTv0 やっぱVALか、おつかれw : 名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 18:03:06.58 :wCiKvcnI0 exeを起動したいのにexec関数で起動しません。どういうこと? EXEC("C:\Program Files (x86)\hoge\xxx.exe") 仕方なくデスクトップのショートカットをクリックという方法で代用してます。 CLKITEM(GETID("Program Manager", "Progman", 1), "abc", CLK_LSTVEW or CLK_DBLCLK) 環境はwin7(64)です。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 18:20:49.53 :QzAVQZuY0 × EXEC("C:\Program Files (x86)\hoge\xxx.exe") ↓ ○ EXEC("<#DBL>C:\Program Files (x86)\hoge\xxx.exe<#DBL>") : 名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 20:27:26.65 :A30Yirm20 IE11に自動アップデートされてしまった busywaitを公式FAQのに変更しただけじゃ昔通り動かなくなった ctrlwinで最大化する処理省いたら直ったけどなんだったんだか : 名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 21:10:21.86 :pbwF3a880 現在のマウスカーソルの位置情報を取得した後に指定箇所をクリック その後もとの位置にマウスカーソルを戻すにはどうすればいいでしょうか : 名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 21:27:28.38 :8nOZyfS+0 現在のマウスカーソルの位置情報を取得 ↑の座標にmmvすればいいだけでは : 名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 21:50:07.66 :lIdyOim40 同じwin7(64)だけど、問題なく起動できる(IE、Chrome) 何のプログラムか分からないけど管理者権限で実行とかじゃないの? : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 01:57:44.22 :QRJpD11F0 fizz buzzができない 教えて for i = 1 to 100 print i next : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 02:21:12.37 :QRJpD11F0 ここまで出来たけど、fizz buzzがうまくいかない for i = 1 to 100 if int(i/3)=(i/3) then print "fizz" elseif int(i/5)=(i/5) then print "buzz" elseif int(i/3*5)=(i/3*5) then print "fizz buzz" else print i endif next : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 02:29:56.29 :t9zaTET30 fizz buzz問題って教えてもらうものか? 特に縛りがなくてシンプルなコードにするなら MOD 使うといいよ : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 02:32:15.93 :QRJpD11F0 modなんて関数ない 教えてくださいじゃないと寝れないです : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 02:34:35.56 :t9zaTET30 関数じゃなくて演算子 : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 02:54:37.13 :u/wf6nTj0 ひどいコードだな そもそも最初のif文に包含されてるから動くわけないんだが インデントくらいつけろよと : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 03:19:51.80 :EAgfSN4R0 modなんてエクセルにもあったろエクセルのヘルプみろって… : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 03:41:32.63 :h9lX67Zz0 変数を理解して無いクズと見た : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 03:45:31.69 :opUgv9RQ0 がんばれw プログラムの基本ならCかJavaの入門書で勉強するのがお薦めだよ アルゴリズムの基礎も探索やソートを分かりやすく解説した書籍があるし WEBで評判の良い物を何冊か探して、実際に大きな書店に行って 自分に合いそうなもので学習しなよ 特にアルゴリズムの基礎は今後UWSC(その他プログラム言語)を使う上で 学習しておいて損はない あとhelpを読むのは基本だよ : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 03:49:44.84 :opUgv9RQ0 スレが1000に近いのでとりあえず作ってみた for i = 1 to 100 ans = "" if !(i MOD 3) then ans = "Fizz" if !(i MOD 5) then ans = ans + "Buzz" if ans = "" then ans = i print ans next : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 03:53:39.82 :opUgv9RQ0 インデントが消えてしまったorz 全角スペースじゃないとダメなの忘れてました、ごめんね : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 07:46:17.97 :ohh50qT+0 これ解答なんてキリないぞw ttp://codezine.jp/article/detail/7546 : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 08:05:01.66 :t9zaTET30 もともとプログラマの個性や言語仕様に対する理解や閃き的な部分を評価するための問題だからね ぶっちゃけ答えそのものは説いた人の数だけあると言っていい なので「教える」もんじゃないのよ : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 08:25:26.58 :ohh50qT+0 S="FizzBuzz";FOR i=1 TO 100;PRINT i+":"+COPY(S,(i MOD 3)*9,4)+COPY(S,5+(i MOD 5)*5,4);NEXT 90文字 : 957 [sage] 2014/01/09(木) 10:17:56.83 :Jp4PcdDZ0 どうもうまくいかんからいろいろいじってたけど Javascriptにバグがあるとまったく反応しなくなるんだな。 if 文の判定のかっこを忘れても警告とかないし オブジェクトを間違って使っても警告なし。 UWSC からも Javascript からもソースをいじろうとして反応しなくなったからなんだろうと思ったら そういうことらしい。 : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 10:34:31.68 :haB4wTeX0 UWSCから外部モジュールを使うんじゃなくて 外部モジュールからUWSCを使えさえすれば 全て問題ないのにね : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 11:33:22.88 :FI6wHjFI0 dim a[]=0,"Fizz","Buzz","FizzBuzz";for i=1 to 100;a[0]=i;print a[(i mod 5=0)*2+(i mod 3=0)];next エラー表示するかどうかはブラウザの設定次第だよ : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 13:14:00.37 :hFz7Kd3R0 次スレ立てますよ : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 13:19:29.38 :hFz7Kd3R0 次スレ 自動化ツールUWSC使いよ集まれ11 ttp://anago.2ch.net/test/read.cgi/software/1389240960/ : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 14:05:28.21 :n9nCZ7V20 乙 : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 15:05:11.72 :3HQ+L1tS0 1 : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 16:27:17.06 :Jp4PcdDZ0 おつ : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 17:03:55.73 :kaf0rJYM0 1 : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 17:29:06.52 :t9zaTET30 うめうめ : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 18:42:03.05 :aUvaeWPw0 梅 : 名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 18:42:36.91 :aUvaeWPw0 5年ぶりの1000! : 1001 [] Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。
凡例:
レス番
100 (赤) → 2つ以上レスが付いている
100 (紫) → 1つ以上レスが付いている
名前
名無しさん (青) → sage のレス
名無しさん (緑) → age のレス
ID
ID:xxxxxxx (赤) → 発言が3つ以上のID
ID:xxxxxxx (青) → 発言が2つ以上のID
このページは2ch勢いランキング が作成したアーカイブです。削除についてはこちら 。