1 名前:名無しさん@お腹いっぱい。 [2009/12/09(水) 05:27:33 ID:J1DL1P1U0] Windowsを自動化させるツールUWSC。 www.uwsc.info/ uwsc使いのみなさま、マターリ己のスクリプトを晒しましょ。
147 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/01/21(木) 09:17:09 ID:prTvVb6F0] >>141 いまさらだけど、 ie.document.forms(0).elements(6).value = "ryno" //利用ナンバー ie.document.forms(0).elements(7).value = "passwd" //パスワード ie.document.forms(0).elements(8).click //ログインボタンを押す こっちのほうが安定してるよ。たぶん。 こいつを使って調べた↓ nem.symphonic-net.com/uwsct/HTMLStarkNaked.uws.txt
148 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/01/21(木) 10:50:10 ID:qBCWT2U/0] >>147 141じゃないけど親切な人や
149 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/01/21(木) 12:50:21 ID:UbXqB2Oa0] >>147 おーすげー でもItemsはころころ変わる可能性があるからな。 やっぱり名前が使えるところは名前を使って ログインボタンだけループでまわすべきだろう。 まあログインページの変更はあまり頻繁には起きないけども。
150 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/01/21(木) 12:54:41 ID:UbXqB2Oa0] >>146 // Web上(IE)に値を設定 戻値 = IESETDATA( IE, 値, Name, [Value, 番号] ) IE, IE, 値, True, Name, "", [Value, "ログイン" 番号] ) ほらここ空いてる
151 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/01/22(金) 23:14:18 ID:5GAs0GCP0] >>149 名前を使いたいなら ie.document.all.tags("input").ryno.value = "なんたらかんたら" ie.document.all.tags("input").passwd.value = "うんたらかんがら" または ie.document.forms(0).elements("ryno").value = "なんたら" ie.document.forms(0).elements("passwd").value = "うんたら" でおk。
152 名前:141 [2010/01/23(土) 00:13:09 ID:ER0elP5I0] 再度質問に来たんですけど、さらなるレスが付いていてビックリでございます。 いただいたレスを再度学習してから、また質問に来ることにします。 本当に、ありがとうございます。
153 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/01/27(水) 09:06:38 ID:bTNIzlWA0] UWSCで、関数の中で他の関数を使用することって可能ですか?
154 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/01/27(水) 09:19:46 ID:bTNIzlWA0] すいません、ちょっと勘違いしてました ↑は忘れてください・・・
155 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/01/28(木) 01:46:50 ID:vVvESZ+G0] シェア版を試しにインスコしようとすると、トロイとしてはじかれる。なにこれ?
156 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/01/28(木) 01:53:42 ID:khCmP7150] >>155 なんだろうね。 OSとかウィルスソフトとか現象とかを本家掲示板に報告した方がいいんじゃね?
157 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/01/29(金) 11:44:21 ID:PN5QGmYZ0] IEのイベント使ってたらUWSCがメモリ不足やらランダムに型が違うとか DLLでアクセス違反とかでまくりで訳が分からんかったけど、 BeforeNavigate2をNavigateComplete2に変更したらぱったりエラーも出なくなったよ。 以前NewWindow2でキャンセルフラグ立ててなくて同様にエラーが出まくってたんだけど、 BeforeNavigate2も同様にキャンセルフラグを処理しなきゃいけなくて、 もしかしたらフラグを間違ってセットしてたのかもしれない。 NavigateComplete2ならフラグがないからどっちセットするかで悩まなくて言いし、 なによりBeforeNavigate2のイベント発生時点ではIEオブジェクトとかプロパティが無効になってて 待ちループですらエラーになる状態で、回避するのに苦労したんだけど、そういう処理も必要なくなった。 っていうか、イベントの使い方を間違っていたのかも。
158 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/01/31(日) 21:49:27 ID:QYiiO/FR0] んでスクリプトは一応完成したけどどーも無用の物を作っちゃったらしくて評判が悪かった。 だからこんなのつくりました的なものを紹介だけしときますね。 自動ダウンロードスクリプト公開中 ttp://www1.axfc.net/uploader/Sc/so/77860 7-zip32.dllで圧縮メソッドがBzip2で圧縮してたから Windows標準では解凍できないようです。 動画ページに直リンがあったりするけど、てきとーな日本語入れてあったりするので使える保証がなく、 直リンにnavigateするとなぜかバイナリファイルをブラウザで開いたりするサイトが多くてやっぱり使える保証がなく、 かといってftpでダウンロードするAPIではいつ終わるとも知れず、 結局自分でリンク貼って右クリでダウンロードするしかなくて、 だけど万が一もあるので入力禁止措置も取ってないのでちょっとマウス持ってるとすぐ止まる。 スレッドで5秒後に確実に解除すればよさそうなんだけど メインループが終了したときはスレッドも巻き添え食っちゃうから確実ではないし。 いや、スクリプトが終われば復帰できるのかな? んで、動画サイトが2次サイトだから画質が悪くなっちゃってるのが多くて ダウンロードしてももったいなかったりする。
159 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/01/31(日) 23:47:43 ID:Q/Gu8X0B0] >>158 っ国語力とプログラミング力の関係 解説編 ttp://jibun.atmarkit.co.jp/ljibun01/rensai/genius/04/01.html
160 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/01(月) 00:52:02 ID:2o/R36uY0] RecIEを起動させて 記録→アドレス入力→ok でサイトに飛ぼうとすると Racie L20が存在しません ってダイアログが出てきて先に進めないんだけど同じ症状出たことある人いる? 4.4cからだったと思うけどアップデートしたら途端に動かなくなった
161 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/01(月) 00:55:45 ID:Zow1+JjM0] >>159 ああ、日本語って難しいね。 短く区切って書くと、悪口で埋め尽くされてしまっていたから 無理やりでもつないでしまう癖がついちゃったんだ。 これでも学生時代は国語はほぼ満点でやってきたんだけどね。 敬語だけはいまいち理解できんかったけど。 敬語ってややこしいのに授業時間が少なすぎ。 正しい敬語を使う環境が身近にないから、練習すればするほどおかしくなっていく。(福岡県の筑豊出身) これでも親は地元企業の課長〜次長だったりする。 今度は短く区切りすぎ?
162 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/01(月) 01:03:42 ID:Zow1+JjM0] >>160 有料の機能だし本家で聞いたほうがいいと思うよ。 OSとIEと、UWSCの問題なかったバージョンとかも必要だと思う。 差し支えなければそのアドレスもね。 ところで、RacieじゃなくてRecieだよね?
163 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/01(月) 01:26:10 ID:Zow1+JjM0] >>159 そういえば俺の後輩のやる気のないプログラマは 「俺文系なのにプログラマやらされてるんです。 文系だからさっぱり分かりません。」ってゆってた。 「ああそう。」としか答えようがないっつーの。
164 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/01(月) 18:20:46 ID:WMRBoQc30] 頭悪そうだなお前
165 名前:名無しさん@お腹いっぱい。 [2010/02/05(金) 18:13:12 ID:hEkLWXs20] HTMLソースを取得して差異があればmsgboxが出る程度の 簡易webチェッカーのようなものを作ろうと思ってるのですが 窓を非アクティブのままwebを更新する(戻るとか進むとかも)方法を教えて下さい IE.Navigate(IE.LocationURL) や IE.Navigate(URL) も試したのですが ↓のようなサイトでは思うように更新後のソースが取得できませんでした ttp://www7.big.or.jp/~fujiko/php/time_get.php 仕方ないので今は窓を開いて CTRLWIN(id, ACTIVATE) KBD(VK_F5) とか CLKITEM(id, "更新", CLK_ACC) で更新してるのですが、非アクティブで実行する方法を教えて下さい
166 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/05(金) 20:04:44 ID:MmS/cyj/0] winhttpかmsxml2を使う
167 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/05(金) 20:09:56 ID:vxp7+xcP0] >>165 navigateしたあとちゃんと待ちループまわさないと駄目です。 また、nabigateが動き出す前に待ちループに入ってしまうと素通りしてしまうので、 それまでは待ちループに入らないようにする必要もあります。 例1) IE.Navigate(url) sleep(3) REPEAT; sleep(0.1); UNTIL !IE.busy AND IE.readystate = 4 例2) timeout = 3 IE.Navigate(url) while !IE.busy AND IE.readystate = 4 sleep(0.1); timeout = timeout - 0.1 if timeout < 0 then break wend REPEAT; sleep(0.1); UNTIL !IE.busy AND IE.readystate = 4 例2の場合はtimeoutがないと、一瞬で表示が完了した場合に永久ループになります。 navigateの他にRefreshがあり、こちらは引数がいらないので手軽です。 中止 Stop 更新 Refresh 前に進む GoForward 戻る GoBack Stopはページが不完全になるので、DOMアクセスでCOMエラーが発生します。 これはStop→Refreshとした場合でも起こるので注意が必要。 WebBrowserコントロールでタブブラウザを作る(.netですが一部ソースは参考になると思います。) ttp://codezine.jp/article/detail/659?p=3
168 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/05(金) 20:57:44 ID:hEkLWXs20] >>166 レスありがとうございます 一応 CreateOLEObj("MSXML2.XMLhttp") も試していたのですが 思うような結果が得られず四苦八苦していたのでした >>167 レス感謝です >nabigateが動き出す前に待ちループに入ってしまうと素通り になっていたようでした 結果的には IE.Refresh() で期待通りの結果が得られました 今から進む、戻るも試してきます ありがとうございました
169 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/06(土) 14:30:56 ID:bC6Cwg/o0] 文字列A xxxxx 文字列B ある文章の中で、特定の文字列AとBに挟まれた「xxxxx」という文字列を抜き出すにはどうするのが スマートですかね? アドバイスください。
170 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/06(土) 14:50:08 ID:IY8b0Hns0] >>169 文字列にもよるけど、 とりあえずBETWEENSTRていうのがある。 戻値 = BETWEENSTR( 文字列, 文字列A, 文字列B, [n個目, 数え方フラグ] ) ところで、 ;っていうのはどういう理由で入れてたんですか?
171 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/06(土) 14:52:23 ID:IY8b0Hns0] 訂正 ;の部分は & # 1 6 0 ;
172 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/06(土) 15:20:55 ID:MuLbdSUi0] >>168 追記 GoForward も GoBack も順調に動きました 改めまして感謝です >>171 自分(PC専ブラ)には見えませんが、&#160はhtmlの半角空白みたいです BetweenStrの話題があったので自分も更に質問です HTMLソースの 111~ 222~ 333yyy のような文字列から 333 を抜きたい場合 BetweenStr(略, "xxx", "yyy", n) //yyyの前の文字を抜きたい xxxとnの部分に何を入れれば良いのかが分かりません 宜しければ参考までに教えて下さい
173 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/06(土) 15:30:15 ID:MuLbdSUi0] 説明が不十分だと思ったので>>172 追記 正確には 111~~<br> 222~~<br> 333yyy という文字列で、"<br>", "yyy", 1 とか設定しても 222〜333まで抜き出してしまってうまくいかないのです 今は 変数1=(略, "<br>", "yy", 1) 変数2=(変数1, "<br>", "y", 1) と複数段階に分けて書いてるのですが、これが簡潔に書けるなら知りたいな、と 宜しくお願い致します
174 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/06(土) 15:47:36 ID:IY8b0Hns0] >>173 ( マイナス値で指定すると後ろからサーチ) BetweenStr(略, "<br>", "yy", -1) これは試してみました? > これが簡潔に書けるなら 手順が複雑にはなりますが、正規表現ライブラリを使えば 行頭(^)+不特定文字列(.*)+”yyy”で表現できる場合があります。 <br>のあとに改行コードが入っているならですが。 スクリプトをすっきりさせたいと言うことなら、自作関数に置き換えるとかでもいいと思います。
175 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/06(土) 17:07:22 ID:MuLbdSUi0] >>174 マイナス値を使っても一発で目的の文字列に到着しないんです 一行で簡単に書ければ....と思ったのですが、諦めます 正規表現は、自分にはまだ早すぎる(理解できてない)ので もう少し勉強してから挑戦してみようと思います ありがとうございました
176 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/06(土) 17:42:47 ID:bC6Cwg/o0] >>170 これは便利ですね。簡単にできました。どうも有り難うございました。
177 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/06(土) 20:30:18 ID:IY8b0Hns0] >>175 どうせならTOKEN使った関数を自作した方がスマートですよ。 こんな感じで。動かしてないので動作は保障できませんが。 function GetStrForward( kword ) result = "" while true str = token( "<#CR>", str, true ) if ! length( str ) then break // trueを外していると、途中で抜ける場合がある if ! pos( kword, str ) then continue // キーワードが見つかった場合、その前方の文字列を返す。 result = copy( str, 1, pos( kword, str ) - 1 ) exit wend fend BetweenStrを何度か実行するのって、長いソースだとそーとー実行時間の無駄だと思うんです。 だから、キーワードを含む行をまず見つけて、その1行から切り出す方法を考えた方がいいかなと。 tokenの区切りが文字列で指定可能ならもーちょっと使えるんですけど・・・ HTMLの場合はDOMを駆使するともっと効率的にアクセスできる場合もあるから、 先にDOMで絞り込めないかを考えた方がいいかもしれません。 確実に抽出できるならHTML全体からとった方が短くかけるかもしれませんけど。
178 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/06(土) 21:25:28 ID:MuLbdSUi0] >>177 あ、ありがとうございます 例まで書いていただいて非常に嬉しいのですがハードル高いっす 残念ながらtoken、function、DOMやらの文字が何一つ理解できません 精進して出直してきます、でも有り難う
179 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/11(木) 02:46:55 ID:yrYtb4hB0] 失礼します。 キー同時押しのスクプリトご存知の方おしえていただけませんか よろしくお願いします
180 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/11(木) 11:48:29 ID:KutBFNeQ0] kbd(vk_shift,down) kbd(vk_1,down,30) kbd(vk_1,up,30) kbd(vk_esc,up)
181 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/11(木) 11:52:43 ID:KutBFNeQ0] なんかちょっとしくってた
182 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/12(金) 04:04:08 ID:9YYIHyOz0] >>179 // ショートカットキーの実行 SCKEY( ID, キー, [キー, キー, キー, ...] )
183 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/13(土) 01:06:22 ID:gvQMSvHV0] >>180 >>182 お返事ありがとうございます。 参考にさせていただきます。
184 名前:名無しさん@お腹いっぱい。 [2010/02/13(土) 02:00:24 ID:qgx2boSW0] 失礼いたします。 uwscにて実行したいことがあります。 画面上に出ている英数字画像の入力をしたいのですが うまく入力してくれません。 12桁の英数字が表示され、左の英数字から順番に入力して欲しいのですが、 UWSファイルに書き込んだ通りの順番で入力してしまいます。 UWSファイルには1,2,・・・〜8,9,0,A,B,・・・〜Y,Zの順番で書き込んでおります。 「8 B A Z 9 0 Z Y A B C D」と入力したいのに、 「8 9 0 A A B B C D Y Z Z」と入力してしまいます。 助言だけでも聞けたらと思いレスいたしました。 宜しければお力添えをお願いいたします。
185 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/13(土) 02:02:19 ID:qgx2boSW0] sage忘れまして申し訳ないです。 久しぶりの2chでの書き込みですっかり忘れてました。 そして連レス申し訳ありません。
186 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/13(土) 04:38:30 ID:eUy/fvfx0] >>184 ループをこんな風にしてるんでしょ? 例1) DIM data="ABCDEFG" for i = 1 to length(data) copy(data, i , 1) ←この文字があるかどうか探している KBD() ←見つかったらすぐ入力 nest 文字の判定はやっぱり↑みたいにしないといけないけど 文字が見つかったらその座標を記録していくべきでしょ。 で、座標のX成分でソートして小さい方から入力する。 DIM KEYCAR[8] ←これに見つかった文字の文字コードをセット DIM KEYX[8] ←これに見つかった文字の座標をセット 文字が一通りスキャンできたらKEYXとKEYCARを並べ替え、 KEYXの小さいものからKEYCARを入力していく。 ソートは件数も少ないし、バブルソートがシンプルでいいと思いますよ。
187 名前:名無しさん@お腹いっぱい。 [2010/02/13(土) 07:59:27 ID:YuKBFn4V0] (´-`).。oO(nest・・・・・)
188 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/13(土) 13:12:06 ID:qgx2boSW0] >>186 さんありがとうございます。 >座標のX成分でソートして小さい方から入力する。 >DIM KEYCAR[8] ←これに見つかった文字の文字コードをセット >DIM KEYX[8] ←これに見つかった文字の座標をセット >文字が一通りスキャンできたらKEYXとKEYCARを並べ替え、 >KEYXの小さいものからKEYCARを入力していく。 座標のX成分でソートとはどういったことをすればX成分を検出できるのでしょうか? 無知過ぎる私にはやはり早いのでしょうか。。
189 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/13(土) 17:44:34 ID:hcaqZS6v0] uwscを使用してるんですが [K]キーを押すのではなく[K]キーを押し続けるにはいったいどうすればいいんでしょうか 情報くださいorz
190 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/13(土) 19:03:56 ID:eUy/fvfx0] >>188 もしかしてCHKIMG()を全体にかけてるんですか? だとしても >TRUE の場合は見つかった座標を特殊変数 G_IMG_X、 G_IMG_Y に格納 とあるので、G_IMG_XをKEYXの配列に格納していくだけですよ。 他の方法で画像を解析してる場合でも、座標くらい取れるでしょう。 たいていは文字は読みにくいように加工されているからCHKIMG()では対処できないんですけどね。 >>189 > [K]キーを押し続けるには KBD(VK_K, DOWN)
191 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/13(土) 23:46:03 ID:qgx2boSW0] >>190 さん CHKIMGの構文くらいしか理解出来ていないほどの初心者です、、涙 理解しきれていない部分が多々あるのでなんともいえないのですが、、 やはり>>186 の構文で行った方が確実なのでしょうか? もし宜しければ>>186 の内容を分かりやすく説明していただけたらと、涙 本当に初心者過ぎて申し訳ないです。 ここで詳しく説明できないような内容でございましたら、 捨てアド用意しておりますので、そちらでも構いません。 最初はggrksとか書かれるとは思いましたが、 ここまでご親切にお教えしてもらえると嬉しくて仕方ありません><
192 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/14(日) 00:12:51 ID:4sAlpgnt0] >>191 > やはり>>186 の構文で行った方が確実なのでしょうか? いや、chkimgでいいです。 copyで文字列から取り出したのはあんまりいい方法じゃなかったです。 ただ、chkimgしたら座標を取り出さないと並べ替えできませんよと。 本来手動で行うべきところを自動化するのはあんまりよろしくないので これ以上具体的な解説はやめときます。 ソートとかの部分的な話なら別にいいけど。 僕もユーザー登録とか半自動化したけど、画像読み取りは難しいから そこだけ入力待ちとかにしてますよ。
193 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/14(日) 00:22:56 ID:XhJVEd4Q0] >>192 さんありがとうございます。 ソートとはクリップボードの文字列のソートの事でしょうか? どういう効果で、どのように使用するのか教えていただいたら光栄です。
194 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/14(日) 00:49:51 ID:4sAlpgnt0] >>193 えーと、そこはぐぐって欲しかったですね。 ソートとは並べ替えのことです。 ttp://su10.sgu.ac.jp/~morita/Seminar/6thStudent/entani/sort/bubble/bubble.html 関数化してちゃんとできてるかテストしてから組み込んだ方がいいと思います。
195 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/14(日) 18:50:13 ID:7ySdGB3b0] Aの操作を○回実行した後にBの操作を実行し 最初に戻るという操作はどうしたら出来ますか?
196 名前:名無しさん@お腹いっぱい。 [2010/02/14(日) 19:20:34 ID:nB/iMQXP0] >>195 While(True) For i = 1 To ○ Aの操作 Next Bの操作 Wend
197 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/15(月) 01:51:46 ID:fbzctM220] UWSC Ver4.6 umiumi 64bit環境での高レベル記録、CPUUSERATE関数の対応 KINDOFOS関数にてOSが64bitかのチェックをできるようにした STATUS関数にてアプリが64bitかのチェックをできるようにした VARTYPE 関数にて型変更をできるようにした ROUND関数にて丸め位置を指定できるようにした GETSTR関数にてマウス移動オプションを付けた CHKIMG 関数のヒット数チェックにてヒットした位置情報を配列に格納するようにした 多重のCALL文にてファイルのカレントを識別してなかったのを修正 COM のBoolean型を数値型に変換していたのを修正 設定画面が出ている時にはスケジュールが走らないように修正 Pro版: CREATEFORM にてIFrameが使われた時にsubmitボタンの処理ができなかったのを修正 UDebug: 64bit環境にて Help->"Folder with .INI"で間違ったフォルダを開くのを修正 DATE:2010/2/14(Sun) 01:29 No.2862 Windows 7 64bit環境での動作について umiumi 32bitアプリに対しては問題ありませんが、64bitアプリに対しては以下の制限があります CLKITEM、GETITEM関数の種別にて ツリービュー, リストビュー, タブ指定は無効 (替わりに ACC指定を利用して下さい) GETSLCTLST関数にてツリービュー, リストビューは無効 POSACC関数にて ACC_API(APIトラップ) 指定は無効 STATUS関数にて ST_PATH(EXEパス取得) 指定は無効 64bitの DLLを呼び出す事はできません また、SOUND 関数にて"BEEP"指定時は PC内部スピーカではなく、通常のサウンド出力になる
198 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/15(月) 02:09:13 ID:DLqX4NXD0] タスクアイコンを右クリックして選択をするにはどうしたらいいですか?
199 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/17(水) 05:35:30 ID:cjyZasPE0] >>198 アイコンの画像をビットマップで保存してchkimgで座標を取ってBTN(RIGHT, Click)かな。 アイコンが動いたり隠れたりするとうまくいかないので他の方法探した方がいいね。 ウィンドウ一覧からID取ってPostMessageとかでメニューを出すみたいな。
200 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/17(水) 06:00:12 ID:cjyZasPE0] エディタの正規表現検索使ったリンクアドレス抽出が便利だったけど別窓に移動するとダメだったので、 UWSCで検索ワードを別窓にコピペするマクロを作ってみた。 サクラエディタでの正規表現の例 <a href="/test/read.cgi/bike(.*)" target="_blank">cache .*でリンクアドレスをワイルドカードにしてるくらいだけど、範囲検索に複数キーワードとシフトキーを駆使するよりも簡単だし、 操作手順が少ないのでマクロもシンプルになり、使い回しが効くようになる。 Alt+TABで切り替わるように設定し、検索側窓をアクティブにした状態でAlt+F1をクリックして開始する。 ショートカットキーはSCKEY()が確実だが、多重起動のエディタのIDを適切に取得するのは大変だし、 どの道Alt+TABで切り替えるんならKBD()でいっかと。 // あらかじめ最初の検索位置に飛んでおく。 // 終了はストップボタンで。 stopform(true) while true sleep(0.2 ); KBD(VK_CTRL, DOWN) // コピー sleep(0.01); KBD(VK_C, CLICK) sleep(0.01); KBD(VK_CTRL, UP) sleep(0.01); KBD(VK_ALT, DOWN) // 窓切り替え sleep(0.01); KBD(VK_TAB, CLICK) sleep(0.01); KBD(VK_ALT, UP) sleep(0.2 ); KBD(VK_CTRL, DOWN) // 貼り付け sleep(0.01); KBD(VK_V, CLICK) sleep(0.01); KBD(VK_CTRL, UP) sleep(0.01); KBD(VK_RETURN, CLICK) // 改行 sleep(0.3 ); KBD(VK_ALT, DOWN) // 窓切り替え sleep(0.01); KBD(VK_TAB, CLICK) sleep(0.01); KBD(VK_ALT, UP) sleep(0.2 ); KBD(VK_F3, CLICK) // 次検索 wend
201 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/23(火) 14:54:49 ID:F3gsnxhTP] >>198 TrayCommand 0.06を使うと良いと思うよ
202 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/25(木) 09:04:22 ID:d7sFY4K50] スケジュール機能を使って特定のウィンドウが現れたときに それを閉じるスクリプトを書きたいんだけど、 wshid = getid("Windows Script Host","#32770") ifb wshid = -1 exitexit else wsh2id = getstr(wshid, 1, str_static) ifb wsh2id <= "書き込むことが出来ません" ctrlwin(wshid, close2) endif endif 「書き込むことが出来ません」の前の文字が変わるから 部分一致で閉じるようにするにはどうすればいいの?
203 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/25(木) 09:43:16 ID:tNdZxzY+P] 「特定のウィンドウ」とそうでないウィンドウを あなた自身はどう見分けてるの?
204 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/25(木) 13:17:48 ID:+bexKkLC0] >>202 if pos( "書き込むことが出来ません", getstr() ) then print 見つかりました
205 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/25(木) 18:01:42 ID:d7sFY4K50] >>204 あ、posっていうのがあったのか ヘルプ読んでたはずなのに見落としてた ありがとう
206 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/02/26(金) 22:10:30 ID:1IEGk7vg0] ver.4.6にしたら、chkimgで範囲チェックエラーがでるようになったよ。
207 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/04(木) 08:28:32 ID:PO6OGpHQ0] VB6とかOfficeのVBAのエディタみたいに入力直後に登録されたキーワードがヒットしたら 強制的に大文字小文字を整形して置換(if→Ifとか)されるような機能を持ったテキストエディタないですか? 大文字小文字を気にして打ち込んでたらだるいしかといってそのままだと見返したときにすごく分かりにくいしで疲れました
208 名前:名無しさん@お腹いっぱい。 [2010/03/04(木) 08:40:10 ID:2mTNuI0U0] ロケットマウス、久々に新ver出てるのにスレ無いんだね・・・ ttp://home.att.ne.jp/yellow/town/rockm.htm
209 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/04(木) 10:10:42 ID:SA9xyQjv0] ロケットマウスは使い物にならない、ゴミ。
210 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/05(金) 06:08:33 ID:+qj40agr0] ロケットマウスは素早くマクロ作れるから便利だよ でも最新版は高すぎる
211 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/05(金) 10:02:22 ID:qXBK1A2U0] 必死宣伝乙。
212 名前:名無しさん@お腹いっぱい。 [2010/03/05(金) 15:02:28 ID:kdn5jr8z0] >>210 何でこのスレ見てるの? >>208 スレが欲しければ自分で立てろ。客がつくまで自分で維持しろ。 僕もAT小型限定の話をするとあっち行けと追い出されるし、 スレ立てすると「AT限定や小型限定があるだろ重複だ」とか言われて落とされてたけど、 自分で維持してたらそれなりに人が集まってきたよ。 【運転楽々】原付二種△小型AT限定【経費格安】 ttp://namidame.2ch.net/test/read.cgi/bike/1265783258/
213 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/05(金) 17:46:16 ID:YqnzvMb+0] >>212 お前が一番ウザイな
214 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/05(金) 17:56:25 ID:lSX1pwuz0] 誤爆か
215 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/05(金) 21:44:36 ID:RZfD8bdP0] >>207 秀丸でもxyzzyでもいいけど、自分でマクロ書くしかないんじゃ?
216 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/06(土) 16:35:31 ID:uUmPPbJA0] でも、UWSC専用のエディタって欲しくないか?? 色分け程度ならsakura専用であるにはあるが、入力補助や、デバッガ機能付きとか。 そういうオレはterapad使いで、色分けすらないから、記述漏れが探しにくい。 自分で作るのも面倒だし、テキストエディタって何個も入れたくないしな。 専用エディタなら割り切って入れる気になる。
217 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/06(土) 17:54:10 ID:i7mh1+mx0] >>216 無いなら作れよ… 作らないまでも、terapadでもオートコンプリートとかマクロのプラグインあるんじゃね? 色分けだとか、デバッガ起動くらい普通に付けられるんじゃねーの?
218 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/06(土) 17:57:43 ID:YVVc2xU3P] 秀丸と秀丸の強調表示、単語補完、マクロ制御で十分すぎる 低機能なエディタを使ってるから汎用エディタって発想に至らないんだろうなー この人が最初からEmEditorや秀丸あたりを導入していれば「専用エディタ」などと 馬鹿げた悩みなど起こさなかっただろうに、と残念に思う
219 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/06(土) 18:00:27 ID:i7mh1+mx0] エディタ論争に発展しそうですね! viでいいじゃない…
220 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/06(土) 18:12:50 ID:oDoON3sd0] VXEditorでもいいじゃないか
221 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/06(土) 18:19:56 ID:xpFYgJ560] >>218 こういう異様に高圧的な奴が湧くと荒れる法則 俺はメモ帳で編集してますが
222 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/06(土) 19:07:36 ID:v7GY0UD50] 自分で使いたいエディタがあるなら勝手に使えばいいじゃないか。 専用があって、なぜ悪い。
223 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/06(土) 19:40:30 ID:boTq+at40] それはどうかんがえてもEmEditorの独壇場ですね。 無料のエディタなんて所詮無料分の値打ちしかないですよ。 EmEditorさえ入れておけば間違いないです。
224 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/06(土) 21:14:59 ID:LIOXzylY0] ポータブルでも動くエディタがイイと思うがな。UWSCもポータブルで動くしね。 X-Finderも入れれば、相対パスで動かせるし、関連付けもOSと独立して設定できる。 バックアップも楽だし、環境揃えるのも楽。便利だよ。
225 名前:sage [2010/03/06(土) 21:27:36 ID:sUf1krysI] 質問です UWSCを途中でやめて、また始めから開始するにはどうしたらいいですか??
226 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/06(土) 21:30:18 ID:sUf1krysI] ↑名前間違った
227 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/06(土) 23:37:45 ID:h9shLCdf0] >>225 手動でやると仮定すると、 UWSCを通常起動ならSTOPボタンで止めて再生ボタンで再開。 Alt+F1キーで開始してAlt+F2キーとかで停止とかも出来る。 >>223 > 無料のエディタなんて所詮無料分の値打ちしかないですよ。 そのとおり。 UWSC Proを買って専用エディタを入手すればデバッグまで出来ちゃうからお勧め。
228 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/07(日) 04:54:07 ID:azd9KX7S0] メモ帳最強伝説
229 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/07(日) 11:21:23 ID:fJBc+XukI] >>227 Alt+F2で止めれるんですけど Alt+F1で再開が出来ません バージョンが古いと出来ないってありますか?
230 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/07(日) 11:53:33 ID:fsPwSQkP0] >>229 XPなら古いバージョンでもできるけど 7とかなら新しいのじゃないといろいろ動かなかったりするかも。 最新でも動かないなら環境依存。他の何かが邪魔してるんじゃないかな。
231 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/08(月) 14:41:27 ID:LRrJZmuF0] IE7のリンクをクリックした時に出るエラーダイアログを自動で閉じたいんですが ifb GETID("Windows Internet Explorer","#32770") > -1 //ダイアログを閉じる処理をする endif としてるんですが、このときエラーダイアログがでていないとGETIDでかなり時間を取られます。 エラーダイアログが表示されているかどうかの判定で良い方法はありますか?
232 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/08(月) 15:19:30 ID:8gw+l4vY0] >>231 >>97 で使ってる > GetWindow( H, GW_ENABLEDPOPUP ) COMは多分止まってるからIEオブジェクトは使えないので、 あらかじめH = IE.HWNDとしてハンドルを保存しておく。 GetWindow()でダイアログが表示されていればハンドルが取得できる。 ただし、ポップアップウィンドウにはサブメニューとかツールチップも含まれるので、 Status()で"#32770"かどうかをチェックする必要がある。 すべてのウィンドウをリストアップするのと違い、自分の子ウィンドウだけを見るAPIを直呼びするので高速。
233 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/08(月) 17:11:16 ID:LRrJZmuF0] >>232 アドバイスありがとうございます。 APIの使い方とかわからない素人で、 >>97 のスクリプトを見てもよくわからないのでもう少々詳しく質問させてください。 def_dll GetWindow(hWnd,long):long:user32.dll //dllを呼び出せるように宣言 Public GW_ENABLEDPOPUP = 6 // ポップアップウィンドウ ここまではわかります。 >あらかじめH = IE.HWNDとしてハンドルを保存しておく。 これはどういう意味でしょうか? おそらくスクリプトとしては ifb GetWindow( H, GW_ENABLEDPOPUP ) > 0 //ダイアログを閉じる処理をする endif こういう感じになるのですよね?
234 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/08(月) 17:42:07 ID:8gw+l4vY0] >>233 > H = IE.HWND これはIEオブジェクトを管理するウィンドウのウィンドウハンドルです。 UWSCで言うIDのようなものですが、ウィンドウハンドルと言うのはWindowsのAPIで使うものです。 IDとウィンドウハンドルは「IE.HWND」で検索したら出てきますが、 ID = HNDToID(IE.HWND) HWND = IDToHND(ID) と言うように変換できます。 if ! IDToHND(ID) then exit と言うように、IE窓が終了している場合に中断できるのでIDを保存しておくと便利です。 GetWindow()で使うときも GetWindow( IDToHND(ID), GW_ENABLEDPOPUP ) とできるので、IDを保存しておいてもいいです。 > ifb GetWindow( H, GW_ENABLEDPOPUP ) > 0 ハンドルは符号なし整数なので、この比較はしない方がいいでしょう。 負の整数と判断された場合に失敗します。 !が分かりにくいなら0 <> GetWindow() でもいいです。
235 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/08(月) 19:25:04 ID:LRrJZmuF0] >>234 ご丁寧にありがとうございます。 もう少々ググッて勉強してきます。 またよろしくお願いしますm(__)m
236 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/16(火) 15:03:54 ID:HiT6yWWl0] テキスト入力のやり方が分かりません教えてください
237 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/16(火) 21:52:10 ID:cI9JqU5P0] 何を聞きたいのか分かりません教えてください
238 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/17(水) 06:51:54 ID:DkHyneUl0] windows7でuwscを通常通り動かす方法ありませんか
239 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/17(水) 07:01:16 ID:8KLxlRw70] UAC切れ
240 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/17(水) 11:05:24 ID:u/flnLmx0] >>238 普通にwin7で使ってます。 しかも64 64アプリを制御できなかったりしますが、ほぼ問題なし ==>IEは32,64両方入ってますから
241 名前:名無しさん@お腹いっぱい。 [2010/03/17(水) 23:14:19 ID:j5IphMiE0] スクリプト入力補助、3文字ぐらいうったらあとの文字が自動でるようにしたい んですけど、どうすればいいんですか?CLCLというのは使い方が意味がわからなかったです。
242 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/18(木) 16:58:33 ID:HTSNWkk9P] それをUWSCで作ればいいと思うよ
243 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/18(木) 17:57:55 ID:pleFRDKk0] >>241 xyzzy + ac-mode.l (white.s151.xrea.com/wiki/index.php?script%2Fac-mode ) + uwsc-mode.l (big.tm.land.to/handbook/uwsc.htm ) でできる。
244 名前:名無しさん@お腹いっぱい。 [2010/03/19(金) 00:16:25 ID:r6TwPwzy0] 241です、回答ありがとうございます。そこまで教えられてるのにわからない自分がなさけないです. uwsc-mode.lはsite-lispフォルダに、uwscはetcフォルダに入れてください。←ここまではわかる siteinit.lとかに以下の文を追加してください。 ; UWSC (load-library "uwsc-mode") (push '("\\.uws$" . uwsc-mode) *auto-mode-alist*) ↑意味ワカラン
245 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/19(金) 00:40:50 ID:ZI4R2SXH0] そうですか
246 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/19(金) 01:34:35 ID:rPEvvIJr0] >>244 xyzzy.s53.xrea.com/wiki/index.php?QuickTour あとは気合いと根性で
247 名前:名無しさん@お腹いっぱい。 mailto:sage [2010/03/19(金) 03:40:08 ID:y7YOOYqA0] 釣りじゃ無かったのかよ