14/10/23 07:42:36.95 Aca0Dxm50
数値を指定しなければUWSCがCPU不可に応じて適当に待機時間を決定するだけなのです
49:名無しさん@お腹いっぱい。
14/10/23 08:03:00.83 K8FKzcap0
臭い臭い言うがここはたかが2ちゃんねるだぞ…
公式掲示板があれば臭くない質問スレなど要らん。
ここは浮浪者が集まる洞窟だ。一般人が住むところではない。
快適さを求めるなら公式掲示板へどうぞ。
50:名無しさん@お腹いっぱい。
14/10/23 08:18:29.81 vBGDJm/E0
世の中には肥溜めに顔を突っ込んでくさいくさい言いたがる趣味の人がいるんだよ
51:名無しさん@お腹いっぱい。
14/10/23 12:07:57.69 HVdhZLKn0
>>49
こいつ餌やってたやつだろ
わざわざゲーム名出して対応するからゲームスレからプログラムに興味ない奴まで大量に押しかけるんだよ
ゲーム名出して個別対応したいなら相応のスレでやれ
52:名無しさん@お腹いっぱい。
14/10/23 12:29:16.53 dOzHbvhj0
だがここはソフトウェア板。いっそのことプログラム板に引っ越す?
53:名無しさん@お腹いっぱい。
14/10/23 12:51:19.07 VLQO/VVZ0
プログラム板はHSPが肩身の狭い思いしながらやっと入れてもらってる感じだぞ
他は有名なプログラミング言語ばかり
自動操作ソフトに付いてるおまけスクリプトじゃ場違いだろ
54:名無しさん@お腹いっぱい。
14/10/23 17:13:54.86 JlBPnhz10
メモ:クリップボードの画像を扱う
URLリンク(d.hatena.ne.jp)
Tesseract-OCR を呼び出して直接読み取ったテキストを受け取れるバッチを書いた。
クリップボードから自動でファイルに保存してくれれば
バッチファイル以外のファイルパスを気にしなくてもいいなと思ったけど
そのコマンドが見当たらなかった。
JavaScriptでエンコードして無理やり経由してるサンプルを見つけたがこれじゃない。
VBScriptでWin32APIで受け取ってるのを見つけてUWSCのソースはないかなと思ったら発見。
クリップボード関連はコマンドラインとブラウザはテキストのみの機能が普通なので無駄に探してしまった・・・
そして結局、SaveImage()を再度呼び出してファイルに保存するのが手っ取り早いと分かった。
.netの場合 : Clipboard.GetImage()
IE+VBSのやつ : window.clipboardData.getData()
ちなみに、VBSのやつはペイント+ショートカットキーが多かった。
ocrad.js ってOCRがあるんでクリップボード経由で渡せないかとググってみたけど
認識精度が悪いから実用にならなかった。
55:名無しさん@お腹いっぱい。
14/10/23 17:20:18.39 JlBPnhz10
ところで、せっかく画像キャプチャが裏画面+クリップボードで出来るようになったのに
ChkImg() がデスクトップのみ対象なせいで
座標は違うし、ウィンドウが移動したら追っかけないといけない。
これは残念。
あと、色が変わりすぎるからか範囲が狭すぎるからか分からないけど、
色を無視してもトランプの境界線を拾ってくれなかった。残念。
56:名無しさん@お腹いっぱい。
14/10/23 17:33:50.68 iAU/Hi4L0
画面に「ここをクリック」の画像が複数ある。
4箇所だけ見つけてそれぞれをクリックして下さい。
のスクリプトはどのように書けばいいですか?
また、その指定した画像はUWSCのフォルダに入れれば良いですか
よろしくお願いします
57:名無しさん@お腹いっぱい。
14/10/23 17:44:18.28 JlBPnhz10
>>56
> 戻値 = CHKIMG( [画像名, 透過色/色無視, x1, y1, x2, y2, 番号, 色幅] )
> 番号: 複数ある場合に順番を指定 (左上から)
> -1: -1が指定された場合はヒットした数を戻値として返し、座標情報は ALL_IMG_X[], ALL_IMG_Y[] に格納
それを FOR ループで回す
画像ファイルはディレクトリを指定しない場合、起動するUWSファイルの場所に置けばいい。
58:名無しさん@お腹いっぱい。
14/10/23 19:25:22.15 JlBPnhz10
デスクトップ?
画面(スクリーン)
ああ、ボケがひどい。
59:名無しさん@お腹いっぱい。
14/10/23 19:25:32.83 PSQzSpTS0
>>55
chkimgもクリップボードでできるだろ
60:名無しさん@お腹いっぱい。
14/10/23 19:55:30.36 JlBPnhz10
>>59
いや、この部分
// 指定画像が画面上にあるかチェック
戻値 = CHKIMG( [画像名,
クリップボードと何を比較するんだと言われればまあファイルしかないけど
画像データを変数で持てるようになれば
でも、UWSCは画像をオブジェクトで扱えないし
メモリあんまり持てないっぽいし無理だね。
>>54 のリンク先でエンコードしてテキストで画像を保持してるから
比較対象が小さければその都度エンコしてテキスト比較すればいいのか
ちょっとやってみたくなってきたぞおら
色は255,255,255(8bit x 3 = 24bit)
バイナリの文字化は64文字いけたかな。Base64がそれか。
2 x 3 = 6bit
ちょうど4文字か。切りがいい。
(4 x 15 + 1) x (4 x 13 + 1) x 5 = 16,165
微妙か。
でも、これをやれば裏マクロできる。
でも、PeekColor() で数か所比較するのとどっちが早いかと言うと、PeekColor() だなあ。融通も効くし。
61:名無しさん@お腹いっぱい。
14/10/23 23:25:46.20 JlBPnhz10
Posで検索するのとChkImgで検索するのを比較してみた。
1秒当たりの検索回数は
3016回 Pos 4x15+1文字 を 9,840バイトの数字列 から検索
56回 ChkImg 画像ファイル 1 x 15 ドットの画像を (4 x 13 + 1) の横幅で検索
60回 ChkImg クリップボードで上記と同じ
クリップボードとの微妙な差は、最初にファイルを読むのに時間がかかっているんで
毎度毎度ファイルアクセスしてたら結構な時間がかかってる事になるかな。
157回 × 15dot PeekColor ClipBord
4回 × 15dot PeekColor Screen
6回 SaveImg ClipBord
Screenへのアクセスはリフレッシュレートに近い数字か。
クリップボードならその制限がなくて40倍ほどか。
SaveImg → PeekColor → Base64 → Pos と
SaveImg → ChkImg とは性能はほぼ同じ(ドット数による)だけど
5枚のカードを検索するときに SaveImg 5回よりは
SaveImg 1回 +(PeekColor 15回+Base64+Pos)x5 の方が快適って事だな
あれちょっと待てよ
特徴的な15か所を文字列化したら一発で検索できるんじゃね?
あ、
62:名無しさん@お腹いっぱい。
14/10/24 02:41:47.40 PdExt1ue0
初心者です。指定した画像をクリックスクリプトを作ったけど
まったく作動しませんでした。
クリックしたい画像とBmp画像の1ドットでも違ったら駄目です。
bmpは24bitの方ですよ
↑これが原因の可能性がありますが、これってどういう意味か
わかりやすく解説して頂けないでしょうか
書いたスクリプトは
IFB CHKIMG("btn_gounit.bmp")
BTN(LEFT,CLICK,G_IMG_X, G_IMG_Y)
ENDIF
63:名無しさん@お腹いっぱい。
14/10/24 03:31:35.06 etrp4Db70
24bitというのはフルカラーの事
詳細はぐぐったほうが速いと思う
64:名無しさん@お腹いっぱい。
14/10/25 02:36:41.59 jjKFBvVu0
>>63さん
知恵袋のURLリンク(detail.chiebukuro.yahoo.co.jp)
を参照してヤフートップページにある「真ん中の赤いヤフーマーク」を
24bitで保存したつもりですが、自動クリックは失敗でした。
背景が黒だし文字の周辺に白い部分がある状態の画像だった。
お助け下さいませ
65:名無しさん@お腹いっぱい。
14/10/25 02:50:08.60 dhXYuLsF0
プリントスクリーンで保存してペイントでBMPにすりゃいけるでしょ
無理なら諦めろ
66:名無しさん@お腹いっぱい。
14/10/25 03:01:22.46 60O7EChn0
>>64
画像ダウンロードはだめ
>>65さんのいうとおりPrintScreenしてペイントで切り出さないといけない
67:名無しさん@お腹いっぱい。
14/10/25 10:59:01.91 kkeBtRLQ0
ブラウザで表示されてる画像イメージは普通、容量削減の為に圧縮した画像形式だからダウンロード゙したらその形式になるよ。
UWSCで扱うのはBMPで頭悪いくらい容量が多いやつ。
68:名無しさん@お腹いっぱい。
14/10/25 11:48:46.14 Sr0VkAQ20
おまえらなににつかってるんだ?