2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

自動化ツールUWSC使いよ集まれ19

1 :名無しさん@お腹いっぱい。:2016/12/04(日) 17:04:38.16 ID:nLvo1o5D0.net
Windowsの作業を自動化するツール
フリーソフト版とシェアウェア版の2種類がある
ttp://www.uwsc.info/download.html

●UWSC 掲示板(※作成依頼掲示版ではありません)
 質問の際には自力で作ったスクリプトを晒すか、具体的な解らない場所を提示すること
 上級者が常駐、たまに作者も現れるため過去ログには有益情報の宝庫
http://www3.rocketbbs.com/13/bbs.cgi?id=umiumi
http://www3.bigcosmic.com/board/s/board.cgi?id=umiumi&;mode=past

●UWSC - Wikipedia
http://ja.wikipedia.org/wiki/UWSC

●使い方・基礎解説学習サイト
http://uwsc.g.hatena.ne.jp/cx20/20100131/1264938584
http://www.confrage.com/uwsc/
http://necro.jp/dev/uwsc/
http://park14.wakwak.com/~simizu/uwsc/fruwsc.html
http://canal22.org/
http://big.tm.land.to/handbook/uwsc.htm
http://www.game-rev.com/review/gameut/uwsc.html

●スクリプトテンプレサイト
http://izagne.com/uwsc/
http://scripts.web.fc2.com/
http://www.nagomi-jp.net/~liners/
http://nem.symphonic-net.com/uwsct/0610uwsct.html
http://siromasa.digi2.jp/uwsc/
http://iriyak.adam.ne.jp/uwsc.html

前スレ 自動化ツールUWSC使いよ集まれ18
http://potato.2ch.net/test/read.cgi/software/1469866649/

61 :名無しさん@お腹いっぱい。:2016/12/24(土) 14:20:43.48 ID:hDL5KNCC0.net
DirectInput介すかWin32Api通すかの違いだと思ってる

DOSライクなアプリはDIでしか受け付けなかったり
画面で解像度変更するアプリは座標が元の画面サイズになっちゃってるソフトも多いから
明らかに反応しない、座標がおかしい場合以外は使わなくていいと思う

62 :名無しさん@お腹いっぱい。:2016/12/24(土) 14:24:39.09 ID:jGYJw4VP0.net
MORG_DIRECTの方は興味本位だけどね

今仮想環境内で複数スレッドのスクリプトを書こうかと思ってるんだけど
その時問題になるのがマウス操作のバッティングが発生するんじゃないかということ
ウィンドウがアクティブになるのは全然構わないんだけど
同時に複数のスレッドが操作に入ると困る…

マウス操作するのはスクリプト全体の動作時間の1%にも満たないんで
マウス操作のスレッド排他利用?そんなのをしたいんだがどうやったらいいものだろうか

63 :名無しさん@お腹いっぱい。:2016/12/24(土) 14:46:04.33 ID:iSL11vy/0.net
>>62
わかりやすい排他処理なら、ファイルか何かにマウス操作中であることを記録して、
記録中はマウス操作を待つ

64 :名無しさん@お腹いっぱい。:2016/12/24(土) 15:35:00.55 ID:ct+4HMl80.net
>>63
スレッド排他のやり方がわからないという人にその説明だと破綻しそうな

フラグ用ファイルをF_EXCLUSIVEでFOPENして成功するまでスリープ入れつつリトライでいい
中身を読み書きする必要はない

それともmutex使うか

65 :名無しさん@お腹いっぱい。:2016/12/24(土) 16:08:05.12 ID:jGYJw4VP0.net
他のスクリプトでロックディレクトリ作成による排他制御やってたことあるんだけど
時々失敗してたもんで…なんでかいまだにわからないんだけど

66 :名無しさん@お腹いっぱい。:2016/12/24(土) 17:37:07.79 ID:aLlapnUv0.net
mutexなら
ttp://pastebin.com/v89eV3kt
の2720-2776までコピペしといて
initで初期化して各スレッドでlockして処理終わったらunlock

67 :名無しさん@お腹いっぱい。:2016/12/24(土) 18:14:12.84 ID:3W9xnO3N0.net
同プロセス内のスレッドなら普通に大域変数をフラグに使わね?
ファイルなんてリソース介したら本末転倒な気がするが…

スレッドとかの高度な機能を実装できないマイコンなんかで、
代わりにハード側の機能で割込を使う場合の、
割込の許可と禁止を制御する専用命令の単純な使い方が真似できる。
並行処理されてはならない処理部分はまず最小化しておいて、
処理に入る直前に割込禁止して、処理終了直後に割込許可する。
単に割込禁止と割込許可で挟むだけ。

しかし禁止・許可の機能はUWSCにないので自作で実装する。
マウス操作であれば、MMVをルーチン内で直接書かず、
自作関数のsafeMMVを定義して、その中で、
・既に割込禁止なら許可されるまで待機(必要に応じタイムアウト)
・割込許可になったら割込禁止して即MMVして即割込許可
・スレッドは必要に応じスレッド番号を生成し、
 フラグを真偽値ではなく0またはスレッド番号という風にすると、
 少しはデバッグがやりやすくなる。

こうすることで、MMV同士の競合はsafeMMVを使うことで意識すること無く解決し、
MMVとその他の処理との競合は、その他の処理の方を禁止と許可で挟めば良い。

68 :名無しさん@お腹いっぱい。:2016/12/24(土) 18:30:25.44 ID:ct+4HMl80.net
>>67
> 同プロセス内のスレッドなら普通に大域変数をフラグに使わね?

UWSCの仕様をそこまで詳しく把握してないんだが
フラグのチェックと設定をアトミックに処理できる?

69 :名無しさん@お腹いっぱい。:2016/12/24(土) 18:40:59.41 ID:3W9xnO3N0.net
確かに複数のスレッドが許可を待機する状態になってたら、
完全同時的に複数のスレッドが、
待機解除→割込禁止の設定をしてしまうかもしれないなぁ…
マイコンだと割込ハンドラに優先順位がついてるから気にしなかったけど。

70 :名無しさん@お腹いっぱい。:2016/12/24(土) 18:55:30.64 ID:3W9xnO3N0.net
>>66
これ用途はアレだが中身なかなか凄いね参考になった

総レス数 1003
268 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★