[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 05/03 04:31 / Filesize : 344 KB / Number-of Response : 994
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

自動化ツールuwsc使いよ集まれ4



1 名前:名無しさん@お腹いっぱい。 [2009/03/02(月) 19:49:20 ID:rP5khwz50]
Windowsを自動化させるツールUWSC。
ttp://www.h7.dion.ne.jp/~umiumi/

uwsc使いのみなさま、マターリ己のスクリプトを晒しましょ。

前スレ
自動化ツールuwsc使いよ集まれ3
pc11.2ch.net/test/read.cgi/software/1176677869/

448 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/13(木) 07:32:52 ID:ssPatVeH0]
そんなもんなおさら説明してもらわんとわからんわ

449 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/13(木) 07:38:09 ID:okZWwZeo0]
Windows標準として
タイトルバーを右クリックするとメニューが出ます
Alt+Spaceと同じことです

WinRollの作者にでも要望したらどうですか
Alt+Spaceでメニューが出るのも抑制してほしいって。
まったくUWSCとは関係ない話ですね

450 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/13(木) 07:42:14 ID:cNvCWprb0]
マカーでもないしMacなんて使ったこともないが
つーか、最初からタイトルバー右クリック出来るか出来ないかって聞いてるだけなのに
なんで他の部分にこだわるの?
質問への回答も持ち合わせてないのに突っかかりたいだけの人?

451 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/13(木) 07:48:18 ID:cNvCWprb0]
>>449
BTNで右クリック指定するとちゃんとシェードするのにおかしいね
BTN以外だとAlt+Spaceでしか右クリックの動作させられないなんてUWSCって意外と機能少ないんだね

452 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/13(木) 10:09:03 ID:fiYYXTEd0]
cNvCWprb0

453 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/13(木) 10:21:31 ID:fiYYXTEd0]
WinRollの仕様こそ調べるべきだろw >>449で正解。clkitemにしろWINDOWS標準機能使ってるだけ。
cNvCWprb0 の主張は、UWSCをWinRoll専用にカスタマイズしろってのと同義。

454 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/13(木) 10:34:30 ID:J7ekYvTv0]
ウインドウシェードならリサイズで似たようなことできるんじゃないの?

455 名前:名無しさん@お腹いっぱい。 [2009/08/13(木) 10:53:26 ID:GJXaYxZb0]
>>451
それ、UWSC関係ないw
UWSCは基本、操作のままをスクリプト化出来るのが利点のソフトなんだし。

マウスのボタン操作、Alt+Spaceは基本全く別の操作
『ボタン操作は○○、Alt+Spaceは××』 
その動作仕様を決めているのはWindowsそのものやWinRoll?だよね。UWSCではない。

>問題はシンプルに、マウスでタイトルバーを右クリックしたときと同じ動作、をさせることが出来るか出来ないかの一点だけ
同じ機能をどういうキーアサインにしているか、抜け道があるかどうか、UWSCのスレではわからんよ。
使いたいソフトの仕様書を読むか、作者に聞く以外に無い。Windowsの仕様ならMSDNでも熟読かなぁ。

UWSCはソフトの操作が出来るソフトであって、仕様変更が出来るものではないよ。
機能が少ないとぼやくよりBTNでどうやったら出来るかを考えるほうが建設的。

>BTN(RIGHT,CLICK,1111,10,300)
>uwscは(高度設定だと)タイトルバー右クリックを記録してくれないし
この書き方・表現だと、変数とかgetidとかUWSCスクリプトの利点をまだ理解できてないんじゃないかなぁ。
最低限getidとstatusの関数を読むと良いと思うよ。

456 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/13(木) 17:56:55 ID:6OdBqM1c0]
>>451
WinRoll を使ってないので、ちゃんとシェードできるか分からんが
マウスの座標を保存して、右クリック後に戻すんじゃダメ?
俺が使ってるのは foobar2000 v0.8.3 なのでクラス名が違うかも

OPTION EXPLICIT

DEF_DLL GetSystemMetrics(int): int: user32.dll

CONST SM_CXFRAME = 32
CONST SM_CYFRAME = 33

DIM id = GETID("", "{E7076D1C-A7BF-4f39-B771-BCBE88F2A2A8}")
DIM mouse_x = G_MOUSE_X
DIM mouse_y = G_MOUSE_Y
DIM x = STATUS(id, ST_X) + GetSystemMetrics(SM_CXFRAME)
DIM y = STATUS(id, ST_Y) + GetSystemMetrics(SM_CYFRAME)

CTRLWIN(id, ACTIVATE)
BTN(RIGHT, CLICK, x, y, 300)
MMV(mouse_x, mouse_y)



457 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/13(木) 19:23:02 ID:cNvCWprb0]
>>456
自分なりに少し改良したらほぼ理想の動きをするようになった
ありがとう

458 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/14(金) 21:35:40 ID:lePNH2LF0]
アプリケーションを起動させるときにはEXEC()で指定すれば起動できるんですけど
マイコンピュータを起動させるにはどうしたらいいんですか?ちなみにVistaです

459 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/14(金) 21:40:27 ID:lePNH2LF0]
事故解決しました

460 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/15(土) 00:30:43 ID:nWYop4zn0]
え?どうすればいいの

461 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/15(土) 06:07:22 ID:js64mCM30]
>>460
EXEC("EXPLORER.EXE /n,::{20D04FE0-3AEA-1069-A2D8-08002B30309D}")
じゃね?
Vista 使ってないから分からんが CLSID は変わってないハズ

462 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/15(土) 08:04:19 ID:wyeRXJm+0]
そっか、thx

463 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/15(土) 12:14:15 ID:3xenIhAC0]
フルスクリーン表示されてるソフトの上にFUKIDASIでも何でも表示させたいんだけどできない・・・
どうすればいいんあ

464 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/15(土) 17:52:07 ID:yaCNfD7C0]
無理

465 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/15(土) 18:58:54 ID:tdBSpMKm0]
>>463
SOUNDで警告音出させてから何秒後に表示するのが現実的じゃまいか?
その間に手動でウインドウモードに戻しておいてもらうということで

よそのフルスクリーンの上にかぶせてくるアプリもあることだし
win32api叩くのありなら不可能ではないと思うけど超めんどーそう

466 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/15(土) 19:09:37 ID:3xenIhAC0]
ありがとうあきらめました
win32apiとか俺にはできそうにないなり



467 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/15(土) 19:12:41 ID:pXOex/6e0]
画像などの保存するときにでるウィンドウの操作ができなくて困っています。

ACW(GETID("名前を付けて保存","#32770"),228,211,824,390,0)
MOUSEORG(GETID("名前を付けて保存","#32770"))

これが、UWSCでの情報で、このウィンドウが現れるまでスリープと
いう操作をしようとしています。

repeat
ifb GETID("名前を付けて保存","#32770") = 0
sleep(1)
endif
until GETID("名前を付けて保存","#32770") = true

これでうまくいきません。

468 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/15(土) 19:33:54 ID:sQtS+cTb0]
関数の戻り値ってのをちゃんと理解した方がいいよ

469 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/15(土) 20:56:35 ID:cTXaQJ3d0]
戻値 = GETID( タイトル, [クラス名, 待ち時間秒, MDI子タイトル] )
引数
  タイトル: 識別したいWindowのタイトル (タイトルの一部分だけでもOK)
  クラス名: 区別に必要でなければ省略して構いません (前方一致でのみ部分指定可)
  待ち時間秒: 確認できるまで指定された秒数待ちます (0.01〜)
           0: 0.1〜10秒まで状況や負荷により自動判断 (デフォルト)
          -1: 無期限待ち
  MDI子タイトル: MDIウィンドウ中の子ウィンドウタイトル

戻値
  そのWindowを識別するID (NGの時は -1)

470 名前:そろそろマジレ酢 mailto:sage [2009/08/16(日) 16:08:43 ID:GJbDGiw70]
ヘルプを「組込み定数」でキーワード検索すれば
何で最後の行がうまくいかないかわかるよ

471 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/16(日) 16:16:43 ID:a4mbf8s90]
それは組み込み定数の問題じゃないようなw

こいつはGETIDの戻値が1か0(trueかfalse)しかないと思ってるからこんな事
書いてるんだろうし。そうであるならば組込み定数に関する問題は何もない

472 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/16(日) 21:52:10 ID:+2ZQxoWjP]
>>467
取得するIDは0から始まるんだぞー

473 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/18(火) 19:07:19 ID:pyjPH2H40]
すみませんお教えください
現在XPにてUWSCを使用しているものです
UWSCはVISTAでもXPと同様に稼働するのでしょうか?

474 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/18(火) 19:17:55 ID:YQaslH1l0]
>>47
VISTA使っているけど、使っている範囲内では普通に動いています。

UWSC導入したてのころまったく動きませんでしたが、窓のUPDによって動くようになりましたよ
動かないときは管理者権限で行っても動きませんでしたので、動かないようならUPDしてね

475 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/18(火) 19:32:36 ID:pyjPH2H40]
>>474
低レベルな質問にご返答ありがとうございました
感謝です

476 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/25(火) 09:50:03 ID:65fceamX0]
MOUSEORGを使わずにアクティブウィンドウの相対座標で操作する方法は有りませんか? 

"相対座標"という言葉の認識が間違っているかも知れないので補足して置きますと、100×100のウィンドウがアクティブになっている時 x=1 y=1を画面全体のものではなく、そのウィンドウの左上にしたいのです。



477 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/25(火) 10:49:20 ID:N7fLVBuZ0]
status(ID, ST_X)+X ,status(ID, ST_Y)+Y
これで x=1 y=1 の時に指定される位置はウィンドウの左上

基準値を前に書きたくない、mouseorgを使いたくない…たぶん両立は無理。


478 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/25(火) 11:33:56 ID:esSRzMbRP]
>>477
レスありがとうございます。
status(ID, ST_X)+X ,status(ID, ST_Y)+Y という文の"X"と"Y"はX軸とY軸という事で大丈夫でしょうか?

479 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/25(火) 11:34:30 ID:65fceamX0]
連レスすみません、IDこっちでした

480 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/25(火) 11:56:17 ID:N7fLVBuZ0]
>>478
そっから先はやってみなさいよw ヘルプ読むとかさ。

481 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/25(火) 19:05:17 ID:1sftlgl60]
なんでmouseorg使いたくないんだろ@@

482 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/25(火) 20:15:43 ID:65fceamX0]
使いたくないのではなく、使えなかったのです・・・。

483 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/29(土) 15:12:51 ID:ww65mvO00]
テキスト入力したいんだけど
既に文字が入力されている場合は最後に追加で文字入力したいです
例:名前欄に”久保”と入力します
その後で一文字追加で”田”を入力して”久保田”にしたいです

下記のようにしてみたけど
IESetData(IE,"久保","namae") // TEXT
IESetData(IE,""+"田","namae") // TEXT
結果は”田”のみになりましたorz

どなたかお願いします


484 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/29(土) 15:18:31 ID:Z1dWq6j7P]
>>483
カーソル位置に挿入するのはフラグでできる。
元のテキストに挿入するか、置き換えるかが選べる。
(IEオブジェクトではできなかったかも)
でもカーソル位置が分からないなら、一旦取り出してメモリ上でつなげられる。
関数名は適当で説明すると
s = gettext(ID)
ifb length(s) then
 settext(ID, s + "田")
endif


485 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/29(土) 15:51:39 ID:8qKYn2v40]
INPUT()コマンドでフルパス付きファイル名を取得したあと、
それをパスとファイル名に分離したいのですが、どうすれば良いでしょうか?

先頭と末尾を表す制御文字があればBETWEENSTR()コマンドで簡単に取り出せると思いますが
そういうのはなさそうですし。

POS()コマンドで最後の"\"が何文字目かを調べてから、COPYで抜き出すっていう方法になるんでしょうか?

486 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/29(土) 16:05:15 ID:8qKYn2v40]
こういう形になるんですかね?
とりあえずはいけるようですが・・・。

// パスとファイル名に分離する
MojiSu = LENGTH( FileName)
Kugiri = POS( "\", FileName, -1)
Path = COPY( FileName, 1, Kugiri)
Name = COPY( FileName, Kugiri + 1, MojiSu - Kugiri)



487 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/29(土) 16:10:06 ID:ww65mvO00]
>>484
速レスありがとうです
何文字あるか調べてから追加書き込みですね
それがエラーになるんです
文字数を調べる以前にテキストボックスの名前を調べないといけないみたいです
↓こんな感じのエラーでました
「変数IDが定義されてません」が出たのでID = namae を記入したら
「変数namaeが定義されてません」とエラーになります
このnamaeとはRECIEで記録したのでそのまま使ってる変数名なんだけど・・・

何度もすいません
自分のカーソル位置のテキストボックスの名前を調べる方法ありますか?

488 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/29(土) 16:56:59 ID:Z1dWq6j7P]
>>487
ソースコードはイメージです。
実際の関数名や引数とは異なることがあります。
sはテキストボックスの文字列を格納している変数です。

>>486
おk
だけど、文字数の計算はなくてもおk
Kugiri = POS( "\", FileName, -1)
Path = COPY( FileName, 1, Kugiri)
Name = COPY( FileName, Kugiri + 1, 9999)


489 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/29(土) 17:08:23 ID:ww65mvO00]
>>488
了解です
文字数を調べることができるってことがわかったのは大収穫でした^^
教えてくれてありがとうです

490 名前:486 mailto:sage [2009/08/29(土) 20:34:56 ID:8qKYn2v40]
>>488
どうもありがとうございます

491 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/30(日) 00:30:36 ID:BX4vfd5X0]
ifb CHKIMG("●.bmp",0)での検索範囲を指定する事は可能でしょうか?
例えば相対座標500.350から770.485まで等です。

492 名前:491 mailto:sage [2009/08/30(日) 00:41:53 ID:BX4vfd5X0]
>>491
すみません。自己解決しました。

493 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 12:07:27 ID:YU5dxX8f0]
テキストファイルを1行単位で切り取り、貼り付けしたいんだけど
やりかたが全くわかりません><
取りあえずメモ帳を起動させることはできた
3行目切り取り→別ファイルに追加貼り付け
5〜6行目切り取り→新規ファイルに貼り付け
どなたか教えてください

494 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 12:09:39 ID:YU5dxX8f0]
493です
質問が言葉足らずですいません
>3行目切り取り→別ファイルに追加貼り付け
3行目切り取り→別ファイルの3行目に追加貼り付け
よろしくお願いしますm( _ _ )m

495 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 13:03:13 ID:1jXzFL2UP]
>>491
すみません、ちょうど同じ事をしようとして詰まっているのですがサンプルソースを頂けないでしょうか?

496 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 17:22:13 ID:burn2IeSP]
>>493-494
UWSCだと3行目を編集は出来るけど、3行目に挿入はできないよ。

たとえばサクラエディタならCtrl+Jで窓出して行指定してジャンプできる。
クリップボードに改行つきで1行分テキストをセットしたらCtrl+Vで挿入できる。
そういうやり方するしかないかな。

新規ファイルの一番後ろに追加して行くんならメモ帳とか使わずにUWSCの関数でできるけど。
詳しくはヘルプのファイル関連の関数を一通り読んでね。

ところで、3行目までコピーしてその後は丸ごとコピーって言うのは何度も何度も質問されててそのたびに解決してるはずなんだけど、
具体的にどこのデータがそんなに使えるの?
教えてくれたら作ってアップするかも。




497 名前:横レス mailto:sage [2009/08/30(日) 17:24:36 ID:S4AQ+SE30]
>>495
公式ヘルプ

つーか何で>>491が中途半端に省略可能オプションつけてるのに
サーチ範囲指定までたどり着けなかったかがよくわからない

498 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 18:01:54 ID:l0ar2rih0]
取説とか公式HPとか見ないで、サポセンに電話するタイプなんでしょ。

499 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 18:41:39 ID:/B83Ke060]
CHKIMG de ggrks

500 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 18:53:18 ID:p3Q1Ae3/0]
>>496
ども^^
満喫来たのでちょっとID変わりましたが>>493>>494です
やりたいことは既存ファイル1を開いて
3行目のみ切り取り、既存の別ファイル2の2行目に貼り付ける
クリップボードにデータがあるうちにIEを起動させてサイトに投稿
これの繰り返しです

既存ファイル1から切り取る行数は3の倍数
3行目のみ6行目のみ9行目のみ12行目のみ
>3行目まで
じゃありません
上から数えて3行目にある行だけを切り取り別ファイル2の2行目に貼り付ける
サイトに投稿
既存ファイル1の6行目(3行目を切り取った後だから、この時点では上から5行目)を切り取り
既存ファイル2の4行目(貼り付けた後だから、この時点で上から数えて5行目)に貼り付け
サイトに投稿
次は既存ファイル1の9行目(切り取り2回しているので、この時点で7行目)を切り取り
既存ファイル2の6行目(貼り付け2回やってるので、この時点で上から数えて8行目)に貼り付け
サイトに投稿
こんな感じのことをやりたいです
具体的にと言われてもどう言えばいいのか^^;
データマンジングってやつかなw
自動操作のUWSCの正規ユーザーになったのでuwscでやってみたいです^^
さくらエディタって便利そうですね
情報ありがとです

501 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/30(日) 23:36:00 ID:burn2IeSP]
>>500
それだけでは何に使えるか良く分からないですね。
つまり自動投稿して何の意味があるのか分からない。
まあ僕も2ゲットツールとかいう同じ内容を投稿するのは作ったけど、2ゲットっていう目的は分かりやすいでしょ?

とにかく行ごとに間引いて別のファイルに移動するわけですね。
カードをシャッフルするみたいな。
そういうのはやっぱりエディタを使わないと無理かな。
データベースオブジェクトを使ってもいいけど。
いや、連想配列にぶちこんでキーワードで取り出すのがシンプルかも。テキストの量次第だが。

間引いていく処理についてはUWSCの関数で順番に読み、順番に別ファイルに書く事でも実現できる。
新たにファイル0を作り、ファイル1からファイル0にコピーし、終わったらファイル0をファイル1にリネーム。
ファイル1 ABCDEFGHI Aから順に読む
ファイル0 AB DE GH 使わなかったものを順に書き込む。
このやり方ならループもシンプルで面倒なエディタ処理が1つ減る。
while
 FRead()
 if 処理条件 then
  投稿処理()
  ファイル2に吐き出す
 else
  FWrite()
 endif
wend

502 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/30(日) 23:42:39 ID:U269ithF0]
UWSCの連想配列は結構遅いのが辛いな
対象が千を超える場合があればもう少しほかの方法を考えるかもしれないな。

503 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/30(日) 23:52:23 ID:burn2IeSP]
>>500
連想配列を使う場合。
//【前処理】ファイル1を全部連想配列にぶちこむ
cnt1 = 0
cnt2 = 0
for i = 1 to ファイル1の行数
 FRead()
 if 処理条件 then
  cnt1 = cnt1 + 1
  key = 処理ワード1 + cnt1
 else
  cnt2 = cnt2 + 2
  key = 処理ワード2 + cnt2
 endif
 key で連想配列に追加
next

//【ファイル1処理】
ここでファイル1へ上書きする。

//【投稿+ファイル2処理】
while true
 key = 処理ワード2 + i
 配列からkeyでデータ取り出し
 if 配列になければbreak
 投稿処理()
 ファイル2に出力()
wend

・・・やっぱ問題はファイル2か。
挿入だとエディタ使う必要がやっぱりある。
データベースオブジェクトなら挿入があるかもしれんけど、基本的にRDBに順番関係ないしな。結局エディタしかないか。

504 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/31(月) 00:23:15 ID:ln7RNv9S0]
>>503
ども^^
>>500です
お疲れのところありがとうございます
FGETとFPUTで出来るところまでやってみます
テキストの切り取りってのがわからないので
コピーしてファイルに貼り付けって感じでぼちぼちやってみます^^

2ゲットツール面白そうですねw
興味あります^^
もしよかったらサンプルください
自分はまだIE操作まったくわからないです
タイトル名とかクラスとか取得方法もわかりません><
ヤフーIDの新規登録のところに書き込んでみたかったんですけど
色々試してるうちにハッカー認定されたようで
新規登録のページに入れなくなりましたwww
色々ありがとうです^^

505 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/31(月) 00:57:38 ID:aWym46NO0]
2ゲットつーるっておまwww

506 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/01(火) 15:22:08 ID:wGPAV2Jw0]
ご教授お願いします。

1."Movie Operator"というフリーウェアの”...(O)”というボタンがclkItem()で押せません。
getItem()で得たボタン名をコピペしたのでボタン名は間違えていないと思います。
同じボタン名はありません。
とりあえずはscKey(wID, VK_ALT, o)して動かしたのですが、できればclkItem()で押したいです。

2.今実行している行数の変数ってありますか?
デバッグ時に便利だと思うのですが見あたりません。
見落としていないと思うのですが…



507 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/01(火) 15:49:21 ID:fkjh49CH0]
>>506
>1.
自分の書いたソースコード張ったほうが良いよ。
たとえ一行でもね。できるやり方は少しでも、できない可能性は無限大。

>2.
レジスト版にデバッガーがあるので、そちらだと分かります。
フリー版では在りません

508 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/01(火) 20:33:58 ID:mJwhP3m40]
そんじょそこらにPrint文でなんか出力させるんだよ
そしたらここまでは正常終了してるけど、ここと次の間のどこかで詰まってるとか分かるから

509 名前:506 mailto:sage [2009/09/01(火) 23:24:39 ID:Oybct+X10]
debug用に書き直してみました。
他のボタンだと動きますが”..”がやっぱりダメです。
数 = GETALLWIN()
For i = 0 to 数-1
ifb ( STATUS(ALL_WIN_ID[i], ST_PATH) = "C:\Program Files\movieoperator\MovieOperator.exe" ) _
and ( status(ALL_WIN_ID[i], ST_VISIBLE) = TRUE) then
wID = ALL_WIN_ID[i]
break
endif
next

debugAllPrintGetItem(wID)
exitexit
PROCEDURE debugAllPrintGetItem(wID)
hashTbl Ary
Ary["ITM_BTN"] = ITM_BTN       // ボタン、チェックボックス、ラジオボタン

for n = 0 to Length(Ary)-1
   種別の名前 = Ary[n, HASH_KEY]
   種別の定数 = Ary[n, HASH_VAL]

num=getItem(wID, 種別の定数)
print 種別の名前 + ": 数: " + num
for i=0 to num-1
print i + ": " + ALL_ITEM_LIST[i]
next
next

ctrlwin(wID, ACTIVATE)
ret = clkitem(wID, ALL_ITEM_LIST[10], CLK_BTN) // 押せない(T-T
print ret
FEND

510 名前:506 mailto:sage [2009/09/01(火) 23:27:34 ID:Oybct+X10]
なぜかtabが無くなって見にくくなりました。
すいません。

511 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/02(水) 11:26:17 ID:oNB215sE0]
>>509
なかなか難儀なアプリだな
getidでも取得できず
clkitemでもクリックできない…こちらでも確認した。

512 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/03(木) 01:20:33 ID:ql+G/0a90]
>>506
ClkItem( ID, "...(&O)", CLK_BTN, 1, 2)は?

513 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/03(木) 01:50:08 ID:ql+G/0a90]
もとい
モードによって"...(&O)"ボタンの順番が変わるので最後の引数は適当に変える
これしか無さそう

514 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/04(金) 14:20:35 ID:aFZS+L7m0]
クラス名:Button
タイトル:...(&O)

515 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/04(金) 15:27:11 ID:InW00wLu0]
>>509
このスレでこんなことを言うのはなんだが、同じくMovieOperatorを操作するのに
UWSCだと問題ありだったんでAHKでやってる。

ちなみに件のボタンはファイル選択のためのボタンだが、エディットボックスに
直接書き込んだらファイル選択ダイアログ開く必要は無いよ。

516 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/04(金) 18:05:22 ID:VND0X8dc0]
ネトゲでMOBを判別して攻撃するの作りたいのですがどうすればいいのか分からない。
教えてください。

とりあえず、画像を見つけてクリックするスクリプトはできましたが、動いているMOBだと殆ど反応しません・・・。



517 名前:506 mailto:sage [2009/09/04(金) 23:53:16 ID:9ISan29C0]
お返事ありがとうございます
>512
ボタンが押されることを確認しました。
"...(&O)"をどうやって考えられたかが気になります。
これはuwscのバグになるのでしょうか?
バグ報告すべきでしょうか

518 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/04(金) 23:56:32 ID:o7J0rS+w0]
どこをどう見たらバグに見えるんだ?

519 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/05(土) 00:04:08 ID:lSJSWK1B0]
>>517
> "...(&O)"をどうやって考えられたかが気になります。

どうやってってw
キーボードで動かすためのアンダーバーを入れるのは前に&付けるんだよ。
全くプログラミングに類するものやったことないとわからんかもな。

はい(&Y) いいえ(&N) キャンセル(&C)とか。こうすると各Y・N・Cの下にアンダーバーが付いて
Alt+Yではい、Alt+Nでいいえ、Alt+Cでキャンセルボタン押下になるわけ。

520 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/05(土) 00:48:19 ID:5dThaddI0]
知らんかったw

521 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/05(土) 05:45:21 ID:HkFq18JH0]
(&O)までつけるというのはちょっと思いつかなかった。
ま、キーの割り当てがされてるようなら実用上困らないんだけど。

今英語版Windows7の無料版使ってるんだけど、キーの割り当てが一つもなくて苦労してる。
いや、自動操縦とかじゃなくて、右クリ→S とかの決まりきった操作ですらメニュー一覧からマウスで探してポイントしないといけなくてめんどくさい・・・


522 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/06(日) 08:10:42 ID:zyPGokOw0]
UWSCProの付属ツールでuwsファイルをexe化するツールってありますよね。
あれでexe化する場合なのですが、
call 〜.uws
って他のuwsファイルを読み込んでいる場合全部exe化しなければいけないのでしょうか?
それとも全部1ファイルにまとめてでないと動作しないのでしょうか?


523 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/06(日) 10:13:12 ID:64LdtFo30]
>>522
call してるものまで全部含めて、勝手に1ファイルのEXEにしてくれる。

524 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/07(月) 22:58:40 ID:Xkdtabsd0]
UWSC便利すぐるwww

525 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/09(水) 06:39:24 ID:WM4BaepJ0]
下記の動作で左クリックを0.5秒間隔でクリックし続ける事は分かったのですが時間を指定してマクロ停止させるにはどうしたらよいのでしょうか?
(例→0.5秒間隔の左クリックを2時間後にマクロ停止)

While True
BTN(LEFT,CLICK,)
SLEEP(0.5)
Wend

526 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/09(水) 07:46:12 ID:6Qj8DJUR0]
FOR NEXT使えばおk
ちょっと使い方を説明すると
一回ループする毎に変数にSTEPで指定した数が+される
そしてその数が終了値で指定した数に達するとループ脱出
初期値はそのまんま
例えば0.5秒間隔の左クリックを2時間をと言うとこうなる

FOR 変数 = 0 TO 14400 STEP 1 
BTN(LEFT,CLICK,)
SLEEP(0.5)
NEXT

一回ループをする毎に変数(初期値0)に+1(STEPの値)していき、14400(終了値)に達した時にループを脱出する
0.5秒を14400回で2時間になる
ヘルプ見ながら読んでね



527 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/09(水) 07:53:44 ID:WM4BaepJ0]
>>526
ddです。


528 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/09(水) 09:31:40 ID:lOUbTZts0]
いま遊んできた。

2009/09/09に婚姻届を出すスレ 6100組が登記の予約
ttp://tsushima.2ch.net/test/read.cgi/news/1252444644/
7 名前: マンネングサ(佐賀県)[] 投稿日:2009/09/09(水) 08:45:09.11 ID:SYGoZDF2
ここが新しい09年09月09日 09時09分09秒09にレスするスレか
8:45:09.09

8 名前: マンネングサ(佐賀県)[] 投稿日:2009/09/09(水) 08:46:09.09 ID:SYGoZDF2
8:46:09.09

09/09/09 09:09:09に999を取るスレ 保険用
ttp://yutori7.2ch.net/test/read.cgi/news4vip/1252453217/
999 名前:以下、名無しにかわりましてVIPがお送りします[] 投稿日:2009/09/09(水) 09:07:34.53 ID:Ubfyvu31O


|∧,,∧
| ・ω・)
|⊂ ノ 
|ωJ

>>999ゲット

529 名前:528 mailto:sage [2009/09/09(水) 15:41:41 ID:lOUbTZts0]
出来るだけ正確に投稿するにはどうしたらいいかと考えて、
JaneDoeViewの「書き込み」ボタンをクリックすることにした。

KDB(VK_SPACE, CLICK) では誤差が出るかもと思って
先にDOWNしといて時間を合わせてUPした。
でも、回線のせいなのか、0.03秒くらい期待した時間よりもずれてしまっていた。

以下即席スクリプト
// 指定秒にクリックします。
// キー押下は早めに実行します。
STOPFORM(true)
Second = 09

// カウントダウン中にフォーカスを「書き込み」ボタンに移しておく
for i = 5 to 1 step -1; fukidasi(i); sleep(1); next
fukidasi()

t = GetTime()
sec = (Second + 60 - 2) mod 60
Repeat; sleep(0.1); GetTime(); Until sec = G_TIME_SS

kbd(VK_SPACE, DOWN)
sleep(0.1)

//ミリ秒調整 ループにスリープを入れずに出来るだけ回数を多く回す。
Repeat; t = GetTime(); Until G_TIME_ZZ < 585
Repeat; t = GetTime(); Until 585 <= G_TIME_ZZ
sleep(1) // 他のタスクの待ちを解消しておく

kbd(VK_SPACE, UP)
sleep(5) // Jane動作のためじっとしておく


530 名前:528 mailto:sage [2009/09/09(水) 18:11:43 ID:N5F4Z3YrP]
SendMessageで直接クリックの動作をさせるのが一番だけどなあと思ったが、
ACC経由でないClkItem()ならSendMessageと等価なのかな、と思って書いてたら、
やっぱウィンドウハンドルの一覧から探すとかやってて時間かかってるかも知れないなと思い直した。
かといってIDとか自分で調べてもJaneの他のバージョンでは違っている可能性もあるわけで、汎用性が無くなるかもしれない。
ウィンドウのIDだけじゃなくてコントロールのIDも取れればシビアな制御できそうだけど・・
ややこしくなるから使う人いないし、そこまでするなら他の言語使ってるよな。

使いにくいけど鯖との時刻あわせしなきゃいけないから・・やっぱあれでよかったかな。
光回線ならもーちょっと安定するだろうし、そしたらあのままでも100分の1秒まで正確にやれるかも。


531 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/10(木) 00:26:02 ID:EY/yVP0fP]
pingですら安定した通信は不可能なのに何言ってんの?
誤差を少しでも減らしたいならteratermでも使えよ

532 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/10(木) 17:39:21 ID:GPfW3J/O0]
>光回線ならもーちょっと安定するだろうし
ここ笑うとこ?

533 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/11(金) 00:09:23 ID:QONu8T8VP]
>>532
いや、実際俺より安定して狙い通りに投稿してる人の回線が光だそうで。
497 名前: (catv?)[] 投稿日:2009/09/09(水) 07:35:09.09 ID:DHHnwPci
532 名前: (catv?)[] 投稿日:2009/09/09(水) 07:50:09.09 ID:DHHnwPci
551 名前: (catv?)[] 投稿日:2009/09/09(水) 07:55:09.08 ID:DHHnwPci
576 名前: (catv?)[] 投稿日:2009/09/09(水) 08:00:09.10 ID:DHHnwPci
583 名前: (catv?)[] 投稿日:2009/09/09(水) 08:02:09.09 ID:DHHnwPci
596 名前: (catv?)[] 投稿日:2009/09/09(水) 08:05:09.08 ID:DHHnwPci
610 名前: (catv?)[] 投稿日:2009/09/09(水) 08:09:09.09 ID:DHHnwPci
626 名前: (catv?)[] 投稿日:2009/09/09(水) 08:12:09.09 ID:DHHnwPci
651 名前: (catv?)[] 投稿日:2009/09/09(水) 08:15:09.10 ID:DHHnwPci
695 名前: (catv?)[] 投稿日:2009/09/09(水) 08:19:09.09 ID:DHHnwPci
774 名前: (catv?)[] 投稿日:2009/09/09(水) 08:29:09.10 ID:DHHnwPci
818 名前: (catv?)[] 投稿日:2009/09/09(水) 08:32:09.09 ID:DHHnwPci
36 名前: (catv?)[] 投稿日:2009/09/09(水) 08:53:09.12 ID:DHHnwPci
42 名前: (catv?)[] 投稿日:2009/09/09(水) 08:55:09.14 ID:DHHnwPci
48 名前: (catv?)[] 投稿日:2009/09/09(水) 08:58:09.08 ID:DHHnwPci
50 名前: (catv?)[] 投稿日:2009/09/09(水) 09:00:09.09 ID:DHHnwPci
52 名前: (catv?)[] 投稿日:2009/09/09(水) 09:02:09.08 ID:DHHnwPci
54 名前: (catv?)[] 投稿日:2009/09/09(水) 09:04:09.08 ID:DHHnwPci
55 名前: (catv?)[] 投稿日:2009/09/09(水) 09:05:09.09 ID:DHHnwPci
57 名前: (catv?)[] 投稿日:2009/09/09(水) 09:07:09.08 ID:DHHnwPci
64 名前: (catv?)[] 投稿日:2009/09/09(水) 09:09:09.10 ID:DHHnwPci
80 名前: (catv?)[] 投稿日:2009/09/09(水) 09:12:46.33 ID:DHHnwPci
img.2ch.net/ico/anime_onigiri03.gif
   ∧_∧
⊂(#・ω・)  やってられるか!!
 /   ノ∪
 し―-J |l| |
         人ペシッ!!
       __
       \  \

534 名前:こっちが>>529+Win7+ADSLで調整しつつ動かしたやつ mailto:sage [2009/09/11(金) 00:18:26 ID:QONu8T8VP]
519 名前:(水) 07:45:09.07 ID:SYGoZDF2
523 名前:(水) 07:47:09.06 ID:SYGoZDF2
539 名前:(水) 07:52:09.06 ID:SYGoZDF2
544 名前:(水) 07:53:09.06 ID:SYGoZDF2
546 名前:(水) 07:54:09.05 ID:SYGoZDF2
550 名前:(水) 07:55:09.10 ID:SYGoZDF2
556 名前:(水) 07:56:09.11 ID:SYGoZDF2
559 名前:(水) 07:57:09.11 ID:SYGoZDF2
564 名前:(水) 07:58:09.11 ID:SYGoZDF2
569 名前:(水) 07:59:09.10 ID:SYGoZDF2
580 名前:(水) 08:01:09.10 ID:SYGoZDF2
582 名前:(水) 08:02:09.10 ID:SYGoZDF2
595 名前:(水) 08:05:09.11 ID:SYGoZDF2
600 名前:(水) 08:06:09.10 ID:SYGoZDF2
604 名前:(水) 08:07:09.10 ID:SYGoZDF2
607 名前:(水) 08:08:09.10 ID:SYGoZDF2
614 名前:(水) 08:10:09.08 ID:SYGoZDF2
618 名前:(水) 08:11:09.10 ID:SYGoZDF2
625 名前:(水) 08:12:09.09 ID:SYGoZDF2
634 名前:(水) 08:13:09.10 ID:SYGoZDF2
671 名前:(水) 08:17:09.11 ID:SYGoZDF2
694 名前:(水) 08:19:09.11 ID:SYGoZDF2
702 名前:(水) 08:21:09.11 ID:SYGoZDF2
709 名前:(水) 08:22:09.11 ID:SYGoZDF2
733 名前:(水) 08:25:09.11 ID:SYGoZDF2
744 名前:(水) 08:26:09.11 ID:SYGoZDF2
758 名前:(水) 08:27:09.09 ID:SYGoZDF2
762 名前:(水) 08:28:09.11 ID:SYGoZDF2
786 名前:(水) 08:30:09.07 ID:SYGoZDF2
803 名前:(水) 08:31:09.10 ID:SYGoZDF2
817 名前:(水) 08:32:09.07 ID:SYGoZDF2
836 名前:(水) 08:33:09.07 ID:SYGoZDF2

535 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/11(金) 07:32:40 ID:51Za3rGdO]
ホップ数が少ない回線という主張なら理解できるが
どうして光回線ならより安定との結論が導かれるんだ?

論理的におかしいだろ

536 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/11(金) 12:17:04 ID:SAx+c6nq0]
広帯域=反応が早い
こんな風に勘違いしてる人って多いよね。

道路に例えれば道幅が広いだけで決して車の速度が速いわけではないのに。



537 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/11(金) 18:37:40 ID:2T7N4nOi0]
メモリーの値をとりだすのはどうすればいいですか?
memory.dllとDEF_DLLを使うのはわかったのですが、そのあとがわかりません。
例えば00456789のメモリの値が50以下になったら・・・っていうのはどう作ればいいのでしょうか?


538 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/11(金) 19:06:58 ID:Bpd1Ez2d0]
memory.dllとDEF_DLLが分かってるのにどうしてメモリの読み方が分からないんだ?
memory.dlにはご丁寧にサンプルも付いてるんだし
1度くらい付属のドキュメントでも読んでみるといいよ

539 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/11(金) 19:54:47 ID:2T7N4nOi0]
>>538
検索とかしてみたのですが、よくわかりませんでした

ちなみにこんな感じです。
DEF_DLL ReadMemory(hwnd,DWORD,DWORD,DWORD):int:Memory.dll
public pname="クライアントの名前"  //クライアントを指定
public adr = $00456789
public rdata = 0
public size=4
ReadMemory(pname,adr,rdata,size)
ifb rdata<50 then
KBD(VK_4,down,100)
KBD(VK_4,up,100)
else
endif

クライアントの指定の部分で間違ってる気がします。
もしくは一行目からすでにまちがえますか?

540 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/11(金) 20:21:18 ID:Bpd1Ez2d0]
DEF_DLL ReadMemory(string,DWORD,var DWORD,DWORD):int:Memory.dll
じゃないかな?

541 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/11(金) 21:12:08 ID:2T7N4nOi0]
>>540
ありがとうございます!
無事に出来ました

542 名前:528 mailto:sage [2009/09/11(金) 22:29:51 ID:piWYqlZ70]
>>535
光回線に雑音なし。
ADSLは雑音だらけ。
雑音の影響でパケット修復や再送信が発生しまくり。
(いや、うちは今安定してるけど、最近まで雑音が38dBとかだった)

通信自体は雑音が入っても再送信されるので安定して通信できるとしても、
回線で再送信が発生していればそれだけ時間が変動してきますよね。

>>533-534の結果を見ると、回線の種類よりも実行環境の方が影響してそうだけど。
Windows7って10秒に1回くらい重い処理が入るしな。


543 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/12(土) 00:32:11 ID:QAaS2IK0O]
クライアントPCからプロバイダまでが君のすべてなんだね
でも現実には違うんだよ

君が誤差とか雑音とか言ってる9割以上はその先の世界の影響なの
君が1割の世界を自在にコントロールしても無駄なの分かる?

544 名前:528 mailto:sage [2009/09/12(土) 04:12:18 ID:lXIELoI/P]
>>543
9割は大げさだよ。
そりゃー確かに負荷のかかってるサーバーのスループットは時間かかるよ。
でも、2ちゃんねるの投稿時間っていうのは、最初に投稿文を投げて受け付けられた時刻になるのであって、
投稿処理完了までにかかる時間は含まれてない。
だからクライアント側が簡単なスクリプトでも割と安定した投稿時刻になってるわけだし、
だからほぼ同時に投稿されたレスは書き込み時刻とレス番が入れ替わっていたりするんだ。
それに、クライアントがすげー重くてマウスもカチコチになってる状態では
パケットを回線に乗せるだけでもソートーな時間がかかるわけで、
いくらでも時間を延ばそうと思えば延びるもんだ。

※今ゼロの使い魔見てるけどやっぱあの主役の声はいいよなあ。

545 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/12(土) 04:19:57 ID:zkkco6a50]
日野聡ね?

546 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/12(土) 07:56:58 ID:lXIELoI/P]
釘宮理恵だよ
顔はアレだし普段の声もアレだけど、ツンデレ少女やらせたら天下一品。
ttp://www.youtube.com/watch?v=EQzf1IccUNY




547 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/12(土) 08:41:54 ID:0prcRox+0]
ID:lXIELoI/P
お前はもう来なくていい
いつまでオナニーし続けるのかと思ったら今度は唐突に完全スレチなアニメ話か

548 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/09/12(土) 13:04:39 ID:k/iIqcLX0]
あの主役の声とか言わずに、くぎゅうううううううううううとか言っとけよ






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<344KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef