11/04/06 04:32:10.87 PNATdSFk0
>>584
透明窓があったりコンポーネントになってたりしたらうまくいかん。
586:名無しさん@お腹いっぱい。
11/04/06 10:28:13.62 ufVEeoClP
uwsc使用不可なネトゲなんてないですよね?
587:名無しさん@お腹いっぱい。
11/04/06 10:31:28.43 MltQIlY60
UWSCを起動してるとゲームが起動しないってのがなんかあったよ
588:名無しさん@お腹いっぱい。
11/04/06 10:35:57.06 Gl2iME0f0
>>586
けっこうある
589:581
11/04/06 14:01:00.10 xV0+fb4w0
>>583
ありがとう
自分が使いたいネトゲは仮想だとプレイできないんです..
逆でもできますかね
590:名無しさん@お腹いっぱい。
11/04/06 19:50:41.57 /S48kY8i0
>>590
理屈を考えてみろよ
591:名無しさん@お腹いっぱい。
11/04/06 20:05:39.27 dqh7ncND0
>>590
頑張れ
592:名無しさん@お腹いっぱい。
11/04/06 20:07:17.17 /S48kY8i0
>>591 あらいやだ。 オーバーフローしますた ノノノ
593:名無しさん@お腹いっぱい。
11/04/07 13:34:21.73 RxALrKwf0
procedure test()
fukidasi("test")
fend
while true
test()
sleep(0.5)
wend
これ動かすとwhileループ入る前にスクリプトが終了してしまうんですが、原因は何でしょうか。
594:名無しさん@お腹いっぱい。
11/04/07 14:24:12.81 RxALrKwf0
自己解決
後に置かないとダメなのね
595:名無しさん@お腹いっぱい。
11/04/07 14:25:26.22 7On9PLrr0
ヘルプは読もうな
596:名無しさん@お腹いっぱい。
11/04/07 22:47:00.50 DXHRhLqW0
FF14で漁師マクロを作ろうとしているのですが上手くいきません。
釣り糸を垂らしてアタリがあるとコマンド欄の枠がちょっと広がるので、
その広がった枠を画像判定させようとしてみたのですが、
文章がおかしいのか判定がおかしいのか「↓キーを押す」を実行してないようです。
ACW(GETID("FINAL FANTASY XIV","RAPTURE"),200,0,1286,992,0)
while TRUE
ifb PEEKCOLOR(849,885) = $C1C3C3 then //アタリがあった時のゲージ枠が出現した時
sleep(1)
KBD(VK_DOWN, DOWN,40) //↓キーを押して「釣る」にカーソル移動
KBD(VK_DOWN, UP,30) //↓キーを離す
sleep(1)
KBD(VK_RETURN, DOWN,40) //リターンキーを押して「釣る」を選択
KBD(VK_RETURN, UP,30) //リターンキーを離す
釣り作業予定地
else //枠が出ない時
sleep(5)
Endif //判定終了
wend
597:名無しさん@お腹いっぱい。
11/04/08 01:45:57.78 ks4Tt9ZU0
>>596
1
KBD(VK_DOWN, DOWN,40) //↓キーを押して「釣る」にカーソル移動
sleep(0.1)
KBD(VK_DOWN, UP,30) //↓キーを離す
2
KBD(VK_DOWN) //↓
598:名無しさん@お腹いっぱい。
11/04/08 18:05:27.36 OjqCEka70
>>597
動きました
御指導ありがとうございました
599:名無しさん@お腹いっぱい。
11/04/08 18:16:05.43 Fc5gmSPI0
メイプルストーリーのピラミッドマクロで
Fがテレポート
Vがヒール
NがHP回復
MがMP回復
そのボタン配置でマクロのスクリプトの作り方がわかりません。
どなたか作っていただけませんか?
お願いします。
600:名無しさん@お腹いっぱい。
11/04/08 18:30:17.79 +4DaRd/T0
>>599
ピラミッドマクロくらいならネット落ちてる
そもそもお前勉強する気ねぇだろwwwww
601:名無しさん@お腹いっぱい。
11/04/08 18:32:56.74 8OVS6MFr0
>>595
ヘルプに書いてないぞ
602:名無しさん@お腹いっぱい。
11/04/08 20:16:18.98 xUY9fcWU0
>>601
「関数の定義」のところに書いてあるよ
><関数の定義>
> ※ 関数はメインルーチンの後に書いて下さい。
> (メインルーチンは関数前までであり、関数後にメインルーチンを書いても実行されません)
603:名無しさん@お腹いっぱい。
11/04/08 20:19:36.73 xUY9fcWU0
まあとんでもない糞仕様だよね
604:名無しさん@お腹いっぱい。
11/04/08 22:59:59.35 8OVS6MFr0
>>602
そこか、なるほど。
605:名無しさん@お腹いっぱい。
11/04/09 00:09:03.52 oHTb27s10
599の物ですが、どうしても作れないのでお願いします。
606:名無しさん@お腹いっぱい。
11/04/09 00:30:43.99 14fTLDrO0
出来てるとこまであげてみ
607:名無しさん@お腹いっぱい。
11/04/09 00:32:09.61 B3RgossG0
>>2
> 「○○作って下さい」→ 依頼スレじゃありません。
608:名無しさん@お腹いっぱい。
11/04/09 00:51:36.15 oHTb27s10
599と605は自分でやること諦めて
URLリンク(makuroman.blog94.fc2.com)
こいつからでも買っとけ(笑)
ちなみに俺はこいつに売ってもらい毎日ピラミッド放置で稼いでる☆
609:名無しさん@お腹いっぱい。
11/04/09 00:51:44.49 oHTb27s10
599と605は自分でやること諦めて
URLリンク(makuroman.blog94.fc2.com)
こいつからでも買っとけ(笑)
ちなみに俺はこいつに売ってもらい毎日ピラミッド放置で稼いでる☆
610:名無しさん@お腹いっぱい。
11/04/09 01:04:09.29 eviBn5dS0
地震前ならスルーできたけど、なんかスゲームカツク自分がいる…
611:名無しさん@お腹いっぱい。
11/04/09 01:08:22.72 B3RgossG0
w
612:名無しさん@お腹いっぱい。
11/04/09 01:43:48.50 oHTb27s10
599と605の物です。
僕はUWSCというやつで記録してマクロしていましたがピラミッドだと3分記録したはずなのに
2分30秒で終わったりして時間が合いません。
なので誰かおしえていただけたらと思っています。
613:名無しさん@お腹いっぱい。
11/04/09 01:43:56.48 oHTb27s10
599と605の物です。
僕はUWSCというやつで記録してマクロしていましたがピラミッドだと3分記録したはずなのに
2分30秒で終わったりして時間が合いません。
なので誰かおしえていただけたらと思っています。
614:名無しさん@お腹いっぱい。
11/04/09 11:53:27.12 JGDPvqkQ0
こりゃどういう自演なんだ?
615:名無しさん@お腹いっぱい。
11/04/09 13:35:36.59 mabctlI00
ID:oHTb27s10
616:名無しさん@お腹いっぱい。
11/04/09 14:37:13.07 U4/Ili1P0
マクロを売りたいから作ってくださいってことか
617:名無しさん@お腹いっぱい。
11/04/09 14:57:51.17 Eiv3foUwP
なるほどそういう事か
死ねばいいのにね
618:名無しさん@お腹いっぱい。
11/04/09 20:03:51.92 5hMUfEUI0
みんな、もう少しスルーだ
久々の痛い逸材だ、楽しもうぜ
619:名無しさん@お腹いっぱい。
11/04/10 17:36:04.98 DWfU3x9f0
スルーしたら楽しめないだろ
ちゃんとレス付けてあげなきゃ
620:名無しさん@お腹いっぱい。
11/04/10 18:59:20.09 QMSVt8wO0
DEF_DLLについて教えてください。
2010VB.netで
Public Class Class1
Public Function A() As String
Return "テスト成功!"
End Function
End Class
のみのTest.DLLを作成し、それをUWSファイルと同じフォルダに入れて
DEF_DLL A():string:Test.DLL
print A()
とやってみたのですが NULL としか表示してくれません。
今まであまりDLLを使うことはなかったけれども、なんでNULLを表示するのでしょうか?
よろしくお願いします。
621:名無しさん@お腹いっぱい。
11/04/10 19:48:51.87 lJZPf4RN0
ぬるぽーーーーー
622:名無しさん@お腹いっぱい。
11/04/10 22:29:27.60 ICekZUeP0
がっーーー
これ何て発音だろ???
623:名無しさん@お腹いっぱい。
11/04/13 12:08:06.31 CA3sVpNS0
firefoxでmouseorg(,2)指定だとBTN、KBD使えないなー
と思ってスレ見に来たら>>566,569,576で出てた
やっぱ無理なのね
624:名無しさん@お腹いっぱい。
11/04/13 17:10:10.86 N/tb5+Pq0
>>620
VB.NETで吐くコードは.NET Framework上じゃないと動かない。
てゆうかUWSCが.NET Frameworkに勝るものなんて1つもないんだから全部VBで書けばいいのに。
625:名無しさん@お腹いっぱい。
11/04/13 17:14:30.12 v1Zenszti
>>624
vbで比較して、他プログラムのウィンドウ制御は同じ程度に出来るの?
メニュー項目へのアクセスやら、ボタンのテキスト取得や、ドラッグ&ドロップ等々
626:名無しさん@お腹いっぱい。
11/04/13 22:38:56.96 qzGj6cSJ0
できる
627:名無しさん@お腹いっぱい。
11/04/14 06:29:36.28 1ZehtnP10
>>625
UWCSなんてWindows APIの出来の悪いラッパーみたいなもんなんだから
.NET Frameworkでできないわけないだろ。
628:名無しさん@お腹いっぱい。
11/04/14 13:37:17.52 JcJwElNs0
Chromeでマクロ実行しながらsleipnirで他の作業をしたいのですが、
MOUSEORGを使用することで可能になるというのを見つけ、
MOUSEORG(id, 2)は、MOUSEORG(id, 0)でもいいが、
"0"だと強制的に操作対象のウィンドウがアクティブになってしまう
となっておりましたので2にしたところ、裏で作業しててもマクロ実行側がアクティブになってしまいます。
どのように対処したら宜しいでしょうか?
他の対処法はありますでしょうか?
629:名無しさん@お腹いっぱい。
11/04/14 19:41:00.94 nNVecxcD0
>>627
スクリプト言語全般を否定ですか?
630:名無しさん@お腹いっぱい。
11/04/14 20:36:42.03 x7W7EX3M0
>>628
仮想で動かせ
631:名無しさん@お腹いっぱい。
11/04/14 21:19:45.41 1ZehtnP10
>>629
ごめん意味わかんない。
632:名無しさん@お腹いっぱい。
11/04/15 03:54:49.07 /G3KVCHf0
>>624
Vista以降なら.NET Frameworkは標準搭載だからいいかもしれんな。
問題はバージョン。
633:名無しさん@お腹いっぱい。
11/04/15 07:36:54.68 Dg09tSY30
「ID」と「タイトル」が同じダイアログが2 つ存在する時、切り分けってどうしたら良いでしょうか。
一例です。
秀丸エディタで、既に存在するファイル名で保存すると、既に存在する旨のメッセージダイアログが出ます。
この時、「名前を付けて保存」ダイアログと「メッセージ」ダイアログの ID とタイトルが同じなのです。
自動記録では、以下でした。
ACW(GETID("名前を付けて保存","#32770"),229,187,675,463,0) <- 名前を付けて保存
ACW(GETID("名前を付けて保存","#32770"),817,434,290,222,0) <- メッセージダイアログ
「2 つ目のメッセージダイアログが存在した場合、そのメッセージダイアログのボタンを押す」と言う処理をしようとしています。
634:名無しさん@お腹いっぱい。
11/04/15 07:40:40.43 Dg09tSY30
>>633
訂正
× 「ID」と「タイトル」
○ 「タイトル」と「クラス」
です。
635:名無しさん@お腹いっぱい。
11/04/15 08:51:12.59 Dg09tSY30
>>634
自己解決できそうです。
URLリンク(www3.bigcosmic.com)
レス汚しすいません。
636:名無しさん@お腹いっぱい。
11/04/20 11:08:56.21 I6VLD9wj0
While True
ifb PEEKCOLOR(25,335) = $CFCFCF or PEEKCOLOR(25,335) = $B0B0B0 or PEEKCOLOR(25,335) = $FFFFFF then
KBD(VK_Z,DOWN)
else
KBD(VK_Z,UP)
Endif
Wend
上記のはZキーだけを叩くものですが、
これを色判定条件は同じでZキーとAキーを交互に叩くようにするにはどうすればいいでしょうか?
637:名無しさん@お腹いっぱい。
11/04/20 12:07:09.99 qEj91tsg0
>>636
Dim VKey = VK_Z
while true
KBD(VKey)
ifb VKey = VK_Z
VKey = VK_A
else
VKey = VK_Z
endif
sleep(1)
wend
638:名無しさん@お腹いっぱい。
11/04/20 14:24:02.40 I6VLD9wj0
>>637
できました。ありがとうございます^^
639:名無しさん@お腹いっぱい。
11/04/20 23:00:20.51 jO6T61Fm0
while true
ACW(GETID("○○○),133,11,1050,974,0)
IFB CHKIMG("①.bmp")= TRUE THEN
ELSE
BTN(LEFT,CLICK,800,371,250)//再選出ボタンを押すスクリプト
ENDIF
Ifb chkimg("②.bmp") = true then
BTN(LEFT, CLICK, G_IMG_X+200, G_IMG_Y+40,100)
endif
Ifb chkimg("③.bmp") = true then
BTN(LEFT, CLICK, G_IMG_X+RANDOM(10), G_IMG_Y+RANDOM(10))
endif
Ifb chkimg("夢試合開始!2.bmp") = true then
BTN(LEFT, CLICK, G_IMG_X+RANDOM(10), G_IMG_Y+RANDOM(10))
endif
wend
①が出るまで左クリックをし、見つかれば②、③の作業に移りたいのですが、
①が出た後は常に②、③の作業をループしたい(①はもう見つけなくてもよい)したいとき
どういったスクリプトの組み方をすれば宜しいのでしょうか?
行き詰まってしまったのでご教授御願い致します。
640:名無しさん@お腹いっぱい。
11/04/20 23:32:29.66 jO6T61Fm0
自己解決、簡単なミスでした、申し訳ありません。
641:名無しさん@お腹いっぱい。
11/04/22 01:20:48.59 sGUpvqgm0
chkimgでの画像判定ですが、画像が認識される時とされない時があって困ってます。
10*10くらいの小さな画像なのですが、小さすぎると認識に失敗することがあるのでしょうか?
642:名無しさん@お腹いっぱい。
11/04/22 02:09:54.97 D1Vkkmmg0
1ドットでもちゃんと動くので微妙に色が変わってるとかじゃないだろうか
643:名無しさん@お腹いっぱい。
11/04/22 02:46:36.41 kU+vUJli0
最近覚え始めたんですが、裏で動かすためにmouseorgを使おうと思ってますが
うまくいきません。
id=GETID("新しいテキスト ドキュメント (2) - メモ帳","Notepad")
ACW(id,-8,-8,1936,1056,0)
MOUSEORG(id,2)
while 1
BTN(LEFT,click,1266,93,109)
KBD(VK_A,CLICK,359)
KBD(VK_A,CLICK,219)
KBD(VK_A,CLICK,187)
MMV(1269,94,78)
wend
バックグラウンドでメモ帳にひたすらaaaを入れるだけのものなのですがどこが悪いか
アドバイスお願いします
idのとなりを0や1にするとうまくいくけど2だと反応しません
644:名無しさん@お腹いっぱい。
11/04/22 04:22:40.47 NkGZRzTn0
>>643
id=GETID("メモ帳")
MOUSEORG(GETCTLHND(id,"Edit"),2)
while 1
KBD(VK_A,CLICK,100)
wend
645:名無しさん@お腹いっぱい。
11/04/22 12:51:35.73 kU+vUJli0
>>644
ありがとうございます。一つ勉強になりました。
646:名無しさん@お腹いっぱい。
11/04/22 15:10:30.95 brg2zLT60
いつも参考にさせていただいてます。
以下のスクリプトの組み方を教えていただけナでしょうか。
①「画像A」が出るのを待つ
②出たら「1」のキーを押す
③数秒から数分で「画像B」が出るので待つ
④出たら「2」のキーを押す
※画像Aと画像Bは画面に出たままだが、もう押さない
⑤数秒から数分で「画像C」が出るので待つ
⑥出たら「3」のキーを押す
⑦画像A・B・Cが消えるので①に戻る
よろしくお願いします。
647:名無しさん@お腹いっぱい。
11/04/22 15:13:29.36 DgOL/gJc0
参考にした結果どこまでできたん?
648:名無しさん@お腹いっぱい。
11/04/22 15:38:26.54 Rbjr3RvM0
>>646
> ①「画像A」が出るのを待つ
> ②出たら「1」のキーを押す
> ③数秒から数分で「画像B」が出るので待つ
> ④出たら「2」のキーを押す
> ※画像Aと画像Bは画面に出たままだが、もう押さない
> ⑤数秒から数分で「画像C」が出るので待つ
> ⑥出たら「3」のキーを押す
> ⑦画像A・B・Cが消えるので①に戻る
組み方ってのはコレ自体の事。
この次やることは単に関数調べて書き写すだけ。
頭使わない単純作業。
そんなもの自分でやれ。
649:名無しさん@お腹いっぱい。
11/04/23 21:42:07.67 6YOXa8ZZ0
while true
ACW(GETID("Google Chrome","Chrome_WidgetWin_0"),133,11,1050,974,0)
KBD(VK_NEXT,CLICK,40)
Ifb chkimg("1.bmp") = true then
sleep(181)
endif
Ifb chkimg("2.bmp") = true then
BTN(LEFT, CLICK, G_IMG_X+150, G_IMG_Y+10,100)
endif
Ifb chkimg("3.bmp") = true then
BTN(LEFT, CLICK, G_IMG_X+RANDOM(10), G_IMG_Y+RANDOM(10))
wend
調べたのですが、中々見つけることが出来ないので質問させて下さい。
指定の画像が現れた場合にバックグラウンドでクリックを実行するということは可能でしょうか?
MOUSEORGを使用するところまではわかったのですが、その先が・・・
お願い致します。
650:名無しさん@お腹いっぱい。
11/04/23 21:47:16.14 WTYNWcLE0
画像の出る場所もバックグラウンドなら不可能
651:名無しさん@お腹いっぱい。
11/04/23 22:09:12.38 6YOXa8ZZ0
>>650
ありがとうございます。
id=GETID("Google Chrome")
MOUSEORG(GETCTLHND(id,2))
while true
Ifb chkimg("A.bmp") = true then
BTN(LEFT, CLICK, G_IMG_X+RANDOM(10), G_IMG_Y+RANDOM(10))
endif
Ifb chkimg("B.bmp") = true then
BTN(LEFT, CLICK, G_IMG_X+RANDOM(10), G_IMG_Y+RANDOM(10))
endif
Ifb chkimg("C.bmp") = true then
BTN(LEFT, CLICK, G_IMG_X+RANDOM(10), G_IMG_Y+RANDOM(10))
endif
wend
上記の状態だとクリック時にマウスポイントが移動し
アクティブ状態になってしまいます・・・
これを非アクティブで実行するにはどうしたら宜しいでしょうか?
もちろん画像は見える状態にあります。
652:名無しさん@お腹いっぱい。
11/04/23 22:57:15.99 HDl2pAxn0
>>651
クリック=アクティブ化
653:名無しさん@お腹いっぱい。
11/04/23 23:15:07.85 kr3w3hsZ0
非アクティブクリックは出来る
654:名無しさん@お腹いっぱい。
11/04/23 23:38:39.36 6YOXa8ZZ0
>>653
是非ご教授願いたい
655:名無しさん@お腹いっぱい。
11/04/25 19:35:22.03 jsRtYAq90
今日UWSCをDLしたばかりの初心者です。質問に答えていただけるとうれしいです。
1つ目:UWSCでキーボードの↑(Pg Up)と↓(Pg Dn)とAを同時に押すことは可能でしょうか
2つ目:例として KBD(VK_RIGHT,DOWN,500) を挙げるとします。
VKとかなんでしょうか。
RIGHT,DOWNとはどこのキーでしょうか。
なかなか調べてもキーや言語については書いておらず、困っております。
ぜひわかりやすい回答をよろしくお願いします。
656:名無しさん@お腹いっぱい。
11/04/25 19:52:44.01 LXyFlfS/0
down キーを押しっぱなし
up で戻す
click で普通に押す
組み合わせれば同時押しができる
vk_A Aボタン押す
right はカーソルの右
ヘルプ読んで後はネットで調べるそれでわからなければここで聞けばいい
657:名無しさん@お腹いっぱい。
11/04/26 11:09:45.35 B0OZFNNp0
次は1111ですよ!!!!
魔法少女まどか☆マギカ 第1110話
スレリンク(anime2板)
658:名無しさん@お腹いっぱい。
11/04/27 18:11:34.36 f5XMQTIb0
フリー版ですが、スクリプトが再生、スケジュールのどちらで起動されているかを得る方法はありますか?
659:名無しさん@お腹いっぱい。
11/04/27 21:53:28.64 lcY/5+Xo0
>>658
知らないけどスケジュールの方でコマンドラインオプション使えるならそれの有無で
660:名無しさん@お腹いっぱい。
11/04/28 11:34:29.35 WUQnwKcg0
F3キーを押したいんですけど
KBD(VK_F3,click)
じゃ無理だったのですが
押し方教えてもらえませんか
661:名無しさん@お腹いっぱい。
11/04/28 14:11:31.33 vFhukH4p0
>>660
URLリンク(www.geocities.jp)
662:658
11/04/28 14:24:10.79 LtzVx3ZJ0
>>659
遅くなりましたが、ありがとうございます。
その方法でやってみます。
663:名無しさん@お腹いっぱい。
11/04/30 18:57:50.26 32Rd07IC0
UWSCで、開き済みのEXCELから「検索」ってできますか?
.Cells(y,x).Value = "A"のように、セル自体に読み書きまでは出来てますが、
それ以上のことは出来てません。できれば、検索して完全一致があればその座標を入手、
完全一致がなければ「なかった」ことを知りたいです。
判る方、ご教授宜しくお願いします。
664:名無しさん@お腹いっぱい。
11/04/30 19:39:07.42 eZ2yNS1b0
>>663
VBAじゃだめなの?
Excelファイルにコード埋め込めないなら、アドインにしちゃうとか
665:名無しさん@お腹いっぱい。
11/04/30 19:40:33.61 U1T3CdW50
>>663
条件抽出できるExcel関数をそのセルに書き込んで結果を得るとか
666:名無しさん@お腹いっぱい。
11/04/30 22:42:36.75 Lz9PHktt0
複数のIDであるサイトに順番にログインし、同じ動作を実行させたい。
下記Aのようにすると動作を何箇所も修正するのが面倒なので、Bのようにできますか?
可能でしたらどのようにすれば良いのかお願いします。
A ID1
動作
ID2
動作
ID3
・
・
・
B ID1
ID2
ID3
・
・
・
動作
667:名無しさん@お腹いっぱい。
11/04/30 22:53:26.60 0hS3NNEM0
>>666
PROCEDURE
668:名無しさん@お腹いっぱい。
11/05/02 11:04:53.85 qBRsL1H/0
お世話になります。
テンキーの「0」を1秒間隔でずっと押させつつ、
画面にAの画像が出たら画像をクリック。
これをループさせたいのですが、下記のように記述しても動いてくれません。
どこが間違っているのでしょうか?
thread A()
thread B()
While 1
sleep(0.1)
Wend
procedure A()
While 1
Sleep(1)
KBD(VK_NUMPAD0,CLICK,)
Wend
fend
procedure B()
While 1
IFB CHKIMG("A.bmp",-1 )
Sleep(1)
BTN(LEFT,DOWN,G_IMG_X+96,G_IMG_Y+99)
Sleep(1)
BTN(LEFT,UP)
ENDIF
Wend
fend
669:名無しさん@お腹いっぱい。
11/05/02 11:18:54.79 01KJj1Qr0
過去ログから見ると、同じような質問が続いてるなぁ。
しかも、自分で書いておきながら自分のロジックがわからないというものばかり。
単なるこぴぺスクリプターにありがち。成長してくれない。
…同じゲームのスクリプトを分割して聞いていても不思議ではない。
670:名無しさん@お腹いっぱい。
11/05/02 16:37:03.35 7SLqK3kT0
ゲームをスクリプトで補助させるのって、それ楽しいのかな、、といつも思う。
> 1秒間隔でずっと押させつつ
正直ニホンゴが意味わからん。
つーか、どこの行でダメなのか、くらいは自分で追い込もうぜ。
fukidasiでもPRINTでもいいから、ログとりながらデバッグすりゃあできるっしょ。
671:名無しさん@お腹いっぱい。
11/05/03 22:36:49.05 TOMSdzPx0
UWSC proでEXE化されたファイルからUWSファイルを取り出す事って出来ますか?
672:名無しさん@お腹いっぱい。
11/05/03 23:33:56.70 lzlWmIAX0
ゲームとかでの座標認識ってどうやるんですか?
サイト探しまくったんですけどどこにも乗ってないです。
673:名無しさん@お腹いっぱい。
11/05/03 23:41:41.19 K/oATwn20
ん?
674:名無しさん@お腹いっぱい。
11/05/03 23:53:32.91 P1jCGFNh0
座標は、ゲーム画面でそれっぽいところ動かすのを記録して
保存して、ファイル開けばだいたいわかる。
画像使う場合はCHKIMGとか使えばいいし
675:名無しさん@お腹いっぱい。
11/05/04 04:32:41.34 +YeOY92h0
>>672
全画面またはゲーム画面の左上から何ドットかは普通にわかる
ゲーム内でのそのゲーム特有の座標とかは判るわけがない
どうも後者を要求されてる気がする 前者を探しまくってわからないとかありえないし
676:名無しさん@お腹いっぱい。
11/05/04 07:10:21.56 Lkfr5Qr/0
おおおお
ありがとうございました!!!!
677:名無しさん@お腹いっぱい。
11/05/04 09:08:54.76 ZO72V00x0
後者でも前者との位置関係から割り出せるでしょ
678:名無しさん@お腹いっぱい。
11/05/04 09:55:57.41 AHgCiz+A0
後者ってウィンドウ外まで広がるゲームマップの何処かっていう座標だろ
679:名無しさん@お腹いっぱい
11/05/04 13:20:58.46 5+/6h24a0
メイプルストーリーでマクロやってる人いませんか?
もしよければマクロでログインするときどうやって
パスワード欄に文字を打ち込んでるか教えてほしいんですが・・
sentstrとかKBD関数で打ち込めないんです
680:名無しさん@お腹いっぱい
11/05/04 13:34:40.85 5+/6h24a0
すいません誤字です
sentstrじゃなくてsendstrです
681:名無しさん@お腹いっぱい。
11/05/04 15:07:47.36 CCPjytin0
> パスワード欄に文字を打ち込んでるか教えてほしいんですが・・
> sentstrとかKBD関数で打ち込めないんです
>>2
●質問したい方へ。
「○○作れますか?」→ スクリプトを期待するのはお門違い。作れるか作れないか教えてくれる人はいるかも。
「○○が作りたい」→ 自分作ればいいんじゃない?
「○○作って下さい」→ 依頼スレじゃありません。
過去ログを見る、検索する等、自分で出来る事を書き込む前にするように。
自力で作ったのを晒すか、具体的な解らない場所を提示して、改善点や解決策を求めるようにしましょう。
682:名無しさん@お腹いっぱい。
11/05/04 19:59:28.41 wzOMUAlp0
>>671
もってないからよくわかんないけどたぶんEXE化は
エンジン+スクリプトの構成のはずだからバイナリエディタ使えれば不可能ではない
683:名無しさん@お腹いっぱい。
11/05/05 10:53:17.33 KWLdYo9I0
>>681
IDの入力は問題ないんですけどメイプルのパスワード入力欄が特殊だと思うんで
なにかヒントとなるような助言でも頂ければと思ってます><
684:名無しさん@お腹いっぱい。
11/05/05 12:36:30.03 kQwnCdgV0
ゲームチートに使う奴ネトゲ板とか裏技板とかで別スレ立ててやってくんないかな。
そもそも低レベルで自助努力ナッシングな質問ばかりだし、まともな用途に使ってる
人間としてはウゼエこと限りないんだが。
685:名無しさん@お腹いっぱい。
11/05/05 13:51:21.44 xWeC0mco0
マクロにまともも糞もないけど低レベルなのは確かだわ
686:名無しさん@お腹いっぱい。
11/05/05 17:57:07.42 /PNt3n6G0
UWSC自体が糞処理系だから仕方ない
687:名無しさん@お腹いっぱい。
11/05/05 18:03:17.26 KWLdYo9I0
ところでretってなんですか?
688:名無しさん@お腹いっぱい。
11/05/05 19:03:29.90 ptYc63U80
>>684
カナッシングな質問ふいた
689:名無しさん@お腹いっぱい。
11/05/05 20:59:27.18 W1f6vZlh0
特定の場所をクリックさせたいんですがうまくいきません。
KBD(VK_ESC,DOWN,80)
SLEEP(2)
ifb CHKIMG("a.bmp",-1)
x=G_IMG_X
y=G_IMG_Y
MMV(X,Y,80)
ENDIF
SLEEP(1)
BTN(LEFT,CLICK,X,Y,80)
SLEEP(1)
BTN(LEFT,CLICK,X,Y,80)
KBD(VK_ESC,UP,80)
690:名無しさん@お腹いっぱい。
11/05/05 21:12:08.45 KWLdYo9I0
画像は問題ないの?
ifb~endifをループで囲んでbreak入れれば?
691:名無しさん@お腹いっぱい。
11/05/05 21:45:58.53 xWeC0mco0
xyって大丈夫なの?
692:名無しさん@お腹いっぱい。
11/05/06 06:38:18.95 l+r+xGqX0
>>689
XとYの座標って絵の左上だから
XとYの座標に+5するとか。
あとどんな作業してるのかわからないけど
ボタンのクリックはENDIFの内側に入れるんじゃないの?
あとはループで囲うとかかな。
詳細が良くわからないので頓珍漢なアドバイスかもしれないけど
693:名無しさん@お腹いっぱい。
11/05/06 11:35:56.64 nxcWJScI0
ウィンドウの特定の入力欄に英数字を入れたいんですがうまくいきません。
直前のID欄の入力までは出来て、タブキーを押してパスワード入力欄をアクティブにした状態でやりました
一応マウス操作でパスワード欄をアクティブにしたりもしましたが出来ませんでした
click部分をdown,upに分けたり、
KBDとKBDの間にsleep(1)を入れたり、
40の部分を1000にしたりもしましたが出来ません
sentstrで変数や英数字などをウィンドウidをちゃんと取得した状態でやりましたができません
(そもそもID欄とPW欄にコピペできない仕様なので無理だと思います)
それとなぜかID欄では半角状態では入力できないみたいです、
なのでIDは全角で「お」を打ち込んで変換で半角数字にしました
KBD(VK_o,CLICK,40)
KBD(VK_1,CLICK,40)
KBD(VK_5,CLICK,40)
KBD(VK_7,CLICK,40)
sleep(0.8)
KBD(VK_RETURN,CLICK,40) //エンターキーでログインします
パスワード欄は強制的に半角入力になるみたいです
694:名無しさん@お腹いっぱい。
11/05/06 11:40:25.08 nxcWJScI0
ID入力は「お」という文字に事前にIDの数字を辞書登録した状態でやりました
KBD(VK_O,down,40) //「お」キーです
KBD(VK_O,up,40) //「お」キーです
KBD(VK_space,down,40) //変換キーです
KBD(VK_space,up,40) //変換キーです
sleep(0.8)
ログイン() //複数IDでログインしたいので「お」の後ろに条件に応じて数字を打ち込むようにしてますがパスワード欄の入力には影響はないです
sleep(0.8)
KBD(VK_space,down,40) //ログイン()も全角で入力なので変換で半角にします
KBD(VK_space,up,40) //ログイン()も全角で入力なので変換で半角にします
sleep(0.8)
KBD(VK_RETURN,CLICK,40) //全角入力なのでエンターキーで確定します
KBD(VK_TAB,down,40) //パスワード欄に移るタブキーです
KBD(VK_TAB,up,40) //パスワード欄に移るタブキーです
sleep(0.8)
~ここからパスワードの入力~
KBD(VK_o,CLICK,40)と続きます
たぶん全角でないと入力できないんだけどパスワード欄では半角入力になってしまう
この問題を解決する助言をください
695:名無しさん@お腹いっぱい。
11/05/06 18:00:10.05 IS08JZpr0
ディレイ40って0.04秒だからもっとしっかりゆとりを持たせたら?
あとパスワード欄の入力可否はそのソフト依存だと思う
696:名無しさん@お腹いっぱい。
11/05/06 19:36:03.00 nxcWJScI0
>>695
レスどうもです
これと同じようなことをuwscでやってる人がいるので
出来ないことはないと思うんですけど
なにかわかりませんか?
ディレイのところも1000などに変えたりしたんですけど無理でした・・
697:名無しさん@お腹いっぱい。
11/05/06 21:44:51.39 IS08JZpr0
すまん上で書いてたな
698:名無しさん@お腹いっぱい。
11/05/06 21:49:43.70 IS08JZpr0
記録ボタン使ってみたら?
記録→保存→動作確認→中身を簡素化する
でいいかと
699:名無しさん@お腹いっぱい。
11/05/06 22:11:03.11 9RnaXZtt0
>>693
辞書とかパスワードに影響ないとか、正直何したいのか分かり辛い。
入力段階ごとにIDとパスワードの状態を例として示した方が良いよ
700:名無しさん@お腹いっぱい。
11/05/07 00:12:30.26 mHIAImGa0
メイプルストーリー
…自動ログインで多重ログインか…ひどいもんだ。
701:名無しさん@お腹いっぱい。
11/05/07 00:32:43.15 uxg9/bzD0
>>694
URLリンク(scripts.web.fc2.com)
自動ログインスクリプト。
先にIDとパスワードのテキストファイル(MSLogin.dat)を作っておく必要がある。
-- MSLogin.dat ここから--
MapleStory ID List
名前, ID, パスワード // この行は変更してもかまいません。データは次の行から開始。
漢字名(表示用),ID,pass,メモ
-- MSLogin.dat ここまで--
KBD()で入力する場合はシフトとか特殊文字の処理が必要。
// UNICODE?文字を、キー送信用ASCIIキーコードに置き換える
Function CnvCCode( char )
if !CHKNUM(char) Then char = STRCONV(char, SC_UPPERCASE)
select char
case "."
code = VK_OEM_PERIOD
case "@"
code = VK_OEM_3
default
code = ASC(char)
selend
result = code
Fend
702:名無しさん@お腹いっぱい。
11/05/07 00:34:42.23 uxg9/bzD0
// Webページの入力コントロールにデータをセットする
Procedure InputData( ID, Info[], Data )
Select Info[ID_Type]
case ID_TEXT // テキスト
SENDSTR( ID, Data, Info[ID_No], true, true )
case ID_CLIP // クリップボード経由でテキストを貼り付け
SendStr( 0, Data )
SENDSTR( ID, "", Info[ID_No], true, true )
SCKey( ID, VK_SHIFT, VK_END )
sleep( 0.03 )
SCKey( ID, VK_CTRL, VK_V )
case ID_CLICK // クリック
CLKITEM( ID, Data, CLK_ACC or CLK_SHORT or CLK_CONTINUE )
case ID_KBD // 手入力エミュ
SENDSTR( ID, "", Info[ID_No], true, true )
SCKey( ID, VK_SHIFT, VK_END )
sleep(0.1)
for j = 1 to length(Data)
sleep(0.03)
SCKey( ID, CnvCCode(Copy( Data, j, 1 )) )
next
sleep(0.2)
case ID_LIST // リスト選択
CLKITEM( ID, Data, CLK_ACC or CLK_SHORT or CLK_CONTINUE )
sleep(0.1); SCKey( ID, VK_TAB )
sleep(0.1); SCKey( ID, VK_UP )
sleep(0.1); SCKey( ID, VK_DOWN )
default
msgbox("i:" + " No." + Info[ID_No] + " Data:" + Data )
Selend
Fend
703:名無しさん@お腹いっぱい。
11/05/07 00:44:22.39 uxg9/bzD0
PUBLIC ID_NONE = 0
PUBLIC ID_TEXT = $10 // テキスト(貼り付け)
PUBLIC ID_KBD = $11 // キー入力をエミュ(ASCII文字限定)
PUBLIC ID_CLIP = $12 // クリップボードから貼り付け
PUBLIC ID_CHKBOX = $20 //
PUBLIC ID_LIST = $30 // リストを選択
PUBLIC ID_LISTCsr = $31 // カーソルキーによる選択
PUBLIC ID_CLICK = $40 //
PUBLIC ID_Type = 0
PUBLIC ID_No = 1 // テキストボックス, チェックボタンの番号
PUBLIC ID_Key = 2
PUBLIC HASHTBL Data
================
Dim GooP[][2] = _
_ // タイプ、番号、キー
ID_TEXT, 2, "ID", _
ID_TEXT, 3, "パスワード", _
ID_TEXT, 4, "パスワード", _
ID_TEXT, 5, "漢字姓", _
ID_TEXT, 6, "漢字名", _
ID_CLICK, 0, "性別", _ //(選択不可能)
ID_LIST, 0, "生年", _
ID_LIST, 0, "生月", _
ID_TEXT, 13, "", _ //手入力なのでラスト
"", "", "" // dummy
s = //データの準備
InputData( ID, GooP[i], s ) // データの入力
>>701-702 にこんな感じで定義したやつをぶち込む
704:名無しさん@お腹いっぱい。
11/05/07 14:27:44.63 eurEFH6h0
>>701-703
レスありがとうございます!
参考にさせていただきます
705:名無しさん@お腹いっぱい。
11/05/11 19:26:37.29 BXjDl7Fe0
g
706:名無しさん@お腹いっぱい。
11/05/17 18:35:31.01 UGhxi4pW0
So-netのポイントポンというゲームを自動でやりたいのですが、
SWFを認識してクリックすることって出来ますでしょうか?
このサイトです。
URLリンク(www.so-net.ne.jp)
707:名無しさん@お腹いっぱい。
11/05/17 19:57:43.12 +1xad/lQ0
できますよ
708:名無しさん@お腹いっぱい。
11/05/17 21:03:31.59 D0y9Fx350
>>706-707
見事なまでのテンプレだな。
709:名無しさん@お腹いっぱい。
11/05/17 22:07:48.63 UGhxi4pW0
>>707
どうやってやればいいのでしょうか?
ご教授いただければ・・。
710:名無しさん@お腹いっぱい。
11/05/17 22:09:43.86 UGhxi4pW0
CHKIMGではBMPしか駄目みたいなので、他にどういうアプローチが
あるか教えていただけるとうれしいです。
711:名無しさん@お腹いっぱい。
11/05/18 05:30:38.30 m+Qpbqgg0
>>710
BMPで十分だろ
それが気に入らんならMSAAで直接flashの操作するといい
712:名無しさん@お腹いっぱい。
11/05/18 13:22:28.74 iywQxWyC0
>>706って会員登録しないとダメなのかw
面倒だから見てないけど、この手のゲームだったらCHKIMGを使うのが1番確実だよ。
スクリーンショットとペイントだけで十分だ。
713:名無しさん@お腹いっぱい。
11/05/18 18:31:24.99 6WrbT/z10
調べても分からないので教えて下さい。
アクティブウインドウでは指定した所をクリックするのですが、
バックグランド(最小化)の時は違う所をクリックしてしまいます
両方で同じ場所(座標)をクリックするには、
どのようにすれば良いでしょうか?
wnd_id = GETID("○○○)
MOUSEORG(wnd_id, 2)
MMV(1100,585,1500)
BTN(LEFT,CLICK,1100,585,30)
714:名無しさん@お腹いっぱい。
11/05/18 18:35:02.50 mKLDAazC0
>>712
ありがとうございます。
これは一旦スクリーンショットをBMPとして保存して
それと照合させるってことですか?
715:名無しさん@お腹いっぱい。
11/05/19 08:56:01.85 IZxJh+aQ0
スクリーンショットで撮った画像を必要な部分だけ切り取る。
それをCHKIMGで探させてクリックさせる。
ifb CHKIMG("画像.bmp")
BTN(LEFT, CLICK, G_IMG_X+10, G_IMG_Y+20)
endif
画面上に"画像.bmp"があったら、その画像の左上から
右(X)に10ピクセル、下(Y)に20ピクセルの部分をクリックするというもの。
基本中の基本です。
716:名無しさん@お腹いっぱい。
11/05/19 09:23:24.83 T1Div3Tj0
ググってすらねーだろ
717:名無しさん@お腹いっぱい。
11/05/19 09:33:40.58 v/LFKHK/0
こんな親切なスレだと思わんかったよw
質問する前に試せば良いだろうに。
718:名無しさん@お腹いっぱい。
11/05/19 15:56:48.62 hu5TkwSm0
UWSCで詳細なデバックをしたいと思っています
コマンドプロンプトに返り値などを表示せる方法は無いものでしょうか?
Msgboxだと中断されてしまうので
print でコマンドプロンプトに表示される感じがいいのですが
方法がありましたら教えていただけないでしょうか
よろしくお願い致します
719:名無しさん@お腹いっぱい。
11/05/19 16:00:25.81 FaBEFFZI0
使ってて思ったんだけど他の言語の拡張ライブラリにChkImgとPeekColorを自分で実装したら
UWSC使う必要無くね?
720:名無しさん@お腹いっぱい。
11/05/19 17:15:11.68 BLUQoRtCP
車輪の再発明って知ってる?
敢えて作りたいのなら作ればいいと思うよ
721: 忍法帖【Lv=1,xxxP】
11/05/21 10:58:30.97 BbMPCqlJ0
2ちゃんねるの忍法帖切り替えツールが一応でけた。
こないだ3回目くらいのすいとん食らったときに思い立って複数作ってみたが、
IEへの反映方法がリストアか直接編集しかなくて意外と大変だった。
722:名無しさん@お腹いっぱい。
11/05/21 11:35:34.46 bBt6sr/x0
画像が認証できないのですがなぜでしょうか?
sleep(1)
ifb CHKIMG("ban.bmp",0)
x=G_IMG_X // 画像の座標をxへ代入
y=G_IMG_Y // 画像の座標をyへ代入
BTN(LEFT, CLICK,x,y, 80) // 画像の場所を左クリック
endif
wend
まず一段階でこれをしたいのですが
画像の形式もbmpです。切り取ってやりましたが
作動しません。
お手数ですがzipで準備しました。
暇のある方見てやってください(´・ω・`)
URLリンク(u9.getuploader.com)
723:名無しさん@お腹いっぱい。
11/05/21 12:00:24.99 BbMPCqlJ0
>>722
同じ部分を何度かキャプチャして違いがないか調べてみてください。
見た目で分かればそれでいいし、分からなければ色コードを・・・
同じエリアで切り取ってバイナリの一致をするかどうか見てもいいです。
変化がある場合は変化に対応するオプションが必要です。
(色ではなく形で見るというあれ)
キャプチャするときにJPEGとかで保存するようなソフト使ってないですか?
もし使ってたらその時点で色が変化しているので一致しません。
確実なキャプチャはAlt+PrintScreenです。
(ただし画面の色数によって違ってくるかも)
ビットマップファイルの形式はフルカラーじゃないといけません。
それ以下だと減色されて違う色になります。
もちろん画面の色数もフルカラーじゃないと。
724:名無しさん@お腹いっぱい。
11/05/21 17:36:36.83 bBt6sr/x0
>>723
お忙しい中見て頂いてありがとうございます
色変化してるんですかね
やって見たけどダメでした。もっと扱いに慣れてからこの手に触れようと思います
725:名無しさん@お腹いっぱい。
11/05/21 17:44:31.96 TY+fLqtTi
vistaやwin7だと、管理者で実行してやると解決するかも
726:名無しさん@お腹いっぱい。
11/05/21 18:33:30.38 eBttpOx+0
>>719
UWSCのドキュメントが少なく複雑で謎な言語仕様と戦う必要が無くなるから
ほとんどの人はそうしてる
727:名無しさん@お腹いっぱい。
11/05/21 19:00:45.33 N8mj71oS0
>>726
オーソドックスなBASIC的文法
最近主流のC的文法に慣れてると最初面食らうかもしれない
728:名無しさん@お腹いっぱい。
11/05/21 19:12:09.76 eBttpOx+0
>>727
文法とか以前にインスタンスが作れない名前空間的機能にclassって命名したりどうなの。
あと>>593のこの仕様とかw
競合しているなでしこのほうがまだオブジェクト指向で書けるからいいとオモッタ
でも結局C言語(win32 api)と相性のいいpythonの拡張ライブラリに
自前でChkImgとPeekColor実装したらどっちも使う必要無くなった。
729:名無しさん@お腹いっぱい。
11/05/22 14:30:22.93 4P4zk0BAi
>>728
希望としては、そのライブラリを公開してほしい
730:名無しさん@お腹いっぱい。
11/05/22 20:14:35.77 3zhjDiIw0
調べたのですが、見つからないので質問させてください。
IEを使用したときの接続表示待ちの指定は
while True
if (! IE.busy) and (IE.readyState=4) then Break
sleep(0.1)
だとわかったのですが、chromeを使った際の
接続表示待ちの指定がわかりませんでした。
何か方法はあるのでしょうか?
731:名無しさん@お腹いっぱい。
11/05/22 20:21:51.08 SGY1ppJH0
ありますん
732:名無しさん@お腹いっぱい。
11/05/23 00:12:29.86 ycsCtdl90
なんかファイルを開けないんですが
ドラッグドロップして一回動かさないと読み込みできない
733:名無しさん@お腹いっぱい。
11/05/23 00:32:19.76 ZSCGOBZL0
そうですか
734:名無しさん@お腹いっぱい。
11/05/23 11:12:22.75 ycsCtdl90
exeファイルをmew11で圧縮したのがいけなかったのかな?
735:名無しさん@お腹いっぱい。
11/05/23 11:45:44.84 a3VOAi3w0
>>730
何を持ってページ読み込み完了とするかをまず考える。
736:名無しさん@お腹いっぱい。
11/05/24 07:17:12.13 syW7YMrL0
忍法帳を管理するツール作ったんだけど、なぜかクッキーが消えることがあります。
クッキーに対しては一括読み込みして全行削除して1行書き込みして閉じるという
それだけのことしかしてないんですが。
クッキーは特別な管理がされているのでそれが影響してるのかなと思わなくもありませんが・・
バージョン確認したら4.5a (2009/3/31)だったので最新に差し替えてみます。
問題のツールも置いときますね。
URLリンク(scripts.web.fc2.com)
737:名無しさん@お腹いっぱい。
11/05/25 10:17:33.14 EhgzlpEh0
While True
ifb PEEKCOLOR(511,605) = $0000e6 then//xyが赤の場合↓の場所を左クリック
BTN(LEFT,CLICK,723,758)
else
endif
Wend
↑動かないんです
どこが違ってるか見てもらえませんか?
738:名無しさん@お腹いっぱい。
11/05/25 10:26:45.33 tmfXCBnY0
>>737
BTNが実行されたらマウス座標が移動するけど、それは起こる?起こらない?
あと、座標、色コードはあってる?ちょっとでも違うと反応しないよ。それだと。
あと、Sleep()入れないと相手も動けないよ。
UWSCがCPU占有して重くなると、UIは受け付けなくなるようなゲームも多いからね。
739:736 忍法帖【Lv=2,xxxP】
11/05/25 12:45:37.52 tmfXCBnY0
どうやらクッキーは頻繁に書き換えるとだめらしい。
ある程度、時間を置いてのんびりやるとうまくいくようだ。
それよりJaneの動作がおかしくなった。
仮想マシンを新品に入れ替えてJaneドライブを接続して使っているが、
ログ取得の記録がどうも書き換わらない・・・
あ、そっか。ユーザーを一般ユーザーに変更したからアクセス権がないんだ・・・
ディスクのチェックをする権限もなかったし。
変なアクセス権が設定されてるんだろうな。
740:名無しさん@お腹いっぱい。
11/05/25 12:46:57.64 sktEnkul0
チラ裏でした
741:名無しさん@お腹いっぱい。
11/05/25 15:53:37.01 EhgzlpEh0
ACW(GETID("パチンコ"))
While True
Sleep(1)
ifb PEEKCOLOR(511,605) = $0000e6 then//xyが赤の場合↓の場所を左クリック
KBD(LEFT,CLICK,723,758)
else
endif
Wend
↑此処まで修正しました
やっぱり無反応です。
色はペイント座標は記録からメモ帳で調べてますが、
皆さんはどうやって見てますか?
742:名無しさん@お腹いっぱい。
11/05/25 16:29:49.72 tmfXCBnY0
>>741
ペイント(拡大)とメモ帳で問題ないけど、
色ってシェーディングかかってたら似た色でもコードが違ってくる。
座標がピンポイントで一致しないといけない。
それは大変なので、特にシビアじゃないときには「赤っぽい色」で判定する。
red = color and $FF
green = (color and $FF00) / $100
blue = (color and $FF0000) / $10000
if (80 < red) and (green < 40) and (blue < 40) then 赤っぽい
てな感じで。
数値は適当なので、カラーマップとか見て目で判断する。
括弧つけないとredとgreenの論理積扱いされるかも。
括弧つけると先に不等号判定され、結果がbool値になるので、それを論理積する。
大小判定は直感的に分かるように、大小の方向を一致させるといい。
743:名無しさん@お腹いっぱい。
11/05/25 17:04:08.85 J6WPryn10
勉強になるなぁ
744:名無しさん@お腹いっぱい。
11/05/27 14:35:43.35 rO7PE39G0
>>741
狙ってるところを、何回もスクショとってみて、確認かな。
ずーっと同じ値なら固定値でいい。
バラついてるなら、ばらつき加味してプログラムすべし。
745:名無しさん@お腹いっぱい。
11/05/28 22:29:36.94 sS6Xevt50
画像認証の範囲指定をおしえてください。
Ifb CHKIMG("mp45452.bmp",409,714,1500,1500,) > 0 //MP薬補充
sleep(0.1)
KBD(VK_F8)
endif
範囲指定しなければちゃんと動いています。
後ろの範囲は適当に入れた数値で、もし0,0,1500,1500だったら動作します。
MOUSEORG(0)
↑などもいろいろやってみましたがだめでした。
746:名無しさん@お腹いっぱい。
11/05/28 23:10:57.58 2eEfKVil0
特定の画像を一定の秒数表示された場合にF5を押すマクロを組みたいのです。
ググってみたもののわからなかったので教えて下さい。
747:名無しさん@お腹いっぱい。
11/05/28 23:27:36.07 HiI2w12Y0
>>2
748:名無しさん@お腹いっぱい。
11/06/01 05:47:51.61 ycjsTZmX0
UWSCで書くとコードの再利用性が無いから
せめてclass機能が欲しい
749:名無しさん@お腹いっぱい。
11/06/01 14:06:13.08 6Omdq0pO0
現状はモジュールなのにクラスとか名づけてるのが嫌だし、それはあるなぁ…
あとは配列で
dim list = 1, 2, 3, [4, 5, 6], [aaa:7, bbb8]
とかネストしたりキーバリューが書けたらなぁ
…上でもかかれてたけど、UWSCでやる必要ってWin32APIのウィンドウ操作と画像認識だけだよな。
750:名無しさん@お腹いっぱい。
11/06/01 15:30:46.98 pgGwEwGR0
画像認証に関してお聞きしたいのですが、どうやら画像が微妙に変化してるようで
同じような外見の画像に対して画像Aか画像Bのどちらかに反応するようです
詳細(ディスプレイ=32Bitカラー、キャプチャしたBMPイメージ=24bitカラー)
そこで
ifb (CHKIMG(画像A.bmp)or(CHKIMG(画像B.bmp))
...(以下の動作は画像AもBもほとんど同じ)
か
ifb CHKIMG(画像A.bmp)
...
ELSEif (CHKIMG(画像B.bmp)
...
を考えたのですが上下どちらの方がいいでしょうか?
751:名無しさん@お腹いっぱい。
11/06/01 15:41:56.14 /OG9qV2i0
>>750
変化のない部分だけを切り出す。
たとえばボタンとしては画像の全体がボタンとして機能するとしても、
ボタンの場所を探るのに必要な部分というのは、他の場所と混同しない最小限のドット数があればいいわけです。
似た感じだが全体が違う画像の場合、色を無視して形で判断するオプションをつけます。
上記2つが出来ない場合にだけ、>>750のどちらかが必要になりますが、
基本的に画像が見つからない状態でループを繰り返すならどちらでも同じなので、
シンプルに or で結ぶのがいいでしょうね。
752:名無しさん@お腹いっぱい。
11/06/01 23:26:58.20 T7q6pnZp0
質問です。
Test.uws ”C:\Test\新しいフォルダ\20110601 テストてすとTest.txt”
と実行した場合のパスの文字列を取得したいです。
PARAM_STR[0]は
C:\Test\新しい~1\201106~1.TXT
となります。
「C:\Test\新しいフォルダ\20110601 テストてすとTest.txt」という文字列を取得したいのですが、
どのようにすればよいでしょうか。
753:名無しさん@お腹いっぱい。
11/06/02 12:21:04.43 VUco/QRe0
APIのGetLongPathName()か、DOSコマンドかな。
DWORD GetLongPathName(
LPCTSTR lpszShortPath, ショートファイル名
LPTSTR lpszLongPath, 受信バッファ(UWSCの場合は空白文字列)
DWORD cchBuffer バッファサイズ(LengthB(lpszLongPath))
);)
空文字列と言えば "" ですが、
空白文字列は " " こんな感じで十分な長さのものです。
DOSのDIRコマンドでとる方法もあるけど、フォルダごとにやらないといけないのかな
URLリンク(www.gizcollabo.jp)
パス名をショートファイル名で表示するように設定してたりしませんか?
> UWSC.exe test.uws "ロングファイル名"
っていう呼び出し方でMsgBox(PARAM_STR[0])ってやると、普通にロングファイル名で出てきますが。
754:名無しさん@お腹いっぱい。
11/06/03 00:24:53.64 posbHy0I0
FastHash.dllを使ってハッシュ計算をやろうとしてるんだけど
とりあえず書いてエラーは出ないんだが、肝心のハッシュがデタラメ…
DEF_DLLってほとんど使ったこと無いから根本的に間違ってそうなのが怖い。
誰か何処が間違ってるのか教えて下さい…
DEF_DLL FHCreateHashEngineObject(DWORD):HWND:FastHash.dll
DEF_DLL FHComputeHash(HWND, pchar, DWORD):Bool:FastHash.dll
DEF_DLL FHGetHashValue(HWND, var pchar, DWORD):DWORD:FastHash.dll
DEF_DLL FHHashValueToHashString(var string, pchar, DWORD, BOOL):FastHash.dll
DEF_DLL FHCloseObjectHandle(HWND):Bool:FastHash.dll
DEF_DLL FHCreateHashValueObject(HWND):HWND:FastHash.dll
DEF_DLL FHInitHashValue(HWND):int:FastHash.dll
htype = $4
msg = ""
cr = "<#CR>"
fh = FHCreateHashEngineObject(htype)
ado = CREATEOLEOBJ("ADODB.Stream")
ado.Type = 1
755:名無しさん@お腹いっぱい。
11/06/03 00:25:45.42 posbHy0I0
ado.Open
ado.LoadFromFile("FastHash.dll")
fsize = ado.size
msg = msg + fsize + cr
bufsize = 512
while !ado.EOS
buf = ado.Read(bufsize)
FHComputeHash(fh, buf, lengthb(buf))
wend
hash = format(" ", 32)
hashsize = FHGetHashValue(fh, hash, htype)
out = format(" ", hashsize*2+1)
FHHashValueToHashString(out, hash, hashsize, false)
msg = msg + out + cr
msgbox(msg)
//正しい値 "BAD795FCF94AE0532B57F886205965C7"
FHCloseObjectHandle(fh)
756:名無しさん@お腹いっぱい。
11/06/03 12:57:01.66 c/BneUED0
>>754-755
buf = ado.Read(bufsize)
print LengthB(buf)
とすると、妙に小さくてランダムなサイズになってるんです。
多分NULL終端文字列扱いになってる。
UWSC自体はChr(0)を途中に含めた文字列でもデータの最後までの長さを取得できるんですが、
配列データを受け取るときに安全のために終端するんでしょう。
DEF_DLL RtlMoveMemory( string, SafeArray, DWord ):kernel32.dll
と宣言して
buf = format( " ", bufsize )
RtlMoveMemory( buf, ado.Read(bufsize), bufsize )
とやれば、受け取ったバッファを確実にコピーできるはずですが、
正しい値は得られませんでした。
ちなみに、FHComputeHash のループが終わったら
FHCreateHashValueObject でハッシュオブジェクトを作ることが必要だとか。
757:名無しさん@お腹いっぱい。
11/06/03 18:48:38.95 c/BneUED0
bufsize = 1
while ! ado.EOS
buf = ""
for i = 1 to 512
if ado.EOS then break
ByteData = ado.Read(bufsize)
buf = buf + CopyB( ByteData, 1, 1 )
next
ifb ! FHComputeHash(fh, buf, lengthb(buf))
こうやったら512バイトのバッファが作れてファイルサイズ分だけの処理は出来るようになりましたが、
どうもデータが壊れてしまうようでうまくいきませんね。
半角はいけるんですが、2バイト文字が壊れます。
文字コード変換してるのかも。
引数に受信バッファを指定できるタイプの関数を使わないと無理でしょう。
758:名無しさん@お腹いっぱい。
11/06/03 20:37:05.72 posbHy0I0
>>756
> FHCreateHashValueObject でハッシュオブジェクトを作ることが必要だとか。
これ、最初の頃は書いてましたが、どうもFHGetHashValueを
呼べばそのときに再計算やってるらしく、1回だけ計算するときは
必要ないようで消してます。
どうもFastHash.dllをUWSCで扱うのは無理っぽいのかな…
これは今後の課題としてとりあえずはBASP21でも使ってみようかと思います。
759: 忍法帖【Lv=1,xxxP】
11/06/04 12:26:40.90 2KBRGkl70
UWSC 旧バージョンをダウンロードできるサイトってありますか?
760:名無しさん@お腹いっぱい。
11/06/04 13:49:07.48 hyDuayc40
ためしにバイナリコピーを書いてみた。
adoS.LoadFromFile(GET_CUR_DIR + "\ReadMe.txt")
adoS.CopyTo(adoD, -1)
adoD.SaveToFile("copy.bin", 2 ) // adSaveCreateOverWrite
↑動く
↓動かない
while ! adoS.EOS
buf = CopyB("",0,0) // 本家からの引用で、文字コードをユニコードじゃなくANSIにする技。
// buf = "" だとユニコード扱いらしい。
for i = 1 to 512
if adoS.EOS then break
buf = buf + CopyB( adoS.Read(bufsize), 1, 1 )
size = i
next
print size
print buf
adoD.Write(buf) // そもそもCOMエラーで動かない。バリアント型に変換されないのか。
wend
adoD.SaveToFile("copy.bin", 2 )
UWSCがデータを触らないで済めば受け渡し自体は出来るんだよ。
型変換ができればいけそうな気はするんだけど
VARTYPE( 変数, [変換タイプ] ) とか書いてあるところがあったけどUWSCは対応してないみたいで
761:名無しさん@お腹いっぱい。
11/06/04 15:20:26.61 OZFKFCHZ0
fsize = ado.Size
buf = ado.Read
FHComputeHash(fh, buf, fsize)
全部メモリに読み込んでやってみると
エラーが出たり出なかったり…
エラー出てない時の値もランダム。
762:名無しさん@お腹いっぱい。
11/06/04 22:23:36.02 tgYxdGHc0
「指定のテキストが画面上に現れたら、
指定の画像をクリックする。」
のようなマクロを作りたいのですが、
色々試しているのですが、エラーが出てしまいます。
どなたか教えて頂けないでしょうか?
763:名無しさん@お腹いっぱい。
11/06/04 22:29:52.60 xhQE3RN+0
色々試したソースを挙げてごらん
764:名無しさん@お腹いっぱい。
11/06/04 22:34:17.05 HC7Ps71g0
>>754
画面ポチポチ以外はC#とか普通の言語でやればいいのに
なんでこういうのをUWSCで書くという苦行を選ぶんだ?
765:名無しさん@お腹いっぱい。
11/06/04 22:41:43.77 oJ7biuYS0
>762
できるが俺も>763と同意見だな。
いちから書くのはめんどい。おまえが元になるものを出せば訂正してやるよ。
偉そうにいえるほど能力は高くないが、汚く直すくらいはできる。
んで、それをおまえの好みに整えて使えばいい。
766:名無しさん@お腹いっぱい。
11/06/04 22:42:12.23 tgYxdGHc0
752です。
ifb CHKIMG("画像1.BMP",0) // 画面上に画像があった場合以下へ
x=G_IMG_X // 画像の座標をxへ代入
y=G_IMG_Y // 画像の座標をyへ代入
BTN(LEFT, CLICK, x, y, 80) // 画像の場所を左クリック
の辺りまでは出来ました。
767:名無しさん@お腹いっぱい。
11/06/04 23:05:06.87 tgYxdGHc0
ついでに画像認証はテキストの認証方法が分からなかったので
応用しました。
しかし、上記のスクリプトでは認証した画像をクリックすること
くらいしかできなく、私もかなり最近始めて
これ位の基礎動作しか分からなかったため、
質問を上げさせて頂きました。
768:名無しさん@お腹いっぱい。
11/06/04 23:08:35.00 xdBjojGQ0
テキスト認証ってやっぱ画像にするしかないのかな
769:名無しさん@お腹いっぱい。
11/06/04 23:09:06.32 S8RdXfJA0
で、その後の処理とエラー内容を想像しろと?
770:名無しさん@お腹いっぱい。
11/06/04 23:12:05.37 kQlUkhv60
>>766
endifが無いとかそういうエラーじゃないよな。
どんな問題がおきてるか書かないと、だれも判らないよ。
自分が書いていることを客観的に見れないのがそもそもの問題のような気がするけど。
自分の記述が、uwscにどう解釈されるのか、伝えたい相手にどう解釈されるのか。
受け取る側の立場に立てないと難しいぞ。
771:名無しさん@お腹いっぱい。
11/06/04 23:34:45.94 HC7Ps71g0
>>754
CでやりたいことをラップするDLL書いてみたよ
FastHash.dllのハッシュ値が"BAD795FCF94AE0532B57F886205965C7"になればいいんだよね?
URLリンク(codepad.org)
772:771
11/06/04 23:45:49.08 HC7Ps71g0
バイナリあったほうがいいかなと思ったりして。
VS2008でコンパイルしたもの。
URLリンク(www1.axfc.net)
773:名無しさん@お腹いっぱい。
11/06/05 02:21:08.39 g86IC7rZ0
2011/06/05 UWSC Ver4.7、 Pro版と Free版をリリースしました。
774:名無しさん@お腹いっぱい。
11/06/05 15:27:22.12 QXzudF7U0
>>773ので型変換できたのでやってみました。
dat1 = VARTYPE(buf,VAR_BYTE or VAR_ARRAY) // 文字列→バイト配列
adoD.Write( dat1 )
bufのサイズは512なんだけど、出力した結果は2倍近い数字に。
しかし、表示された半角文字分くらい、2倍には足りない。
サイズを見ると、LengthBなら変換前も後も512だけど、Lengthだとちょっと短い。
adoD.Write() に渡すときはデータだけであって、サイズは自動処理されるから、
どっちの長さを渡しているか分からない。多分Lengthだろう。
しかも出力結果は倍のサイズ。
いやまて、バイト配列にしたときに配列数よりバイト数が大きいと言うことは、いくつかは2バイト文字として格納されているのか。
意味が分からない。
しかし、SETHOTKEY( キーコード, [修飾子キー, Procedure名] )は便利かも。
以前リモコン動作をバッチファイル経由で・・・あ、実行ファイル指定だと意味ないか。
775:名無しさん@お腹いっぱい。
11/06/05 15:54:49.65 QXzudF7U0
>>767
よくある画像認証システム(画像を読み取ってテキスト入力)はUWSCでは対処できません。
変化のある画像を扱えないからです。
その変化が単調な変化ならPEEKCOLORで色コードで判定できます。
>>774は>>760の下のコードに追加したものです。
他に試したパターンを以下に
// dat1 = VARTYPE(buf,VAR_DISPATCH) // String型からBoolean型へのバリアント型変換はできません。
// dat1 = VARTYPE(buf,VAR_BSTR) // (元の型) Write時にCOM Error
// dat1 = VARTYPE(buf,VAR_VARIANT) // String型からバリアント型への変換はできません。
dat1 = VARTYPE(buf,VAR_BYTE or VAR_ARRAY)
// dat2 = VARTYPE(dat1,VAR_VARIANT) // Byte型からバリアント型への変換はできません。
// dat2 = VARTYPE(dat1,VAR_DISPATCH) // Byte型からInteger型への変換はできません。
776:名無しさん@お腹いっぱい。
11/06/05 17:26:50.41 QXzudF7U0
関連する情報を検索してて、0~0xffをテストデータにする方法が載ってたんでやってみた。
0x80までは問題ないけど、その後のデータが化ける。
chr(0)とか、CRLFを扱えるからバイナリいけるとおもってた。
他にもDLLに文字列バッファを渡したりしてたけど、
受け渡しするデータが扱える文字列だったり、
UWSCではポインタの保持のみ(代入したり関数に渡したりしない)だからちゃんと扱えるように見えたのかも。
関数で使いたいときはvar で参照渡しすることで回避できるけど、
代入できないとどうにもならんよな。
結果:
0 1 2 3 4 5 6 7 8 9 A B C D E F
10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F
20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F
30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F
40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F
50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F
60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F
70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F
80 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F
3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F
3F 21 81 91 81 92 3F 5C 7C 81 98 81 4E 63 61 81
E1 81 CA 2D 52 81 50 81 8B 81 7D 32 33 81 4C 83
CA 81 F7 81 45 81 43 31 6F 81 E2 3F 3F 3F 3F 41
41 41 41 41 41 41 43 45 45 45 45 49 49 49 49 44
4E 4F 4F 4F 4F 4F 81 7E 4F 55 55 55 55 59 54 73
61 61 61 61 61 61 61 63 65 65 65 65 69 69 69 69
777:名無しさん@お腹いっぱい。
11/06/05 17:31:21.90 QXzudF7U0
>>776のコード
代入方法はどれでも一緒。
// サンプルデータの準備
//dat = CopyB("", 0, 0) // dat = "" との違いが見られない
//dat = ""
//dat = chr(0)
dat = CopyB(chr(0), 1, 1)
for i = 1 to $ff
dat = dat + chr(i)
next
for i = 0 to 16 - 1
str = ""
for j = 0 to 16 - 1
// str = str + format( ABS(ascB(CopyB(dat, i*16+j+1, 1))), 3, -1) // ↓でも同じ
str = str + format( VarType(ascB(CopyB(dat, i*16+j+1, 1)), VAR_INTEGER), 3, -1)
next
print str
next
ifb ascB(chr(0)) = 0
print "ascB(chr(0)) = 0" // 一致する
else
print "ascB(chr(0)) <> 0"
endif
ifb ascB(chr($81)) = $81
print "ascB(chr($81)) = $81"
else
print "ascB(chr($81)) <> $81" // 一致しない
endif
sleep(10)
778:名無しさん@お腹いっぱい。
11/06/05 17:41:52.80 QXzudF7U0
>>777の条件文は、Format関数でおかしくしたのかの実験。
だが、そうではなかった。
absを使ってみたけど関係なし
しかし、ASCではFF8Aとかに変換されたりするので、AscBを使う必要がある。
どの道0x80以上の範囲でのことなので大差はないが。
779:名無しさん@お腹いっぱい。
11/06/05 17:46:20.34 sEVwMmd6O
あのさ、先にやりたいこと全部試して
まとめだけ書くって知恵は無いの?
780:名無しさん@お腹いっぱい。
11/06/05 18:32:05.88 QXzudF7U0
>>779
やりたいことは別にない。とりあえずUWSCでバイナリデータを”自由に”扱えるか知りたい。
今まではバイナリデータでも"ADODB.Stream"を使えば扱えると思ってたけど、
受け渡しすら出来ないなら選択肢からさっさと外さないと時間の無駄でしょ。
DLLならメモリに直接書き込んでくれるから文字列バッファを使って受け渡しは出来ていたけど、
COMオブジェクトは代入渡しだからUWSCが自動処理する関係でおかしくなるんだね。
で、動くコードは結論だけで済むんだけど、動かない場合は単に作った人が使い方を間違っただけかもしれない。
それを他人が検証するには「何をしたか」を書かないといけない。
>>750だってコードは出してるけど、肝心な部分がないので判断できないでしょ。
今まではバイナリデータっぽく扱うことが出来ていて不便は感じなかったんだけどね。
バイナリデータなんて実際は扱ってないから。
そもそも他アプリを操縦するのがUWSCの基本だから(以下略
781:名無しさん@お腹いっぱい。
11/06/05 18:49:30.58 QXzudF7U0
>>779
あ、やりたいことあったよ。
HSPスクリプトのDLL呼び出しが出来るけど、あれってEXECするのと変わらないよね。データの受け渡しが出来ないから。
一応管理データがあるみたいだけどHSP内部で使うものであって、スクリプトで扱うものじゃない。
あれを使ってデータのやりとりやら制御ができたらいいなと。
まあ、HSP覚えるのめんどくさいから使わないんだけどね。
HSPでも結局はDLLで全部やっちゃうらしいし。
あれを使おうと思ったのはそもそもチートするときに、食いついたゲームプログラムから
呼び出すことが可能でメモリ改ざんが可能なスクリプト実行環境だったからなわけで。
結局、実行ファイル展開後に食いつく方法とかセキュリティソフト回避する方法とか分からなくて投げ出したんだよ。
UWSCから呼んでみたのは、実際どう呼び出すのかテストと、
UWSC Free版で画面を自由に使えるかなと。
782:名無しさん@お腹いっぱい。
11/06/05 18:51:21.07 BZXWRVGgP
ひとまず深呼吸をしよう。
腹式呼吸で10秒吸って、10秒はくのを10回繰り返す。
そしてこのスレを全レス表示させて1から順に流して見ていこう。
中身は見なくても大丈夫。スレの流れる様子を見るようにして。
するとどうだろう。
君の実験は邪魔になってるのがよくわかるよね。
君の実験メモをここに書くのはやめよう。
783:名無しさん@お腹いっぱい。
11/06/05 19:29:01.77 SWS3yrb80
>>782
いや、それはどうよ。
UWSCで出来ないことがある…という情報は「誰にとっての『邪魔』」なんだ?
784:名無しさん@お腹いっぱい。
11/06/05 20:36:40.45 ni4DAQUY0
>>783
全部書くことはないと思う
先にやりたいこと全部試して結果のまとめだけ書いて
コードはcodepadにでも貼れば1レスでまとまるでしょ
それで同じことに興味がある人がいたらレスを拾うんじゃないかな
今みたくコードも含めて途中経過も全部書きこんでたら読むのめんどくせってなるよ
785:名無しさん@お腹いっぱい。
11/06/05 20:50:50.65 QXzudF7U0
>>784
確かにURLリンク(codepad.org) みたいなのは見やすくていいんだけど、
Basic系がないのはなんでなんだぜ。
C言語を選択してUWSCのソースを張るのは荒らし行為だよね?
786:名無しさん@お腹いっぱい。
11/06/05 20:59:25.58 ni4DAQUY0
>>785
シンタックスエラーになるだけだし荒らしにならないよ
てかPlain Text選べばいいだけでしょ
787:名無しさん@お腹いっぱい。
11/06/05 21:36:43.20 UpCDO7L00
Java Access Bridge for Microsoft Windows Operating System 2.0
が正しくインストールされているかどうかを調べる方法ってありますか?
と言うのも、Javaで作られたアプリを操作しようと四苦八苦しているんですが、操作できません。
GETIDは取得でき、SCKEYを利用できたりは出来るんですが、SENDSTR、CLKITEMなど直接コントロールを
操作/設定しようとしても無反応です。
例えば以下のような感じで記述しています。
SENDSTR(ID,"aaa",1,TRUE,TRUE)
なので、一番最初の文に戻りますが、Java Access Bridgeが正しくインストールされていないのでは?
と疑っています。
788:名無しさん@お腹いっぱい。
11/06/05 21:54:10.65 BZXWRVGgP
>>784
まさしくその通り。
1レス内で収まる範囲のソースコードや説明であれば誰かの役には立つとは思う。
しかし、こんな長文をダラダラ延々と続ければ続けるほど誰も見なくなり
情報価値は少なくなる。むしろマイナスだ。邪魔。荒らし行為そのもの。
一応フォローするけど、まともなコードも書けるようだし頭はいい人だとは思う。
アスペルガー症候群なんだろうか。
789:名無しさん@お腹いっぱい。
11/06/06 02:55:49.79 9zgS8WMT0
そうかな。
ホームラン級のバカだと思うけどな。
uwscの役割を理解せずに、何でもかんでも要求してるだけだろ。
v2cみたいに。w
790:名無しさん@お腹いっぱい。
11/06/06 03:07:13.75 npqVU/0S0
要求はしてないだろ。確認しただけだ。本当に馬鹿発言だな。
791:名無しさん@お腹いっぱい。
11/06/06 04:02:16.44 9zgS8WMT0
uwscに要求したじゃん。
792:名無しさん@お腹いっぱい。
11/06/06 08:50:24.84 4AVwEeJW0
>>789
いまどきバイナリファイルも扱えないスクリプトなんてw
…というレッテル張りに始終するのが賢い選択だったのかな?
793:名無しさん@お腹いっぱい。
11/06/06 12:14:20.48 8xId2Plm0
>>792
近代的なプログラミング言語は言語仕様は最小限にして
機能はライブラリで提供するのが主流だからバイト配列が扱えない言語も多いよlua、lisp、javascriptとか。
PHPやVBは時代に逆行して機能を言語仕様に詰め込むから言語としてバカにされ続ける。
794:名無しさん@お腹いっぱい。
11/06/06 12:15:55.68 npqVU/0S0
lispとか古すぎ
795:名無しさん@お腹いっぱい。
11/06/06 12:34:24.36 E8y1CT6vi
>>793
外部ライブラリを使っても、UWSCの制限でバグるのが問題なんだろ。
使える外部ライブラリを提示出来るならその指摘もありだとは思うけど…
796:名無しさん@お腹いっぱい。
11/06/06 12:47:15.73 8xId2Plm0
>>795
UWSCにライブラリ作るためのAPIなんて用意されてないだろ。
画面ポチポチやるかき捨てプログラム書くための専用ツールなんだから
どうしても必要なんだったら普通の言語使うか>>771みたくネイティブコード吐ける言語に処理させて
結果だけ受け取ったほうが圧倒的に効率いいだろ
797:名無しさん@お腹いっぱい。
11/06/06 13:24:04.29 npqVU/0S0
>>796
すでに存在するものを利用できるのがスクリプトのいいところだ。
バイナリの受け渡しさえ出来ればいいんだからUWSCが対応したらそれでこんな議論は終わりだ。
しかし、加工したはずの文字列がゴミまで一緒に渡すようになると、既存のコードに影響するからね。
>>796が主張するように自分で処理するDLLを作って文字列を加工したのに、
UWSCがそれを無視してゴミをデータとして処理したとすると、それはそれで問題がある。
> 結果だけ受け取ったほうが圧倒的に効率いいだろ
それは当たり前だよ。
だけど、スクリプトでやることに意味があるんじゃないか。
コンパイル環境がいらないとか、コンパイル言語でバグ出す前にテストしてみるとか。
WSHやJavaScriptじゃなくUWSCを使うのは、手軽にDLLを使えるからだろ。
DLLはバイナリデータを扱うことが多いんだから、バイナリがうまく扱えないのはメリットをデメリットで相殺してるようなものじゃないかな。
まあ、ハッシュ計算の問題はWindowsAPIのReadFile関数をDLLで呼び出せばたぶん解決だよ。
バイナリデータが扱えないと言うより、COMオブジェクト特有の代入演算がネックだったと。
798:名無しさん@お腹いっぱい。
11/06/06 13:33:26.37 npqVU/0S0
>>793
あと、Lispを近代的言語って表現するのはおかしいよね。
URLリンク(www.atmarkit.co.jp)
URLリンク(www.atmarkit.co.jp)
Lispがとても古い時代のものだというのはプログラミング言語一つでも使えるなら知ってて当然なんだけど。
まあ言葉の表現がおかしいだけなんだろうけど、ものの捉え方がちょっとズレてるのが原因かもね。
だからこんな議論してしまうんだよ。
何でもかんでも自分の知ってるものに当てはめてしまうとかね。
もうちょっと基礎部分を広げた方がいいと思うよ。
799:名無しさん@お腹いっぱい。
11/06/06 13:39:21.47 8xId2Plm0
>>798
登場時期が古い=レガシー言語ってお前バカだろw
C言語よりC++やD言語がモダンだと思っちゃうタイプ?
800:名無しさん@お腹いっぱい。
11/06/06 14:53:42.01 8xId2Plm0
>> 結果だけ受け取ったほうが圧倒的に効率いいだろ
>それは当たり前だよ。
>だけど、スクリプトでやることに意味があるんじゃないか。
>コンパイル環境がいらないとか、コンパイル言語でバグ出す前にテストしてみるとか。
どんだけこのマウスポチポチツールに入れ込んでるのか知らんけど
これでいいじゃん
URLリンク(codepad.org)
この話題終了
801:名無しさん@お腹いっぱい。
11/06/06 21:36:31.18 kvcA2Kfh0
ふぉーとらんを馬鹿にする奴は俺が許さん
802:名無しさん@お腹いっぱい。
11/06/06 21:52:05.67 QHLp3LcH0
>>801
科学系では現役で新規プロジェクトに使われてたりするしね
803:名無しさん@お腹いっぱい。
11/06/06 23:37:35.58 9zgS8WMT0
こんなヘンピなスレで、なんでキチガイが湧くのかなぁ。
スレ過疎化すると、スレ建てした奴が必死に成るのかなぁ。
それにしても、スレチな発言しても意味無いと思うけどなぁ。
あ、かまってほしいだけ!?
804:名無しさん@お腹いっぱい。
11/06/07 00:02:06.85 czDeR00m0
こんなの作ってみたんだけどどうかな。
URLリンク(smallbasic.com)
805:名無しさん@お腹いっぱい。
11/06/07 18:40:45.62 FpMUckDF0
クリップボードの中身によって行動を変える条件分岐はどう書いたらよいの
806:名無しさん@お腹いっぱい。
11/06/07 18:48:08.13 3DgxKyzv0
クリップボード=GETSTR(0)
IFB クリップボード = "こっち" THEN
ELSEIF クリップボード = "そっち" THEN
ENDIF
807:名無しさん@お腹いっぱい。
11/06/07 19:01:24.65 FpMUckDF0
ありがとうごじゃました!
808:名無しさん@お腹いっぱい。
11/06/07 19:32:16.65 GF8L72VJ0
>>806
変数名に日本語使うと一瞬それらしく見えなかったりしたw
809:名無しさん@お腹いっぱい。
11/06/07 20:52:53.48 aOHIWvUD0
誤動作しそうだから、使わないとココロに決めた。
810:名無しさん@お腹いっぱい。
11/06/07 20:59:35.73 czDeR00m0
MOUSEORGとか使わなくても
ifb Status( ID, ST_ACTIVE ) で表にいるときだけ操縦するようにすれば
単純な記録・再生でも使えるよ。
まあ俺も誤動作させまくってるから失敗が怖ければ使わない方がいいけど、
たとえば仮想マシン上で動かせば仮想マシンの外には影響しないよ。
逆は可能だけどね。
811:名無しさん@お腹いっぱい。
11/06/08 13:29:25.29 aqQRx2dz0
古いの使ってたのを最新にしてみたら、既存のコードでシンタックスエラーになった。
コード; if ~ then exit
っていう1行で続ける条件文がだめで、
改行したらOKになった。
812:名無しさん@お腹いっぱい。
11/06/08 23:24:42.77 LN9bd+dX0
すでになおっとる(6/5)
813:名無しさん@お腹いっぱい。
11/06/09 12:32:10.82 S+BrRx410
画像リンクがどーしても出来ないです…
IELINKやページ内の画像を取得後にaltをターゲットに検索して、などは出来るんですが。。
必ずaltが宣言されてればいいんですけどそうじゃないので困っています。
画像が小さいと認識しにくいとの事ですが
どの程度の大きさまで認識できますか?
また画像の一部分を基準に認識可能でしょうか?
814:813
11/06/09 18:35:10.26 S+BrRx410
画像クリック他の所で試したら普通にいけました…
それと目的の画像をペイントで表示する場合は認識するのですが
画像として表示させた場合は認識しません。
認識の精度を上げる事は出来ないのでしょうか?
815:名無しさん@お腹いっぱい。
11/06/09 19:09:24.75 lxNHl3xJ0
画像として表示って何かな?
画像が拡大縮小とか加工されて表示されたらそりゃ別物と認識しますよ。
色範囲を広げるオプションはあるようなので、使ってみたら?
816:813
11/06/09 20:55:58.40 S+BrRx410
画像としてはWindowsフォトギャラリーでの表示です。
オプションは一通り試しみました…
形だけでも拾えないのでpngで四隅を透過処理してあるのは無理なんですかね。
もしかして対象もbmp形式じゃないとダメなんて事はないですよね?
ヘルプには参照元はbmpとは書いてあったんで、大丈夫だとは思うんですけど。。
817:名無しさん@お腹いっぱい。
11/06/09 21:11:21.94 lxNHl3xJ0
フォトギャラリーって自動縮小でしょ。100%で表示しないと。
あと、フォトギャラリーで表示した状態でキャプチャしてそれを切り取って検索したらうまくいくはず。
818:名無しさん@お腹いっぱい。
11/06/09 21:12:52.58 yG+RHF7P0
認識の精度を上げるんじゃなくて下げるんだろ。
違う画像を認識させようってんだから。
819:名無しさん@お腹いっぱい。
11/06/09 22:09:16.44 Hr+TP2+u0
ここも、GIMPスレ並のYahoo!知恵遅れ状態だなぁ…
UWSCで何させようとしてるか判ったら、爆笑できそうだな。w
820:名無しさん@お腹いっぱい。
11/06/09 22:19:56.08 lxNHl3xJ0
>>819
知りたいならほらここに
URLリンク(dl7.getuploader.com)
821:名無しさん@お腹いっぱい。
11/06/10 08:07:51.29 RPvBhsfT0
>>820
なにこれ、こんなに書いたの?かわいそう・・
822:名無しさん@お腹いっぱい。
11/06/10 13:20:01.54 jWf5r0Hv0
>>819
物をどう使おうと個人の自由だろ
お前は他人の使い方をバカに出来る程に凄い使い方してんの?
823:名無しさん@お腹いっぱい。
11/06/10 16:18:12.59 gqJ9okoX0
そういう意味か。
てっきり、A→Bと言う方法があるのに、A→C→D→E→B と言う風にするなんてプギャーみたいな事かと思った。
824:名無しさん@お腹いっぱい。
11/06/10 19:05:04.44 cKzGyQ5z0
>>822
いや、ボクが爆笑できそうなのは>>823が近い。
どっちかって言うと、UWSCじゃ無いソフトでスコーンとやれそうな気がして、想像すると笑えるって話さ。w
>>817が結論っぽいんだけど、そうなのかどうなのか返事が無いからなんともだし。
>>それと目的の画像をペイントで表示する場合は認識するのですが画像として表示させた場合は認識しません。
こんな事書かれても、なにをどうしたのか、サッパリワカラナイヨ。
>>ペイントで表示する
>>画像として表示する
どう違うってんだ?w
バカにされたくなかったら、他人が読んでも判る文章を書くべきじゃないのかな?
825:名無しさん@お腹いっぱい。
11/06/10 22:22:40.21 yDzVvEQ00
> UWSCじゃ無いソフトでスコーンとやれそうな気がして
やれたとしてそっちを使う意味がどれほどあるかってことなんだけど。
ところでLuaっていう言語はコンパイルもできるっぽくていいね。
VM使うみたいだけど、
C言語 ⇔ Lua の相互呼び出しが可能なので、Windowメッセージでスクリプト関数を呼び出すなんてことも可能。
でもC++とか.netでも使えるかどうかが分からないな。
826:名無しさん@お腹いっぱい。
11/06/10 22:30:22.60 cKzGyQ5z0
>>825
うーむ、キミの読解力の無さに絶望したぁぁぁぁ。
例えば、UWSCを使ってIEで2ちゃんねるを巡回するより、専用ブラウザ使った方が楽だろ?
827:名無しさん@お腹いっぱい。
11/06/10 22:31:51.02 7YTvWQ+P0
メイプルでchkimg使うとき範囲指定したら認識してくれないんだけど・・
手作業でメイプルのウィンドウ内をクリックしたらなぜか認識してくれるんだけど
KBDでやっても認識してくれないんだけどなにかコツとかあるんですか?
あとsaveimgでメイプルのウィンドウ内の画像取ったら真っ白になるんだけど
これってちゃんと撮れる方法とかないんですか?
828:名無しさん@お腹いっぱい。
11/06/10 22:33:28.90 7YTvWQ+P0
訂正 KBDじゃなくてBTNでした
829:名無しさん@お腹いっぱい。
11/06/10 22:41:55.44 cKzGyQ5z0
あれ?
結局、ボットの話?
830:名無しさん@お腹いっぱい。
11/06/10 23:38:48.47 yDzVvEQ00
>>827
> KBD→BTNでやっても認識してくれないんだけど
時々クリックできないバグみたいのがあるんですよ。ボタンをあげることが出来ない場合とか。
その状態でもマウスカーソルの移動とクリック動作はしてたりします。
だからマウスカーソルが移動するのかしないのか、その上でクリックできるのか出来ないのか言ってくれないと。
まあどっちにしろ分かりませんけどね。
mouseorgで座標の基準がずれてるのかもしれないし。
もしかするとmouseorg(ID, 2)で、目的のアプリのIDとは違うものを指定しているとか。
それでイベントがあさっての方向に飛んでいっているとか。
あるいは適切なコントロールにメッセージが飛んでないとか。
>>644みたいに
> MOUSEORG(GETCTLHND(id,"Edit"),2)
ってコントロールを指定しないといけないとか。
>>826
> 専用ブラウザ使った方が楽だろ?
UWSCが使えるならUWSCで専用ブラウザをコントロールするとはかどりますけど?
831:名無しさん@お腹いっぱい。
11/06/11 01:43:47.27 KTsgiup00
>>824
>バカにされたくなかったら、他人が読んでも判る文章を書くべきじゃないのかな?
始めはなにをさせようとしてるか判ったら
って言ってるのに次は文章ですか。
論点のすり替え上手いね。
832:名無しさん@お腹いっぱい。
11/06/11 04:47:58.70 EYzj6ZLD0
メイプルの画像認識は検索範囲をウィンドウの外から始めないと上手くいかない
例えば、HP回復だと
ID = GETID("MapleStory")
MX = STATUS(ID,ST_X)
MY = STATUS(ID,ST_Y)
HPx = 500 + MX
HPy = 780 + MY
ifb CHKIMG("HP.bmp",0,MX-1,MY-1,HPx,HPy) then
KBD(VK_HOME,CLICK,100)
endif
だと上手くいくけど、
CHKIMG("HP.bmp",0,MX,MY,HPx,HPy)
にすると認識してくれなくなる
833:名無しさん@お腹いっぱい。
11/06/11 06:24:00.15 qnFNK3qZ0
>>825
>C言語 ⇔ Lua の相互呼び出しが可能なので
perl、ruby、python一般的に使われてるほとんどのスクリプト言語で可能だよ
>VM使うみたいだけど、
VMってバイトコードインタプリタのことだけど
実行方法がなんか問題あるの?JITで爆速じゃないとヤダとかなら
LuaJIT Projectとかあるよ
>でもC++とか.netでも使えるかどうか
C言語で使える=C++からも使える
人気の言語は次々にCLI(.net)に植されているよ
まだ実行速度が十分じゃないけどそれでもUWSCの100倍は速いよ
まあ結局C#が素晴らしすぎるからみんなC#使っちゃうんだけどね
IronPython - Home
URLリンク(ironpython.codeplex.com)
IronRuby.net /
URLリンク(www.ironruby.net)
Lablua - Home
URLリンク(www.lua.inf.puc-rio.br)
834:名無しさん@お腹いっぱい。
11/06/12 12:33:10.22 IEVSGnHg0
>>813
>>814
>>816
結局、この書き込みなんだったんだろう…
835:名無しさん@お腹いっぱい。
11/06/12 19:07:19.31 4/CpV7DF0
RGBのうちBの値が100<150のときに動作Aを行うようにしたいのですが、
「関数が正しく閉じていません」とエラーがでてしまいます
なにが原因なんでしょう
IFB(PEEKCOLOR(700,300) and $FF0000)/$10000 100< and <150 then
動作A
else
動作B
Endif
836:名無しさん@お腹いっぱい。
11/06/12 20:23:35.55 NIxSeDQw0
>>835
ヘルプの「関数の定義」を読めば判る
837:名無しさん@お腹いっぱい。
11/06/12 20:32:47.17 Dg1uIKsE0
>>835
IFB (PEEKCOLOR(700,300) and $FF0000)/$10000 100< and <150 then
↑スペースがないから関数の括弧扱い ↑?
> 100< and <150
こんな比較方法はありません。
こうしないと↓
(100 < B) and (B < 150)
だけどPeekColorを2回も呼び出すと遅くなるから、一旦変数に入れるべき。
838:名無しさん@お腹いっぱい。
11/06/12 20:35:44.75 NIxSeDQw0
よく読んだら違うか…ifの比較文がだめなんだろ。
true,falseで判断できない式は認められない。
あと、三つの値の同時比較はuwscは対応していない。
839:名無しさん@お腹いっぱい。
11/06/12 20:40:37.13 Dg1uIKsE0
> true,falseで判断できない式は認められない。
falseでないものは全てtrueになるので問題ない
840:名無しさん@お腹いっぱい。
11/06/12 20:54:13.06 NIxSeDQw0
>>839
マジかよw …と思ってたら、
100< and <150 は1でtrue扱いだったw
841:名無しさん@お腹いっぱい。
11/06/12 20:55:34.87 4/CpV7DF0
>>836-839
ありがとうございます。
とりあえず100以上であれば大丈夫そうなのでそれでやってみます
842:名無しさん@お腹いっぱい。
11/06/12 20:57:27.21 FmPEfqxB0
なにこれ気持ち悪い・・
書けば書くほど発見されていく糞仕様
print ( 100 < and < 150 ) //=> 1
843:名無しさん@お腹いっぱい。
11/06/12 21:10:04.08 Dg1uIKsE0
100 -> 01100100
150 -> 10010110
論理積 00000100
比較演算子が無視されてるかな
844:名無しさん@お腹いっぱい。
11/06/12 21:17:37.86 fHCxpPOf0
数値 < and // 常に0
数値 > and // 常に1
100 < and < 150 → (100 < and) < 150 → 0 < 150
845:名無しさん@お腹いっぱい。
11/06/12 21:28:14.28 FmPEfqxB0
print ( and )
print ( or )
print ( and + or )
全部エラーにしてくれないよ
846:名無しさん@お腹いっぱい。
11/06/12 21:31:07.64 NIxSeDQw0
>>844
納得した。
こういうのって一般的に構文エラーにするべき物?
847:名無しさん@お腹いっぱい。
11/06/12 21:33:53.08 FmPEfqxB0
UWSCはBNFすら公開されてないしパーサが正しい文として解釈してるんだろうと想像するしかないよね
848:名無しさん@お腹いっぱい。
11/06/12 23:25:55.80 IEVSGnHg0
別に、いちいちエラーにしてくれなくても問題無いじゃん?
こうこう、こんな事したら、思ったとおりに動かないんです。
と、作者に 日本語で メールするなりすれば良い事。
結果に影響が無いなら、俺だって放置するさ。w
849:名無しさん@お腹いっぱい。
11/06/13 00:55:54.91 tupIRmvE0
例)キャラがX座標の指定の位置まで右に動き、指定の位置に着いたらジャンプをする
次に指定の位置まで左に動き、指定の位置に着いたら上に移動する
次に指定の位置まで右に動き、指定の位置に着いたら最初の位置まで左に移動する
というように条件を満たした場合、次の動作をするそして全ての動作が終わったらまた最初から繰り返す
というようなマクロを作りたいと思っていますが 作り方がわかりません
教えていただけないでしょうか? よろしくお願いします
下記のものは考えつく構成ですがこれではうまくいきませんでした
WHILE CHKIMG("自分のマーク.BMP",0,0,0,0,0)
KBD(VK_RIGHT,1,100)
KBD(VK_ジャンプキー,0,200)
WEND
KBD(VK_RIGHT,2,100)
WHILE !CHKIMG("自分のマーク.BMP",0,0,0,0,0)
850:名無しさん@お腹いっぱい。
11/06/13 01:19:09.81 1it66pKH0
>>849
そういうのはモジュール化した方がいいね。
で、グループ化(見た目的に)する。
キャラ位置の確認方法は分からん。画像判定は難しいからね。
VK_Right とかそのまま使ったけど、キーコードはグローバル変数で持った方がいいね。
// ステップ1
伽羅.→歩行()
伽羅.停止()
伽羅.跳躍()
// ステップ2
伽羅.←歩行()
伽羅.停止()
伽羅.上昇()
// ステップ3
伽羅.→歩行()
伽羅.←歩行()
伽羅.停止()
module 伽羅
dim r_key = false // falseはUP中、trueはDOWN中
dim j_key = false //
・・・
function →歩行()
・・・
// →に移動するには、←をキャンセルしないといけないので、それを先にやる。
ifb l_key then
kbd(VK_Left, UP); l_key = false; sleep(0.023)
endif
kbd(VK_Right, DOWN); r_key = true // ←操作と状態は1行につなげると確実にセットで指定できる。間違えにくい。
851:名無しさん@お腹いっぱい。
11/06/14 10:43:48.94 N4XAViK70
UWSCでCOMやAPIを扱いたいのですが、
調べ方が悪いのかさっぱり理解できません。
これらを扱うには多言語から行った方がいいのでしょうか
あとこれらはオブジェクト指向というものなのでしょうか。
852:名無しさん@お腹いっぱい。
11/06/14 13:59:28.35 RsLKFePU0
>>851
APIは違うけどCOMはオブジェクト指向な技術。
ただし、いわゆるオブジェクト指向プログラミングとは違う。
APIについて知りたい時は、
「WIN32 api」と関連キーワードで検索
DLLの宣言が知りたければ
UWSCの DEF_DLL とか
VBの"Declare Function"で検索
COM オブジェクトについては
UWSCの CREATEOLEOBJ とか
VBScriptの CreateObject で検索すると使用例が出るので早い。
オブジェクトの詳細はオブジェクト名+site:msdn.microsoft.com を
「日本語で検索」オプションで検索。
853:名無しさん@お腹いっぱい。
11/06/14 14:16:56.70 N4XAViK70
>>852
簡潔で分かりやすい説明ありがとうございます。
早速検索などで調べてきます。
854:名無しさん@お腹いっぱい。
11/06/14 17:00:03.32 NrA1k+P90
ちょとすれ違いかもですが
とあるゲームでUIにほとんどKBが割り当てられてないので
Enter押したら指定座標にあるOKボタンをクリック
→キーを押したらして座標にある次のページへのボタンをクリック
みたいな機能を作りたいんですがUWSCでできますでしょうか
以前はkeybatでやってたんですが、7に変えてから使えなくなってしまったので
855:名無しさん@お腹いっぱい。
11/06/14 18:14:41.40 RsLKFePU0
> Key Batはキーボードとマウスにドライバレベルで割り込むので、
> Direct X用のソフトや、MS-DOSプロンプトのソフトでさえ、その支配下におさめ、
> 非常に強力なマクロ実行が行なえます。
ああ、UWSCは確かにキーボードやマウスを操縦できますが、
目的のソフトで使えるかどうかは分かりませんね。
> →キーを押したらして座標にある次のページへのボタンをクリック
SETHOTKEYが使えるかも。
試したら大概のキーを一つの関数に割り当てできたので、分岐したらシンプルにまとまりますね。
SetHotKey( VK_Right, 0, r_crick ) // 省略方法がよく分からないのでとりあえず0
while true
sleep(1)
wend
function r_crick()
ifb chkimg("OK_Button.bmp",IMG_MSK_BGR4,0,0,200,200)
BTN( RIGHT, CLICK, G_IMG_X、 G_IMG_Y )
endif
fend
--
VK_LEFT
VK_UP
VK_RIGHT
VK_DOWN
856:名無しさん@お腹いっぱい。
11/06/14 19:31:03.27 RsLKFePU0
SetHotKey() 意外と使えるわ。
SetHotKey( Ascb(c), , "OnKeyClick" )
とかでほとんどのキーや文字を割り当ててインターセプトしても、
そのままKBD()で操作すれば漢字入力も普通に出来るし、
コピペとかもできる。
Procedure OnKeyClick()
kbd(HOTKEY_VK, click)
Fend
問題はカーソルキー(↑↓←→)かな。
押しっぱなしはClickじゃなくてDOWNだけど、文字で見る限りClickしてもDownしても同じに見える。
いや、それより、操縦とチャットの切り替えの判断が必要になることか。
アプリケーションの切り替えならアクティブかどうか見ればいいけど・・・
それはどのやり方でも一緒か。
857:名無しさん@お腹いっぱい。
11/06/15 13:18:18.59 sbQ8YLFV0
外部からUWSCの関数を呼び出す方法があればいいなと思ってたけど、
HotKey経由でやったらいいかもしれん。
受け渡すデータはクリップボードに入れておいて、キー入力を発行。
単純にクリップボードを監視するループでやるよりもCPU食わんし
誤作動の確率が減る。
でも、KBD()とクリップボードが扱えるならUWSCを呼び出す意味ってないかも。
別プロセスとして起動したUWSCとの通信に利用できるか。
やってみたら出来たけど、複数登録は出来ないね。
登録が一つのキーには一つ。
だから違うキーを使えばやり取りは可能。
UWSC同士でやっても混乱するだけだけど、やれなくもない。
858:名無しさん@お腹いっぱい。
11/06/15 13:20:45.80 zhjWWPW20
>外部からUWSCの関数を呼び出す方法があればいいなと思ってたけど、
全くやる必要を感じません
普通の脳の持ち主は仕様が提供されている他の処理系を使います。
859:名無しさん@お腹いっぱい。
11/06/15 14:16:43.49 sbQ8YLFV0
>>858
たとえばどれ?
860:名無しさん@お腹いっぱい。
11/06/15 14:27:24.41 wLEdGhI20
プロセス間通信をサポートしてる処理系。
UWSCでなんでもかんでもやりたい基地の人と同一だろうけど
そういった用途のスレでは無いし
あんた荒らしにしかなってないから自分のサイトでやっててってみんな思ってるよ
861:名無しさん@お腹いっぱい。
11/06/15 15:20:02.91 sbQ8YLFV0
そうは言うけど.netとVS入れたら何GBも食うでしょ。しかもC:ドライブを。
しかも別のマシンで実行するには.netとかDLLをセットアップしないと動かない。
俺は旧いPCとXPしか持ってないからきついんですよね。
スクリプトなら軽量かなとPython入れてみたら案外でっかいし
簡単そうに見えて案外難しかったし
あのときはいきなりUnity3Dを動かしてみようと思ったのが悪かったのかもしれないが。
HSPも意外とでっかいんだよね。
画面が簡単に作れるのはいいんだけど画面以外とのやりとりがいまいちよくわからなかった。
画面内だけのことならSmallBasicが出てきたからこっちのほうが文法とか含めて分かりやすいかなと。
SmallBasicはサイズは軽量な割りにIDEがアニメーション使いまくっててゲストじゃ重かったけど、
HSPだってネイティブのようには軽くないし。
確かにUWSCは文法や挙動がいまいち分かりにくかったりしますが、
一旦覚えてしまえばエディタで気楽に書けるし実行するのも本体の実行ファイルがあればいいし、
やれる範囲のことなら楽なんですよ。
そんなたいそうなことは最初からやらないしね。
こんなことをだらだら書くほうがよっぽどうざいと思うけど>>860みたいに言われたら書くしかないよね?
まあお勧めはやっぱりSmallBasic+VBかな。
HSPも初心者に優しいけど文法とかがな・・
本気でプログラマ目指すならC++。もうちょっと楽なところがよければJAVAかC#かVB。
Ruby?なにそれ。
今、Luaとか squirrel とか AngelScript とかも見てみているんだけど
やっぱりどれもいいところと悪いところとあって迷うんだよね。
中途半端に手をつけると混乱するだけだし。
昔、親指シフトをエミュで練習したことがあったけど、必ずローマ字入力のときに混乱するんだよね。
確かに入力は速いかもしれないけどそれだけで通用するわけじゃない。
特にエミュはそれを覚えた人が応急的に使うものであって、親指キーボードを持たない人がやるものじゃなかった。
862:名無しさん@お腹いっぱい。
11/06/15 15:27:38.53 wLEdGhI20
相変わらず基地外すぎワロタ
お前の環境とかオススメとか誰も求めてないんで。
お引き取りください、そして2度と来ないでください。
続きはこちらに好きなだけ書いてください、さようなら。
URLリンク(scripts.web.fc2.com)
863:名無しさん@お腹いっぱい。
11/06/15 16:04:35.95 sbQ8YLFV0
>>862
あんたはUWSC使わなくても何でも出来るんでしょ?なんでUWSCを使ってるの?
何でも作れるような人がUWSCを使う意味って何?
むしろそこが重要なんじゃね?
864:名無しさん@お腹いっぱい。
11/06/15 16:12:49.77 wLEdGhI20
>>853
今の仕事の前任の人が業務で使うものを好き勝手UWCSとかいう糞アプリで大量書いて捨てて行ったから
それを保守、メンテナンスするハメになっている縁でスレ見てるだけだよ。
俺が.net frameworkで書き換えるのは簡単だけど
UWなんとかはwebのどこ探しても仕様書なんて見つからないから
業務で一定期間使ってる以上簡単には切り替えられないんだよ。わかるでしょ?
お前みたいななんでもかんでも裏技的なテクニックを使って実装しようとしてる基地外を見て
不幸な人間を増やしたくないと思った。
865:名無しさん@お腹いっぱい。
11/06/15 16:53:47.71 q7sA7lWs0
本気で何言ってるかわからないからもう少し落ち着いてレスしてみてはどうでしょうか?
866:名無しさん@お腹いっぱい。
11/06/15 16:56:09.16 OlG7pJRRi
>>864
.net(C#,VB)でのUWSC的な
・他ウィンドウの制御のサンプル
・デスクトップ画面の画像認識の手法サンプル
を教えてくださると凄く嬉しい。
…助けて。
私はそれが出来ずに、不幸を引き継ぎそうな低レベルな人です。
事務的な足し引きは判るけど、上記の様な一つ進んだ内容になるとアリモノを使う以外に無かった。
取っ掛かりさえあれば…と毎度思っていたのです。
867:名無しさん@お腹いっぱい。
11/06/15 17:01:54.60 sbQ8YLFV0
どんな環境だって問題が複雑になれば裏技的にやるもんでしょ。
大事なことは正しく知ること。
↓に引用したのがあるけど、みんな自分に合った物を捜し求めてるんですよ。
スレリンク(tech板:270番)
> Luaはダメだ。 AngelScriptを試してみよう…
> とりあえず実装可能っぽいけど… 呼び出しコストとかどうなんだろ?
> 試すしかないかなぁ… はぁ… 資料少ないなぁ。
.net framework だってOSが新しくなればメンテナンスは必要でしょ。
もちろん.netは開発効率はいいんでしょうけどね。
自分のHPであれが出来ないこれがダメとかやってもいいんですけど、
業務妨害とか言われたりするのがね・・・
自分が間違っていたりした場合でも、レスが返せれば間違いを訂正してくれる人がいるかもしれないけど、
そんな凝ったページ作るのめんどくさいし。
何より、人がレスくれたページをいじくって消すと申し訳ないじゃないですか?
とにかくめんどくさいんですよ。
あなたがUWSCのメンテがうざいって言うのと同じようにね。
868:名無しさん@お腹いっぱい。
11/06/15 17:16:04.68 wLEdGhI20
>>866
例えばUWSCに添付されているGuruGuru.uws(でしたっけ?)のようなものと
chkimgしてクリックするようなサンプルをC#書いてアップローダにアップしますね
>>867
>どんな環境だって問題が複雑になれば裏技的にやるもんでしょ。
しません。
Linuxのシステム管理スクリプトがなぜperlからpythonに取って変わられたのか調べてみてください。
869:名無しさん@お腹いっぱい。
11/06/15 17:24:43.36 sbQ8YLFV0
> なぜperlからpythonに取って変わられたのか
書けるけど読めないからでしょ?
870:名無しさん@お腹いっぱい。
11/06/15 17:33:58.67 OlG7pJRRi
>>868
ありがたい。
出来れば、GruGru.uwsよりかは、『サンプル.uws』のような情報取得と入力等の機械的制御が本分かと思います。
871:名無しさん@お腹いっぱい。
11/06/15 17:40:45.16 wLEdGhI20
>>869
もちろんperlはきれいに書こうと思えば書けるんですが
Perlのモットーは「やり方はいろいろある (TMTOWTDI; There's More Than One Way To Do It)」なので
100人プログラマがいたら100通りの書きかたが出来てしまいます。
裏技的に書く書きかたが許されているのでグダグダになりやすいんですよね。
対してPythonはwikipediaの頁にも書かれているように
>Pythonでは多くのユーザによって書かれた同一の仕事をするプログラムは、
>だいたいどれも同じようなコードに収束する。基本機能にないものの多くはライブラリによって提供されている。
>また、Pythonではプログラムの文書化(ソフトウェアドキュメンテーション)が重視されており、言語の基本機能の一部となっている。
ドキュメントが豊富で誰が書いてもだいたいどれも同じようなコードに収束したほうが
他人が書いたコードを再利用しやすいですよね。
どちらの言語がより一般的になっていくかは明白ですよね。
ところでUWSCはどうでしょう、ドキュメントは読みやすいですか?
バイナリを扱う仕様はありますか?扱えたところで他人から見て暗号のようなソースコードになりませんか?