10/08/26 21:11:51 X8EPE0dEi
>>718
中断を表したいなら、breakに置き換えればいいだろ。ごく普通。
時間経過を表したいなら、時間取得をすればいい。関数はある。
抽象化したいという理想は何となく判るがね。
720:名無しさん@お腹いっぱい。
10/08/26 23:38:49 Pu7JT7nc0
ここは凄く勉強になるなぁ
721:名無しさん@お腹いっぱい。
10/08/28 08:38:47 oxztQxVg0
>>718
これも良く出来てると想う
722:名無しさん@お腹いっぱい。
10/08/29 05:36:14 9AX1wooV0
>>716
ありがとうございます。完璧です! まさに求めていた操作感です!
サイズに加え、フォントも変更しているので、
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Settings\Always Use My Font Face
を追加したいのですが、これはむずかしいでしょうか。
現状、UWSファイルを2つ作って、2つを実行させるUWSを走らせています。
なんにせよ感謝です!!
723:名無しさん@お腹いっぱい。
10/08/29 08:02:00 2ohpKIfP0
>>722 こんな感じ?
OPTION EXPLICIT
CONST HWND_BROADCAST = $FFFF
CONST WM_SETTINGCHANGE = $1A
CONST SMTO_ABORTIFHUNG = $2
DEF_DLL SendMessageTimeoutA(hwnd, uint, long, uint, uint, VAR dword): long: user32.dll
DIM wshshell = CREATEOLEOBJ("WScript.Shell")
DIM rsl
toggle_ie_setting(wshshell, "Always Use My Font Face")
toggle_ie_setting(wshshell, "Always Use My Font Size")
wshshell = NOTHING
SendMessageTimeoutA(HWND_BROADCAST, WM_SETTINGCHANGE, 0, "Software\Microsoft\Internet Explorer", SMTO_ABORTIFHUNG, 5000, rsl)
PROCEDURE toggle_ie_setting(obj, name)
name = "HKCU\Software\Microsoft\Internet Explorer\Settings\" + name
obj.RegWrite(name, !obj.RegRead(name), "REG_DWORD")
FEND
724:名無しさん@お腹いっぱい。
10/08/29 09:19:42 9AX1wooV0
>>723
ありがとうございます。これで仕事の効率が確実にあがります!
ところで、こういった記述、全部ゼロから書いてるんですか?
だとしたらすごいです。
725:名無しさん@お腹いっぱい。
10/08/30 22:07:44 +01WMHHg0
>>718
これ、逆に
画像が表示されなかったらクリック
画像A・Bが表示されたら終了
にしたい場合、どうすりゃいい?簡単な事でできそうなんだがうまくいかん
726:名無しさん@お腹いっぱい。
10/08/30 23:34:46 cCQi0/eo0
>>725
while true
ifb CHKIMG("画像A.bmp") or CHKIMG("画像B.bmp")
break
else
BTN(LEFT, CLICK, X, Y)
endif
wend
こういうこと?
727:名無しさん@お腹いっぱい。
10/09/01 12:55:02 gZxFjlWw0
無料版の方を使ってますが
上位バージョン(有料版)ではどのような機能が追加されているのでしょうか?
728:名無しさん@お腹いっぱい。
10/09/01 14:32:51 mcbj3OJX0
アドバイスお願いします。
ESCキーで動作終了。
画面の座標・X400~420、Y400~420のうち
1ドットでも色の変化があった場合、座標400.400をクリックというようにしたいのですが
ESCで停止はできても、クリックが動作してくれません。
IFB Countが悪いのでしょうか?アドバイスお願い致します。
729:名無しさん@お腹いっぱい。
10/09/01 14:34:17 mcbj3OJX0
// 画面サイズ
CONST X_MAX = G_SCREEN_W
CONST Y_MAX = G_SCREEN_H
DIM OldColor[X_MAX][Y_MAX];
// X座標変化範囲を指定
CONST X_START = 400
CONST X_END = 420
// Y座標変化範囲を指定
CONST Y_START = 400
CONST Y_END = 420
Total = ((X_END - X_START) + 1) * ((Y_END - Y_START) + 1)
// 起動時の指定範囲の色を得る
FOR x = X_START to X_END
FOR y = Y_START to Y_END
OldColor[x][y] = PEEKCOLOR( x, y ) // 座標(x,y)の色を得る
NEXT
NEXT
730:729続き
10/09/01 14:38:13 mcbj3OJX0
WHILE True
if GETKEYSTATE(VK_ESC) then exit // ESCキーを押すと終了させる
Count = 0
// 起動後の指定範囲の色を得て、変化をチェックする
FOR x = X_START to X_END
FOR y = Y_START to Y_END
NewColor = PEEKCOLOR( x, y )
// 変化あり?
IFB NewColor <> OldColor[x][y]
Count = Count + 1
ENDIF
NEXT
NEXT
// 指定範囲の1色が変化
IFB Count = 1
ENDIF
WEND
BTN(LEFT,CLICK,400,400)
731:名無しさん@お腹いっぱい。
10/09/01 17:30:48 61+r90Q20
色違い判定したところでループ抜けないとダメ
// 指定範囲の1色が変化
IFB Count = 1
BREAK
ENDIF
WEND
BTN(LEFT,CLICK,400,400)
732:729
10/09/01 21:08:10 mcbj3OJX0
>>731
ありがとうございます。BREAKは思いつかなかったです。
やってみましたが、反応しませんでした。
IFB Count = 1 の1を、total にして、全ドット箇所の色を変えたら反応しました。
やはり数値は使えないんでしょうか・・・
733:名無しさん@お腹いっぱい。
10/09/01 21:09:04 XX3BJheM0
色の変化が1ピクセル”だけ”の時は動くけどそれ以上だと
count=1はfalseになったままでNGだろ。
ifb count>0
break
あるいは
734:名無しさん@お腹いっぱい。
10/09/01 21:14:02 XX3BJheM0
書いてる途中で送信してしまった
ifb count>0
break
endif
あるいは見つかった段階でbrek
IFB NewColor <> OldColor[x][y]
break 3
ENDIF
もしくは最初にsaveimgで指定範囲をbmpで取得して
以後chkimgで見つからなければbreakとか。
735:名無しさん@お腹いっぱい。
10/09/02 16:26:42 LYfMKHgu0
有料と無料の違いを3行でおねがい
736:名無しさん@お腹いっぱい。
10/09/02 20:43:28 rUWrE0cY0
・ EXE化ツールが付属しています。(EXE化後は単体での実行が可能であり、ライセンスフリーにて配布できます)
・ IE(Web)用記録ツールが付属しています。(Web上の動作をUWSCのスクリプトとして記録する事ができます)
・ HTMLを利用した画面関数が使えます。 ・ EXCELシート用関数が使えます。 ・ デバッガが付属しています。
737:729
10/09/02 21:41:38 I3CZuiar0
>>734
ありがとうございます。だいぶ理想的な動作をするようになってきました。
まだ全然理解できてないとよくわかったので、またヘルプを読みこんでみます
738:名無しさん@お腹いっぱい。
10/09/07 17:34:36 yyBP3/0p0
Twitterクライアントを作っていますが。OAuth対応で、
DEF_DLLで下記にある、OAuthLib.dllを利用しようとしていますが、どうしてもうまく行きません。
URLリンク(oauthlib.codeplex.com)
C#のソースとかはあるけど、C#分からないし……
BSMTP.DLL(BASP21)のように言語依存があったりするのでしょうか。
739:名無しさん@お腹いっぱい。
10/09/08 12:51:19 h0eA5K/vi
>>738
正直DLLは鬼門だと思う。
該当DLLを使ったことがなければまず何も答えられない。
そして、貴方が何でどうダメだったのかも解らないので
レスもつけられないスパイラル。