自動化ツールuwsc使いよ集まれ4at SOFTWARE
自動化ツールuwsc使いよ集まれ4 - 暇つぶし2ch250:名無しさん@お腹いっぱい。
09/06/09 16:29:45 XsDpdM150
>>248
できた。ありがとう。
…でも、タスクマネージャーを開いたりする動作がちょっとめんどくさい。
バックグラウンドで何も表示が変わらず取得するには>>247の通りAPIとかがいいのかなぁ…

APIとしてtoolhelp32があるらしいが、宣言様式がわからずに挫折。

探していったら、コマンドプロンプトで「tasklist」を打つと標準出力としてリストが帰ってくるみたい。
今回はこれを使ってみます。

…挫折しそうだったけど、なんとかなりそう。有難うございました。

251:名無しさん@お腹いっぱい。
09/06/09 17:38:09 JDTy0djO0
なるほどね(´・ω・)

252:名無しさん@お腹いっぱい。
09/06/09 17:47:30 98GC24TC0
>>250
tasklist /?

253:名無しさん@お腹いっぱい。
09/06/09 21:17:19 yZRaCbPW0
APIつかえば楽にできるものまで、なんで無理やりUWSC使おうとするのか・・・

254:名無しさん@お腹いっぱい。
09/06/09 21:34:50 OB3fzy750
ん?
uwscでAPI使えるが

255:名無しさん@お腹いっぱい。
09/06/09 23:11:29 XsDpdM150
>>253
APIを使った先がウィンドウ操作ならUWSCを使うのもありかと思う。

256:名無しさん@お腹いっぱい。
09/06/10 06:32:08 s0GnnaGy0
未だに2.8使ってるわ

257:名無しさん@お腹いっぱい。
09/06/12 19:46:08 cYfKVn6U0
指定ウインドウのタイトルバーをホットキーで
ON/OFFできるようになった
テラ便利だなこれ

258:名無しさん@お腹いっぱい。
09/06/12 23:17:03 LyI0bbxR0
あの、pro試用版の期間切れてまったく使えなくなったんですが、再度インストールしなおす感じで
使えるようになる方法はあるでしょうか?
それか課金すれば他のPCでも作ったEXEを起動させる事は可能でしょうか?

259:名無しさん@お腹いっぱい。
09/06/13 16:27:25 HHSbXdvr0
(1ライセンス:1人の使用者もしくは1台のコンピュータのどちらかといたします)
1人の使用者=別PC起動OK?

260:名無しさん@お腹いっぱい。
09/06/13 17:00:46 ypl3J9yE0
>>258
exe化されたものは単体で動く&ライセンスフリーで配布化なので

>課金すれば他のPCでも作ったEXEを起動させる事は可能でしょうか?
は問題ない。

>>259
要は多人数・多PC間で同一シリアルでの使用、以外であれば基本的にはOKということかと…

261:名無しさん@お腹いっぱい。
09/06/13 17:05:09 HHSbXdvr0
>>360
>>exe化されたものは単体で動く&ライセンスフリーで配布化なので

他のPCでフリー版proの期限が切れてるとexeも起動できないのです

262:名無しさん@お腹いっぱい。
09/06/13 17:13:58 HHSbXdvr0
とりあえず製作者さんに聞いてみます

263:名無しさん@お腹いっぱい。
09/06/13 17:30:51 ypl3J9yE0
>>261
それはあくまでも”試用”だからじゃない?
以前は試用時期はexe化不可だったので、その後、そのようなbombを加えたんだと思うよ。

264:名無しさん@お腹いっぱい。
09/06/13 17:36:03 MuifibEd0
>EXE化後は単体での実行が可能であり、ライセンスフリーにて配布できます
元のpro試用版とはEXE化した時点で切れて元のライセンスとは無関係になる意味だとしか読めない
(中級者以上は全員そう答えると思う)

詳細:
大原則「元のプログラムのライセンスが成果物に及ぶことはありえない、ただし成果物に元のプログラムの一部分を含む場合は除く。」
UWSCのEXE化の場合ただし書きに当てはまっちゃうから自動的に(何と書いてあろうが)拘束されるわけないとは言えないけど
最初の文に戻ってセーフ

265:名無しさん@お腹いっぱい。
09/06/13 20:05:44 bQw4ownc0
Pro試用版で作ったExeには、試用版の期限とともに使えなくなる制限が加えられているって話か?
あたりまえなんじゃないの?

266:名無しさん@お腹いっぱい。
09/06/13 21:25:07 1s3MThNz0
そうじゃないから話題にしてるんだろ…

267:名無しさん@お腹いっぱい。
09/06/13 21:43:14 okfHIytV0
どうしてこんなことに

268:名無しさん@お腹いっぱい。
09/06/18 01:47:18 7aUOItL20
MOUSEORG使わずに裏のソフトにキーボード送る方法しらない?
仮想デスクトップだと失敗した(windeskwide)

269:名無しさん@お腹いっぱい。
09/06/19 16:01:31 ZIX8IAzn0
vitualPCくらいしかないんじゃないか?

270:名無しさん@お腹いっぱい。
09/06/19 18:53:26 08TlUNPj0
3レス前までの話なんだけど
メモリースティックに正式版UWSCのEXEを入れて別PCでそのEXEを起動できるのですか?

271:名無しさん@お腹いっぱい。
09/06/19 19:46:29 pAkGm9U/0
いままでメモ帳でスクリプト書いてたが、ここで紹介のあったさくらエディタ試しに使ってみたら
すげー便利なんで驚いたよ。プログラムなんていままでやったことなくてUWSCが唯一のなんちゃって
なんだけど、スクリプト書くのに入力支援ってのがあるのを初めて知りまつた^^

ちらしの裏でごめんなさい。

272:名無しさん@お腹いっぱい。
09/06/20 22:01:42 EKtO2XvN0

Ifb PEEKCOLOR(100,100) = $0000FF then
KBD(VK_A,CLICK,100)
endif

これで100、100の色が赤のときAキー押しますよね・・?
X100~200 y100~200の範囲に赤があるとき
Aキーを押すにはどうしたらいいんでしょうか?


273:名無しさん@お腹いっぱい。
09/06/21 10:43:56 RhC3FDVM0
>>271
入力支援とはどのような?

274:名無しさん@お腹いっぱい。
09/06/21 12:13:01 DCfGr8OJ0
俺はかなり昔から金払ってEmEditor使ってる
html、perl、vbs、shとか全部これ
EmEditor以外でよく使うのはvi

275:名無しさん@お腹いっぱい。
09/06/21 12:46:41 5kj31fKJP
>>271
for文の2重ループ

FOR x=100 TO 200
FOR y=100 to 200
Ifb PEEKCOLOR(100,100) = $0000FF then
KBD(VK_A,CLICK,100)
BREAK 2
endif
NEXT
NEXT

色が完全に固定ならチェック対象の1ピクセルの画像を用意してCHKIMGとか

どちらにしても負荷は高い

276:名無しさん@お腹いっぱい。
09/06/21 13:05:02 /nl1DTl50
>>273
"Get"とキーボードで入れると、"ゲッツ!"とダンディの声が再生され、
スクリプトの入力がはかどる機能だ。いまのところ、さくらエディタにしかない。

277:名無しさん@お腹いっぱい。
09/06/21 13:18:32 G+IyuUm70
メモリースティックにUWSCのEXEを入れて別PCでそのEXEを起動できるのですか?

278:名無しさん@お腹いっぱい。
09/06/21 17:28:50 iA+d4F2z0
こんな入力支援じゃダメ?(´・ω・`)

ID = GetID("メモ帳","Notepad", 0.02)
HashTbl a
  a[30] = "ChgMoj()"
  a[31] = "CreateOLEObj()"
  a[70] = "GetActiveOLEObj()"
  a[32] = "CtrlWin()"
  a[60] = "Fukidasi()"

Thread Focus()
b = SlctBox( SLCT_LST, 0, "どれか選んでね", a[30], a[31], a[32], a[32], a[60])
If b < 1 then Exit
c = LOGN(2, b)

Ifb 0 < ID
  SendStr( ID, a[c, HASH_VAL])
Else
  SendStr( Exec("Notepad"), a[c, HASH_VAL])
EndIf

Procedure Focus()
  SCKey( GetID( "", "TFSectBox.UnicodeClass", 0.02), VK_Down)
FEnd


279:名無しさん@お腹いっぱい。
09/06/21 17:34:27 G+IyuUm70
ライセンス取ってる人本当にいるんですか?

280:名無しさん@お腹いっぱい。
09/06/22 14:40:20 VkD3AiIxP
>>279
さー
いるんじゃないの?

でも、2ちゃんねる自体人が減っちゃったし、ヘビーユーザー以外は大規模規制で書き込めないし。


281:名無しさん@お腹いっぱい。
09/06/24 03:29:36 fQEr78db0
ウィンドウタイトルの無いウィンドウ(ツール)を操作したいのですがどうしたらいいでしょうか。
具体的にはURLリンク(novolization.hp.infoseek.co.jp) のMovieOperatorを
操作したいんですが。
プロセスから絞り込み出来るAHKに色目を使ったりしたんですが、日本語関係が扱いにくすぎるので戻ってきました…
UWSCでも同じようなことが出来たらと思いまして。

282:名無しさん@お腹いっぱい。
09/06/24 11:28:57 bogFoJon0
>>281
全部のウィンドウを探索して
特定の文字列を、特定の場所に持つ(title, static, edit…等々)ものを検索しても良いんじゃないか。

283:名無しさん@お腹いっぱい。
09/06/24 15:13:14 PNf2g6ai0
メモリースティックにUWSCのEXEを入れて別PCでそのEXEを起動できますか?

284:名無しさん@お腹いっぱい。
09/06/24 18:06:45 /v3ozSjk0
動くよ

285:名無しさん@お腹いっぱい。
09/06/25 14:08:56 u8YpvIpq0
>>281
クラス名指定では絞り込めないのか?

286:名無しさん@お腹いっぱい。
09/06/25 16:03:16 jI+hlXDc0
クラス名は #32770 でよくあるダイアログのそれです。

UWSCから起動してexecの戻り値を取るとか、アクティブウィンドウを指定するとか、
ウィンドウ総当りとかじゃないもっとストレートな指定法って無いもんですかね?

AHKではプロセスからからウィンドウ指定できるんですね。
何年もUWSCだけ使ってましたがこれを機にAHKも勉強中。
スタティックのテキスト変更できたりと色々便利。

UWSCでもAPI使えば出来るんだろうけど、なかなか敷居が高いです…

287:名無しさん@お腹いっぱい。
09/06/25 17:58:21 u8YpvIpq0
>>286
なる。 駄目もとで公式に要望出しておいたら?
AHKは確かに便利なんだけど、あの書式がどうしても馴染めない…


288:名無しさん@お腹いっぱい。
09/06/25 18:19:24 wYqTelZv0
総当りっつても、関数にしちゃえば大したことないよ。
クラス名と、Statusでプロセス名と、ウィンドウ内部のいくつかのテキストが合致すりゃいいだけの話。
UWSCのヘルプ見れば簡単に取得できる。
API使う技量があれば大したことないと思うんだが・・・
AHKは慣れるまで大変だけど、UWSCより反応や処理が早いような気がするわ。
キーカスタマイズできるために処理が早いのか、exeが200キロバイトくらいしかないからなのかわからんが。
でも楽なのはUWSCだね。

289:名無しさん@お腹いっぱい。
09/06/26 00:30:23 kYZKAKEF0
PRO版をレジストした。
くそう…もっとはやくレジストしておけばよかった…

EXE化の恩恵がソース隠蔽の他にもあった。
補助ソフトを使わずに、複数ファイルがドロップ受付可能になるのは便利だ。

290:名無しさん@お腹いっぱい。
09/06/26 02:05:41 jxeiONc00
>>288
問題のツールはリストボックスの選択でモード変更するんですが
モード変更によって内部コントロールの数もテキストもごそっと変わるんですね。
きめうちで指定できる全モード共通のテキストが無い。

まあそれもモード毎に分ければいい話ですが、使わないモードの
ぶんまでいちいち記述するのは面倒くさいですよ。

291:名無しさん@お腹いっぱい。
09/06/26 03:10:05 rn5hv3nk0
//前作ってた奴から関数にしてみた。テキストのチェックはないけど
option explicit
//クラス名とExe名からIDを取得する
dim sNameClass = "#32770"
dim sNameExe = "movieoperator.exe"

dim ret = GetID_class_Exename(sNameClass,sNameExe)
msgbox(ret)

function GetID_class_Exename(sNameClass,sNameExe)
GETALLWIN()
dim iii
result = ""
for iii=resize(ALL_WIN_ID) to 0 step -1
ifb status(iii,ST_Class) = sNameClass and copy(status(iii,ST_Path),length(status(iii,ST_Path))-length(sNameExe)+1,length(sNameExe)) = sNameExe then
result = iii
exit
endif
next
FEnd


292:名無しさん@お腹いっぱい。
09/06/26 09:21:02 jxeiONc00
>>291
なるほど、ST_PATH使うんですね。
こっちのほうがだいぶスマートです。

ウィンドウ総当りでも内部コントロールのテキスト使うことばかり頭にありました。

293:名無しさん@お腹いっぱい。
09/06/27 21:21:48 I4Xj1M1U0
>>289
他PCでもレジストできますか?

294:名無しさん@お腹いっぱい。
09/06/28 00:32:11 KYHTB2rv0
税込む価格
10本未満 : 1本 6,720円
10本~29本: 1本 6,090円
30本~49本: 1本 5,460円
50本以上~: 1本 4,830円
例:12本の場合は 12*6090にて、お振込み頂く金額は 73,080円になります。

これについて一言

295:名無しさん@お腹いっぱい。
09/06/29 12:12:35 26BV9Jn80
画面全体、もしくは指定座標が #FFFFFF→#FFFF00に変化したら音を鳴らして、
#FFFF00になっている間はループ。#FFFF00→#FFFFFFに変化したら音を止めて、
監視状態に戻る・・・というものを作りたいのですが、スキルがない為にうまく組めません。
用途としてはアラート監視に使いたいと思っています。監視ソフトに音を鳴らす
機能がついていないので、UWSCでその機能を補完できればと考えています。
お力をお貸し願えないでしょうか。
(取りあえず自分でも組んでみたのですが、改行多すぎで投稿できませんでした)


296:名無しさん@お腹いっぱい。
09/06/29 15:09:48 aEsNyjSz0
WHILE TRUE
 IF PEEKCOLOR(x, y) = $00FFFF THEN SOUND()
 SLEEP(0.1)
WEND

どこをどうしたら改行多すぎる長いマクロかけるんだ…

297:名無しさん@お腹いっぱい。
09/06/29 16:04:22 NmP87/3+0
画面全体が対象だとちょっとだけ長くなるんじゃね

298:名無しさん@お腹いっぱい。
09/06/29 19:25:33 A0Ms4Bp/P
>>295
そういうのはスクリプトじゃないちゃんとしたプログラムで書くべき。
UWSCではⅠ画面のスキャンにも時間がかかりすぎる。


299:名無しさん@お腹いっぱい。
09/06/29 22:10:30 eTj2KOuA0
詰めるとスクリプトでは…という話かもしれないが
別のところを詰めると、スクリプトでもいけると思う。

まぁ、それには295が自分のやりたいことと、
取り巻く環境を正しく理解すれば…の話だったり。

300:名無しさん@お腹いっぱい。
09/06/29 22:55:12 n5qEjFKA0
>>293
出来るよ。何台でも。ライセンス条項違反だけどね。
>1ライセンス:1人の使用者もしくは1台のコンピュータのどちらかといたします

301:名無しさん@お腹いっぱい。
09/06/29 23:30:15 JbdH8yRJ0
>>298
時間っていっても大したことねえと思うが。
素人がさっと試せるのがUWSCのいいとこなわけだし。
それで駄目ならプロにたのめばいいわけだし。

302:名無しさん@お腹いっぱい。
09/07/01 19:45:32 Axm6U3Er0
すいません教えてください
指定範囲内の画像を判別し別の座標をクリックする下記のスクリプトを使っています

while true                              
ifb CHKIMG("画像1.BMP",指定範囲A) then
BTN(LEFT,CLICK座標)
break
endif
wend

見つかるまでループし見つかったらクリックして停止するのですが
チェックする指定範囲を指定範囲AだけでなくB、Cと増やし、
どれかが見つかればクリックして停止させるためにはどうすればよいでしょうか?

303:名無しさん@お腹いっぱい。
09/07/01 21:04:18 tiNZ/SLY0
POU!!!!

304:名無しさん@お腹いっぱい。
09/07/01 21:12:51 zKC91gH10
オンラインゲームとかでこのツールで自動化してる人多いんだろうか

305:名無しさん@お腹いっぱい。
09/07/01 21:22:23 15F2lE6M0
大抵使えないようになってなかったっけ?

306:名無しさん@お腹いっぱい。
09/07/01 23:18:23 9pXJwBtQP
前ここで紹介したやつとかはできるよ。


307:名無しさん@お腹いっぱい。
09/07/01 23:49:42 ygopY0dKP
>>302                              
ifb CHKIMG("画像1.BMP",指定範囲A) or CHKIMG("画像1.BMP",指定範囲B) then
みたいな方法はダメなの?

308:名無しさん@お腹いっぱい。
09/07/02 12:13:35 OEoizP2MO
uwsc間でセマフォを実現したいのですが
dllを作って制御するよりも簡単な方法はないでしょうか?

309:名無しさん@お腹いっぱい。
09/07/02 14:40:24 sDXIrU6E0
>>308

スレッドで排他的な処理をするときに、グローバル変数でやるけどな。

310:名無しさん@お腹いっぱい。
09/07/02 15:23:40 q3lfYl560
テキストファイル作るとかいくらでも原始的な方法あるだろ…。

小手先にこだわる人はそういうの嫌う傾向あるけどさ。

311:名無しさん@お腹いっぱい。
09/07/03 08:57:54 XVVCydyZP
>>300
それ、使用者が1人に限定されてるなら、複数台のPCにインストール可ってことだろ。
 複数台のPCにインストール = ライセンス違反
にはならないっしょ。

312:名無しさん@お腹いっぱい。
09/07/06 18:41:41 YZMKaP1Xi
話の流れを切ってしまってすいません。
最近、UWSCを使い始めた者です。
以下のようなスクリプトを作成したいと思っています。
グラフを表示するアプリケーションで、折れ線グラフに座標がプロットされています。
プロットにマウスカーソルを合わせるとカーソルが手アイコンになって、アイコンの横に数値等の情報が表示されます。
グラフにプロットされている数値情報をUWSCのスクリプトで取得したいのですが、実現可能でしょうか?

313:名無しさん@お腹いっぱい。
09/07/06 20:06:01 TPkvWju00
>>312
セーブ機能でもあれば(できればRAMDISKにするのが精神的にはいい)
ファイルに落とさせてそこからデータ拾う方向でスクリプト書くのが結局速度的に楽だと思う

314:名無しさん@お腹いっぱい。
09/07/06 22:06:49 lo0IC7Wz0
多分株とかFXのチャート情報を取りたいんだよな?
具体的なソフト名出した方が早くね?

315:名無しさん@お腹いっぱい。
09/07/07 01:17:50 jscXNfpn0
javascriptを使ったwebサイトのソース内で、
var foo = "hoge"
となっているときに、
"hoge"を取得するスマートな方法はありますか?

316:名無しさん@お腹いっぱい。
09/07/07 04:41:48 P7bnsZv00
UWSC Ver4.5b umiumi
 TRY-EXCEPTにて間違った処理をするパターンがあるのを修正
 別プロセスで実行時に引数の扱いを間違うパターンがあるのを修正
 SLCTBOX関数にて配列を個別に指定された時に正しく処理できなかったのを修正
 本体実行中でもスケジュールの指定Window(別プロセス実行)が実行できるように修正
 COPY関数にて第三引数(長さ)が省略された場合は、残り全部とするようにした
 最大スケジュール数をINIの[SCHEDULE],MaxNumberで指定できるようにした
 GETSTR関数にて取得文字数が最大4MBまでだったのを制限を無くした
 POSB関数にて逆サーチでの順番指定が出来なかったのを修正
 DLL内でのエラーをTry-Exceptでトラップできるようにした
 IEのINPUT_FILEタグに対し対策をした
 Pro版:
 RecIE:Viataにてポップアップダイアログのボタンが記録できなかったのを修正
 UDebug:検索ボタンにて文字選択がされている場合は、直にその文字を検索できるようにした

317:名無しさん@お腹いっぱい。
09/07/09 03:18:09 K+cvyH5a0
UWSCで持続的に多数のウィンドウへキー命令することは可能でしょうか?

318:名無しさん@お腹いっぱい。
09/07/09 10:10:19 trO9D85B0
可能です

319:名無しさん@お腹いっぱい。
09/07/09 15:48:14 K+cvyH5a0
ありがとうございます

320:名無しさん@お腹いっぱい。
09/07/09 16:25:26 CvPCj7sU0
>DLL内でのエラーをTry-Exceptでトラップできるようにした
地味に大きくない?
DLL内で0除算させて試してみようかな

321:名無しさん@お腹いっぱい。
09/07/10 00:32:47 lbj2n/b50
これ便利ね

322:名無しさん@お腹いっぱい。
09/07/10 02:57:08 7POBxinT0
便利だね
手作業でチマチマやってたのを全部自動化した
API使えるから何でも出来るんだよね
昔VC++で勉強したことがこんなところで役に立つとは思わなかったな


323:名無しさん@お腹いっぱい。
09/07/10 13:24:06 bvHtNp3y0
IE8を使っている人に聞きたいのですが、IE.navigateでページを開いたとき
アドレスバーにフォーカスが移って、WEBページをTABや矢印キーで操作しようとしても
失敗してしまうということはありますか?

現状、いけるときと失敗するときとがある感じでよく分からない状態なんですが
IE.navigateでページを開いたあと、CTRL+F6(次のフレームに移動)でWEBページ表示領域に
フォーカスを移す処理を入れたほうがいいんでしょうか?

324:名無しさん@お腹いっぱい。
09/07/15 08:40:40 dHC6/iUm0
キーボードの数字をランダムに押すというのに苦戦しています。
0~9の数字を8回ランダムに押すというものです。

KBD(VK_数字)といった感じでできるのですが、この数字のところ
をrandomに変更することができません。

そもそもキー操作の場合それぞれのキーが割り当てられてるので
この場合はrandomにはできないのでしょうか?

数字部分に変数を当ててrandom関数でやってみましたが
駄目でした。

325:名無しさん@お腹いっぱい。
09/07/15 09:35:49 aCfMEibV0
まさかとは思うが、KBD(VK_Random(9))とか書いてるのか?

Select Random(9)
 Case 0
 KBD(VK_0)

とかだろ…


326:名無しさん@お腹いっぱい。
09/07/15 10:32:42 RKrpYa/b0
KBD(Random(10)+$30)
でおk

327:名無しさん@お腹いっぱい。
09/07/15 13:08:42 RKrpYa/b0
KBD(VK_0 + Random(10))


328:名無しさん@お腹いっぱい。
09/07/15 21:01:09 57HO71P40
おまじない的な感覚で>>326or>>327でよいかと

ほとんど自動変換してくれるんで意識する必要はないけど
まれに変数の型が表に顔出してくる時あるんだよね

329:名無しさん@お腹いっぱい。
09/07/15 22:49:40 g+Ls3JNv0
①エクセル起動→②エクセルマクロ実行→③実行終了したらフラグを受け取り別のソフト起動
の操作はどのように書けばいいですか?


330:名無しさん@お腹いっぱい。
09/07/16 23:58:32 +davSeuX0
え?まさかの丸投げ?

331:名無しさん@お腹いっぱい。
09/07/17 08:18:26 bbfZIYIo0
>>329
がんばって書く

332:329
09/07/18 00:22:53 WM9dcx8z0
>>331
有難う御座います。がんばって書きます

333:名無しさん@お腹いっぱい。
09/07/18 02:22:29 1ZexqNwY0
例えばaを押したら1と入力されるようにすることはできますか?
要は普段使わないキーボードの右側の方(;:]./\など)をテンキー化したいのです。
さらに欲を言うならば、caps lockがかかった状態、もしくはshitやctrlを押した状態の時だけ、そういうことが発動するようにしたいのですが、可能でしょうか?

334:名無しさん@お腹いっぱい。
09/07/18 02:24:17 mUArMsKp0
可能です

335:名無しさん@お腹いっぱい。
09/07/18 09:22:55 ItSUs/Al0
>>333
オレならUSBテンキー買って来る

336:名無しさん@お腹いっぱい。
09/07/18 12:33:46 CE0jT6p40
>>335
個人ならそれでいいかもしれんが、企業だったら稟議書からなにから通すだけで時間かかったりするぞ

337:名無しさん@お腹いっぱい。
09/07/18 15:24:17 8JxgQ2fy0
sckey をバックグランドで実行する方法はありますか?

CLKITEMだと出来たのですが、sckeyが分かりません。

338:名無しさん@お腹いっぱい。
09/07/18 17:12:38 91EZdOVQ0
それは大変だ。

339:名無しさん@お腹いっぱい。
09/07/18 20:15:17 aYjbn5h30
>>333
そういうのはautohotkeyで書いたほうが楽

340:名無しさん@お腹いっぱい。
09/07/19 00:13:28 3BRuI4PH0
>>333
KeySwap for XPとかで済むんじゃねーの?

341:名無しさん@お腹いっぱい。
09/07/19 00:19:50 Oz/DPzGt0
お前らマルチに親切にレスしてるなんてヒマなんだな

342:名無しさん@お腹いっぱい。
09/07/20 02:15:50 nsn5ChNU0
>>334>>338
カス死ね


343:名無しさん@お腹いっぱい。
09/07/20 16:08:02 JDSGXSFx0
>>333
まずはC++でグローバルフックのDLLを作ります

344:333
09/07/21 18:30:21 WYzZFjZo0
あれから色々苦戦中、0~9までuwsファイル作っておいてそれをcallで呼び出せばいいんじゃないかと思ったり。
ちなみに、プログラムの知識は皆無だよ

以下返信
>>334
そうか、頑張るよ

>>335
なら、numlockで良くね?

>>336
稟議書 ←なんて読むの?

>>339
ググった。私の脳のスペックでは意味不

>>340
ベクターで色々みたさ、でも自分で作りたいじゃないか~

>>341
マルチ スマソ(´・ω・`)

>>342
まぁまぁ

>>342
帰ったらググります

345:名無しさん@お腹いっぱい。
09/07/21 18:56:29 h60nc1rT0
>>344
公式掲示板でほとんど作ってもらったんだから
こっちじゃなくあっちにレスしてやれよw

346:名無しさん@お腹いっぱい。
09/07/23 21:59:22 ANKsVFLo0
ご存知の方教えてください。
Firefoxで表示、文字サイズ拡大の操作を記録したのですが、
再生してみても文字サイズが拡大されません。
多分スクリプトを少し書き直さないといけないと思うのですが
どういうふうにすればよいのでしょうか?

347:名無しさん@お腹いっぱい。
09/07/23 22:06:49 wpDpzEkE0
>>346
あなたの書いた(記録した?)スクリプト自体を
見せてもらわねば提言のしようがありません。

348:名無しさん@お腹いっぱい。
09/07/24 07:50:51 mKJXAKWL0
>>347
MMVというのがたくさんありますが、(多分Mouse Moveの略でしょうか?)
それを抜かすと以下のようになります。

ACW(GETID("UWSC - Mozilla Firefox","MozillaUIWindowClass"),-4,-4,1032,746,0)
BTN(LEFT,DOWN,149,31,63)
BTN(LEFT,UP,148,31,10)
BTN(LEFT,DOWN,333,167,16)
BTN(LEFT,UP,333,167,47)

どのようにすればよいのでしょうか?

349:名無しさん@お腹いっぱい。
09/07/24 08:17:19 1UbdP7zu0
>>346
ブラウザで文字サイズを変えるのは ctrlキーを押しながらマウスのホイールを回すのが簡単

350:名無しさん@お腹いっぱい。
09/07/24 09:00:42 /eJPvueU0
>>348
記録モードが、低レベル記録、になってますね。
それは、マウスの位置から全てのウィンドウの位置まで
記録開始した状態と全てがまったく同じでないと動きません。

4.5以上のバージョンなら設定で、高レベル記録、がありますので
それをつかってみろ。出来上がるスクリプトの中に書いてあるClkItemとかはヘルプを読んでみろ。

351:名無しさん@お腹いっぱい。
09/07/24 10:23:23 xMXuk8+w0
途中で口調変更ワロス

352:名無しさん@お腹いっぱい。
09/07/24 12:32:34 gzTYP/+s0
育ちが知れるなw

353:名無しさん@お腹いっぱい。
09/07/24 13:18:06 L/9QcjXe0
わろすw

354:名無しさん@お腹いっぱい。
09/07/25 08:58:51 3fo2OaNk0
これは恥ずかしいw

355:名無しさん@お腹いっぱい。
09/07/25 17:16:36 /+q684D80
画像をグループ分けして画面内に画像が出た場合、どちらのグループに属するか認識し行動を分ける事は可能でしょうか?

グループ1(A,bmp B,bmp C,bmp)
グループ2(D.bmp E.bmp F.bmp)

グループ1が出た場合
BTN(LEFT,CLICK)

グループ2が出た場合
BTN(Right,CLICK)

という風なスクリプトを作りたいです

356:名無しさん@お腹いっぱい。
09/07/25 20:40:39 2ESVsmuX0
uwscのスクリプトを要望に応じて書いてくれるところとかないでしょうか?
簡単なものだったら10分ぐらいでできてしまうと思うのですが。
そういう簡単なものだったら1000円ぐらいで書いてくれるサービスあったらいいなとかw
楽天ビジネスとかって企業向けですよね。もっと気軽に個人向けにやってるところとかないのでしょうか。

357:名無しさん@お腹いっぱい。
09/07/25 22:27:50 EmgNWjoxP
簡単なバイトでも時給1000円はもらえる
たった1000円じゃ仕事ではなくボランティアレベル

あなたの望むサービスがなぜ存在しないか考えてみよう

358:名無しさん@お腹いっぱい。
09/07/26 00:15:47 hvI9wiQs0
>>355
ピクセル単位のマッチングが必要だね。
各グループの絵を、あらかじめ配列に展開しいておいて、ピクセル単位でマッチング。

すんごい重いと思うから、かどから順番にマッチングせずに例えば10ピクセル飛ばしとかで
マッチング、その横からの10ドット飛ばしという風にしてマッチングして行くようにすると良い。
もちろんマッチしなかった時点で処理を抜ける。

どれくらいの画像に対して処理をするか次第だけどリアルタイムで行けるかは
マシンパワー次第かも。

ただし表示箇所がランダムなのであれば難度は一気に上がるよ。
始点を探す処理が入るからね。
実質の全画面チェック。
ピクセルマッチング系に魔法のようなテクニックはないのでスクリプト系の処理速度が
それに向くかはちょっと微妙だと思うし。


359:名無しさん@お腹いっぱい。
09/07/26 01:07:26 RFSxx9OA0
uwscってボタン同時押しはできないんだっけ?

360:名無しさん@お腹いっぱい。
09/07/26 01:15:22 k8W8PP1U0
できるよ

361:名無しさん@お腹いっぱい。
09/07/26 01:27:05 SQTfml1C0
>>358

普通にCHKIMGじゃだめなのか?

362:名無しさん@お腹いっぱい。
09/07/26 02:02:16 hvI9wiQs0
>>361
ガチでダンプチェックするより事前に代表点で振るいかけたほうが早いんよ

363:名無しさん@お腹いっぱい。
09/07/26 02:38:43 wN6RQvAZ0
>>362
グループ化と言ってるあたり、そのレベルの質問ではなく
ifとか基礎文法の扱い方を知りたいないと思うんだが・・・
ちょっと論点がズレてる気がする

「どう高速化すべきか?」という質問されたのであればそれが正解かも知れませんけどね

364:名無しさん@お腹いっぱい。
09/07/26 11:41:09 DhQZJJUu0
>>363
速度が十二分に速いなら、

if chkimg("A.bmp") then (1グループ処理)
if chkimg("B.bmp") then (1グループ処理)
if chkimg("C.bmp") then (1グループ処理)
if chkimg("D.bmp") then (2グループ処理)
if chkimg("E.bmp") then (2グループ処理)
if chkimg("F.bmp") then (2グループ処理)

で良くなる。
これを実行してみてから、より速度が必要なら改善方法はそれなりにあるだろう。

365:名無しさん@お腹いっぱい。
09/07/26 13:41:19 ADTPJm3c0
355です。
あまり速度は必要ないのでif chkimgで総当りしてみます。
答えてくださった方々ありがとうございました

366:名無しさん@お腹いっぱい。
09/07/26 18:47:12 SQTfml1C0
>>362

peekcolorで候補絞って最後にchkimgする感じ?

そもそも全画面捜査やったことないし、素人なもんで、そういう方法について頓着したことなかったよ^^;

367:名無しさん@お腹いっぱい。
09/07/27 23:03:22 jAvJH5hi0
俺もやったことあるけど、でかい画像にchkimgかけるとたまらなく遅いんだよな。

368:名無しさん@お腹いっぱい。
09/07/28 01:28:51 GiUkEbYy0
355です。
800×600の画面の左上に110個の画像を総当りでチェックしていこうとおもうのですが・・・
やはり少し無謀でしょうか?

369:名無しさん@お腹いっぱい。
09/07/28 01:54:32 I9N45zJA0
800x600と800x600を110回チェックだとしたら無謀すぎる。
たとえC言語で組んでもリアルタイムは無理だw

370:名無しさん@お腹いっぱい。
09/07/28 02:35:11 GiUkEbYy0
URLリンク(pc.gban.jp)

言葉では説明しきれなかったので画像にしてみました
赤の部分をチェックします。

長々とすみません

371:名無しさん@お腹いっぱい。
09/07/28 08:51:02 Pp360QyAP
範囲が狭いなら100パターンチェックも十分可能だろうけど・・・
それだけの画像用意するのも大変じゃね?
画像の左側は数パターンしかないとかもっと分類できないものなの?

372:名無しさん@お腹いっぱい。
09/07/28 08:51:09 4rihFoYW0
>>370
>>364の内容で作ってみてからの話だぜ? 
自分で何倍ぐらい早くしないとだめなのか、理解が及ばないとね。

また、高速化する場合には、アルゴリズム以外にも、そのものをよく知らないとだめ。
…何に対してどういう処理をして何を省くのか、はお前さんしか知らないしな。

つか、Cでも無理だという話があるし…無理なものは無理とあきらめるべき。

373:名無しさん@お腹いっぱい。
09/07/28 09:41:19 oKzw8Bf70
おれならその範囲をドット単位で記録するマクロをまずつくって必要なパターンと判断パターンとの
相関を割り出す。

374:名無しさん@お腹いっぱい。
09/07/28 09:59:02 Gy+7hY450
まずは試してみるのが一番早い。

そのためのUWSCです。

375:名無しさん@お腹いっぱい。
09/07/28 15:51:30 bh7Aq+ks0
クリックについてちょっと質問です。
今現在目的の動作はできていますが、もっと簡略化
できるのではと思っています。

BTN(LEFT,CLICK,303,359,0)
BTN(LEFT,CLICK,335,359,0)
BTN(LEFT,CLICK,367,359,0)

このような感じでクリックするのが徐々に横にずれて
いくというものなのですが、x軸の移動幅が同じと
いうことで、簡略はできませんか?

ランダムでは、本家のサイトで見つけましたが、
ランダムだと関係ないところまでクリックしてしまうので。


376:名無しさん@お腹いっぱい。
09/07/28 16:45:22 4rihFoYW0
>>375
おめーは、ヘルプの制御文の項目を100回読み直せ。
他の項目も全部読んでから出直して来いや。

377:名無しさん@お腹いっぱい。
09/07/28 18:09:57 LfvbDBC/i
>>375
X軸を変数にすれば、クリックコマンドは1つにできるぞ。何でランダムと言い出すのか? 意味がわからん。
3コマンドだったら、今でも良いと思うが。

378:名無しさん@お腹いっぱい。
09/07/28 18:46:42 bh7Aq+ks0
変数以後がわからないんです。
32ずつ増えていくというのが。

379:名無しさん@お腹いっぱい。
09/07/28 19:06:49 Eqbq+GDA0
クリックするたびに変数に32足すだけのことだよ

380:名無しさん@お腹いっぱい。
09/07/28 19:14:49 aCDcIvCB0
3行でやることにこだわってんのかも

381:名無しさん@お腹いっぱい。
09/07/28 19:36:40 llG+e4bu0
かわいそうなので

for i = なんちゃら to なんちゃら step 32
btn(なんちゃらかんちゃら)
next

または

i = なんちゃら
repeat
btn(なんちゃらかんちゃら)
i = i + 32
until i < なんちゃら

382:名無しさん@お腹いっぱい。
09/07/28 19:55:07 X9y7aNs50
たとえば20回画像探索する処理をループ内に置くと、ループ外に置くのより時間がかかるのは知ってたけど、
メインプログラム内とスレッド内でもこれまたスレッド内の方が処理遅くなるんですねー。

383:名無しさん@お腹いっぱい。
09/07/28 19:57:18 EviZ455x0
もういいです

384:名無しさん@お腹いっぱい。
09/07/28 20:11:01 bh7Aq+ks0
>>381
レスどうも。
しかし、それは本でみつけたもので
設定がわからないのです。

上のは知らなかったので試してみたけど駄目でした。
下は、本には一ずつ増えていき指定の回数になると
終わるということでした。

しかもkbdなのでxとかの変数に割り当てるというものでは
なかったです。


385:名無しさん@お腹いっぱい。
09/07/28 20:18:37 vQa+HPoO0
つまり、自分では考えたくないということですね

386:名無しさん@お腹いっぱい。
09/07/28 20:32:39 Eqbq+GDA0
だめだこりゃw

387:名無しさん@お腹いっぱい。
09/07/28 20:38:48 3Yrgh0RB0
ああ
夏か

388:名無しさん@お腹いっぱい。
09/07/28 21:09:02 bh7Aq+ks0
最後の終了条件のところが間違ってました。

i = 303
repeat
BTN(LEFT,CLICK,i,359,0)
i = i + 32
until i > 623

これでおkでした。 i < 623 という単純な間違いでした。

389:名無しさん@お腹いっぱい。
09/07/28 21:28:41 Oy3tYx+80
横から言い訳すると
WHILE-WEND(真ならばループする)と
REPEAT-UNTIL(偽ならばループする)で
逆だからごっちゃになりやすいんだよね
漏れもよくミスるわw

390:名無しさん@お腹いっぱい。
09/07/28 22:16:36 Pp360QyAP
REPEAT-UNTILはどの言語の影響受けて存在してるの?
C系に慣れてる人のトラップだわ

391:名無しさん@お腹いっぱい。
09/07/28 23:40:55 pQqgxc/T0
なら無理して使うなよ

392:名無しさん@お腹いっぱい。
09/07/29 01:25:24 rwk2ISqwP
自分が使わなくても他人の作ったソースに入ってたら困るよね

393:名無しさん@お腹いっぱい。
09/07/29 09:56:51 0T+4O6iv0
C使いって昔はちょっと尊敬してたけど
このスレとか見てると、馬鹿ばっかなんじゃないかと思えてきたわ

394:名無しさん@お腹いっぱい。
09/07/29 10:10:19 QlUtUOFv0
普通のC使いはこんなとここねーだろw

395:名無しさん@お腹いっぱい。
09/07/29 10:21:15 lOY04Qex0
Cだとこうだったとかいうヤツは最初Cからプログラム始めて、挫折して他の言語に逃げたヤツと相場は決まってる

396:名無しさん@お腹いっぱい。
09/07/29 14:02:02 TR15ENoG0
K&R本半分ぐらいしか読んでないな(´・ω・`)

397:名無しさん@お腹いっぱい。
09/07/29 22:31:17 RFTz4JvE0
Cは難しくないだろ
C++は難しいけど

398:381
09/07/30 22:20:48 WSwKbLYQ0
>>388
ごめんね。不等号の向き間違えて。

399:名無しさん@お腹いっぱい。
09/07/31 23:46:44 N/AhkZ5J0
>>398
許すよ。これからは気をつけろよ。

400:名無しさん@お腹いっぱい。
09/08/01 12:03:59 LFJuPttY0
400get

401:名無しさん@お腹いっぱい。
09/08/01 17:47:42 8RpQSHP40
スレチだけど若い人が多いと思うので失礼しますね。

「中国の『核』が世界を制す」  講師:伊藤貫 1/4
URLリンク(www.nicovideo.jp)

「中国の『核』が世界を制す」  講師:伊藤貫 2/4
URLリンク(www.nicovideo.jp)

「中国の『核』が世界を制す」  講師:伊藤貫 3/4
URLリンク(www.nicovideo.jp)

「中国の『核』が世界を制す」  講師:伊藤貫 4/4
URLリンク(www.nicovideo.jp)


402:名無しさん@お腹いっぱい。
09/08/01 17:57:03 bmF+rgP80
(´・ω・`)

403:名無しさん@お腹いっぱい。
09/08/03 13:32:26 ZeE5zmd40
WinHttpRequestを使ってPOSTデータを送信したい
…でもこれだと受け取ってくれてないみたい。POSTに何も値が入ってない状態です。
どうしたら受け取ってくれるのでしょう?
(localhost以外の他のWebサーバでも同じく受け取ってくれないみたいです。
他のWSHやVBAではこういう書き方で出来てるみたいなんですけど…


//UWSCスクリプト---------------------------
objHttp = CreateOLEObj("WinHttp.WinHttpRequest.5.1")

url = "URLリンク(localhost)"
body = "value1=10&value2=20"

objHttp.Open("POST", url, false)
objHttp.setRequestHeader("Content-Length", length(body))
objHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencode")
objHttp.Send(body)
objHttp.WaitForResponse()

msgbox(decode(objHttp.responseBody, CODE_BYTEARRAY))

//test,phpの中身----------------------------
<?php
  var_dump($_POST); //POSTデータを全部ダンプ出力
?>

404:名無しさん@お腹いっぱい。
09/08/03 14:31:06 K4hmauqM0
>>403
同期フラグ間違ってね?

oHttp = CreateOLEObj("MSXML2.XMLHTTP")
oHttp.Open("GET", url, True )
oHttp.Send("")
ifb 200 = oHttp.status Then


405:名無しさん@お腹いっぱい。
09/08/03 16:34:08 ZeE5zmd40
>>404
MSXML2.XMLHTTP と、同期フラグをTrueにしてみたり
2種二通りの4パターンやってみましたけど…だめでした。

なんか根本が間違ってるのかな、おれ…

406:名無しさん@お腹いっぱい。
09/08/03 16:58:55 K4hmauqM0
>>405
失礼。Postしてるんだね。
Valueは頭に”&”いらないの?
まずGetで取得がうまくいくか試すべきだけど。

ちなみに、2ちゃんねるとかはリプライを見てるからGetしてないオブジェクトからPostは受け付けなかったりする。
ヘッダにリプライを入れようとしても、基本的にリプライは扱えないようになってる。


407:名無しさん@お腹いっぱい。
09/08/03 17:42:29 ZeE5zmd40
>>406
一応、GETでは取得は出来ました
test.php?value1=10&value2=20とかのやりかたでPHPで取得可能です。
Valueは頭に”&”は不必要だと思います。付けても変化なしでした。やりかたがまずいのかな。

URLリンク(msdn.microsoft.com)(VS.85).aspx
の下の方を読むと
>var WinHttpReq = new ActiveXObject("WinHttp.WinHttpRequest.5.1");
>WinHttpReq.Open("PUT", "URLリンク(postserver)", false);
>WinHttpReq.Send("Post data");
と書いてあるので、こんな書き方でいいのかなー、とか思いつつ試してみましたが・・・だめ。

小出しにするようで申し訳ないですけど
WEBサービスの自動ログイン処理で、ちょっと前まではGET文で出来ていたんですけど
仕様変更なのかPOSTが必要っぽい。…で、UWSCでPOSTが出来ない?とか思いまして
自前でPHPのローカルサーバ立ち上げても同じだなぁ・・・と。

curl -d value1=10 URLリンク(localhost)
とかのPOST送信コマンドだとちゃんと受け取れているので、
スクリプトの書き方の問題と思っているのです。

408:名無しさん@お腹いっぱい。
09/08/03 18:08:57 11ofMjNS0
>>403
まず本当にWSH・VBAでできてるか再確認してみたら?
去年11月のセキュリティ更新でXMLHTTP関係の仕様変更されて
意図的にもリファラー出せなくなったらしいから
ついでにPOSTメソッドもなんかいじられたのかも知れない

HTAをもっと流行らせる計画 Part2
スレリンク(tech板:48-51番)


409:名無しさん@お腹いっぱい。
09/08/03 18:09:24 HbQIdt32P
セキュリティソフトがガードしてるとか・・・さすがにないか
家にPOSTしてるソースあるから帰ったら調べてみたい

410:名無しさん@お腹いっぱい。
09/08/04 00:08:05 xVSj2GaH0
GETやらPOSTやらは面倒だからperlでやってるな

411:名無しさん@お腹いっぱい。
09/08/04 00:16:43 t0N9BVCC0
>>408
そういや他のスレでもWSHのHTTP関係の挙動がMSの機嫌で変わるのには
嫌気が差すってレスがあったなぁ。
この部分だけでも別のexeなりスクリプト言語にすりゃいいんだろうけど。

412:403
09/08/04 10:20:59 Ju4QJxlO0
解決しました

正しくは >>403の一文を
objHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")

urlencoded … 最後の『d』が抜けてました…orz
くだらない間違いを大げさに騒いでしまった…果てしなく恥ずかしい。

いろいろ答えていただいてありがとうございました。

413:名無しさん@お腹いっぱい。
09/08/05 12:24:04 Z7NQ5pjz0
このソフトってある事が起こった時に
違う行動を取るようにプログラムすることできる?

414:名無しさん@お腹いっぱい。
09/08/05 12:36:21 5awUNnAE0
もちろん

415:名無しさん@お腹いっぱい。
09/08/05 12:48:41 /Yl0j/NL0
ある事ってのが気になる。
のりぴーが失踪したらとか、部屋を貸してた女社長が体調を
崩して会社を休んだろかかな。

416:名無しさん@お腹いっぱい。
09/08/05 16:50:32 +uas2RDw0
分岐だろ。できるが、質問をするような人には無理かもな。w

417:名無しさん@お腹いっぱい。
09/08/05 16:59:20 aKt2UmN60
複数行のコメントアウトってどうやるんですか?
ググっても見つからないんですが・・・


418:名無しさん@お腹いっぱい。
09/08/05 17:01:26 HJQHUTSW0
>>417
<コメント>
 // から行末までです


ヘルプにはこれしか載ってない。
複数行の一括コメントアウトは出来ないだろう。

419:名無しさん@お腹いっぱい。
09/08/05 17:11:56 aKt2UmN60
>>418
ありがとうございます。
やはり出来ないんですね。。。

複数行に「//」付けるのは大変なんですが、
皆さんどうしてるんでしょう??

420:名無しさん@お腹いっぱい。
09/08/05 17:12:07 BnoHwJyx0
どうしてもやりたければ

TextBlock 擬似複数行コメントアウト1
・・・
・・・
・・・
EndTextBlock

ところで再利用しない無名TextBlockできたっけ?

421:名無しさん@お腹いっぱい。
09/08/05 17:12:40 5awUNnAE0
TEXTBLOCK コメント
    なんちゃら
    かんちゃら
ENDTEXTBLOCK


422:名無しさん@お腹いっぱい。
09/08/05 17:20:14 aKt2UmN60
>>420
>>421
ありがとうございます。

>>208 の方も書いてたので、皆さんそうしてるようですね。
スッキリしました。

423:名無しさん@お腹いっぱい。
09/08/05 18:15:31 L0nS9lcz0
どうして公式的なブロックコメントを設けないんだろうか?
実装が大変とは考えにくいんだけど

424:名無しさん@お腹いっぱい。
09/08/05 18:27:22 RLVwU7rK0
ブロックコメントはエディタのサポートがないと分かりにくいから無駄じゃね?
エディタのサポートがあるんならキーボードマクロで全部に//入れればすむし。

僕がCプログラム組んでたときも基本的にブロックコメントなんて使ってなかったよ。
とりあえず使わないソースコードのために使ったことはあるけど。
UWSCの場合はスクリプトだから、使わないコードは
exitexitの後ろに持っていって実行されないようにすればいいし。


425:名無しさん@お腹いっぱい。
09/08/05 19:05:45 Z7NQ5pjz0
>>414-416
俺の場合ここで話すことができるような高度な事のために使おうとかそういう志は確かにないな・・・
ブラウザーゲームでMS-Tacticsという単純なクリックゲームがあるんだがそれを知ってるかな?
ある事っていうのはそのゲームで自動ツールを組む事です。
マクロ確認というのがあってMESが送信されてきます。
その時机の前にいればいいのですが家を空けている場合はマクロストップ、家にいる場合は音楽ファイルを鳴らして知らせるというマクロを組たいのですがこのソフトで可能ですか?

426:名無しさん@お腹いっぱい。
09/08/06 14:30:51 QAy3+pD40
指定範囲のスクリプトを無効にするように
したいのですが、できますか?

先頭に//をつければ無効になりますが、
複数行の場合かなり辛いので。

427:名無しさん@お腹いっぱい。
09/08/06 14:34:57 garvnA3v0
釣れますか?

428:名無しさん@お腹いっぱい。
09/08/06 15:02:26 Xz7oiw/r0
他の言語だとif(0){…}とかやってる

429:名無しさん@お腹いっぱい。
09/08/06 15:24:46 vz2nf8XW0
>>426
使ってるテキストエディタによっては
マクロを組むことで簡単に対応できると思います。

430:名無しさん@お腹いっぱい。
09/08/06 15:35:19 VbvNg9fW0
他のウィンドウが上に被っている状態で、
下のウィンドウ内の画像だけでchkimg判定させることはできるでしょうか?

431:名無しさん@お腹いっぱい。
09/08/06 16:37:26 BmAYZDXB0
>>426
ほんの数レス前も読めないのかと

432:名無しさん@お腹いっぱい。
09/08/08 00:12:28 6r8oWi7C0
画像判定で画像をチェックした後、その画像をクリックさせるにはどう書けばいいんですか?
カーソルが画像の上に移動せずうまくいきません

433:名無しさん@お腹いっぱい。
09/08/08 00:19:59 lwvZADwPP
まずあなたの書いたソースを貼ってください。
何が悪いのかアドバイスできません。 

434:名無しさん@お腹いっぱい。
09/08/08 07:09:48 6r8oWi7C0
Ifb chkimg("aiueo.bmp")
BTN(LEFT,CLICK)

これでカーソルがaiueoに乗らないままクリックされます
何を書き足せばいいんでしょうか?

435:名無しさん@お腹いっぱい。
09/08/08 07:29:20 FHY/k4X30
> 戻値 = CHKIMG( 画像名, [透過色/色無視, x1, y1, x2, y2] )
> 戻値
>   有ればTRUE、無ければFALSE
>   TRUE の場合は見つかった座標を特殊変数 G_IMG_X、 G_IMG_Y に格納  

なんだから、
BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y)だろが…


436:名無しさん@お腹いっぱい。
09/08/08 08:28:44 6r8oWi7C0
ありがとうございます

437:名無しさん@お腹いっぱい。
09/08/08 10:11:41 Df7yeceA0
画面の右上に常に置いているfoobarをシェードさせたいんだけど
できればマウスカーソルを移動させたくないから

BTN(RIGHT,CLICK,1111,10,300)

という記述以外に、タイトルバーを右クリックする動作をさせることが可能な記述はないかな?
uwscは(高度設定だと)タイトルバー右クリックを記録してくれないし

438:名無しさん@お腹いっぱい。
09/08/10 17:25:04 Q0mVulH/0
最近IEが起動できずそこでストップし起動できなかったみたいな
ダイアログがでます。OKを押せばそこでまたスケジュールなどの
プログラムが実行されるのですが、たびたび起こるようになり
困っています。

まず、なぜIEが起動できずらくなったかという点と
実行されなかったときやエラーのときに出るダイアログを出ないように
できないでしょうか?

何かわかりましたら詳細をお願いします。

439:名無しさん@お腹いっぱい。
09/08/10 20:42:14 vx/R19O+0
そんなIEは捨ててFireFoxに変えてしまえ。

440:名無しさん@お腹いっぱい。
09/08/11 18:36:16 hJMqR6ph0
COMなきゃUWSCからは使い物にならないじゃん

441:名無しさん@お腹いっぱい。
09/08/12 13:01:45 PuKACCbf0
>437
>タイトルバーを右クリックする動作
Alt + Space

442:名無しさん@お腹いっぱい。
09/08/12 17:55:01 5T//nwVg0
>>441
それだとメニューしか出てこなくてシェードできなかった
やっぱりBTNで指定するしかないのかな

443:名無しさん@お腹いっぱい。
09/08/12 18:16:53 9aovh/qR0
そもそもシェードとか意味不明の造語を言われても
お前以外の人間に分かるわけないだろw

444:名無しさん@お腹いっぱい。
09/08/12 18:27:00 zdDAhsra0
ウィンドウシェード
マカ語

445:名無しさん@お腹いっぱい。
09/08/12 18:27:34 7Bd618xV0
まぁ、UWSCのスレなんだし
聞きたいことがあるなら、最低限foobarを知らない人にもわかる説明は欲しいところだよな。

446:名無しさん@お腹いっぱい。
09/08/13 07:04:24 cNvCWprb0
シェードを意味不明の造語って、その程度の知識しかないのかここの住人は…?

WinRoll等のソフトを使うことによって、ウィンドウのタイトルバーを右クリックすると
タイトルバーのみ表示された状態になる。Macだと標準で搭載されてた機能だっけかな
ちなみにfoobarに搭載されてる機能じゃないからfoobarの知識は一切必要ない

問題はシンプルに、マウスでタイトルバーを右クリックしたときと同じ動作、をさせることが出来るか出来ないかの一点だけ

447:名無しさん@お腹いっぱい。
09/08/13 07:32:06 ECNQXKKO0
マカーってバカーなの?
UWSCとは全く関係がないソフトの機能を
さも誰もが知ってるかのごとく言ったあげく
指摘されたら逆ギレとか…アホか

448:名無しさん@お腹いっぱい。
09/08/13 07:32:52 ssPatVeH0
そんなもんなおさら説明してもらわんとわからんわ

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

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

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

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

452:名無しさん@お腹いっぱい。
09/08/13 10:09:03 fiYYXTEd0
cNvCWprb0

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

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

455:名無しさん@お腹いっぱい。
09/08/13 10:53:26 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:名無しさん@お腹いっぱい。
09/08/13 17:56:55 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:名無しさん@お腹いっぱい。
09/08/13 19:23:02 cNvCWprb0
>>456
自分なりに少し改良したらほぼ理想の動きをするようになった
ありがとう

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

459:名無しさん@お腹いっぱい。
09/08/14 21:40:27 lePNH2LF0
事故解決しました

460:名無しさん@お腹いっぱい。
09/08/15 00:30:43 nWYop4zn0
え?どうすればいいの

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

462:名無しさん@お腹いっぱい。
09/08/15 08:04:19 wyeRXJm+0
そっか、thx

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

464:名無しさん@お腹いっぱい。
09/08/15 17:52:07 yaCNfD7C0
無理

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

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

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

467:名無しさん@お腹いっぱい。
09/08/15 19:12:41 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:名無しさん@お腹いっぱい。
09/08/15 19:33:54 sQtS+cTb0
関数の戻り値ってのをちゃんと理解した方がいいよ

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

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

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

471:名無しさん@お腹いっぱい。
09/08/16 16:16:43 a4mbf8s90
それは組み込み定数の問題じゃないようなw

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

472:名無しさん@お腹いっぱい。
09/08/16 21:52:10 +2ZQxoWjP
>>467
取得するIDは0から始まるんだぞー

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

474:名無しさん@お腹いっぱい。
09/08/18 19:17:55 YQaslH1l0
>>47
VISTA使っているけど、使っている範囲内では普通に動いています。

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

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

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

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

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

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


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

479:名無しさん@お腹いっぱい。
09/08/25 11:34:30 65fceamX0
連レスすみません、IDこっちでした

480:名無しさん@お腹いっぱい。
09/08/25 11:56:17 N7fLVBuZ0
>>478
そっから先はやってみなさいよw ヘルプ読むとかさ。

481:名無しさん@お腹いっぱい。
09/08/25 19:05:17 1sftlgl60
なんでmouseorg使いたくないんだろ@@

482:名無しさん@お腹いっぱい。
09/08/25 20:15:43 65fceamX0
使いたくないのではなく、使えなかったのです・・・。

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

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

どなたかお願いします


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


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

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

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

486:名無しさん@お腹いっぱい。
09/08/29 16:05:15 8qKYn2v40
こういう形になるんですかね?
とりあえずはいけるようですが・・・。

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

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

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

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

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


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

490:486
09/08/29 20:34:56 8qKYn2v40
>>488
どうもありがとうございます

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

492:491
09/08/30 00:41:53 BX4vfd5X0
>>491
すみません。自己解決しました。

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

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

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

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

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

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

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


497:横レス
09/08/30 17:24:36 S4AQ+SE30
>>495
公式ヘルプ

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

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

499:名無しさん@そうだ選挙に行こう
09/08/30 18:41:39 /B83Ke060
CHKIMG de ggrks

500:名無しさん@そうだ選挙に行こう
09/08/30 18:53:18 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:名無しさん@お腹いっぱい。
09/08/30 23:36:00 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:名無しさん@お腹いっぱい。
09/08/30 23:42:39 U269ithF0
UWSCの連想配列は結構遅いのが辛いな
対象が千を超える場合があればもう少しほかの方法を考えるかもしれないな。

503:名無しさん@お腹いっぱい。
09/08/30 23:52:23 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:名無しさん@お腹いっぱい。
09/08/31 00:23:15 ln7RNv9S0
>>503
ども^^
>>500です
お疲れのところありがとうございます
FGETとFPUTで出来るところまでやってみます
テキストの切り取りってのがわからないので
コピーしてファイルに貼り付けって感じでぼちぼちやってみます^^

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

505:名無しさん@お腹いっぱい。
09/08/31 00:57:38 aWym46NO0
2ゲットつーるっておまwww

506:名無しさん@お腹いっぱい。
09/09/01 15:22:08 wGPAV2Jw0
ご教授お願いします。

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

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

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

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

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

509:506
09/09/01 23:24:39 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
09/09/01 23:27:34 Oybct+X10
なぜかtabが無くなって見にくくなりました。
すいません。

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

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

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

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

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

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

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

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

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

518:名無しさん@お腹いっぱい。
09/09/04 23:56:32 o7J0rS+w0
どこをどう見たらバグに見えるんだ?

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

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

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

520:名無しさん@お腹いっぱい。
09/09/05 00:48:19 5dThaddI0
知らんかったw

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

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


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


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

524:名無しさん@お腹いっぱい。
09/09/07 22:58:40 Xkdtabsd0
UWSC便利すぐるwww

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

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

526:名無しさん@お腹いっぱい。
09/09/09 07:46:12 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:名無しさん@お腹いっぱい。
09/09/09 07:53:44 WM4BaepJ0
>>526
㌧㌧です。


528:名無しさん@お腹いっぱい。
09/09/09 09:31:40 lOUbTZts0
いま遊んできた。

2009/09/09に婚姻届を出すスレ 6100組が登記の予約
スレリンク(news板)
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を取るスレ 保険用
スレリンク(news4vip板)
999 名前:以下、名無しにかわりましてVIPがお送りします[] 投稿日:2009/09/09(水) 09:07:34.53 ID:Ubfyvu31O


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

>>999ゲット

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

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


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

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

533:名無しさん@お腹いっぱい。
09/09/11 00:09:23 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
URLリンク(img.2ch.net)
   ∧_∧
⊂(#・ω・)  やってられるか!!
 /   ノ∪
 し―-J |l| |
         人ペシッ!!
       __
       \  \

534:こっちが>>529+Win7+ADSLで調整しつつ動かしたやつ
09/09/11 00:18:26 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:名無しさん@お腹いっぱい。
09/09/11 07:32:40 51Za3rGdO
ホップ数が少ない回線という主張なら理解できるが
どうして光回線ならより安定との結論が導かれるんだ?

論理的におかしいだろ

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

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

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


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

539:名無しさん@お腹いっぱい。
09/09/11 19:54:47 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:名無しさん@お腹いっぱい。
09/09/11 20:21:18 Bpd1Ez2d0
DEF_DLL ReadMemory(string,DWORD,var DWORD,DWORD):int:Memory.dll
じゃないかな?

541:名無しさん@お腹いっぱい。
09/09/11 21:12:08 2T7N4nOi0
>>540
ありがとうございます!
無事に出来ました

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

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

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


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

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

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

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

545:名無しさん@お腹いっぱい。
09/09/12 04:19:57 zkkco6a50
日野聡ね?

546:名無しさん@お腹いっぱい。
09/09/12 07:56:58 lXIELoI/P
釘宮理恵だよ
顔はアレだし普段の声もアレだけど、ツンデレ少女やらせたら天下一品。
URLリンク(www.youtube.com)


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

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

549:名無しさん@お腹いっぱい。
09/09/12 16:05:38 qs3nJzg80
よくわからん展開だけど
2ゲットツールの話しってことだよね

>>528
うちOCNの光プレミア^^
いつでもモニターしますよw
自分的には興味あるし>>528応援したい

550:名無しさん@お腹いっぱい。
09/09/12 19:55:38 GXu8R6Sh0
なにをいっているんだ

551:名無しさん@お腹いっぱい。
09/09/13 00:42:37 7fYs5gKs0
はははは、なんだこのスレ進行はw

552:名無しさん@お腹いっぱい。
09/09/14 13:48:18 0YMUf7PV0
WEBサイトの書き込みたいページの窓名はどうやって取得すればいいですか?
書き込む箇所がたくさんあるんですよ
例えばこんな感じです
URLリンク(account.edit.yahoo.co.jp)
上記はヤフーの新規登録です
このページでいえば上から希望IDの欄
パスワード入力
念のためのパスワード入力
以下個人情報記入欄と続きます
この例で言うと窓名はどうなっていますか?
その窓名はどうやって知るのでしょうか?
窓名の取得方法教えてください
お願いします

553:名無しさん@お腹いっぱい。
09/09/14 14:54:35 cEOV6N9A0
そのページのソース見れば書いてある

554:名無しさん@お腹いっぱい。
09/09/14 20:26:42 qig3ZFIo0
窓名っていうかテキストボックスのIDですよね。
ユーザー登録なら番号指定するSetTextかなんかでAAC指定が簡単ですよ。
ページレイアウトが変わるとそのつど対応しないといけませんが、
IDが変更されない保障もないから同じことです。
問題はどうやってその番号と項目種別を整理するかだけですが、連想配列使うと簡単です。

チェックボックスについてはClkItem()で表示文字指定でいけるし。
ただ、パスワードはKBD()関数で1字ずつしか入力できない場合が結構ある。
あと、Yahooの新しいページは直で自動操縦できない問題があったと思う。

窓操作するときのIDが必要なのかな?
IEオブジェクトを作っているならこれでID取れます。
ID = HndToID(IE.hWnd)


555:名無しさん@お腹いっぱい。
09/09/14 21:00:56 P2xJX7yR0
たとえ話にしても言ってること聞いたらまともに相手しちゃいけないやつって分かるだろ…

556:名無しさん@お腹いっぱい。
09/09/14 21:34:30 cmD5tDUfP
大量アカウント入手する以外に使い道ねーなw
uwscの評判ガタ落ち

557:552
09/09/15 04:57:03 ivadcF/W0
ども^^
>>553
ソース見てもわかりませんorz
>>554
ありがとです
uwsc関係のサイトを見て下記のようにしたんだけどプリントされたのは1文字だけ。数字の1でした
IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True
IE.Navigate("URLリンク(account.edit.yahoo.co.jp)")
REPEAT
SLEEP(0.1)
UNTIL !IE.BUSY AND IE.READYSTATE = 4
SLEEP(0.4)
ID = HndToID(IE.hWnd)
print id
SLEEP(10.0)

IEで書き込む方法教えてください
ヘルプ見てもわかりません><


558:554
09/09/15 06:04:35 LY1YTKOq0
>>557
なんだ初心者か

IDは使うものですよ
print Status(ID, ST_TITLE)

最初はヘルプ見るよりもぐぐったほうがいいよ。
UWSCをキーワードに含めるか、UWSC特有の関数名入れたら絞り込めるし。

ちなみに僕はgooのメール登録自動化するやつ作ったけど、
画像の文字を読み取るアクセスコード入力は自動化出来ないから
どの道複数まとめて処理するようなのは作るだけ無駄なんだよね。

メアドを自動的に大量に作るなら、自前のメールサーバー作った方が簡単だよ。
受信するだけのメールサーバーは無料でも配布されてる。
IPアドレスが固定でなくても無料のDDNS使えるし。
たいていのユーザー登録ではメールを1件受信するだけだし、それで十分。

メールアドレスたくさん作っても別に金が入るわけじゃない。
ユーザー登録でプレゼントとかゆっても、あれは客を釣って売りつける名簿を作るためであって、
最初からプレゼントなんかしてなかったりする。
そんなもんにかまけるのは時間の無駄だよ。


559:名無しさん@お腹いっぱい。
09/09/15 07:40:17 ivadcF/W0
>>554さんレスありがとです
例のページにアクセスしてから下記のようにしてみました
ID = HndToID(IE.hWnd)
print Status(ID,1, ST_TITLE)
print Status(ID,2, ST_TITLE)
print Status(ID,3, ST_TITLE)
print Status(ID,4, ST_TITLE)
print Status(ID,5, ST_TITLE)
するとプリント窓に下記の様にでました
117、2、800、570、121
書き込むには下記のようにすればいいのかとやってみました
IESetData(IE,117,"希望のIDを半角入力")
IESetData(IE,2,"半角でpassワード")
IESetData(IE,800,"passワード再入力")
IESetData(IE,570,"表示名")
IESetData(IE,121,"半角で郵便番号")
結果は書き込めませんでしたorz
お忙しい中、レス本当にありがとうございます
今日は今からスグにでかけますので帰宅したらまた試してみます
PS:メアド大量取得が目的じゃないけどDDNSはちょっと関係あります
あなた勘がいいですね!驚いたですよ^^;
本日「家サーバー」という無料のDDNSに登録してみました
ちなみにnslookupで調べたヤフーのmailサーバーには
登録後にtelnetでオープンしようと試してみましたがダメでした
今ここで教えてもらってるのは空きIDがあるか調べたいんです
最短文字数4文字となってますが実際には6文字じゃないかと聞いたので
4文字IDはもう無いのか気になったんですよ。実に馬鹿げてますよねw
でもこういうのって勉強になりそうな気がしてるので頑張ってみます
ありがとうでした^^

560:名無しさん@お腹いっぱい。
09/09/17 00:34:08 c/fKihuM0
>>552です
中間報告です^^;
>>553さん
マジで大ヒントありがとうです!!!
窓の名前取得はわからないままなんですけど
ソース見てname="yahooid" id="yid-ft"というのが怪しいのじゃないかと思い
下記のようにしてみたら見事書けました!
ほんとに本当にありがとうです!
-------------------------
IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True
IE.Navigate("URLリンク(account.edit.yahoo.co.jp)")
REPEAT
SLEEP(0.1)
UNTIL !IE.BUSY AND IE.READYSTATE = 4
SLEEP(1.0)

IESetData(IE,"testes2geter","yahooid") // TEXT
//KBD (VK_RETURN)
SLEEP(10.0)
------------------------
これをヒントにソース内でname=を検索してみたら
ありましたありましたwww
まだやってないけど
これで全部書き込み出来そうな気がしてきた^^
ありがとう>>553さん
マジ感謝してます!


561:名無しさん@お腹いっぱい。
09/09/17 01:30:02 c/fKihuM0
やった!やった!
>>552です
>>553さん
ラジヲボタン、セレクトボタンとかまだわかんないですけど
取りあえずテキストBOXには全部書き込めるようになりました!
超嬉しいです^^
大前進ですよ
ありがとう>>553さん!
亀レスですけど心からお礼申し上げますm( _ _ )m

562:名無しさん@お腹いっぱい。
09/09/22 09:17:31 ab55ehQx0
>>529みたいにJaneをコントロール・・ていうか、投稿の制御をUWSCでしたりしてるんだけど、
Janeにスクリプト機能がついたから、UWSCで頑張るより楽に出来るかもしれない。
スクリプトは他のビューワには多分ないから、Janeを制御する場合は
UWSCで頑張るよりJane Viewを使った方が楽かも。

実際どんなスクリプトが作れるのかはしらね。

Jane View Version UPキター 目玉はスクリプト機能搭載
スレリンク(news板)


563:名無しさん@お腹いっぱい。
09/09/22 09:50:53 AAcMg2An0
質問いいですか
UWSCは格闘ゲームのマクロ作成に向いてますか?
ゲームは1秒当たり60フレームで進行するので、16.666ms(1フレーム)の入力精度が必要です

564:名無しさん@お腹いっぱい。
09/09/22 10:19:06 ab55ehQx0
>>563
僕のPenM1.7GHzパソコンでは、クリックの精度は23msくらいだったよ。
実際どこまで精度が上がるかは分からないけど、精密にクリックしたかったら
CPUコア1つが90%の空きと、
ゲームが動いてるコアのCPU使用率が70%以下じゃないと難しいんじゃないかな。

相手の動きを感知するのが実際無理だと思うけど、どうやって処理するつもり?
単純に必殺技やハメ技をボタン一発でやるんならそんな精度いらないと思うんだけど。


565:名無しさん@お腹いっぱい。
09/09/22 10:58:37 AAcMg2An0
>>564
レスありがとうございます
そんなに処理能力がいるんですか
考えが甘かったようです
専用ハード買うか、作る方向で検討してみようと思います

> 相手の動きを感知するのが実際無理だと思うけど、どうやって処理するつもり?
決まった動きを繰り返すマクロで練習するつもりです
対戦では使いません

566:名無しさん@お腹いっぱい。
09/09/22 12:45:47 qC8zwhig0
対戦で使わんなら別に数十msぐらい遅延しても問題なくね

567:名無しさん@お腹いっぱい。
09/09/22 15:54:46 PezqNhcY0
正確に1フレーム辺りの精度にせんでも、格闘ゲームのボタンって待ち時間があるだろ。
技を繋ぐ時に0.1秒くらいのタイミングでボタン押してれば戻り動作がキャンセルされるという感じで。

ボタンの受付待ち時間が全くないゲームは糞ゲーだぜ。

568:名無しさん@お腹いっぱい。
09/09/22 21:41:42 wus9Xr/I0
>>529
これどうやんの?

uwscをダウンロードした
メモ帳にそのまま写して.UWSにした

教えてください

569:名無しさん@お腹いっぱい。
09/09/22 22:34:49 nxVea3tG0
あぁっと
>>529
自分も教えてほしいです

570:名無しさん@お腹いっぱい。
09/09/22 22:59:32 2rNOwggP0


571:528
09/09/22 23:28:04 VsIAyX0MP
>>568-569
□まずWindowsの操作の基本から
Windowsは標準でマウスとキーボードの操作がありますが、フォーカス移動はTABキーで、ボタンのクリックはスペースキーでできます。
マウスでクリックすればその瞬間にフォーカスがマウスポインタの場所に移動し、ボタンがクリックされます。

□UWSCを使ってどう実現するか
指定の時刻に投稿したいわけですが、最小限のコーディングで済む方法は、上記の基本操作を使って、時間が来たらスペースキーをクリックする方法です。
エンターキーでも投稿できますが、もし違う画面で発動したら何が起きるか分からないので、被害の少ないスペースキーを使います。

フォーカスを「書き込み」ボタンに移動するために、テキストボックスをクリックして、「書き込み」ボタンにフォーカスが移るまでTABキーをクリックします。
マウスでフォーカスを移動する場合、ボタンをクリックするとその瞬間にクリックされてしまいますが、
マウスボタンを押し下げたままほかのところへドラッグすると、フォーカスだけがそこに残ります。

□UWSCスクリプトの使い方
テキストエディタでてきとーな名前をつけて保存します。拡張子は .uws です。
ファイルの関連付けをしていればファイルをエクスプローラーからダブルクリックで起動すればいいし、
関連付けしてなくてもUWSCを起動してそのスクリプトを読み込んで、開始ボタンをクリックで開始します。

>>529使用にあたって気をつけること
起動して1分以内に1回クリックしたら終了します。
起動するタイミングによっては、準備が整う前にクリックして終了するかもしれません。
初めて使う人は、スクリプトの最初の方、カウントダウンするループを20くらいに書き換えた方がいいでしょう。
これを     for i = 5 to 1 step -1; fukidasi(i); sleep(1); next
こんな風に  for i = 20 to 1 step -1; fukidasi(i); sleep(1); next
さらに、日付と時刻のアナログ時計を表示して、あとどれくらいでクリックされるのかを常に表示させておくといいでしょう。



次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch