1 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/08/04(木) 02:00:04.65 ID:7bTLDD7v0] Windowsを自動化させるツールUWSC。 www.uwsc.info/ uwsc使いのみなさま、マターリ己のスクリプトを晒しましょ。
551 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/26(月) 14:51:16.39 ID:6fGFBX1+0] あぁスマン誤爆した
552 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/26(月) 16:41:49.59 ID:sFw9d3YC0] >>550 誤爆なんだろうが、俺もちょっと不安になってきた。 去年はインクが固化して印刷できなかったんだよね…ちょっとチェックするか
553 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/29(木) 09:50:57.63 ID:Mj80iSIF0] どんなにググっても原因が見つからなかったので、ここで質問させて下さい whileを入れ子にすると、ループ処理が上手く行かないんです dim g = 0 while true 処理 1 ifb a = 50 Sound("beep") g = 1 endif while g = 1 処理2 If GetKeyState(Vk_C) then g = 0 wend wend というスクリプトなのですが、while g = 1がループする時としない時があります ・ループする時は、処理2の実行を繰り返す ・ループしない時は、処理2の実行を1回だけ実行して、Cキーを押していないのにループを抜けて処理1を繰り返す スクリプトの内容はまったく変えていません 原因をご存知の方が居ましたら、対策方法を教えて頂けないでしょうか
554 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/29(木) 10:19:13.33 ID:EVCP5Wph0] >>553 GetKeyState のループは、ループを抜けた直後にテストすると前回の結果が残ってる場合がある。 GetKeyStateが繰り返される場合は、処理を分岐する前にSleepを入れる必要がある。 If GetKeyState(Vk_C) then g = 0 ifb a = 50 g = 1 while g = 1 If GetKeyState(Vk_C) then g = 0 ↑の順番で実行されるときに前回の結果が残ってて抜けちゃう。 GetKeyState〜GetKeyStateの間のどこかで、0.5秒〜1秒くらいの休みが必要。 ただし、キーを長く押すとSleepを入れても引っかかる。 それをキャンセルしたかったら自分でKBDを送信して上書きするとかが必要。 もっとスマートに解決するなら、キー入力イベントを使うといいよ。 そしたら長く押すとかSleepとか関係なくなる。
555 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/29(木) 13:20:13.80 ID:Mj80iSIF0] >>554 目から鱗です! 確かにキー入力を使った時に現象が多発していました。 早速キー入力イベントを使ってみます。 本当にありがとうございます!
556 名前:名無しさん@お腹いっぱい。 mailto:sage [2011/12/30(金) 00:47:23.05 ID:L6jbcesv0] 横から聞くけどキー入力イベントってなんぞ? GetKeyState以外でキー感知できるのか WinAPIかなにかなのかな
557 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/03(火) 07:34:35.82 ID:PHgd+EtO0] 将棋板の升目のように配置された図形がありそのすべてを中クリックし、 次のページがあれば次のページへ移り、次へがなければ終了というものを作成途中です。 以下のマクロですと横一列をクリックして、たて一列をクリックして次のページに行ってしまうのですが、 どこを改良すればよいかアドバイスお願いします。 sleep(5) //続ける if GETKEYSTATE(VK_ESC) then exit // ESCキーを押すと終了させる while true //座標(0,X)から右(3840,3200)の範囲 X=0 while CHKIMG("枠_01.bmp",-1,X,0,3840,3200)//画像があればループ //画像の左上端から30px右、30px下の座標をクリックする BTN(MIDDLE,CLICK,G_IMG_X+30,G_IMG_Y+30,3) X = G_IMG_X+1 sleep(1) wend Y=0 while CHKIMG("枠_01.bmp",-1,0,Y,3840,3200)//画像があればループ //画像の左上端から30px右、30px下の座標をクリックする BTN(MIDDLE,CLICK,G_IMG_X+30,G_IMG_Y+30,3) Y = G_IMG_Y+1 sleep(1) wend
558 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/03(火) 07:35:23.52 ID:PHgd+EtO0] KBD(VK_BACK,CLICK,100) //BS sleep(1) KBD(VK_BACK,CLICK,100) //BS sleep(1) //次へがなければページ送り ifb CHKIMG("枠_01.bmp",-1,0,Y,3840,3200) = false then KBD(VK_NEXT,CLICK,100) //PAGEDOWN sleep(1) Y=0 endif ifb CHKIMG("次へ_01.bmp",-1,0,Y,3840,3200) = false then//範囲内に次へ_01.bmpが無ければ //次へがあったらクリックする ifb CHKIMG("枠_01.bmp",-1,0,Y,3840,3200) then //画像の左上端から30px右、30px下の座標をクリックする BTN(MIDDLE,CLICK,G_IMG_X+30,G_IMG_Y+30,3) sleep(2) else //次へがなければ終了する exit//終了 exit//終了 endif endif wend
559 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/03(火) 10:04:53.44 ID:skFAmUgc0] >>557 XとYをまとめてこんな感じにするとか if条件の3840は画像の幅の分減らさないとだめだろうけど X=0 Y=0 while CHKIMG("枠_01.bmp",-1,X,Y,3840,3200)//画像があればループ //画像の左上端から30px右、30px下の座標をクリックする BTN(MIDDLE,CLICK,G_IMG_X+30,G_IMG_Y+30,3) X = G_IMG_X+1 ifb X > 3840 X = 0 Y = G_IMG_Y+1 endif sleep(1) wend
560 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/03(火) 10:25:48.10 ID:0XuzNx4L0] >>559 でいいと思うけど普通に二重forループにすればもっと簡潔に書けるな。
561 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/03(火) 10:51:43.21 ID:skFAmUgc0] っていうかこれでいいのでは n = CHKIMG("枠_01.bmp",-1,0,0,3840,3200,-1) for i = 0 to n-1 BTN(MIDDLE,CLICK,ALL_IMG_X[i]+30,ALL_IMG_Y[i]+30,3) sleep(1) next
562 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/03(火) 11:25:10.87 ID:0XuzNx4L0] >>561 ALL_IMG_XとALL_IMG_Yはどこから出てきたんだ
563 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/03(火) 11:28:27.58 ID:bXuTehsY0] >>562 とりあえず最新版のヘルプ位嫁と。 昔はこんなの無かった気がするがな。 chkimgなんか使わんから俺も知らんかった。
564 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/03(火) 12:28:06.64 ID:0XuzNx4L0] >>563 ああなるほど。理解した。ありがとう。 でもall_img_xとall_img_yでうまくいくような画面構成なのかな。 いやよくわからんが。
565 名前:名無しさん@お腹いっぱい。 [2012/01/06(金) 12:31:16.18 ID:VuDmH/f50] どうにも解決しないので質問させてください。 当たりと外れのリンクが並んでおり、 (1)当たりのリンクを画像で判別 (2)別タブで開く (3)表示されている当たりリンクをクリックし終えたらスクロール (4)1から繰り返す (5)ページ内の当たりリンクを一度ずつクリックし終えたら終了 3と5の処理が解決せず、現状2までの段階でつまづいています。 以下が2までのスクリプトです。 While true SLEEP(1) IFB CHKIMG("atari.bmp") //atari.bmpを検索 KBD(VK_CTRL,DOWN,10) //別タブで開く BTN(LEFT,CLICK,G_IMG_X+5,G_IMG_Y+5,3) KBD(VK_CTRL,UP,10) Else KBD(VK_NEXT,CLICK,40) //atari.bmpが無ければスクロール ENDIF Wend どうかアドバイスをお願いいたします。
566 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/06(金) 13:12:51.79 ID:HgkIipKY0] IE叩けばもっときれいにできそうな気がする
567 名前:名無しさん@お腹いっぱい。 [2012/01/06(金) 18:43:50.67 ID:jkZMFLuo0] 0時 1.UWS 3時 2.UWS 6時 3.UWS 翌日 3時 1.UWS 6時 2.UWS 9時 3.UWS 時間をずらしてループさせていく方法教えてください
568 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/06(金) 19:28:28.38 ID:hqV782Fu0] ループ部分だけ、やっつけ回答(検証もしてない)ww dim interval[2]=10800, 10800, 75600 Time1=gettime() While true for i= 0 to 2 repeat sleep(60) Time2=gettime() until Time2 - Time1 >= interval[i] Time2= Time1 exec("フルパスuwsc.exe "+i+1+".uws") next wend
569 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/07(土) 12:16:14.80 ID:86C9Ij5x0] ファイルの中身を全消去したいと思っています。 下記のように書きましたが、動きません・・・ どこがおかしいでしょうか? よろしくお願いします。 fid = FOPEN("C:\log.txt", F_READ or F_WRITE) For line = 1 to FGET(fid,-1) FDELLINE(fid,line) Next FCLOSE(fid) EXITEXIT
570 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/07(土) 12:26:01.76 ID:OMSuV0AE0] >>569 ヘルプによると >F_WRITE // 書き専用モード(既にファイルがあれば前の情報は消去) モードにF_READいらないんじゃない? 開いて閉じるだけ。
571 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/07(土) 13:07:06.89 ID:86C9Ij5x0] >>570 F_READを消したらうまくいきました! ありがとうございます!!
572 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/08(日) 10:50:37.63 ID:Rn7jJzWy0] ブラウザ開いて画面をスクロールしたいと考えていますが 最後のスクロールだけできません。 間違いを教えていただけないでしょうか? Dim ObjIE = CreateOleObj("InternetExplorer.Application") ObjIE.Visible = True ObjIE.Navigate("www.yahoo.co.jp/ ") Repeat Sleep(0.2) Until !ObjIE.Busy and ObjIE.ReadyState = 4 // IEの表示待ち TITLE = GETID("yahoo") CTRLWIN(TITLE, ACTIVATE) CTRLWIN(TITLE, MAX) Sleep(0.2) KBD(VK_NEXT,CLICK,3) //PAGEDOWN
573 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/08(日) 14:08:57.12 ID:pCt01lqC0] >>572 書いてある操作を実際に自分の手作業でやってみろよ。 なぜだかわかる。
574 名前:572 mailto:sage [2012/01/08(日) 16:33:48.81 ID:Rn7jJzWy0] >>573 レスサンクス。 手作業でも同じ事象になるのは理解しました。 ページクリックすればPAGEDOWNする。 ページクリック=アクティブにするって事・・・じゃなくて?
575 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/08(日) 16:58:41.85 ID:479QIulh0] わからない事がわからない… そんな時代もありました。
576 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/08(日) 20:34:18.47 ID:aKLGGiFU0] >>572 PageDown キー押下をクライアント領域一つ分下にスクロールさせる事と解釈した場合 OPTION EXPLICIT OPTION SHORTCIRCUIT DIM ie = CREATEOLEOBJ("InternetExplorer.Application") ie.Visible = TRUE ie.Navigate("www.yahoo.co.jp/ ") REPEAT SLEEP(0.2) UNTIL !ie.Busy AND ie.ReadyState = 4 DIM document = ie.Document DIM h = document.documentElement.clientHeight document.parentWindow.scrollBy(0, h * 3) scrollBy メソッドの詳細は以下 ttp://msdn.microsoft.com/ja-jp/library/cc428160.aspx
577 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/08(日) 20:42:08.41 ID:aKLGGiFU0] >>576 訂正します クライアント領域一つ分下に => クライアント領域の高さ一つ分下に また KBD 関数の第三引数を回数と勘違いしていましたので document.parentWindow.scrollBy(0, h * 3) => document.parentWindow.scrollBy(0, h) として下さい まことに申し訳ありませんでした
578 名前:572 mailto:sage [2012/01/09(月) 05:43:50.93 ID:f0eW8W0qP] >>576-577 ご指導ありがとうございました。 早速、試してみたいと思います。 ありがとうございました!
579 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/10(火) 08:08:39.83 ID:rHvUg0XiO] uwscで現在開いているページのhtmlソースを取得することは出来ますか? キャッシュの保存場所からの取得を試みたんですがうまくいかなくて。(fgetで1行しか取得出来ない) なおブラウザはchromeです。何かよい方法はありませんか?
580 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/10(火) 09:00:38.88 ID:oumgSqx8i] >>579 右クリック、ソース表示 uwscはIEのみ割合融通が効く あとは道が用意されているかで、大半はベタに手作業をやるしかない
581 名前:名無しさん@お腹いっぱい。 [2012/01/11(水) 03:46:28.70 ID:g75gj0wE0] >>568 さっぱりわからんかったからあきらめた(´・ω・`)
582 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 15:24:44.02 ID:m+JsXwWX0] メイン関数内でsleepしてると別スレッドでGETIDした時にやたら時間がかかるんだけど、これは仕様? メインとスレッドの関係を入れ替えれば問題ないんだけどそれ以外に回避方法ないかな
583 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 15:28:03.88 ID:aWCCUq4y0] UWSC初心者なのでサンプルを見ながら応用しているのですが、 伺いたいことがありカキコします。 エクセルのセルA1のURLをIEで開き、ある時間が経ったらA2のURLをIEで開く・・・ そんなプログラムを検討しているのですが、当方エクセルがありません。 そこで、Open Officeで製作したxlsファイルで同様の事ができないかググッているのですが、 なかなか見つかりません。 下記のプログラムを応用したいのですが、Open Officeへ変更できないものでしょうか・・・ EXCEL = CREATEOLEOBJ("Excel.Application") EXCEL.visible = True Excel.WorkBooks.Open(FileName :="C:\abc.xls") Excel.Range("A1").select URL = EXCEL.selection.value IE = CREATEOLEOBJ("InternetExplorer.Application") IE.visible = True IE.navigate(URL)
584 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 15:38:50.15 ID:7jlzSH1ui] >>583 エクセルに拘らないなら テキストファイルの読み出しで良いんじゃない?
585 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 16:04:40.34 ID:aWCCUq4y0] >>584 そうですね、その手もあるのですが最終手段で・・・
586 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 16:12:21.80 ID:aWCCUq4y0] おそらくOpen Officeのxlsファイルはexecで開くだろうと目星付いているのですが、 そのxlsファイルのA1セルを選択してURLとする関数が分からないんです。 エクセルのサンプルはよく見かけるんですが・・・
587 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 16:50:42.40 ID:HGqIT2Nx0] Open OfficeってCOMインターフェイスあるの? あるなら>>583
588 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 16:55:32.60 ID:HGqIT2Nx0] 途中で送信しちゃった COMインターフェイスないなら>>583 みたいなCOM経由の操作はできないよ uwscのgetstrとかで取得してかなきゃダメだとおもう
589 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/11(水) 17:37:55.28 ID:HGqIT2Nx0] ああ ttp://www3.bigcosmic.com/board/s/board.cgi?id=umiumi&start=103&log=ON&cnt=21 COM使えるみたい
590 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/12(木) 00:03:51.07 ID:9Jj396OZ0] スクリプトで株の自動注文とか恐ろしい事考える奴いるんだな・・・
591 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/12(木) 10:54:31.82 ID:xBAC4oJN0] >>590 やるなら、API直接叩けるならまだ理解出来る ブラウザやエクセルの人間的動作を通してなら、不確実過ぎて泣ける
592 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/12(木) 12:46:33.62 ID:nZDoSlf20] >>581 ちょっと見直してみたら間違い発見 スマン 9行目 ×Time2= Time1 -> ○Time1= Time2 というか、このループだと24時間365日PCシャットダウンNGだから実用的でないよw テキストファイル等にlog落としてやらないと無理だと思う (UWSCのイニシャルファイルを毎日書き換えるスクリプト書くとか…)
593 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/12(木) 14:26:47.70 ID:BKa5D+cQ0] >>587-589 なるほどですね、ココらへん少し調べてみます。 情報有り難うございます!
594 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/12(木) 23:11:29.95 ID:r8P1bghB0] 最新版でもSLIDER関数こわれてない?
595 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/13(金) 07:35:49.49 ID:e/JEGIOK0] >>567 3時間ごとに起動して1日に3時間ずらすなら24時間+3時間の27時間後に再度起動すれば良いよ スクリプトは適当に組めばいい
596 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/14(土) 02:17:33.07 ID:7l9tSFEA0] ADOを使ってuwscからDBにインサートをかけましたが、 エラーになります。in1を'bbb'など、文字列にすると DBにインサートをかけることができます。 in1が変数だとエラーになってしまうみたいですが、 何が原因でしょうか? Dim in1 = "abc" cn.OPEN() cn.Execute("INSERT INTO test (test1,test2) values(in1,'aaa');")
597 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/14(土) 09:35:09.72 ID:eeJFKUsa0] 文字列の中に変数名を書いてるから
598 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/14(土) 09:41:37.98 ID:7l9tSFEA0] >>597 ご回答ありがとうございます。 cn.Execute("INSERT INTO test (test1,test2) values(in1,'aaa');")を実行 させるには、 cn.Execute("INSERT INTO test (test1,test2) values(" + in1 + ",'aaa');") とやるしかないでしょうか?
599 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/14(土) 09:42:40.94 ID:eeJFKUsa0] ADOなんてさわったことないからわかんないけど こうすれば動くのでは? cn.Execute("INSERT INTO test (test1,test2) values("+in1+",'aaa');")
600 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/14(土) 15:23:08.09 ID:6TClJCPA0] uwscでIEを複数開くとき、一つ一つを新規セッションで開く方法があれば教えてください
601 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/14(土) 15:24:00.25 ID:6TClJCPA0] uwscでIEを複数開くとき、一つ一つを新規セッションで開く方法があれば教えてください
602 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/15(日) 00:41:45.74 ID:nE9VgamT0] comインスタンスをその度生成しろ
603 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/15(日) 01:16:20.39 ID:V/SNJG5u0] >>596 発想がPHPer
604 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/15(日) 10:29:49.46 ID:eKAKYI5K0] ラダーの歩進回路のような 入力Aなら処理1 続いて入力notAなら処理2 続いて入力Bなら処理3 続いて入力notBなら次へ という感じのを作るのに 各処理をwhile〜 if 〜elseCONTINUE〜endif〜wendでやると すごく長たらしいのですがスッキリできませんか?
605 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/15(日) 12:31:56.88 ID:QrGo7/5p0] 「指定した文字の10ピクセル上を左クリック」 うまい方法を教えていただけないでしょうか?
606 名前:605 mailto:sage [2012/01/15(日) 13:30:10.86 ID:QrGo7/5p0] すいません自己解決しました
607 名前:名無しさん@お腹いっぱい。 [2012/01/15(日) 16:26:16.85 ID:iv4Sgz2W0] ここ数日マクロ作りにハマって、割と長いのを作ったんだけど、 画像認証が多すぎて、uwscの窓がずっと点滅してる状態なんだけど、長時間ループさせてても大丈夫ですか? 極力sleepを多く入れたんだけど。pcに負担になってるような気がしてちょっと怖い。暴走しそうなオーラが漂っている。
608 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/15(日) 16:36:13.88 ID:vCx4hJnj0] >>607 それぞれの環境・スクリプト・実行時間があるので、実際に試す以外は無いだろう。 制御できる暴走は例外処理と呼ばれるからな。ちゃんとエラーをチェックして対処できるようにしておけよ。
609 名前:名無しさん@お腹いっぱい。 [2012/01/15(日) 16:59:27.23 ID:kFD794I50] 保存押しても保存すべき有効なデータがありませんって表示されるのですがなんででしょうか?
610 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/15(日) 17:41:29.40 ID:xbYnzYrY0] >>609 保存すべき有効なデータがないからじゃね?
611 名前:名無しさん@お腹いっぱい。 [2012/01/15(日) 20:35:48.49 ID:hkfzc5TE0] >>608 あり^^ いやープログラム作るの楽しいわw 間違いをみつけるのも楽しいし思った通りに動いたときの快感は凄いね。 プログラムって、最初不可能に思えたことでも、粘り強く考えて調べてやってれば、必ず正解に辿り着けるね。 ちょっとでも間違ってたら動いてくれないけどバッチリ作ればその通り動いてくれるところが好き。やりがいがある。
612 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/15(日) 21:54:09.75 ID:GGn+/cHQ0] すげーな。俺なんて 「間違ってる筈無いのに!」←確実に間違ってる と言う事を悟って尚同じ言葉を繰り返してるぞ
613 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/15(日) 23:55:51.29 ID:MxRh+cwy0] 最初は間違ってるか合ってるかわかりやすいんだけど しばらくやってると合ってるんだけど思い通りには動かないって箇所が出てくるんだよな… sendstrとかボタンのクリックとか、書いた通りに確実に動くとは限らないってのが 出てくると困る。sendstrの検証とか余計な動作書かなきゃならなくなるのがなんとも。
614 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/16(月) 00:54:02.47 ID:LIA/j70U0] マクロ作り出したばっかりとかプログラムやった事が無い人のために1つ助言をしておいてやろう 「あれ?バグ?」っていう風なおかしな動作を見つけたなら、まずその処理がどんな所にありそうか見当をつける そして式や処理内容自体を自分が勘違いしてないか確認する もちろん変数のウォッチはprint文などでチェック 言うまでも無くトレース実行出来る機能があるならそれを使う そして変数の代入や処理の勘違いも無く全部正常に書き直す作業をする これだけで驚くほど他のバグが見つかる
615 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/16(月) 01:04:53.01 ID:68a88Ysp0] IEでclkitem関数が同じボタンでも機能する時としない時があるのはなんでなんでしょう 文法は clkflg = ClkItem(IEid, btn_name, CLK_ACC or CLK_BACK) //btn_nameのボタンをクリック であってますよね?同じボタンでもクリックできる時とできない時があります CLK_BACKを指定すると不安定になるのかしら
616 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/16(月) 02:09:49.92 ID:i+BqAMX70] >>615 ieでなぜにckitem使うのかいな?素朴な疑問…
617 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/16(月) 04:16:02.96 ID:68a88Ysp0] comをほぼ全く把握してないから&別のやつ用のスクリプト流用してるからです^q^ その回答だとcom使ってボタン叩けるってことですよね、面倒だけどMSドキュメント漁ってきます
618 名前:名無しさん@お腹いっぱい。 [2012/01/16(月) 09:26:47.08 ID:nMIpHxy10] >>567 3時間毎に起動はするけど、 対象外の時間の起動を無効にする処理を入れるとか。
619 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/16(月) 09:38:33.37 ID:OG4ZTORv0] (3時間ごとの時刻生成)+日数×3 mod 24 これでいける。
620 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/17(火) 08:49:01.57 ID:K3OlpIBQ0] >>614 に大体賛同だな あと付け加えるなら処理を行いたいウィンドウがアクティヴになってるか常にチェックを入れておくことかな
621 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/17(火) 17:21:11.31 ID:3FCYgKhU0] >>66 >CTRLWIN(GETID("ウィンドウタイトル"),max,activate) >とすることで一行で済みました。 こんな書き方って出来るっけ?最初の命令、カンマ以降は利かないようだけど
622 名前:名無しさん@お腹いっぱい。 [2012/01/18(水) 00:46:22.03 ID:R0g/Jmmn0] ifbに対しendifが無い って今日1日で70回くらい言われた
623 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/18(水) 09:26:32.75 ID:ISISf7Vj0] 多分>>66 を書いた人は RestoreかMinimizeかhideのウィンドウがmaxでMaximizeされて同時にアクティブになったのをactivateが利いたんだと勘違いしたんだと思う 元々Maximizeのウィンドウはmaxでアクティブにはならない そこで作者様に要望、max命令ひとつであらゆるウィンドウをVisibleでアクティブにしてほしいです
624 名前:名無しさん@お腹いっぱい。 [2012/01/18(水) 12:25:33.22 ID:R0g/Jmmn0] endifが抜けてたのにエラーにならず教えてもらえなかったんだけどこんなことってあるんですか? そのスクリプトを別のメモ帳にコピペしてやってみたらエラーになって気付いた。 一体なんだったんだ
625 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/18(水) 13:28:59.94 ID:+3/B93vW0] >>624 ツンデレだな
626 名前:名無しさん@お腹いっぱい。 [2012/01/19(木) 08:05:37.69 ID:/5HHXckmO] uwscってもしかしてノートPC上じゃ動かない?
627 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/19(木) 08:38:02.64 ID:vNYY2dx20] 動くが?
628 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/19(木) 11:38:20.48 ID:ApNHow2lP] 動かないと思う理由が理解出来ない。 まぁ画面サイズが違うとか、その辺が現実的か。
629 名前:626 mailto:age [2012/01/20(金) 07:48:15.93 ID:PlIm9VKvO] すまない Windows7のノートPC上でマウスの動きを記録してくれないんだ どうなっているんだろう?
630 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/20(金) 08:02:33.24 ID:jqXYohw30] Windows7のノートPC上で、ネトゲマクロ作ろうとしてるんだけど マウス操作記録できないわけですね。わかります
631 名前:名無しさん@お腹いっぱい。 [2012/01/22(日) 17:32:28.60 ID:wwwfNGh70] INPUTBOXをproを購入する前にhtmlで複数窓でFORMを出したい。 ↓html <Form Method='Post'> 入力1:<input type="text" name="aaa" size=50 maxlength=30"> 入力2:<input type="text" name="bbb" size=50 maxlength=30"> <input type="button" name="okbtn" value=" OK " onClick=" value='OK終了'"> <input type="button" name="cancelbtn" value="CANCEL" onClick="value='CANCEL終了'">
632 名前:名無しさん@お腹いっぱい。 [2012/01/22(日) 17:33:57.62 ID:wwwfNGh70] 続き // 以下は実行用スクリプト IE = CreateOLEObj("InternetExplorer.Application") IE.Width=600; IE.Height=400; IE.Visible=True IE.Navigate(GET_CUR_DIR+"\test.html") while True sleep(1) ifb IE.document.all["okbtn"].value = "OK終了" print "OK" print IE.document.all["aaa"].value print IE.document.all["bbb"].value break elseif IE.document.all["cancelbtn"].value = "CANCEL終了" print "CANCEL" break endif wend IE.Quit でCOMエラーがでるんだけど何でだろ?TextBlockでくるんでも同じ。
633 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/22(日) 21:01:59.73 ID:XlS52BHO0] >>632 httpのステータスコードかとおもったが… >IE.Navigate(GET_CUR_DIR+"\test.html") これはなんだw ローカルサーバでも立ち上げてるのか 直接ローカルファイル指定するのにしても、プロトコルが違うだろw
634 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/22(日) 21:30:23.45 ID:ZQaDwkbX0] >>631 ,632 そのままで問題なく動いたよ? >>633 ローカルファイルを開くだけなのに?
635 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/22(日) 23:29:31.15 ID:x467cUIP0] >>633 プロトコルとか関係なくね? そのままローカル開くようにIEが操作するだろ インターネットもファイルの1つだし
636 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/23(月) 08:21:16.46 ID:jRcgnCgt0] textblockってどういう時に役立ちますか? マニュアルには 複数行にわたる文字列を変数として定義します とありますが、どういった時に使うんだろう?
637 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/23(月) 12:11:17.97 ID:P0ppPqWG0] num1 = "123<#CR>456<#CR>789" こういう表記が TextBlock num1 123 456 789 EndTextBlock これで済むってことじゃね?
638 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/23(月) 12:25:01.86 ID:Ap6Rkw4u0] ファイルにテキストを書き込む時に 一行毎にFPUTとかで書くんじゃなくて 変数に全部突っ込んだ後に一気に書き込む方が便利。
639 名前:名無しさん@お腹いっぱい。 [2012/01/23(月) 14:35:37.99 ID:cOA0Xe6m0] 631だがまだわかんね・・・・ ifb IE.document.all["okbtn"].value = "OK終了" でCOMエラー。なんかDOM指定が間違ってんじゃないか。わからん >>634 UWSCのバージョン何 >>633 nem.symphonic-net.com/uwsct/0705uwscSpec.html#080408 眠たい詩人の説明 iriyak.adam.ne.jp/arc/uwsc/031012_UWSC_R_option_builder.txt 入谷さんの説明↑わかりやすい VBSとかINPUT複数までのできなくて人に使わすアプリにできないでしょ。 ここどうしてもクリアしたい。負けたらPRO買う。
640 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/23(月) 18:33:37.73 ID:SDeLihIt0] textblockってコメントアウトのことだと思ってた
641 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/23(月) 18:48:16.87 ID:jRcgnCgt0] >637 >638 ご回答ありがとうございます。理解できました。
642 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/23(月) 23:59:46.34 ID:jRcgnCgt0] random関数で、30以上60未満の間の数をランダムで返す といったような事はできるんでしょうか?
643 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/24(火) 00:01:52.57 ID:7ZsaPXOq0] >>642 30足せよ
644 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/25(水) 03:52:47.74 ID:9Yzwhwbv0] 例も無しか
645 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/25(水) 11:43:56.31 ID:TIuVKniE0] 初心者な質問で申し訳無いですが、 1) 手動でカーソルを画面任意の位置へ移動 2) マクロスタート 3) クリック 4) 3)でクリックしたところから、20pix右もクリックする。 こんなマクロを製作したいのですが、 3)クリック+座標を取得 4)取得位置から20pix右をクリック のような方法しかないのか?もしくは 座標取得せず、3)のクリックした位置から相対的な移動で20pix右をクリック なんて関数はあるのでしょうか? 説明ベタでスイマセン・・・
646 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/25(水) 17:59:06.69 ID:WBVfYz9r0] ヘルプ見てないなら無い。
647 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/25(水) 18:33:07.06 ID:tYtUBWmf0] 既にわかってる座標を取得って意味不明
648 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/25(水) 18:45:20.06 ID:7Vqkyg300] まあ、関数が欲しいというのなら関数にすればいいw procedure 20ピクセル右をクリック() btn(left,click,g_mouse_x+20,g_mouse_y) fend
649 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/26(木) 00:14:42.56 ID:thgzPnCC0] SLCTBOXでSLCT_RDOの項目の3番目以降を選択すると 戻り値が倍倍になります 1番目=1 2番目=2 3番目=4 4番目=8 なんでなん ret=slctbox(slct_rdo,0,"めっせじ","項目1","項目2","項目3") msgbox(ret)
650 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/26(木) 00:21:50.90 ID:thgzPnCC0] 事故解決
651 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/26(木) 01:08:45.43 ID:JvkQNEuO0] ドラッグ&ドロップでuwscスクリプトに引数としてファイルのパスを渡す方法はありませんか? batファイルを経由したりすればできるのかな