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/
403 名前:名無しさん@お腹いっぱい。 [2009/08/03(月) 13:32:26 ID:ZeE5zmd40] WinHttpRequestを使ってPOSTデータを送信したい …でもこれだと受け取ってくれてないみたい。POSTに何も値が入ってない状態です。 どうしたら受け取ってくれるのでしょう? (localhost以外の他のWebサーバでも同じく受け取ってくれないみたいです。 他のWSHやVBAではこういう書き方で出来てるみたいなんですけど… //UWSCスクリプト--------------------------- objHttp = CreateOLEObj("WinHttp.WinHttpRequest.5.1") url = "localhost/test.php " 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 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/03(月) 14:31:06 ID:K4hmauqM0] >>403 同期フラグ間違ってね? oHttp = CreateOLEObj("MSXML2.XMLHTTP") oHttp.Open("GET", url, True ) oHttp.Send("") ifb 200 = oHttp.status Then
405 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/03(月) 16:34:08 ID:ZeE5zmd40] >>404 MSXML2.XMLHTTP と、同期フラグをTrueにしてみたり 2種二通りの4パターンやってみましたけど…だめでした。 なんか根本が間違ってるのかな、おれ…
406 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/03(月) 16:58:55 ID:K4hmauqM0] >>405 失礼。Postしてるんだね。 Valueは頭に”&”いらないの? まずGetで取得がうまくいくか試すべきだけど。 ちなみに、2ちゃんねるとかはリプライを見てるからGetしてないオブジェクトからPostは受け付けなかったりする。 ヘッダにリプライを入れようとしても、基本的にリプライは扱えないようになってる。
407 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/03(月) 17:42:29 ID:ZeE5zmd40] >>406 一応、GETでは取得は出来ました test.php?value1=10&value2=20とかのやりかたでPHPで取得可能です。 Valueは頭に”&”は不必要だと思います。付けても変化なしでした。やりかたがまずいのかな。 msdn.microsoft.com/en-us/library/aa384045 (VS.85).aspx の下の方を読むと >var WinHttpReq = new ActiveXObject("WinHttp.WinHttpRequest.5.1"); >WinHttpReq.Open("PUT", "postserver/newdoc.htm ", false); >WinHttpReq.Send("Post data"); と書いてあるので、こんな書き方でいいのかなー、とか思いつつ試してみましたが・・・だめ。 小出しにするようで申し訳ないですけど WEBサービスの自動ログイン処理で、ちょっと前まではGET文で出来ていたんですけど 仕様変更なのかPOSTが必要っぽい。…で、UWSCでPOSTが出来ない?とか思いまして 自前でPHPのローカルサーバ立ち上げても同じだなぁ・・・と。 curl -d value1=10 localhost/test.php とかのPOST送信コマンドだとちゃんと受け取れているので、 スクリプトの書き方の問題と思っているのです。
408 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/03(月) 18:08:57 ID:11ofMjNS0] >>403 まず本当にWSH・VBAでできてるか再確認してみたら? 去年11月のセキュリティ更新でXMLHTTP関係の仕様変更されて 意図的にもリファラー出せなくなったらしいから ついでにPOSTメソッドもなんかいじられたのかも知れない HTAをもっと流行らせる計画 Part2 pc12.2ch.net/test/read.cgi/tech/1220874815/48-51
409 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/03(月) 18:09:24 ID:HbQIdt32P] セキュリティソフトがガードしてるとか・・・さすがにないか 家にPOSTしてるソースあるから帰ったら調べてみたい
410 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/04(火) 00:08:05 ID:xVSj2GaH0] GETやらPOSTやらは面倒だからperlでやってるな
411 名前:名無しさん@お腹いっぱい。 [2009/08/04(火) 00:16:43 ID:t0N9BVCC0] >>408 そういや他のスレでもWSHのHTTP関係の挙動がMSの機嫌で変わるのには 嫌気が差すってレスがあったなぁ。 この部分だけでも別のexeなりスクリプト言語にすりゃいいんだろうけど。
412 名前:403 mailto:sage [2009/08/04(火) 10:20:59 ID:Ju4QJxlO0] 解決しました 正しくは >>403 の一文を objHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded") urlencoded … 最後の『d』が抜けてました…orz くだらない間違いを大げさに騒いでしまった…果てしなく恥ずかしい。 いろいろ答えていただいてありがとうございました。
413 名前:名無しさん@お腹いっぱい。 [2009/08/05(水) 12:24:04 ID:Z7NQ5pjz0] このソフトってある事が起こった時に 違う行動を取るようにプログラムすることできる?
414 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/05(水) 12:36:21 ID:5awUNnAE0] もちろん
415 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/05(水) 12:48:41 ID:/Yl0j/NL0] ある事ってのが気になる。 のりぴーが失踪したらとか、部屋を貸してた女社長が体調を 崩して会社を休んだろかかな。
416 名前:名無しさん@お腹いっぱい。 [2009/08/05(水) 16:50:32 ID:+uas2RDw0] 分岐だろ。できるが、質問をするような人には無理かもな。w
417 名前:名無しさん@お腹いっぱい。 [2009/08/05(水) 16:59:20 ID:aKt2UmN60] 複数行のコメントアウトってどうやるんですか? ググっても見つからないんですが・・・
418 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/05(水) 17:01:26 ID:HJQHUTSW0] >>417 <コメント> // から行末までです ヘルプにはこれしか載ってない。 複数行の一括コメントアウトは出来ないだろう。
419 名前:名無しさん@お腹いっぱい。 [2009/08/05(水) 17:11:56 ID:aKt2UmN60] >>418 ありがとうございます。 やはり出来ないんですね。。。 複数行に「//」付けるのは大変なんですが、 皆さんどうしてるんでしょう??
420 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/05(水) 17:12:07 ID:BnoHwJyx0] どうしてもやりたければ TextBlock 擬似複数行コメントアウト1 ・・・ ・・・ ・・・ EndTextBlock ところで再利用しない無名TextBlockできたっけ?
421 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/05(水) 17:12:40 ID:5awUNnAE0] TEXTBLOCK コメント なんちゃら かんちゃら ENDTEXTBLOCK
422 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/05(水) 17:20:14 ID:aKt2UmN60] >>420 >>421 ありがとうございます。 >>208 の方も書いてたので、皆さんそうしてるようですね。 スッキリしました。
423 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/05(水) 18:15:31 ID:L0nS9lcz0] どうして公式的なブロックコメントを設けないんだろうか? 実装が大変とは考えにくいんだけど
424 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/05(水) 18:27:22 ID:RLVwU7rK0] ブロックコメントはエディタのサポートがないと分かりにくいから無駄じゃね? エディタのサポートがあるんならキーボードマクロで全部に//入れればすむし。 僕がCプログラム組んでたときも基本的にブロックコメントなんて使ってなかったよ。 とりあえず使わないソースコードのために使ったことはあるけど。 UWSCの場合はスクリプトだから、使わないコードは exitexitの後ろに持っていって実行されないようにすればいいし。
425 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/05(水) 19:05:45 ID:Z7NQ5pjz0] >>414-416 俺の場合ここで話すことができるような高度な事のために使おうとかそういう志は確かにないな・・・ ブラウザーゲームでMS-Tacticsという単純なクリックゲームがあるんだがそれを知ってるかな? ある事っていうのはそのゲームで自動ツールを組む事です。 マクロ確認というのがあってMESが送信されてきます。 その時机の前にいればいいのですが家を空けている場合はマクロストップ、家にいる場合は音楽ファイルを鳴らして知らせるというマクロを組たいのですがこのソフトで可能ですか?
426 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/06(木) 14:30:51 ID:QAy3+pD40] 指定範囲のスクリプトを無効にするように したいのですが、できますか? 先頭に//をつければ無効になりますが、 複数行の場合かなり辛いので。
427 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/06(木) 14:34:57 ID:garvnA3v0] 釣れますか?
428 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/06(木) 15:02:26 ID:Xz7oiw/r0] 他の言語だとif(0){…}とかやってる
429 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/06(木) 15:24:46 ID:vz2nf8XW0] >>426 使ってるテキストエディタによっては マクロを組むことで簡単に対応できると思います。
430 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/06(木) 15:35:19 ID:VbvNg9fW0] 他のウィンドウが上に被っている状態で、 下のウィンドウ内の画像だけでchkimg判定させることはできるでしょうか?
431 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/06(木) 16:37:26 ID:BmAYZDXB0] >>426 ほんの数レス前も読めないのかと
432 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/08(土) 00:12:28 ID:6r8oWi7C0] 画像判定で画像をチェックした後、その画像をクリックさせるにはどう書けばいいんですか? カーソルが画像の上に移動せずうまくいきません
433 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/08(土) 00:19:59 ID:lwvZADwPP] まずあなたの書いたソースを貼ってください。 何が悪いのかアドバイスできません。
434 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/08(土) 07:09:48 ID:6r8oWi7C0] Ifb chkimg("aiueo.bmp") BTN(LEFT,CLICK) これでカーソルがaiueoに乗らないままクリックされます 何を書き足せばいいんでしょうか?
435 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/08(土) 07:29:20 ID: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 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/08(土) 08:28:44 ID:6r8oWi7C0] ありがとうございます
437 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/08(土) 10:11:41 ID:Df7yeceA0] 画面の右上に常に置いているfoobarをシェードさせたいんだけど できればマウスカーソルを移動させたくないから BTN(RIGHT,CLICK,1111,10,300) という記述以外に、タイトルバーを右クリックする動作をさせることが可能な記述はないかな? uwscは(高度設定だと)タイトルバー右クリックを記録してくれないし
438 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/10(月) 17:25:04 ID:Q0mVulH/0] 最近IEが起動できずそこでストップし起動できなかったみたいな ダイアログがでます。OKを押せばそこでまたスケジュールなどの プログラムが実行されるのですが、たびたび起こるようになり 困っています。 まず、なぜIEが起動できずらくなったかという点と 実行されなかったときやエラーのときに出るダイアログを出ないように できないでしょうか? 何かわかりましたら詳細をお願いします。
439 名前:名無しさん@お腹いっぱい。 [2009/08/10(月) 20:42:14 ID:vx/R19O+0] そんなIEは捨ててFireFoxに変えてしまえ。
440 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/11(火) 18:36:16 ID:hJMqR6ph0] COMなきゃUWSCからは使い物にならないじゃん
441 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/12(水) 13:01:45 ID:PuKACCbf0] >437 >タイトルバーを右クリックする動作 Alt + Space
442 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/12(水) 17:55:01 ID:5T//nwVg0] >>441 それだとメニューしか出てこなくてシェードできなかった やっぱりBTNで指定するしかないのかな
443 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/12(水) 18:16:53 ID:9aovh/qR0] そもそもシェードとか意味不明の造語を言われても お前以外の人間に分かるわけないだろw
444 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/12(水) 18:27:00 ID:zdDAhsra0] ウィンドウシェード マカ語
445 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/12(水) 18:27:34 ID:7Bd618xV0] まぁ、UWSCのスレなんだし 聞きたいことがあるなら、最低限foobarを知らない人にもわかる説明は欲しいところだよな。
446 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/13(木) 07:04:24 ID:cNvCWprb0] シェードを意味不明の造語って、その程度の知識しかないのかここの住人は…? WinRoll等のソフトを使うことによって、ウィンドウのタイトルバーを右クリックすると タイトルバーのみ表示された状態になる。Macだと標準で搭載されてた機能だっけかな ちなみにfoobarに搭載されてる機能じゃないからfoobarの知識は一切必要ない 問題はシンプルに、マウスでタイトルバーを右クリックしたときと同じ動作、をさせることが出来るか出来ないかの一点だけ
447 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/08/13(木) 07:32:06 ID:ECNQXKKO0] マカーってバカーなの? UWSCとは全く関係がないソフトの機能を さも誰もが知ってるかのごとく言ったあげく 指摘されたら逆ギレとか…アホか
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 3 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に順番関係ないしな。結局エディタしかないか。