2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

自動化ツールUWSC使いよ集まれ14

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

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ソース見ても複雑なのが多くて…

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詰め編集は必要かな

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

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

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

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

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()と連結後の長さを使えば良い

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
秀丸はヘルプの予約語からコピペして辞書作ったら出来るよ
コーディング向けエディタなら大抵出来ると思うが

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まで引っ張る

メモ帳にコピペ

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

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

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

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

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

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

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

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

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

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

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単独では無理
画像解析の勉強もすることになる、というかそっちの方のウェイトが大きい

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

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実装で
今日から過去の専ブラが使えなくなりましたが
みんなそれをかいくぐってアクセスしてるでしょ?

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

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で座標、可視状態、アイコン状態?とかを見て
普通のウインドウであることを判定してからやる必要がありそう

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

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

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

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と認識するのでは不十分ってこと?

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で終了コードは返せる

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

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

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

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
>>60
ありがとうございます。

>>63
OpenCVSですか、ちょっと調べてみます。

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
>すみません。
>ブラウザはクロームです。

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

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

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
ありがとうございます
調べながらやってみます

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

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っていうのが暗黙の了解じゃなかったのか?
久しぶりに来たら、その類いの質問に覆われてるんだけど

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回くらいミスると別のロックがかかるのが普通だしな

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

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

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

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

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

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

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

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)

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

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

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って目的を達成できるなら素人なりの事はしようと思ってます
レスは夜になると思いますがよろしくおなしゃす

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で書いて、実行すればいいよ。

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

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

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

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


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

総レス数 1144
361 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
read.cgi ver.24052200