tohomizugi2013072922-500x694


1: 名無しさん@お腹いっぱい。 2015/03/08(日) 00:18:57.40 ID:itdOhEn30.net
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

2: 名無しさん@お腹いっぱい。 2015/03/08(日) 10:57:43.76 ID:itdOhEn30.net
Q.シェアウェア版で「L20が存在しません」「L22が存在しません」とエラーが出て一部機能が動作しない
A.割れシリアルを使った時に出る、ささやかな割れ対策

Q.購入したのに上記エラーが出る
A.ライセンスキーが正しいか確認(ベクターで購入した場合、登録するのは 伝票番号の xxxxxxxxx ではありません)
UWSCをアンインストール後、再インストールして正しい17桁のライセンスキーを入力してください。

●Pro版の追加機能
EXE化ツールが付属しています。(EXE化後は単体での実行が可能であり、ライセンスフリーにて配布できます)
IE(Web)用記録ツールが付属しています。(Web上の動作をUWSCのスクリプトとして記録する事ができます)
HTMLを利用した画面関数が使えます。
EXCELシート用関数が使えます。(OpenOffice.org/LibreOfficeの表計算(Calc)に対しても可)
デバッガが付属しています。

●質問したい方へ
「○○作れますか?」→ 可能か不可能かを聞いているのなら答えは「作れる」
「○○が作りたい」→ 自分が作れば?並大抵の事ならググれば似たようなスクリプトや知識が見つかる
「○○作って下さい」→ 依頼スレじゃありません。
過去ログを見る、検索する等、自分で出来る事を書き込む前にするように。
自力で作ったのを晒すか、具体的な解らない場所を提示して、改善点や解決策を求めるようにしましょう。
備考:PRI NT文を利用してデバッグする。管理者権限で起動してみる。AEROを切る。fcuc.uwsを走らせてみる。

●スクリプトを晒す上での注意
他人が読みやすいようにインデントを付けるように。解らない人はググレ。
(タブインデントは使えないんだぜ 全角スペース等に 変換しておくべし)
言いたい事に関係無い部分は ~○○の処理~ や 処理A 等のようにし、
必要な部分を晒すようにする。

●他人の書いたスクリプトを安易に実行しないように。
ハードディスクをフォーマットされたりしても、自己責任。

3: ◆evw/E7kww2 2015/03/08(日) 13:36:01.33 ID:EbQAJigF0.net
このスレに俺を恨んでる奴がいるっぽいけど
なんとなく理由が分かった。

昔、俺がこの↓スレを立てたからだろう。

ttp://anago.2ch.net/test/read.cgi/software/1126521460/

いや、本当にこんなスレを立てたか覚えてないけど
怪しいのを見つけたら怪しい怪しい言う癖があるから
多分、俺が立てたんじゃね?

4: ◆evw/E7kww2 2015/03/08(日) 13:40:11.87 ID:EbQAJigF0.net
山下が欲しいのはパクるため同じJane系のviewとxenoのソース
他は案外どうでもいい感じ























------------------------------------------------------------
この書き込みに反応があれば図星。
スルーなら外れ。
ttp://fox.2ch.net/test/read.cgi/poverty/1425736511/89-
ttp://fox.2ch.net/test/read.cgi/poverty/1425736511/234-
ttp://fox.2ch.net/test/read.cgi/poverty/1425736511/387- 👀

スポンサードリンク

5: 名無しさん@お腹いっぱい。 2015/03/09(月) 03:18:02.19 ID:eBNM6Qn/0.net
UWSCとPowerShellって何が違うの?

6: 名無しさん@お腹いっぱい。 2015/03/09(月) 22:21:50.64 ID:2/ojQ+3U0.net
FUNCTION 関数名
FEND ← まだ分かる

PROCEDURE 関数名
FEND ← え?

~ENDとEND~を混在させたあたり開発当時の経緯とか聞いてみたい

7: 名無しさん@お腹いっぱい。 2015/03/10(火) 08:29:30.87 ID:EAdi39LF0.net
END系は確かに気持ち悪い
どのブロックの終了かどうかなんて
インデントちゃんと付けてりゃ問題ないよな
forはnextでwhileはwendで~って考える方が手間かかるわ

8: 名無しさん@お腹いっぱい。 2015/03/10(火) 10:26:22.34 ID:zqfIB0Ga0.net
Unityアプリに対して
MOUSEORG(Hnd,2)
BTN(LEFT,CLICK,x,y,ms)
ってやるとマウスクリックの座標が指定値(x,y)じゃなくて現在のマウス位置(つまりデフォ値?)
になっちゃうんですけど、解決方法ご存知ありませんか

9: 名無しさん@お腹いっぱい。 2015/03/10(火) 10:48:43.93 ID:EAdi39LF0.net
>>8
バックグラウンド処理は意図しない挙動することが多い
仮想立ててその中で処理させたらどうか

btn clickだとクリック速度が速過ぎて
クリック先のアプリが認識しない場合がある
downしてから少し間を開けてupした方が確実

11: 名無しさん@お腹いっぱい。 2015/03/11(水) 03:39:14.61 ID:TpOr3Ryj0.net
>>9
クリック速度について、別件ではありますが利用させて頂こうと思います

10: ◆evw/E7kww2 2015/03/10(火) 11:24:24.19 ID:Zvi6jbGW0.net
>>8
アプリ側でクリックイベントとは別にマウス位置を取得してる場合はそういう動作になる。
その場合はマウスを動かすしかない。

ところで、バックグラウンドではマウスカーソルは動かないけど、どうやってクリック座標を確認したの?

11: 名無しさん@お腹いっぱい。 2015/03/11(水) 03:39:14.61 ID:TpOr3Ryj0.net
>>10
な、なるほどその可能性が非常に高い感じがします
別の方法を検討してみます

ご質問についてですが、テスト対象の画面を完全に覆う形で
別ウィンドウを被せてテストしていた際
たまたまアプリ領域上にマウスがあったために
あるボタンがバックグラウンドでクリックされ画面が推移していた事から気付いたものです

12: 名無しさん@お腹いっぱい。 2015/03/11(水) 19:25:11.98 ID:+rYcEFRE0.net
単発質問でごめんなさい
LeftClick(230,150,80,80)
左クリック(X座標,Y座標,待ち時間ms,**)
**は何を表しているんでしょうか?

13: 名無しさん@お腹いっぱい。 2015/03/11(水) 19:43:39.38 ID:Kv0GqNyV0.net
LeftClick っていうUWSCのスクリプト関数はなかったきがする。
たぶん、CLICKを押している時間じゃないの。

14: 名無しさん@お腹いっぱい。 2015/03/11(水) 19:59:43.56 ID:+rYcEFRE0.net
>>13
解決しました。ありがとうございます
関数じゃないとの言葉から改めて探したところ見つかりました!
Procedure LeftClick(X1,Y1,X2,Y2)の一文が!
それの内容を見たところ理解できました

15: 名無しさん@お腹いっぱい。 2015/03/12(木) 09:01:13.68 ID:cPx9pA420.net
基本的なことで申し訳ないんですが、
formsとelementsが何番目かどうかってどうやって判断すればいいんですか?
htmlソース見ても複雑なのが多くて…

18: 名無しさん@お腹いっぱい。 2015/03/12(木) 11:46:11.90 ID:DyIbiY5i0.net
>>15
よく分からんが、
ループで回して欲しい要素のidやnameやvalueの値を見ればいいのでは?

29: 名無しさん@お腹いっぱい。 2015/03/12(木) 13:58:49.90 ID:cPx9pA420.net
>>18
まあ製品目的じゃないわけだし、そういった総当り的なやり方でもいいね

16: 名無しさん@お腹いっぱい。 2015/03/12(木) 10:48:59.97 ID:uSEK81CY0.net
パスワードを忘れてしまいました0000~9999の中のどれかが該当するんですが
自分で総当たりするのではなくUWSCにやってもらおうと思いました。
どのようなスクリプトを組めばいいか教えてください。

具体的には下記の作業をやらせたいのです。
0000入力→エンターキー→バックスペースx4入力
          ↓
0001入力→エンターキー→バックスペースx4入力
          ↓
0002入力→エンターキー→バックスペースx4入力
          ・
          ・
          ・
9999入力→エンターキー

17: 名無しさん@お腹いっぱい。 2015/03/12(木) 11:37:14.37 ID:DyIbiY5i0.net
>>16
ループさせてその処理を書くだけ
0詰め編集は必要かな

21: 名無しさん@お腹いっぱい。 2015/03/12(木) 12:37:16.04 ID:QWbt8LCP0.net
>>17
横からで悪いけど連番作るのはFor a = 1 to 100で簡単に思いつくけど
前の空きを0で埋める方法って具体的にどんな方法があるんだろう
現状必要としてないけど、知識として知っておきたい

26: 名無しさん@お腹いっぱい。 2015/03/12(木) 13:39:50.50 ID:uSEK81CY0.net
>>16は諦めました
メモ帳に
0001
0002
0003
0004
0005
0006
(省略)
9998
9999

と自動で打ち込むにはどう書けばいいか教えてください。

27: 名無しさん@お腹いっぱい。 2015/03/12(木) 13:49:25.76 ID:MRuS/Qcf0.net
>>26
Excelでセルの書式設定→表示形式を文字列にする

0000
0001
0002
と入力する

その3つのセルを選択して、9999まで引っ張る

メモ帳にコピペ

31: 名無しさん@お腹いっぱい。 2015/03/12(木) 14:48:17.44 ID:uSEK81CY0.net
>>27
ありがとう。でも知りたいのはUWSUでやる方法なんです

33: 名無しさん@お腹いっぱい。 2015/03/12(木) 14:54:24.36 ID:J8DmLdi70.net
>>31
execとsendstr使えばいいけど、
遅いから一旦ファイルに書き出した方がいいと思うよ

19: 名無しさん@お腹いっぱい。 2015/03/12(木) 11:48:38.58 ID:xGHFbvBc0.net
よく分からんなら答えるなよカス

20: 名無しさん@お腹いっぱい。 2015/03/12(木) 11:51:03.47 ID:DyIbiY5i0.net
>>19
煽るだけならレスすんなよクズ

22: 16 2015/03/12(木) 12:46:14.67 ID:uEkExkhE0.net
9999までforで代入するのはわかるけど、それをどうやって文字に変換するの?
sendstrのクリップボードに送りたい

23: 名無しさん@お腹いっぱい。 2015/03/12(木) 12:57:12.93 ID:2RVo/dHL0.net
UWSCのみでやるなら
ゼロプレスは最大桁数-1の”0”(この場合は”0000”)とVAL()で文字列を数値に変換したのを連結する
POS()と連結後の長さを使えば良い

28: 名無しさん@お腹いっぱい。 2015/03/12(木) 13:58:30.94 ID:J8DmLdi70.net
>>23
copy使ったほうが簡単な気も

24: 名無しさん@お腹いっぱい。 2015/03/12(木) 13:13:51.32 ID:eDOJrmZ/0.net
UWSCの構文網羅した入力補完機能付きエディタありませんかね?
Visual Studioに慣れてしまって、入力補完ないとサクサクコーティングできない

25: 名無しさん@お腹いっぱい。 2015/03/12(木) 13:18:35.81 ID:2RVo/dHL0.net
秀丸はヘルプの予約語からコピペして辞書作ったら出来るよ
コーディング向けエディタなら大抵出来ると思うが

30: 名無しさん@お腹いっぱい。 2015/03/12(木) 14:25:53.29 ID:Twlw2OwD0.net
数値→文字列変換なんてのはどの言語にもあるし、UWSC 文字列 関数でぐぐればすぐ分かるよ。

32: 名無しさん@お腹いっぱい。 2015/03/12(木) 14:49:04.15 ID:2RnQOx5x0.net
for 0 to 9を4つ重ねてひっつける方法が真っ先に浮かんだけど
ぐぐって出てきたformatとreplace使う方法のほうが良さそうだ

34: 名無しさん@お腹いっぱい。 2015/03/12(木) 14:55:30.92 ID:srIDA4G60.net
for i = 0 to 9999
number = replace(format(i, 4), " ", "0")
sendstr(0, number)
クリップボードに文字列が入っているので処理する
next

こんな感じではいかんの?

36: 名無しさん@お腹いっぱい。 2015/03/12(木) 16:31:15.31 ID:uSEK81CY0.net
>>34
をコピペしたけど出来なかった。

35: 名無しさん@お腹いっぱい。 2015/03/12(木) 15:11:43.96 ID:J8DmLdi70.net
formatか
勉強になった

37: 名無しさん@お腹いっぱい。 2015/03/12(木) 16:40:42.25 ID:srIDA4G60.net
コピペだけじゃなくてちっとは自分で考えろや
クリップボードに入れる所まで作ってもらっといてまだできないとかお前はミジンコか?

38: 名無しさん@お腹いっぱい。 2015/03/12(木) 16:49:05.39 ID:s3+uw6570.net
仕様書いたら、誰かが完璧なコードに起こすのを待ってるんだろうな

39: 名無しさん@お腹いっぱい。 2015/03/12(木) 17:17:25.66 ID:ZJ/7B8lw0.net
The クレクレ君

40: 名無しさん@お腹いっぱい。 2015/03/12(木) 17:19:12.36 ID:uSEK81CY0.net
ミジンコですんません次はプラナリア目指します
ごめんなさい

41: 名無しさん@お腹いっぱい。 2015/03/12(木) 17:23:47.76 ID:Twlw2OwD0.net
てっとりばやく動くものがほしければ、お金出してつくってもらえばいいんでない。
コードいじったりするつもりないなら

42: 名無しさん@お腹いっぱい。 2015/03/13(金) 05:31:41.02 ID:d1ZXmJXS0.net
モバゲーのサークル等画像認証がある場合連投ツールはUWSCで作れますかね。1から勉強してみようと思っているのですが

43: 名無しさん@お腹いっぱい。 2015/03/13(金) 05:49:48.08 ID:SzHwFuiM0.net
>>42
UWSC単独では無理
画像解析の勉強もすることになる、というかそっちの方のウェイトが大きい

45: 名無しさん@お腹いっぱい。 2015/03/13(金) 14:03:28.27 ID:kEU/A8NO0.net
>>42 >>43さんありがとうございます。毎回画像認証をかいくぐって連投してくる人がいるのですが

仕組みをよく理解されてるみたいです。画像認証についても勉強してみます。

46: 名無しさん@お腹いっぱい。 2015/03/13(金) 14:14:36.21 ID:Grt+Wagz0.net
>>45
> 毎回画像認証をかいくぐって連投してくる人

何も画像認識をしているとは限らないと思いますが、
画像にしても弾く処理にしても、どっか甘いんじゃないですか?

2ちゃんねるだってAPI実装で
今日から過去の専ブラが使えなくなりましたが
みんなそれをかいくぐってアクセスしてるでしょ?

44: 名無しさん@お腹いっぱい。 2015/03/13(金) 12:19:53.14 ID:bWuS9Pqc0.net
画像認証する理由がマクロ対策のためだからな
それが簡単に出来たら対策じゃないし

47: 名無しさん@お腹いっぱい。 2015/03/13(金) 14:18:43.29 ID:fXWUGn930.net
CAPTCHA突破じゃなく連投制限にひっかかってCAPTCHA出てるだけじゃない?
モバゲーは知らんけども、同一IPからこ連投には荒らし対策としてCAPTCHA入れてくるところがある
それなら自動的に串刺すとかで対処してるんじゃないかな
よっぽど見やすいものでもない限りCAPTCHA突破は無理

52: 名無しさん@お腹いっぱい。 2015/03/13(金) 16:16:10.16 ID:k9PzO4D60.net
>>47さん そうなんですね。全くの素人で分からないのですが、youtubeに画像認証突破している同士がをさっき見つけたので見やすいものなんだとおもいます。

48: 名無しさん@お腹いっぱい。 2015/03/13(金) 14:54:18.58 ID:iLROOU3y0.net
最近は人力解除サービスもあるけどね

49: 名無しさん@お腹いっぱい。 2015/03/13(金) 15:46:21.29 ID:n6HUnrPd0.net
ウィンドウ操作のCTRLWINで最前面操作はありますが、最後面にしたい場合はどうしたらいいですか?
別の方法でもかまいません

50: 名無しさん@お腹いっぱい。 2015/03/13(金) 16:05:04.46 ID:bWuS9Pqc0.net
>>49
getallwinで全てのウインドウ取得して
ループさせて、対象のウインドウ以外を一通り最前面にすれば一応できそう
でも非表示の変なウインドウまで出すとエライことになるはずだから
statusで座標、可視状態、アイコン状態?とかを見て
普通のウインドウであることを判定してからやる必要がありそう

68: 名無しさん@お腹いっぱい。 2015/03/14(土) 02:35:32.08 ID:YAMOqMkr0.net
>>49
Alt + Esc

74: 49 2015/03/14(土) 09:30:10.62 ID:3A8gIjv70.net
>>68
すみません助かりました
ありがとうございます

51: 49 2015/03/13(金) 16:08:07.04 ID:dhQkIESf0.net
うーん、getallwinは使ってみたんだけど使うたびにウィンドウIDの連番が変わるのと言っている通り変なウィンドウまで取得しちゃうし
getallwin(getid("firefox"))としてもfirefoxのウィンドウだけ取得するってのができなかったんだよね…

54: 名無しさん@お腹いっぱい。 2015/03/13(金) 16:26:41.95 ID:bWuS9Pqc0.net
>>51
使うたびにと言うのはループの外で一度だけ呼べばいいと思うけど
何か問題あるん?
家帰ったらコード書いてみようかな

getallwin(id)は小ウインドウ取得みたいだから、親子関係になってないと取れないね

55: 名無しさん@お腹いっぱい。 2015/03/13(金) 16:33:35.20 ID:dhQkIESf0.net
>>54
申し訳ないです…
使うたびに変わるのは問題ないんですが、取得したものの中からfirefoxのものだけ抽出するのがうまくいかずに…
親ウィンドウ子ウィンドウの関係が理解できなかったけど、タブのようなものかな?

56: 名無しさん@お腹いっぱい。 2015/03/13(金) 16:55:43.66 ID:M+E6GPZL0.net
>>55
Status()でパスとかタイトルからFirefoxと認識するのでは不十分ってこと?

66: 54 2015/03/13(金) 20:31:01.18 ID:g+EPUdK80.net
>>55
まず、下の処理を実行して全てのウィンドウ情報を出力してみる
for id in getAllWin()
  print "■" + status(id, ST_TITLE)
  print status(id, ST_CLASS)
  print status(id, ST_VISIBLE)
next

出力した中で不要なIDっぽいのを判別できる条件を探す。その条件を一つずつ指定して、除外していく。
俺の環境の場合↓で行けたっぽい
for id in getAllWin()
  // 非表示は処理しない
  if !status(id, ST_VISIBLE) then continue
  // タイトルなしも処理しない
  if status(id, ST_TITLE) = "" then continue
  // スタートボタン(タスクバー?)も処理しない
  if status(id, ST_TITLE) = "スタート" then continue
  // 何コレ
  if status(id, ST_TITLE) = "Program Manager" then continue
  // 対象のウィンドウは処理しない(今回はFireFox)
  if status(id, ST_CLASS) = "MozillaWindowClass" then continue
  
  print "■" + status(id, ST_TITLE)
  print status(id, ST_CLASS)
  print status(id, ST_VISIBLE)
next

対象のウィンドウ以外で、普通のウィンドウだけが残ったなら、最後に、printの行のところをctrlWin(id, ACTIVATE)にすればOK
全角空白でインデントしてるので、半角スペースやtabに置換してね
環境によるから2番目のコードは参考程度にして自分で作ったほうがいい

67: 49 2015/03/13(金) 20:34:35.74 ID:JhaWoMs/0.net
>>66
ありがとうございます
調べながらやってみます

53: 名無しさん@お腹いっぱい。 2015/03/13(金) 16:22:01.41 ID:fXWUGn930.net
発展途上国では画像認証入力代行のアルバイトもあるってどっかで見たな

57: 名無しさん@お腹いっぱい。 2015/03/13(金) 17:10:01.60 ID:4oBlUJIb0.net
画像認証で画像が消えるまでその画像を1秒おきにクリックするという
スクリプト作りたいんだけど、どういうの使うかアドバイスくだされ

58: 名無しさん@お腹いっぱい。 2015/03/13(金) 17:14:41.38 ID:fXWUGn930.net
さすがにそれはuwscの基本でしょ
chkimgのヘルプ見るだけでできると思う

59: 名無しさん@お腹いっぱい。 2015/03/13(金) 17:16:53.57 ID:PxmAUj3h0.net
これって他の言語から呼び出して戻り値を渡すことってできる?

例えば、C#で作成したフォームアプリにUWSCに画像認識任せて、結果をC#に返す。みたいな。

UWSC単体ではGUIが表示できないので困ってます

60: 名無しさん@お腹いっぱい。 2015/03/13(金) 17:41:52.92 ID:bWuS9Pqc0.net
>>59
exitexitで終了コードは返せる

64: 名無しさん@お腹いっぱい。 2015/03/13(金) 18:04:46.58 ID:Nd6+FKpZ0.net
>>60
ありがとうございます。

63: 名無しさん@お腹いっぱい。 2015/03/13(金) 17:52:47.80 ID:KwP/0EEO0.net
>>59
ぶっちゃけc#使えるならOpenCVSとか使った方が良いぞ?

64: 名無しさん@お腹いっぱい。 2015/03/13(金) 18:04:46.58 ID:Nd6+FKpZ0.net
>>63
OpenCVSですか、ちょっと調べてみます。

61: 名無しさん@お腹いっぱい。 2015/03/13(金) 17:44:26.22 ID:IhBN30Jy0.net
surface pro 3で、クリックで記録しているのてすが、ズレが生じています。
自分が動かした所の右下で記録した動作が行われてしまいます…
関数書く知識もないので原因が全く分かりません…

分かる方宜しくお願いいたします…!

65: 名無しさん@お腹いっぱい。 2015/03/13(金) 18:51:22.90 ID:p6+WWHEG0.net
>>61
>surface pro 3 での動作について NEW / shadow
>windows8.1です。
>
>uwscで記録は出来るのですが、記録した通りの動きをしてくれません。
>必ず少し右下からの動作になり、ズレが生じてしまいます。
>
>わかる方居りましたらよろしくお願いいたします。
>No.997 2015/03/13(Fri) 17:25:07
>☆ Re: surface pro 3 での動作について NEW / shadow
>すみません。
>ブラウザはクロームです。

これは酷い
エスパーにしか分からんわ

ブラウザの位置を左上に戻せよ

62: 名無しさん@お腹いっぱい。 2015/03/13(金) 17:45:37.39 ID:b9N18eWc0.net
どっから迷いこんできたんだこれ

69: 名無しさん@お腹いっぱい。 2015/03/14(土) 08:13:04.56 ID:WGKI2Nkm0.net
ブラゲマクロのループ内にiniのデータ再読み込みを入れてるのに、ini書き換えても反映されないと思ったら
public宣言と同時に読み込みしてたから二重定義で二回目以降はスルーされてたんだな
エラー吐かないから全然気づかなかったわ
配列の二重定義だとエラー吐くのに

70: 名無しさん@お腹いっぱい。 2015/03/14(土) 08:38:53.68 ID:mkTRBuo80.net
というかゲーム自動化マクロの話題はNGっていうのが暗黙の了解じゃなかったのか?
久しぶりに来たら、その類いの質問に覆われてるんだけど

73: 名無しさん@お腹いっぱい。 2015/03/14(土) 09:20:37.66 ID:yF8bwDJf0.net
>>70
いつのまにかそうなってるね
答える側が消えない限り以前のようになるのは無理だと思う

75: 名無しさん@お腹いっぱい。 2015/03/14(土) 10:18:14.28 ID:WGKI2Nkm0.net
>>70
スレ見始めたのも使い始めたのも最近だから知らんかった
すまんな

ゲーム自動化の話題はNGってテンプレに入れといたほうがいいんじゃない?

71: 名無しさん@お腹いっぱい。 2015/03/14(土) 08:53:32.25 ID:5WiP7gL70.net
あの4桁は銀行か携帯だろうしな
そろそろやばいと思うわ

72: 名無しさん@お腹いっぱい。 2015/03/14(土) 09:10:58.21 ID:oSk0qD2D0.net
あんな程度で突破できるセキュリティならとっくに破られてるわw
つーかあーいうのは5回くらいミスると別のロックがかかるのが普通だしな

76: 名無しさん@お腹いっぱい。 2015/03/14(土) 10:57:25.31 ID:BYWwaXUY0.net
ここに書き込むのって、ほぼゲーム自動化マクロだから、どうせ禁止にしたって質問する奴は後を絶たない
OKでいいんじゃない?

77: 名無しさん@お腹いっぱい。 2015/03/14(土) 11:09:35.85 ID:x4MA2C8f0.net
目的で禁止するんじゃなくて、丸投げを禁止するとかで

78: 名無しさん@お腹いっぱい。 2015/03/14(土) 12:44:57.63 ID:EJC2N5U10.net
普通のアプリ操作する分にはコントロールが取得できるから
ぶっちゃけゲーム目的でもない限り画像比較なんて滅多に使わないよ
IE以外のブラウザを意地でも操作したいケースとJavaアプリを操作するケース位じゃないかな

79: 名無しさん@お腹いっぱい。 2015/03/14(土) 16:39:06.41 ID:vESWpEGX0.net
同じ症状で解決策があれば教えてください

参考サイト
http://uwsc.wpblog.jp/?page_id=13

IFB CHKIMG("sample1.bmp")
MSGBOX("画像認識に成功しました。)
ELSE
MSGBOX("画像認識に失敗しました。")
ENDIF

//この時点では画像認証成功

COUNT = CHKIMG("sample1.bmp",1,,,,,-1)
MSGBOX(COUNT)
IFB COUNT > 0
MSGBOX("画像認識に成功しました。")
ELSE
MSGBOX("画像認識に失敗しました。")
ENDIF

//COUNT = CHKIMG("sample1.bmp",1,,,,,-1)この行で
//「CHKIMG: Unknown error」が出てしまいます。
//念のため次の行でCOUNTを出力するとやはり0で
//記述が間違っていますでしょうか

80: 名無しさん@お腹いっぱい。 2015/03/14(土) 16:48:09.18 ID:vESWpEGX0.net
chkimgの引数をかえて解決できそうです失礼いたしました。

81: 名無しさん@お腹いっぱい。 2015/03/14(土) 16:58:10.03 ID:WGKI2Nkm0.net
ヽ(・ω・)/ズコー

82: 名無しさん@お腹いっぱい。 2015/03/15(日) 05:42:44.66 ID:hoogL2Uj0.net
【net】今日も元気にスクリプト水増し
ttp://next2ch・net/test/read.cgi/poverty/1426346131/

UWSCで投稿スクリプトを作って200レスx2,3日やったら規制食らったんだけど
1000件以上書き込みしてる連中は規制されないのかね?
API必須になったから規制しやすいと思うんだけどね。

83: 名無しさん@お腹いっぱい。 2015/03/16(月) 00:40:08.18 ID:DlzN5Tfx0.net
msvcrt.dllからmemcmpを利用して配列の比較を行いたいと思ってます。
UWSCでの記述方法がわかりません。
以下のように記述すると等しくない配列の場合でも戻り値が0になります。

DEF_DLL memcmp(var int[],var int[],int):int:msvcrt.dll
n = 8
DIM y01[] = 0, 1, 0, 0, 0, 0, 0, 0, 1
DIM x01[] = 0, 1, 0, 0, 0, 0, 0, 0, 1
DIM x02[] = 0, 1, 1, 0, 0, 0, 0, 0, 1

IF memcmp(y01, x02, n) = 0
 PRINT "TRUE"
ELSE
 PRINT "FALSE"
ENDIF

90: 名無しさん@お腹いっぱい。 2015/03/16(月) 09:40:46.71 ID:PlEJfnTV0.net
>>83
memcmpなんか使っちゃダメ
UWSCでは配列のアドレスが連続であることまで保証していないから
同じサイズ、同じ数字同士の比較であっても一致判定されるとは限らないよ
そもそも型サイズすら保証されてないから意味がない

91: 名無しさん@お腹いっぱい。 2015/03/16(月) 10:19:30.77 ID:Wof3gerZ0.net
>>90
> UWSCでは配列のアドレスが連続であることまで保証していないから
dll呼び出しで渡した時点で連続になる

> そもそも型サイズすら保証されてないから意味がない
ドキュメントにあるがサイズは決まってる
※int=long= bool(4byte)、dword=uint=hwnd、 char=boolean(1byte)

120: 名無しさん@お腹いっぱい。 2015/03/24(火) 21:33:05.04 ID:ubWEHTBe0.net
> >>91
> > UWSCでは配列のアドレスが連続であることまで保証していないから
> dll呼び出しで渡した時点で連続になる
> > そもそも型サイズすら保証されてないから意味がない
> ドキュメントにあるがサイズは決まってる
> ※int=long= bool(4byte)、dword=uint=hwnd、 char=boolean(1byte)

少なくともHELPには載ってない。
実際のところ作者がC++とかに準拠して作ってるために
結果的にその通りになっているのかもしれないが、
だとしても、作者がHELPに「載せてない」
ということは、作者がその挙動を保証しない、ということ。

121: 名無しさん@お腹いっぱい。 2015/03/24(火) 21:43:20.01 ID:VG1i25kl0.net
>>120
Helpの「DLL仕様定義」に書いてあるよ

120: 名無しさん@お腹いっぱい。 2015/03/24(火) 21:33:05.04 ID:ubWEHTBe0.net
> >>90
> > UWSCでは配列のアドレスが連続であることまで保証していないから
> dll呼び出しで渡した時点で連続になる
> > そもそも型サイズすら保証されてないから意味がない
> ドキュメントにあるがサイズは決まってる
> ※int=long= bool(4byte)、dword=uint=hwnd、 char=boolean(1byte)

少なくともHELPには載ってない。
実際のところ作者がC++とかに準拠して作ってるために
結果的にその通りになっているのかもしれないが、
だとしても、作者がHELPに「載せてない」
ということは、作者がその挙動を保証しない、ということ。

84: 名無しさん@お腹いっぱい。 2015/03/16(月) 00:43:14.47 ID:DlzN5Tfx0.net
C言語なら以下サンプルのように記述すれば動作するようです。
#define N 8
int main(void) {
 int x1[] = {0, 1, 2, 3, 4, 5, 6, 7};
 int x2[] = {0, 1, 2, 3, 4, 5, 6, 7};

 /* x1 と x2 を比較 */
 if ( memcmp(x1, x2, sizeof(int) * N) == 0 ) {
printf("x1とx2は同じ要素を持つ配列です.\n");
 } else {
printf("x1とx2は異なる要素を持つ配列です.\n");
 }

 return EXIT_SUCCESS;
}
比較したい配列の内容はサンプルと同じ数字1文字になります

85: 名無しさん@お腹いっぱい。 2015/03/16(月) 01:21:25.94 ID:WrVIpTH30.net
Cだと sizeof(int) * N なんだから n*4 とかにするんじゃないの?
UWSCのintが32bit長かどうかは知らないけど

86: 名無しさん@お腹いっぱい。 2015/03/16(月) 01:56:19.65 ID:UdmG8GDz0.net
動かして見たけどn=length(y01)*4が正しそうだね

87: 名無しさん@お腹いっぱい。 2015/03/16(月) 05:23:07.52 ID:2C8i7Z6P0.net
WEBなどから取り込んだテキストを,等で区切って文字列を配列に格納したいのですが、そういった命令文はありますか?あと、その場合、配列の総数がわからないのですが、あらかじめ多めに用意しておくものなのでしょうか?

88: 名無しさん@お腹いっぱい。 2015/03/16(月) 07:32:26.75 ID:UdmG8GDz0.net
>>87
カンマ区切りを配列にするのはsplit

92: 名無しさん@お腹いっぱい。 2015/03/16(月) 14:14:26.06 ID:j9PZCEg20.net
>>87
ワイPerl使い
UWSCの配列には不評
これを常に持ち歩く
ttp://heppoko.fam.cx/UWSざんがい/Array.uws.txt

93: 名無しさん@お腹いっぱい。 2015/03/16(月) 17:36:09.87 ID:2C8i7Z6P0.net
>>92
ありがとうございます。
スマホでぱっとみた感じ、キューとかも実装してるんですかね。
帰ったら詳しくみてみます。

94: 名無しさん@お腹いっぱい。 2015/03/16(月) 19:31:01.71 ID:tKWF7XPV0.net
>>92
>Function Push(var PAR[], Val)
> DIM Siz = ReSize(PAR) + 1
>
> ReSize(PAR, Siz)
> PAR[Siz] = Val
>
> Result = Val
>FEnd

おいおい
ふざけてんのか?

89: 名無しさん@お腹いっぱい。 2015/03/16(月) 07:41:51.44 ID:NlIIv4/A0.net
配列の総数はsizeofで求めれるでしょ
はい終了

95: 名無しさん@お腹いっぱい。 2015/03/16(月) 21:12:06.58 ID:xJMP86aK0.net
茶化すだけだと見っともないよ

96: 名無しさん@お腹いっぱい。 2015/03/16(月) 21:22:23.98 ID:KRGYyVXs0.net
ん?
Rubyだと配列を引数で渡しても参照元のオブジェクトが同一だから破壊的に変更すればメソッドの中と外の両方に影響するけど
UWSCはオブジェクト指向じゃないからそんなことできないよな?

97: 名無しさん@お腹いっぱい。 2015/03/16(月) 21:42:12.49 ID:xJMP86aK0.net
>>96
それは関数の引数にVerつけて参照引数にすればできるよ

98: 名無しさん@お腹いっぱい。 2015/03/16(月) 22:06:12.60 ID:KRGYyVXs0.net
>>97
まじで?
UWSCの配列使いづらすぎて敬遠してたけど今度自作関数作って使ってみようかな

99: 名無しさん@お腹いっぱい。 2015/03/17(火) 00:56:03.25 ID:G6kIl/aB0.net
ふざけるも何もPerlの挙動と一緒だろ
何がおかしいのかわからん

100: 名無しさん@お腹いっぱい。 2015/03/17(火) 01:09:24.08 ID:V1uFplEC0.net
UWSCでは関数名に代入することで戻り値になるのね
だから最終行の Result への代入では戻り値に成らない
でも引数は参照渡しだかえら呼び出し元はソッチを使っている筈
要するに FUNCTION である必要はなくて PROCEDURE で良い挙動なのです

でも個人的には動作しているならとりあえずはそれでイイんじゃない?ってスタンス
おいおい勉強していけば良いのです

101: 名無しさん@お腹いっぱい。 2015/03/17(火) 06:49:13.32 ID:trvcbMmd0.net
perlはやったことないけどググってみたらpushの戻り値は値追加後の配列の要素数って書いてるけど
rubyでも戻り値はselfだから追加した要素が戻り値なのはどこの仕様なんだ?

>>100もfunctionにresultが必要ないとか言ってるし意味わからん
仕様が変わったのかと思って>>100の言うとおり関数と同じ名前の変数に値を代入してfunctionを抜けたらやっぱり「resultがない」エラー出たし

急に知ったかおじさん増えすぎじゃね?

102: 名無しさん@お腹いっぱい。 2015/03/17(火) 08:21:27.03 ID:HJBxL4o70.net
pushは押し込むって意味なんだから
それ以外の意味の処理があっても使わないわ
可読性が落ちる

103: 名無しさん@お腹いっぱい。 2015/03/17(火) 08:26:46.64 ID:IrmOB+4O0.net
関数名に代入すると戻り値?VB系とUWSCの区別が出来てないだけだろ

「FUNCTION である必要はなくて PROCEDURE で良い挙動」だけは賛成
配列サイズを戻すとかなら理解できるが
引数で渡されたものをそのまま戻り値に設定とかPerlって頭おかしいの?

だいたい配列サイズ取得にresizeを使ってる時点でウンコード
はやく消すべき

104: 名無しさん@お腹いっぱい。 2015/03/17(火) 09:24:02.94 ID:bEbY/JTw0.net
UWSCのヘルプより

 // Function - Fend    関数(戻り値あり)

 FUNCTION関数名( 引数, Var 引数, 引数[], Var 引数[][], 引数=定数, .... )
    処理
    RESULT = 戻り値    // Result に戻り値を入れる
 FEND

(例)
// 関数定義
function 階乗計算(値)
  ifb 値 = 0 then
    Result = 1
    Exit
  endif
  Result =値 *階乗計算(値-1)  // このように再帰計算もできるよ
fend

105: 名無しさん@お腹いっぱい。 2015/03/17(火) 13:02:08.56 ID:LvEKUW+E0.net
貼った意味がわからん

106: 名無しさん@お腹いっぱい。 2015/03/17(火) 16:33:33.21 ID:oYHC9Epn0.net
youtubeでリストを倍速で見たい

3~10分の情報系の動画をまとめて見る際に通常は1.5倍速で見てる
倍速を毎回押すの面倒
ggr→UWSC→UWSCで倍速は出来るが毎回(リストの次動画に変わる事に)押さなくちゃいけん
→ifとかでブラウザ変わったらとか?→ない→積んだ

どうにかできますか?
プログラムには特に興味はありません
全く素人ですがggって目的を達成できるなら素人なりの事はしようと思ってます
レスは夜になると思いますがよろしくおなしゃす

111: 名無しさん@お腹いっぱい。 2015/03/18(水) 22:46:05.79 ID:NqSwYxol0.net
>>106
リストってことは、最初から見る動画は決まってるんだから、事前にローカルにダウンロードしとけば?

107: 名無しさん@お腹いっぱい。 2015/03/18(水) 08:11:53.70 ID:lBs4xwoHB
倍速なんてあったんだな。便利やね。

youtubeの構造ちゃんと理解してないが、「動画ごとにURLが違う」のであれば、whileで監視して、アドレスが変わるたびに倍速処理をすれば良いと思われ。
busywait()の中身はggrば出てくる。

Public IE
IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True
setOleEvent()
url_b="https://www.youtube.com/watch?v=p0IZoYoEwtA"


IE.Navigate(url_b)
BusyWait()

while true
 sleep(0.2)
 url_a=IE.locationURL
 ifb url_a<>url_b then
   print "URL(動画)が変わったよ" //←消して良し
   //←←←←ここに倍速を押す処理を記入する
 endif
 url_b=url_a
wend

108: 名無しさん@お腹いっぱい。 2015/03/18(水) 13:56:12.05 ID:WtkQEVNZ0.net
YouTubeAPIを使って再生リストの動画を全部1.5倍速で再生するプレイヤーをJavaScriptとHTMLで書いて、実行すればいいよ。

110: 名無しさん@お腹いっぱい。 2015/03/18(水) 17:36:57.16 ID:F7+nEtwv0.net
>>108
ありがとうございます
少し調べてみましたが、自分の現時点での能力・知識では
時間がかかりそうなので今回は辞めときます

109: 名無しさん@お腹いっぱい。 2015/03/18(水) 15:52:33.19 ID:Dr6MH4qF0.net
EXE化したスクリプトって分解できない?

112: 名無しさん@お腹いっぱい。 2015/03/19(木) 00:44:39.56 ID:5ftHMR6F5

113: 名無しさん@お腹いっぱい。 2015/03/19(木) 00:46:01.06 ID:5ftHMR6F5
やる気があるように見せかける初心者が屑に見える最近

114: 名無しさん@お腹いっぱい。 2015/03/20(金) 05:20:54.52 ID:f+wf7u8Q3
UWSCとVBAとJavascriptくらいしか触ったことないんだけど、
CとかJAVAとかRubyなんかで作業の自動化しようと思うと
やっぱりそれなりに手間なものなの?
どっかで、pythonだと1週間かかるものがUWSCだと数時間でできる、みたいに
書いてた。

115: 名無しさん@お腹いっぱい。 2015/03/20(金) 16:55:34.66 ID:fi6uTuYEj
>>114
習熟度による。

書き込みは 。net じゃないと返事もらえないよ

116: 名無しさん@お腹いっぱい。 2015/03/20(金) 18:11:16.33 ID:5p/YG16zF
UWSCの利点は手軽にCHKIMGが使えるところかな
それ以外だとVBAでもVBSよい気がするし
Javascript、pythonだとデスクトップ操作と用途が違うし
C、JAVAも開発環境入れないといけないぶん手軽にというわけにはいけないし
ただUWSCのCHKIMGも慣れないと使いこなすのが難しいという
おそらく数時間でできると言うのは記録機能のことだと思うけど(たぶん)
記録機能は簡単だけどあまり使い物にならなくてそれ以上の事をすると要求レベルが上がる感じかな
UWSCもsikuliのようなIDEあればかなり簡単になりそうなのにね

117: 名無しさん@お腹いっぱい。 2015/03/20(金) 23:56:32.15 ID:f+wf7u8Q3
>>114
指摘ありがとう。最近はそうなのか。調べてみる。

>>115
わかりやすくて助かる。やっぱ開発環境準備は色々面倒そうだな。
あと正直、CとJAVAは文法が面倒なイメージもある。
一応有名どころの10種類くらいは浅く広く触ってみる予定。
参考になったよ。ありがと

118: 名無しさん@お腹いっぱい。 2015/03/24(火) 19:46:39.60 ID:0csxS8hZ0.net
プロセスのメモリアドレスを直接指定し、値の変化によって条件分岐させたいんですが
ヘルプを読んでも見当たりません
分かる人いましたら教えてください

119: 名無しさん@お腹いっぱい。 2015/03/24(火) 20:00:31.60 ID:0csxS8hZ0.net
>>118
自己解決したので取り下げます

122: 名無しさん@お腹いっぱい。 2015/03/24(火) 22:08:48.85 ID:ubWEHTBe0.net
くっそまた罠にかかったわ
どうせ「dll呼び出しで渡した時点で連続になる」もソースはあるが
俺みたいのが罠にかかったレスするようにソース示さんのだろ…

<DLL 使用定義>
 // DLL(API等)の関数を使用する事ができるようになります (64bitのDLLは呼び出せません)

 DEF_DLL 関数名(型, 型, ...): 戻り型: DLL名
 型: int、long、bool、uint、hwnd、string、Wstring、float、double、word、dword、byte、char、pchar、Wchar、pWchar、boolean、longlong、Extended、SafeArray

 参照引数(値変更あり)の場合は Var 宣言を付ける   関数名( var double, var int )      
 構造体:型を { } にて展開して書く    関数名( double, {int, int, int} ) 
 配列の場合は型に [] を付ける      関数名( double[], int[] )

 ※int=long= bool(4byte)、dword=uint=hwnd、 char=boolean(1byte)
   ヌルポインタを渡す時は NULL定数を使用してください

123: 名無しさん@お腹いっぱい。 2015/03/24(火) 22:25:07.26 ID:SkbizcxB0.net
特に調べずにレスるけれど
そのHELPの説明文でDLLに配列を渡すケースの例示をしている時点で
対応している(少なくとも渡す時点で並べ替えている)と認識すべきでは?

124: 名無しさん@お腹いっぱい。 2015/03/24(火) 23:24:02.37 ID:+Gkl469c0.net
ポインタのポインタを渡す必要のあるDLLの場合は
どう呼び出したらいいのこれ?

125: 名無しさん@お腹いっぱい。 2015/03/25(水) 00:34:52.49 ID:oRqHVS3u0.net
初心者です。
初めて手動で組んだのですが動きません・・

監視対象がアクティブになっている時に、
右クリックを押しているかの判断をして、右クリックが押されている間はメッセージを表示しながら左クリックを押し続ける。右クリックが離されたらメッセージ表示と左クリックをやめる。
といった内容で作ったつもりなのですがどこが悪いのでしょうか?

//ソース

If GETID(GET_ACTIVE_WIN) = GETID("hoge","hogehoge")
if (Light, CLICK)
While True
printf("右クリックを離すまで、左クリックを押し続けます");
BTN(LEFT, CLICK)
ExitExitExit
endif

184: 名無しさん@お腹いっぱい。 2015/03/28(土) 01:13:42.18 ID:bZyZO34x0.net
もともとの質問は>>125

126: 名無しさん@お腹いっぱい。 2015/03/25(水) 02:02:25.74 ID:jIUaDhvR0.net
なんて高度な釣りなんだ・・・

128: 名無しさん@お腹いっぱい。 2015/03/25(水) 10:50:01.93 ID:oRqHVS3u0.net
>>126
釣りじゃないプログラムとか一切したことないからそう見えるのかもしれないけれど・・
右クリックを離すまで、左クリックを押し続けてほしいのに、離した後もクリックが解除されません
助けてください

//ソース一部間違ってたので直しました

If GETID(GET_ACTIVE_WIN) = GETID("hoge","hogehoge")
if (Light, CLICK)
While True
printf("右クリックを離すまで、左クリックを押し続けます");
BTN(LEFT, DOWN)
Else
BTN(LEFT,UP)
printf("右クリックを離したので、クリックは解除されました");
ExitExitExit
endif
endif

135: 名無しさん@お腹いっぱい。 2015/03/25(水) 17:32:39.84 ID:3cfucZBw0.net
>>128

Fukidasi("何かウインドウを選択")
While Status(GETID(GET_ACTIVE_WIN), ST_Active); WEnd

Dim Flag = 1
Dim Msg = Status(GETID(GET_ACTIVE_WIN), ST_Title)+":を選択中"
Dim WinID = GETID(GET_ACTIVE_WIN)

Fukidasi(Msg)
While Status(WinID, ST_Active)
Select Flag
Case 1; Ifb GetKeyState(2)
Btn(Left, Down)
Fukidasi(Msg+"<#CR>右クリックが押されています")
Flag = 2
EndIf
Case 2; If GetKeyState(2) = False
Btn(Left, Up)
Fukidasi(Msg+"<#CR>右クリックが離されました")
Flag = 1
EndIf
SelEnd
WEnd

Fukidasi(Msg+"<#CR>ウインドウがアクティブでなくなりました");Sleep(1)

138: 名無しさん@お腹いっぱい。 2015/03/25(水) 22:24:24.61 ID:5lotzBbd0.net
>>135ありがとうございます
参考にして電卓の7キー監視コード書いたのですがクリック関係の処理が思うように動作しません・・
すみませんがもう一度見てもらえないでしょうか・・
電卓を監視して電卓の7キーが#ffa500(オレンジ色)になった時に、
右クリックを押していたのなら、右クリックを離すまで、左クリックを押しっぱなしにする。
ただし、7キーが#fffafa(白色)に変わったのなら、右クリックを離していなくても左クリックを解除する。
ややこしいですが、まとめるとこんな感じです。
電卓7キーの色がオレンジ→その時、右クリックを押していたのなら、左クリックを押しっぱなしにする。
↑の左クリックが解除されるのは、右クリックを離した時。7キーの色が#fffafaになった時。
//ソース 電卓監視プログラム
Dim Flag = 1
While True   //監視ループのため追加。
If GETID(GET_ACTIVE_WIN) = GETID("calc","calc") Then  
If PeekColor(392, 79) = #ffa500 then
Select Flag
Case 1; Ifb GetKeyState(2)
Btn(Left, Down)
Fukidasi(Msg+"<#CR>電卓の色を元に戻すか右クリックを離すまで、左クリックが続行されます")
Flag = 2
EndIf
If PeekColor(392, 79) = #fffafa then
Case 2; If GetKeyState(2) = False
Btn(Left, Up)
Fukidasi(Msg+"<#CR>色が元に戻ったので、左クリックを解除しました")
Flag = 1
EndIf
Case 3; If GetKeyState(2) = False
Btn(Left, Up)
Fukidasi(Msg+"<#CR>右クリックが離されたので、左クリックを解除しました)
Flag = 3
EndIf
WEnd //アクティブでなくなっても終了させない。

140: 名無しさん@お腹いっぱい。 2015/03/26(木) 10:55:39.64 ID:WxPb2UPl0.net

141: 名無しさん@お腹いっぱい。 2015/03/26(木) 19:00:35.51 ID:3vXgCBKo0.net
>>140
すみません。画像見れない環境なので内容が分かりません・・・

142: 名無しさん@お腹いっぱい。 2015/03/26(木) 19:13:29.61 ID:gtlCQqye0.net

147: 名無しさん@お腹いっぱい。 2015/03/26(木) 20:58:44.15 ID:3vXgCBKo0.net
というコードのつもりで書いたのが>>138です
これ以上はもう追加のコードを書いて聞いたりしないので、助けてください。
お願いします。

149: 名無しさん@お腹いっぱい。 2015/03/26(木) 22:19:31.90 ID:3vXgCBKo0.net
はい。コード化は>>138でしました
だけどやりたい事が動かないから聞いてるんです・・
最初にも言ったけど釣りじゃないです
プログラムはもちろんスクリプトも書いたことなかったので、
なんで目的の動作しないのか分からないんです

168: 名無しさん@お腹いっぱい。 2015/03/27(金) 19:37:46.66 ID:PrwW+KZP0.net
>>138で具体的な解らない場所まで掲示してるのにいまだにちゃんと動作しません
嘘とか教えてないでせめて質問したコードが動くようになるまでは力をかしてほしいです

147: 名無しさん@お腹いっぱい。 2015/03/26(木) 20:58:44.15 ID:3vXgCBKo0.net
要は>>135のコードで、右クリックが押されている時をトリガーにしていましたが、
ここに更に分岐を組み込み、二つの条件を同時に満たした時に左クリックを実行させ、
同様に>>135では左クリックの解除条件が一つでしたが、解除条件を二つに増やし
そのどちらかの条件が満たされていた場合に、クリックを解除する

171: 名無しさん@お腹いっぱい。 2015/03/27(金) 20:40:56.12 ID:PrwW+KZP0.net
>>135みたいに優しく教えてくれる人お願いします・・

173: 名無しさん@お腹いっぱい。 2015/03/27(金) 20:47:27.70 ID:xpUecemo0.net
>>135
っていうかcaseの条件にifbっておかしくね?

174: ◆evw/E7kww2 2015/03/27(金) 21:05:47.25 ID:qYu4G05r0.net
>>173
; で区切ってるからエラーではないけど
理解を妨げるような書き方ではある。

184: 名無しさん@お腹いっぱい。 2015/03/28(土) 01:13:42.18 ID:bZyZO34x0.net
それは>>135で解決してるじゃんよ

それをアレンジ()でぶっ壊して動けなくしたのに
責任とって直せとか斜め上杉内?

ここってキチママスレだっけ?

127: 名無しさん@お腹いっぱい。 2015/03/25(水) 02:31:24.70 ID:XEMtgflI0.net
win8でCCleanerがアクティブウィンドウになってるとuwscが動かない
セキュリティ的な何かが働いてるの?

129: 名無しさん@お腹いっぱい。 2015/03/25(水) 10:52:48.25 ID:cHsBSJbN0.net
画面の一部分だけ認証したい場合はどうすればいい?
画面全体から指定画像を探すより指定画像がある位置が分かってるなら画面の一部分の範囲だけを
認証させたほうが早いと思うんだけど

130: 名無しさん@お腹いっぱい。 2015/03/25(水) 11:27:53.42 ID:NZF9GBii0.net
>>129
helpより抜粋
// 指定画像が画面上にあるかチェック、あればその情報を返す
戻値 = CHKIMG( 画像名, [透過色/色無視, x1, y1, x2, y2, 番号, 色幅] )
引数
 x1, y1, x2, y2: サーチ範囲
戻値
 有ればTRUE、無ければFALSE
 TRUE の場合は見つかった座標を特殊変数 G_IMG_X、 G_IMG_Y に格納

131: 名無しさん@お腹いっぱい。 2015/03/25(水) 11:37:57.45 ID:cHsBSJbN0.net
>>130
それは既に見たんだけどx1 y1 x2 y2 番号 色幅の部分がいまいち分からない
x1 y1には指定画像の座標入れるとしてx2 y2にはなにいれればいいんだ
あとは番号 色幅

133: 名無しさん@お腹いっぱい。 2015/03/25(水) 16:09:15.57 ID:3cfucZBw0.net
>>129
UWSCのヘルプ見て直感的に分からない様だと
センスが無いと思ってあきらめたほうが良いかもしれんな

CHKIMG( 画像名, [透過色/色無視, x1, y1, x2, y2, 番号, 色幅] )
        |      |       | | |  |  |   ↓ 
        |      |       | | 100%同じ画像~大体そんな感じの色
        |      |       | | と言うように曖昧性を持たせられる
        |      |       | | 画像と対象の色素数が違う場合は重要
        |      |       | | |  |  ↓ 
        |      |検索範囲に同じ画像が複数ある時、左上から数えた番号
        |      |       | | └┬┘
        |      |       | |   ↓
        |      |       | | 開始地点からのX Y距離
        |      |       | | 要するに画像サイズ
        |      |       | | 終了地点の座標はX1+X2、Y1+Y2
        |      |       └┬┘
        |      |         ↓
        |      ↓   開始地点のX Y座標
        | 認識させたい対象が別の映像の上にのっかっているとき
        | (例えばデスクトップの壁紙の上にあるアイコンを見つけたいとき)
        | 背面が単色の中央に認識対象がある画像を作り、その単色を指定
        ↓ 白でも黒でも緑でも何でもいいが画像ファイるに合わせる事
 画像ファイル名を指定

132: 名無しさん@お腹いっぱい。 2015/03/25(水) 11:53:24.81 ID:NZF9GBii0.net
CHKIMG( 画像名
の画像をペイントで開いて拡大してピクセルを数える
のが面倒だったら
たとえば、1024x1024→512x512→256x256みたいに小さくして試してみる
のもできないようだったら諦メロン

>あとは番号 色幅
う~ん、簡単なことすぎて説明が難しい
なにも指定しなくても、つまり
CHKIMG(a.bmp, ,x1, y1, x2, y2, , )
で動くことがあるけど、動かなかったら諦メロン

134: 名無しさん@お腹いっぱい。 2015/03/25(水) 16:30:06.28 ID:ClTC/D2u0.net
ヘルプが超不親切でも、自分で動かしてみたら分かることなんだから、
聞く前にやれと

136: 名無しさん@お腹いっぱい。 2015/03/25(水) 18:09:42.58 ID:FLBnQPHw0.net
今まで勘違いしてたわ
x2/y2って座標じゃなくてデルタ分なのかよ

>SAVEIMG( [画像名, ID, x, y, 幅, 高さ,
ならこういう感じで書いてくれたほうが判りやすいのに・・・

139: 名無しさん@お腹いっぱい。 2015/03/26(木) 06:31:07.23 ID:3d3GQGmu0.net
>>136
いや、座標じゃないの
7x8の画像でテストして59,220,10,10で画面に散らばってる画像に3ヒットしてきたし

137: 名無しさん@お腹いっぱい。 2015/03/25(水) 18:44:09.93 ID:0L3rdstQ0.net
まじかよ
それなら普通 x, y, width, height って書くんじゃないのかw

143: 名無しさん@お腹いっぱい。 2015/03/26(木) 19:20:46.41 ID:qEmTKwNj0.net
質問丸投げ系に一度答えてしまうと
こうして何度も似たようなコードを貼られてしまう

もし今の質問が解決しても今度は「電卓では動くけど○○では動かない」
と言い始めてまた質問を繰り返すだろう

簡単に答えてしまうことは誰の得にもならない

147: 名無しさん@お腹いっぱい。 2015/03/26(木) 20:58:44.15 ID:3vXgCBKo0.net
>>143
丸投げじゃないです。自分なりに考えて書きました・・
今回は ifbに PeekColorを使ってますが ここは何でもいいんです

144: 名無しさん@お腹いっぱい。 2015/03/26(木) 19:28:17.80 ID:XjewbGLC0.net
考える気がない質問については同意
後は非アクティブでマウス(ユニークな資源)を使いたい系の質問は仮想環境組めとしか答え様がない

147: 名無しさん@お腹いっぱい。 2015/03/26(木) 20:58:44.15 ID:3vXgCBKo0.net
>>144
非アクティブ時にマウス使う必要はありません
非アクティブ時にも自身を終了させずに、アクティブになったら監視を再開するように書き直しただけです

145: 名無しさん@お腹いっぱい。 2015/03/26(木) 19:40:58.28 ID:GF0ghmk90.net
○○はどうやればいいんでしょうか?(訳:スクリプト組んでください)

146: 名無しさん@お腹いっぱい。 2015/03/26(木) 20:00:15.14 ID:yo+FEPo60.net
UWSCが動くけど画像が見れない環境ってどんなのだ

148: 名無しさん@お腹いっぱい。 2015/03/26(木) 21:25:01.58 ID:XjewbGLC0.net
やりたいことを整理できているならコード化できる筈
最初はどんな泥臭いコードでもイイんですよ
やりたいことが動けば
だから貴方は考える気がない人か釣り人です

149: 名無しさん@お腹いっぱい。 2015/03/26(木) 22:19:31.90 ID:3vXgCBKo0.net
はい。コード化は>>148でしました
だけどやりたい事が動かないから聞いてるんです・・
最初にも言ったけど釣りじゃないです
プログラムはもちろんスクリプトも書いたことなかったので、
なんで目的の動作しないのか分からないんです

150: 名無しさん@お腹いっぱい。 2015/03/26(木) 22:26:42.64 ID:XjewbGLC0.net
これだけ時間がたっても画像が見れない環境に居続けているってのが先ず信用出来ないから釣り確定です
明日ID変わってから別のネタでどうぞ

151: 名無しさん@お腹いっぱい。 2015/03/26(木) 22:54:38.20 ID:3vXgCBKo0.net
>>150
すみません。ウィルス感染したことがあって画像は見れないです
そもそも画像にする意味が分かりません
ここに書いてくれればいいと思います

152: 名無しさん@お腹いっぱい。 2015/03/26(木) 22:59:42.32 ID:gtlCQqye0.net
(´・ω・`)・ω・`) キャー
/  つ⊂  \  ウイルス怖いー

153: 名無しさん@お腹いっぱい。 2015/03/26(木) 23:18:53.51 ID:BAoGSiVG0.net
(´・ω・`)・ω・`) キャー
/  つ⊂  \  ウイルス怖いー

154: 名無しさん@お腹いっぱい。 2015/03/26(木) 23:25:10.91 ID:WxPb2UPl0.net
(´・ω・`)
もうID:3vXgCBKo0は助けない

157: 名無しさん@お腹いっぱい。 2015/03/27(金) 00:26:08.98 ID:PrwW+KZP0.net
>>154
すみません・・画像見ました。コードに解説つけて説明してくれたんですね
画像で感染するウィルス踏んでOSインストールし直す目にあってから
画像踏めなくなったんです許してください
しかし専門用語が多すぎて説明の意味がほとんど分かりませんでした
自分で調べながら試行錯誤してみますが無理だったらまた力になってください
あなただけが頼りです

155: 名無しさん@お腹いっぱい。 2015/03/26(木) 23:29:40.49 ID:XjewbGLC0.net
>>152-154
(´・ω・`)出荷よー

156: 名無しさん@お腹いっぱい。 2015/03/26(木) 23:32:34.76 ID:WxPb2UPl0.net
      _,..-――-:..、    ⌒⌒
    /.:;;;;;;;;;;;;;;;;;;;;;::.\      ^^
   / .::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::..ヽ   ドナドナドーナードーナー
         __AーA
      _,ィ´▼⊂(´・ω・`)⊃
.... .. ..  ' {●.▲ヽ(_⌒)   .. ... ........ ... .. .... ..
:::: :: .,'  i――――――i  ':, :: :::: :::: :::::::: ::::
;; ;; :,"  |______|  `:, :;;; ;;;;;; ;;; ;;;;
w ,.'    i,,i ;;;;;;;;;;;;;;;;;;;; i,,i;;:..  ゙v w゙゙w゙w゙゙w
",i    ,;'' :::::::::::::::::::::::';,::::::... ヾ、 w vw w
./    ,;;:´  :::::::::::::::::::::':;;,::::::::.. i,'、 ww w

158: 名無しさん@お腹いっぱい。 2015/03/27(金) 00:27:33.17 ID:qyMRpl9y0.net
あなただけが頼りですってwww
まずはその前に単語の意味調べてこいよwwwww

159: 名無しさん@お腹いっぱい。 2015/03/27(金) 00:33:22.48 ID:hEw2Ht7w0.net
例えばここで間違ったコードを提供するとするやん?
すると意味がほとんど分からなかったはずなのに、鬼の首を取ったかのように指摘してくるぜ、きっとw

160: 名無しさん@お腹いっぱい。 2015/03/27(金) 01:49:31.00 ID:pxfAJWsn0.net
って思うじゃろ?
さりげなく間違えとるんじゃが多分どこかすらわからんだろうなあ

161: 131 2015/03/27(金) 02:40:41.29 ID:PrwW+KZP0.net
指摘された問題箇所を修正したのですが、右クリックを押してさえいれば、PeekColor関係なしにクリックされ続けてしまいます。
指定座標の色が#00a5ffかつ、その時に右クリックを押している時のみクリックという条件が機能していない?
間違えてるところははif→ifb とifbの後にendif入れ忘れですよね?、
あとアドバイス通りthenの後にCONTINUEを追加し真の時のみ実行させるようにしたんですがCONTINUE あると起動しないのでCONTINUEは削除しました。。。後はコード短くするため PeekColor の取得値を X に入れました。

//問題の処理部分のみ。前半は省略します

X = PeekColor(392, 79)
ifb X = #00a5ff then CONTINUE //式がおかしいor型があっていないと出ます・・
EndIf              //endifを入れ忘れてたので追加
Select Flag
Case 1; Ifb GetKeyState(2)
Btn(Left, Down)
Fukidasi(Msg+"<#CR>電卓の色を元に戻すか右クリックを離すまで、左クリックが続行されます"
Flag = 2
EndIf
ifb X = #ffafa then CONTINUE   //式がおかしいor型があっていないと出ます・・
EndIf
Case 2; Ifb GetKeyState(2) = False
Btn(Left, Up)
Fukidasi(Msg+"<#CR>色が元に戻ったので、左クリックを解除しました"
Flag = 1
EndIf //endifを入れ忘れてたので追加
Case 3; Ifb GetKeyState(2) = False
Btn(Left, Up)
Fukidasi(Msg+"<#CR>右クリックが離されたので、左クリックを解除しました)
Flag = 1
EndIf
SelEnd
WEnd

見捨てないで、どうか助けてください。今日はもう寝ます・・

165: ◆evw/E7kww2 2015/03/27(金) 06:32:15.17 ID:qYu4G05r0.net
>>161
ttp://www.google.co.jp/search?q=uwsc 176fb%20endif%20then

ググるのもいいけど
2ちゃん専用ブラウザ入れてUWSC過去スレまとめて検索するのを覚えるべき。
2ちゃんねるの仕様が変わってちょっと不便になったけど。

168: 名無しさん@お腹いっぱい。 2015/03/27(金) 19:37:46.66 ID:PrwW+KZP0.net
>>165
そんなのもの最初に検索してるに決まってるじゃないですか。
それでも目当てのものが見つからないからこうして聞いてるんです

162: sage 2015/03/27(金) 03:05:57.82 ID:5MNpCEnQ0.net
いつまでこの茶番続けるん

マジなら絶望的に向いてないな

163: 名無しさん@お腹いっぱい。 2015/03/27(金) 03:15:48.42 ID:qyMRpl9y0.net
>間違えてるところははif→ifb とifbの後にendif入れ忘れですよね?、

何だこれ
ヘルプぐらい読んでくれよwww

164: 名無しさん@お腹いっぱい。 2015/03/27(金) 06:12:09.40 ID:C2HioZf90.net
こういうのこそあっちに誘導してクソコテに相手させればいいんじゃね

166: 名無しさん@お腹いっぱい。 2015/03/27(金) 09:09:15.99 ID:TzycqFpk0.net
歌パニエでめっちゃお世話になったなぁ

167: 名無しさん@お腹いっぱい。 2015/03/27(金) 09:14:13.45 ID:pxfAJWsn0.net
わしの間違いは = じゃなく <> だったのだが
多分言っても分からんのじゃろうなあ・・・

変なのにかまってしまって申し訳ない

169: 名無しさん@お腹いっぱい。 2015/03/27(金) 20:11:18.34 ID:WEip1DaD0.net
これが構った結果
罪は重い

170: 名無しさん@お腹いっぱい。 2015/03/27(金) 20:29:02.03 ID:igAiJuqF0.net
要求仕様を書いたんだから、動くコードを提供するのは当たり前!
って金を払ってから言えよw

171: 名無しさん@お腹いっぱい。 2015/03/27(金) 20:40:56.12 ID:PrwW+KZP0.net
>>170
そう見えたのならすみません。でも言葉だけじゃなくコードも書いてます
テンプレ守って具体的に分からない所も掲示してコードも出して質問してますし
それなのにわざと間違えたコードを入れたり煽ったりするのは酷いと思います

172: 名無しさん@お腹いっぱい。 2015/03/27(金) 20:45:40.80 ID:qyMRpl9y0.net
わざと間違えたコードを入れているわけじゃないだろwwww

175: 名無しさん@お腹いっぱい。 2015/03/27(金) 21:54:03.58 ID:pxfAJWsn0.net
そもそもわし128なのに
やさしい人呼ばわりから、間違えてコード入れて煽ったりする人よばわりで困惑
そもそも間違えたわけではなく指摘し忘れただけで、注訳付けただけやのに・・・

情けは人のためにならない世の中ですね(´・ω・`)

176: 名無しさん@お腹いっぱい。 2015/03/27(金) 22:51:36.70 ID:qyMRpl9y0.net
>>175
貴方は何も悪くないから安心すると良い
何か悪い事があるとすれば、コードを全く理解しようとしない質問者の幼稚な頭かな

177: 名無しさん@お腹いっぱい。 2015/03/27(金) 23:02:39.71 ID:PrwW+KZP0.net
>>176
初めてなりに理解しようとはしてます。その証拠にコードをアレンジとかしてますし
もう読んでるのに過去ログ読めという人ばかりなんですよ
コードを深く理解できてるのならすぱっと教えてください・・

178: 名無しさん@お腹いっぱい。 2015/03/27(金) 23:18:11.59 ID:qyMRpl9y0.net
>>177
理解しようと思うなら該当の構文のヘルプぐらい読んでから質問しろよ
ifとifbが~なんてふざけた事言うな
そんで乗りかかった船は手伝えとか何様だよ

181: 名無しさん@お腹いっぱい。 2015/03/27(金) 23:31:58.34 ID:igAiJuqF0.net
まじ、これよ>>178
これができないなら、他のどんなプログラミングもできないから
スパッと諦めた方がいいよ
諦めて今までどおり手動で操作しているべきだよ…

これだけ皆に言われているんだから、まずは自分の人間性を疑ってかかった方が良い

183: ◆evw/E7kww2 2015/03/28(土) 00:24:04.65 ID:k9OYpbEw0.net
>>177
> その証拠にコードをアレンジとかしてますし

1.アレンジすんなコピペしろ
2.文法がわからないなら1文ずつエラーチェックしろ

Wikipediaより
> アレンジ(arrange)とは、英語で「整頓する」「配列する」「用意」「手配」といった意味を持つ。日本では外来語として定着しており、主に以下の意味で用いられる。
>
> 音楽における編曲のこと。
> 上記に転じて、物事の一部を変化させるなどの手を加え、その物事を構成し直すこと。この場合、厳密には異なるがリメイクと同じような意味を持つ事が多い。

177: 名無しさん@お腹いっぱい。 2015/03/27(金) 23:02:39.71 ID:PrwW+KZP0.net
>>175
貴方の発言に >さりげなく間違えとる とあったので
わざとやったのかと思ったんですが
煽る人ってゆうのは貴方のことじゃなくて釣りとか言ってくる人です
ちなみに注訳に従って
X = PeekColor(392, 79)
ifb X = #00a5ff then CONTINUE
としたら、構文エラーで起動しませんでした・・
乗りかかった船は最後まで手伝ってください・・

179: 名無しさん@お腹いっぱい。 2015/03/27(金) 23:21:44.69 ID:hEw2Ht7w0.net
俺らはお前よりも知識があって偉いから、気分を損ねる不快な奴には教えてやんないもんね!

180: 名無しさん@お腹いっぱい。 2015/03/27(金) 23:22:53.76 ID:xpUecemo0.net
そもそもその船には誰も乗ってないよね。沈没船を話題にしただけだ。

182: 名無しさん@お腹いっぱい。 2015/03/28(土) 00:00:02.80 ID:5DGPcVxp0.net
質問丸投げ系に一度答えてしまうと
こうして何度も似たようなコードを貼られてしまう

もし今の質問が解決しても今度は「電卓では動くけど○○では動かない」
と言い始めてまた質問を繰り返すだろう

簡単に答えてしまうことは誰の得にもならない

185: 名無しさん@お腹いっぱい。 2015/03/28(土) 01:20:26.12 ID:sU6n2E0R0.net
とりあえず放置してほっとけ。
お疲れ様。解散。

186: 名無しさん@お腹いっぱい。 2015/03/28(土) 02:00:16.20 ID:sqKFQT9+O
コードを書いたら一行一行、自分が期待した通りに動いているかチェックが必要なの。
それを全部やればちゃんと動く。
わかりきっているなら必要ないけど、慣れてない言語ならなおさら。
だからめんどくさがらずにやること。
そのためにFUKIDASIとかPRINTを使う事

187: 名無しさん@お腹いっぱい。 2015/03/28(土) 07:49:28.39 ID:LX5gUCeWd
厚かましい人間ってマジで屑だよな。
俺も無料で作ってやったソフトに「こんな機能があったらいいかもです」
って提案されたことあるけど、これを訳すと「この機能を作ってくれ」だもんな。無料で。
「自分で追加するといいと思いますよー」って返したけど、自分で覚える段階に
なると何もしないんだよな。死滅しろよと

188: 名無しさん@お腹いっぱい。 2015/03/28(土) 08:19:34.96 ID:3IzHMtV9f
>>186
.sc に書いても .net の人には見えませんよ。

>>187
作ってくれならまだいいよ。現実には、「作れ」って命令されるよ。しかもその脅迫は延々と続くよ。

189: 名無しさん@お腹いっぱい。 2015/03/28(土) 08:29:11.61 ID:zH5Vl2tA0.net
MOUSEORG関数でMORG_DIRECTを指定した時のBTN関数の挙動って
ウィンドウ領域にカーソルを静止させないと記述どおりに動いてくれないじゃん
なんだかなあ

190: 名無しさん@お腹いっぱい。 2015/03/28(土) 11:50:05.54 ID:Zx06Is4V0.net
具体的なコードは知らんがユニークな資源なんだから常に動かしているなら
一瞬だけ記述どおりの動作になるのは当然じゃね?
暫く固定する必要があるならユニークな資源を保有し続けて座標を維持しないとな

191: 179 2015/03/28(土) 16:34:16.39 ID:zH5Vl2tA0.net
真面目な話、裏マクロってどうやって組むんだろう

193: 名無しさん@お腹いっぱい。 2015/03/28(土) 18:25:52.66 ID:EdzQ42EL0.net
>>191
対象アプリによる。マウスの現在位置を取得して動いているようなアプリだと実際にマウスを持っていかないと動かない
マウスメッセージを受け取って処理しているアプリなら、適切なウィンドウにメッセージを送れば動く
お前が動かしたいアプリが何だか知らないからアドバイスのしようがない

192: 名無しさん@お腹いっぱい。 2015/03/28(土) 18:02:58.49 ID:M5/U9LbtS
>>188
金もらってなければ逃げれるだろw もらってたらある程度仕方がない。
最初の交渉がどうなってたか次第だけど、SEって交渉苦手そうなイメージ。

194: 名無しさん@お腹いっぱい。 2015/03/28(土) 19:23:34.23 ID:SaFLfEi30.net
DInput使ってるゲームとかだと実移動距離
GDIならウインドウ領域で実位置
APIなら直接座標可能
って所か?

195: 名無しさん@お腹いっぱい。 2015/03/28(土) 23:16:55.19 ID:Zx06Is4V0.net
対象が標準コントロール使っているならマウス操作は本来回避可能な筈なんだよね
マウス操作が不可避の段階で最前面操作か仮想化を視野に入れた方がシンプルだよ

196: 名無しさん@お腹いっぱい。 2015/03/29(日) 18:02:03.89 ID:QvfMdREk0.net
メモ帳に保存した複数URLを重複することなくfirefoxで開きたいんですがどうすりゃいいですか?

197: 名無しさん@お腹いっぱい。 2015/03/29(日) 18:21:56.64 ID:ZqD1Y3z90.net
>>196
期待してるのと違うかもしれないけど
それぞれの環境で違うかもしれないけど、たとえば

"C:\Program Files (x86)\Mozilla Firefox\firefox.exe" http://www.2ch.net/
"C:\Program Files (x86)\Mozilla Firefox\firefox.exe" http://www.3ch.net/

"C:\Program Files (x86)\Mozilla Firefox\firefox.exe" http://www.65535ch.net/

というふうに編集して
拡張子 .batで保存して実行する

編集はメモ帳の編集機能でも、UWSCのファイル読み書きと文字列編集でも、なんでもいいです

【重要な注意】いきなり全部やらないで、まず二つで試すこと。次に三つ。
【重要な注意2】下手するとPCが壊れます
【重要な注意3】最悪の場合ネットワーク機器が壊れます
【重要な注意4】もっと最悪だと、天文学的な通信料の請求が来ます

198: 名無しさん@お腹いっぱい。 2015/03/29(日) 18:44:16.98 ID:QvfMdREk0.net
>>197
ありがとう
やってみます

201: ◆evw/E7kww2 2015/03/29(日) 19:25:17.23 ID:/CjiQE470.net
デフォルトブラウザで開ければいいんならコマンドプロンプトから
start http://www.google.com
ってするだけでいいよ

他のデータが混じってないならこのコマンド1行で済む
for /f %a in (aa.txt) do start %a

バッチファイルに書くときはこうなる
for /f %a in (aa.txt) do start %a


試しに aa.bat から aa.txt の aa ってデータを処理したらパソコンがぶっ壊れた。
start を echo に置き換えて正しく表示されるか先に確認すべき。
あと、データを間違いなく入力できないと結局壊れるから、やっぱり START コマンドはやめた方がいいかも。
start の部分を >>197 のようにプログラムのファイルパスにすれば問題ない。

206: 名無しさん@お腹いっぱい。 2015/03/29(日) 22:08:19.47 ID:pGsTj0MP0.net
>>201
それだとURLに&とか%が来ると誤動作になるからやめたほうが良い
CGIパラメータとして記号が入ったり文字コード外の文字が入ってきて最悪ぶっ壊れる

207: ◆evw/E7kww2 2015/03/29(日) 22:28:20.95 ID:/CjiQE470.net
>>206
ダメ文字は考えてなかったけど、やってみたら問題なかったよ。
文字コード外とか、ちゃんとURLが入ってればありえないし。


C:\temp>for /F %a in (aa.txt) do start %a

C:\temp>start http://www1.axfc.net/uploader/search.pl?search_str=%E3%B0%E3%A9%E3%96%E3%AB&date_start=20150101&key=1

212: 名無しさん@お腹いっぱい。 2015/03/30(月) 12:15:19.22 ID:x6BlnIvI0.net
>>207
start http://test.url/cgi.pl?aaa=1&test=2&%path%=test

これでやってみてください
こんなURLはまずないと思うけど世の中分からないし

199: 名無しさん@お腹いっぱい。 2015/03/29(日) 18:53:17.43 ID:GjltWzOo0.net
もし自分で作るなら大雑把だけどこんな感じにするかな

クリップボードにコピーしてからスクリプトを起動
スクリプトはクリップボードの内容を改行でSPLITして配列に変換
配列をソート
比較用を初期化
配列の内容でループ開始
 配列の内容が比較用と一致すればコンティニュー(重複回避)
 配列の内容を比較用に保存
 配列の内容でブラウザを起動
ループ

200: 名無しさん@お腹いっぱい。 2015/03/29(日) 19:08:27.25 ID:2AWtXop20.net
重複のチェックなら連想配列のkeyに入ればいい

206: 名無しさん@お腹いっぱい。 2015/03/29(日) 22:08:19.47 ID:pGsTj0MP0.net
自分なら >>200の意見に賛成
だけど連想配列のキーに禁止文字があったら・・・と考えるとやっぱり怖い
数十行程度のURLなら普通の配列に入れて一回一回判別すればいいんじゃないかな

FOR 行数
 フラグクリア
 For In 配列
  有ればフラグ、無ければ配列サイズを増やしていれる
 Next
 フラグあれば無視、無ければ起動
NEXT

シンプルだけどまずはこれで十分じゃないかな

202: 名無しさん@お腹いっぱい。 2015/03/29(日) 20:48:00.69 ID:4P49eCbeB
横レスになるけど、firefoxやクロームを操作するのって、IE操作と同じくらいの
感覚でできるものなの?だいたいIEで問題ないから他のブラウザに手を出してない。
サンプル見ても、IEならIE.document.forms[n].elements[n2].click()とかで
いけそうなものを、CLK_ACCとか使ってて、使い勝手悪そうなイメージがある。
普段から使ってる人いたら教えてくらはい。

203: 名無しさん@お腹いっぱい。 2015/03/29(日) 21:17:30.89 ID:zBQT0KFA1
>>202
インターフェースが用意されていないから仕方がない

selenium-vbaを使えばブラウザに依存しないコードが書けて楽
IEのエレメント操作が理解できる知識程度なら難なく出来る

理解さえできればInternetExplorer.Applicationの直接操作より
簡単かつ柔軟に記述できる

204: 名無しさん@お腹いっぱい。 2015/03/29(日) 21:30:06.44 ID:D41B0seXl
>>202
Firefox、ChromeはCOMを掴めないのでUWSCからDOM操作はできない
近いことはSeleniumVBAをインストールすると可能
だけど資料が少ないのでお手軽ではないね

205: 名無しさん@お腹いっぱい。 2015/03/29(日) 21:47:33.59 ID:4P49eCbeB
>>202,203
おお、情報ありがトン。そんな便利なものがあったのね。名前は聞いたことあるかも。ちと調べてみるわ。

208: 名無しさん@お腹いっぱい。 2015/03/30(月) 00:25:39.85 ID:pRk3imSd0.net
重複に関しては予めエクセルで重複チェックしてるので、ミスクリックさえなければ大丈夫と思ってましたがありがとうございます

209: 名無しさん@お腹いっぱい。 2015/03/30(月) 03:04:16.86 ID:3uzMxD8+0.net
firefoxなら開くのアドオン使ったほうが楽なのでは?
Launch Clipboardとか

210: 名無しさん@お腹いっぱい。 2015/03/30(月) 03:48:26.62 ID:pRk3imSd0.net
>>209
うわー、すげぇw
一気に解決しました
ありがとうございます!

211: 名無しさん@お腹いっぱい。 2015/03/30(月) 10:38:41.30 ID:FnC9Trqr0.net
やりたい事が明確なら、ネットで探せば結構いろいろあるもんだね。

引用元: http://anago.2ch.sc/test/read.cgi/software/1425741537/