[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 01/04 17:18 / Filesize : 278 KB / Number-of Response : 1057
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



1 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/08/09(木) 21:42:11.79 ID:8c1pTbyl0.net]
Windowsの作業を自動化するツール
フリーソフト版とシェアウェア版の2種類がある
ttp://www.uwsc.info/download.html

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

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

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

●スクリプトテンプレサイト
izagne.com/uwsc/
scripts.web.fc2.com/
www.nagomi-jp.net/~liners/
nem.symphonic-net.com/uwsct/0610uwsct.html
siromasa.digi2.jp/uwsc/
iriyak.adam.ne.jp/uwsc.html
※前スレ
自動化ツールUWSC使いよ集まれ20
egg.5ch.net/test/read.cgi/software/1515077979/

328 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/09/29(土) 17:41:06.94 ID:uB91BfHo0.net]
>>313
DEF_DLL をどうすればよいか >>302 で判っていれば、
既にお礼を述べて引き下がっておりますのだ。

329 名前:名無しさん@お腹いっぱい。 [2018/09/30(日) 12:05:36.95 ID:YRgRQu470.net]
>>312
ソケット通信をPythonで書いた人がいるらしいけど
重すぎて速度が出ないらしい。
Pythonは結構速いんだけどその何桁も遅いUWSCで通信は無理。

スクリプトでやりたいというのは別にいいけど、UWSCはやめとけ。
>>314 の勧める Node.js ならシリアル通信のサンプル出てくる。

330 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/09/30(日) 18:31:08.73 ID:xubnGesw0.net]
実は、現在ファミコン風ジョイパッドのスイッチに
センサーをつなぎ、常駐 uwsc スクリプトで10回/s
ほどでポーリングしてるのです。

ジョイパッドのボタンを見る def_dll は
def_dll joyGetPos(uint, {uint, uint, uint, uint}):uint:winmm
# これは uwsc 掲示板で教えてもらいました

とりあえず、この程度のチンタラで良いのですが、
ジョイパッドの問題は、受信のみで送信ができない
こと。些細な問題はボタンのオンオフで Windowsが
ユーザ操作が発生したとして GetLastInputInfo の
値を更新してしまうこと。

これの置き換えとして性能は何ら問題なし。

もう少し粘って、回答なければ uwsc スクリプト
から通信 exe を呼ぶことにします。.js は好きく
ないので。

331 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/01(月) 02:15:40.11 ID:vl/DTYSO0.net]
>>309 で挙がってる関数に関してですが
関数定義と、関数がどのDLLにあるかは
https://msdn.microsoft.com/ja-jp/library/cc429126.aspx
https://msdn.microsoft.com/ja-jp/library/cc429605.aspx
https://msdn.microsoft.com/ja-jp/library/cc429264.aspx
に書いてあります
DLLは全部 Kernel32.dll

引数に度々構造体へのポインタが登場しますが
構造体の定義は
LPXXX ならXXXのロングポインタなので調べる構造体はXXX
どの構造体もググれば出て来ます。
引数には
def_dll joyGetPos(uint, {uint, uint, uint, uint}):uint:winmm
のように{}に展開して書くだけです。
挙がってる関数で使われる構造体の中には特別変わった型はないのですべてコピペでOKです

その他の関数の引数にしても宣言の型をほぼそのままコピペできます

問題になりそうなのは3点です

次レスへ
つづく

332 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/01(月) 02:19:07.04 ID:vl/DTYSO0.net]
問題になりそうなのは3点です

1つめは
UWSC で DEF_DLL の説明にない型をどうするか
具体的には HANDLE で、これはポインタですがLONGで問題ないと思います
(心配ならDWORDに)
LPCTSTRは 変更されない文字列へのポインタでstringです

2つ目は
CreateFile()が実際にはDLLに存在しないことです。
なのでDEF_DLL CreateFile(... はエラーになります。
文字列や文字列のバッファを引数として持つ関数functionの実態は
ASCII/CP932用の functionA()とUTF-16LE用の functionW()です。
つまりCreateFile()として実際にあるのは
CreateFileA()とCreateFileW()です
これはVisual Studio などがあれば dumpbin /exports DLL名で確認できます。
ない場合は https://forest.

333 名前:watch.impress.co.jp/docs/review/748651.html のようなもので

3つ目は
ReadFile(),WriteFile()の
LPVOID をどうするかです
文字しかやりとりされないのであれば
DEF_DLL ReadFile(LONG, Var STRING, DWORD, Var DWORD,{DWORD,DWORD,DWORD,DWORD,DWORD}):bool:Kernel32.dll
DEF_DLL WriteFile(LONG, STRING, DWORD, Var DWORD,{DWORD,DWORD,DWORD,DWORD,DWORD}):bool:Kernel32.dll
のようにすれば楽なような気がしますが、
CRLFのような制御文字などがあることも考えると使えなさそうです
また0x00のようなデータがあればそこで切れてしまいます(たぶん)。
DEF_DLL ReadFile(LONG, Var BYTE, DWORD, Var DWORD,{DWORD,DWORD,DWORD,DWORD,DWORD}):bool:Kernel32.dll
DEF_DLL WriteFile(LONG, BYTE, DWORD, Var DWORD,{DWORD,DWORD,DWORD,DWORD,DWORD}):bool:Kernel32.dll
とかで1バイトずつ扱うのが安全なのかなという気がします
[]
[ここ壊れてます]

334 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/01(月) 03:21:20.20 ID:/ij0nEcZ0.net]
>>318-319
詳細な説明ありがとうございます!!!
とりあえず先に進められそうな気になってきました。
うまくいったらどの程度の性能が出たかご報告させていただきます。
一か月経ってもなんの報告もなかったら、試行錯誤のうえうまくいかずに断念したと思ってください。

335 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/01(月) 05:21:45.76 ID:h1CowAvB0.net]
0から99のパターンがあって、それぞれのパターンに合わせてSLCTBOXみたいなボタンで瞬時にマクロを動かしたいんだけど良い方法ない?
SLCTBOXは上限が31だった

336 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/01(月) 06:09:39.14 ID:B2NAxaTU0.net]
>>321
+SLCT_NUM



337 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/01(月) 12:40:32.10 ID:/ij0nEcZ0.net]
>>321
ローカルディスク上に html でを好きなだけ
ボタン相当の文字列を並べる(リンクなし)。
ループで左ボタンのクリックを待つ
while 1
if GETKEYSTATE(VK_LBUTTON) then break
SLEEP(0.1)
wend
クリックした場所の文字列を読み取る
wi = GETID(GET_FROMPOINT_WIN)
cx = G_MOUSE_X - STATUS(wi,ST_CLX)
cy = G_MOUSE_Y - STATUS(wi,ST_CLY)
RESULT = POSACC(wi,cx,cy)
読み取った文字列に対応したマクロを起動する。
※ IE, EDGE でないと POSACC で読み取れない
html を uwsc マクロで書いても良い

338 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/01(月) 20:44:26.92 ID:KVBwIyHN0.net]
html使うならCREATEFORMでname読み取らせるってのもある

.html
<input type="submit" name="No0" value="0を実行"></td>
<input type="submit" name="No99" value="99を実行"></td>

.uws
while 1
OBJ = CREATEFORM()
 If OBJ="No0" Then "0の実行内容"
 If OBJ="No99" Then "99の実行内容"
wend

相当端折ってるけどこんなん
レイアウトの自由度高いから処理済みのボタンは非表示にするとかタイムスタンプ付けるとかなら結構便利

339 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/02(火) 00:33:31.51 ID:VgjxG2wU0.net]
uwsc でシリアル通信したがってる 301 ですが
とりあえず PC-PC 通信での中間報告。
まだ DEF_DLL まで行ってないのですが、データ
送信に関しては >>303 の仰る通り

// DOSCMDでシリアル送信できました
DOSCMD("echo hello com3>com3")

// またFPUTでも送信できました
fp = FOPEN("COM3",F_WRITE)
if fp < 0 then exit
for nn = 1 to 1000
FPUT(fp,"hello! "+nn)
next
FCLOSE(fp)

フロー制御無しで文字化けしてないので、多分
途中待ちなしでフル性能。

受信は DEF_DLL のお世話にならんとダメかな。
COM に対する _kbhit() みたいなのができれば
それでいけそうな気もしてるんだけど。

340 名前:名無しさん@お腹いっぱい。 [2018/10/02(火) 04:08:53.61 ID:LRmiFoEY0.net]
<com3
これは?

FPUTでいけるならFGETもいけるんじゃ?

341 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/02(火) 12:28:02.24 ID:VgjxG2wU0.net]
>>326
MS-DOS 時代思い出しながら送信側で ctrl+z 叩いてみたり
思いつくこと色々やってはみたんですがうまくいきませんでした。

342 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/02(火) 14:15:11.19 ID:rDUYGu2A0.net]
シリアルのフロー制御はハードウェアでやってるだろ

https://jprogramer.com/windowsprograming/3688

デフォルトは有効だと思う

343 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/02(火) 21:35:48.97 ID:VgjxG2wU0.net]
>>328
こんな USB シリアル↓の TXD と RXD をクロスしてつないでるだけだからハードウェアフロー制御は無いな。
https://www.amazon.co.jp/gp/product/B014VVPZT4/
実際、1行の文字列が長いと何故かデータが欠落する。
# まだ DEF_DLL に手が回ってません。

344 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/03(水) 19:21:36.18 ID:WIfuGIvk0.net]
uwsc でシリアル通信したがってる 301 ですが
PC-PC 通信での中間報告第二弾。
とりあえずCでシリアル送受するだけの .exe を
作ったらこれが超快適に動作。
この .exe と uwsc スクリプトとがタスク間通信
するのと、.exe は使わずに DEF_DLL でシリア
ル通信するのとどっちがいいの?と悩み中。
DEF_DLL 使って .exe と通信するくらいなら、
.exe 使わず DEF_DLL 使ってシリアル通信し
た方が無駄がないよね、みたいなところで、
これが最終報告になるかもしれません。
ではでは。

345 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/04(木) 21:30:31.04 ID:HBteGH1L0.net]
.exe とかアホみたいにしか見えん

346 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/04(木) 22:56:14.06 ID:YhQ0gU0C0.net]
.exe がアホに見えるなら、オマエの PC から .exe ファイル全部消しちゃいなよ。



347 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/05(金) 09:29:44.85 ID:pSK3o0iN0.net]
お前なんでもかんでも拡張子で物言うの?
.txt とか .uws とか.docとか言ってるわけ?

348 名前:名無しさん@お腹いっぱい。 [2018/10/05(金) 16:59:07.87 ID:YBEO+Dj+0.net]
csv とか普通に言うけど

349 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/05(金) 18:24:11.68 ID:CEpw7DNT0.net]
EXEも普通に言うだろ

350 名前:名無しさん@お腹いっぱい。 [2018/10/05(金) 18:33:38.32 ID:YBEO+Dj+0.net]
GIFも言うかな

351 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/05(金) 19:35:25.52 ID:yDeRarlV0.net]
ワード文書で送るよ、ポータブル・ドキュメント・フォーマットで送るよなんて聞いたことがない
DOC で送るよ PDF で送るよ、が標準だろ。それが分からなければ情弱と思われるぜ。

352 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/05(金) 19:36:39.27 ID:fehx7ZaA0.net]
zipでくれ

353 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/05(金) 19:39:39.30 ID:yDeRarlV0.net]
333 フルボッコw

354 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/05(金) 19:42:26.09 ID:Fomgot2i0.net]
まあ.は付けないけとzipとかmp4とかは普通に使うわ

355 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/05(金) 19:45:45.88 ID:F0hvvgZN0.net]
君ら普段から ドットエグゼ 起動して下さいとか会話してんの?
コンパイルして ドットエグゼ 作りますとか…は言うな

でも普通はアプリケーションとか実行ファイルって言うと思うな、文章でもね
>>330は .exe 連呼しすぎでちょっと気持ち悪いなとは思う
自作アプリ とかにしたら分かりやすいけどやっぱ繰り返しすぎなところが気にはなるかも

356 名前:名無しさん@お腹いっぱい。 [2018/10/05(金) 19:53:07.68 ID:YBEO+Dj+0.net]
>>341
アプリケーションにはデータファイルや設定ファイル、実行ライブラリやサンプルデータ、画像データそのたもろもろが全部含まれるから
いちいち拡張子を列挙できないだけ。

お前が言うアプリって setup.exe の事だろ。

スクリプト業界だとスクリプトファイル(テキストファイル)をアプリとか言ったりするから、.exe ファイルの事を必ずしも意味しない。
例えば印刷アプリの合わせ名人とかラベル屋さんとかは
Adobe A



357 名前:IR のスクリプトが実体だと思うけど
アプリケーション扱いだろ?知らんけど。
[]
[ここ壊れてます]

358 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/05(金) 20:43:29.12 ID:F0hvvgZN0.net]
>>342
ごめん何が言いたいか分からないしあんまり自分の認識とも合わないけどどうでもいいよね
別に自分が言い出した話題でもないんだが横から口出ししてすまなかった、もう終わりにしよう

359 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/05(金) 23:49:42.66 ID:8Wlziqfo0.net]
きりがないから

360 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/06(土) 10:17:00.50 ID:DElDuJso0.net]
> 知らんけど。

この一言が全てを語ってる。というか騙ってる。

361 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/06(土) 10:47:38.35 ID:VgMIIG0L0.net]
ロックマンエグゼ

362 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/06(土) 12:01:12.78 ID:IheiwJZo0.net]
.jpg.exe

363 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/06(土) 19:10:27.95 ID:6VTUoetw0.net]
昔Jpg偽装するツールよく使ってたわ。

364 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/06(土) 20:57:23.61 ID:VgMIIG0L0.net]
jpegdirectannexな

365 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/06(土) 21:08:45.28 ID:CGlnfwZq0.net]
jpg偽装と言えば昔懐かしいラブマちゃうのん

366 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/07(日) 12:36:19.98 ID:6fuP4Qv60.net]
uwsc でシリアル通信したがっていた 301 ですが
昨晩 DEF_DLL に挑戦し双方向通信が完成しました。
性能的にも(そもそもシリアルは遅いですから)
実用上、全く問題ありません。

これにより、C で作った .exe は不要になり、
.uws だけで生きていけるよになりました。
# .exe は発音上ドットはつけず、イグゼです。
# .uws は心の中でウワスと発音していますが、
# Win10 の SPEAK() はウウォズと発音しますね。

以下いくつかの点ですが、HANDLE を LONG にする
と、エラー時 -1 が戻りましたが、DWORD にすると
$FFFFFFFF が戻るという些細な違いがありましたの
で LONG で FIX しました。

DEF_DLL WriteFile はちょっと嵌りましたが、2個目
のパラメータを STRING にしたらうまくいきました。
受信は1バイトずつですが、送信は STRING ついでに
複数バイトをWriteFile 送出するようにしました。

関数に引き渡す構造体のポインタを NULL にする
方法が分かりませんでしたが、これは必須条件では
ないので、適当な実体を渡すようにしました。

>>318-319 の詳細説明を書いていただいた方には
改めでお礼申し上げます。

以上最終報告でした。



367 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/07(日) 13:14:08.98 ID:gNO0xipb0.net]
このスレでゲームの質問がウザがられるのはわかってる
ただどうしてもこれだけ知りたいんだ どうか教えてほしい
DMM版プリコネでどうしてもuwscが走らないんだ
何かしらの対策を講じてるのかウィンドウを認識しない
一体これはどうしたらいいんだろう?
個別のゲーム名出すくらいドン詰まっててもうギブアップ助けてください

368 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/07(日) 13:37:49.20 ID:Gr4JIhHl0.net]
>>352
プリコネ知らないけど仮想PC経由でやってみては?

369 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/07(日) 13:43:20.10 ID:v5tBqZHH0.net]
オレはプリコネってだいたい想像はつくけど
質問する立場なのに略称を使うのはどうかと思うぞ

370 名前:名無しさん@お腹いっぱい。 [2018/10/07(日) 13:47:50.46 ID:WRvOyMxd0.net]
ウザがられると知っていてなお個別のゲーム名すら出す潔さにワロタ
なのでマジレスするが、ウィンドウ認識しないってんなら
ちゃんとuwscを管理者権限で実行してるか?

371 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/07(日) 16:11:46.62 ID:cmX5xkPf0.net]
>>352
ここはゲームマクロスレじゃねえぞカス消えろ

372 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/07(日) 16:39:33.40 ID:lPvBSPqI0.net]
何かしらの対策を講じられてるんだろうから
どうしようもないんだろう

373 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/07(日) 16:44:28.54 ID:ZcFrVd430.net]
あきらメロン

374 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/07(日) 16:53:36.13 ID:v5tBqZHH0.net]
>>352
マジレスすっと 過去スレにヒントがあるぞ
それを使うと直接プロセス(ウィンドウ)を指定

375 名前:できる []
[ここ壊れてます]

376 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/07(日) 16:54:31.52 ID:cmX5xkPf0.net]
ゲームの話したいならゲームスレ立てろチートカスども



377 名前:名無しさん@お腹いっぱい。 [2018/10/07(日) 17:29:19.93 ID:AczQNJ/F0.net]
プリコネよりエグゼドエグゼスの方が面白いぞ

378 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/07(日) 22:12:26.94 ID:l1rUxRGW0.net]
口汚く罵りたいなら性格悪いやつ用スレ立ててそっちでやればいいのに

379 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/08(月) 17:28:19.92 ID:c3AQc4+E0.net]
スクショ取得→ペイント起動→貼り付け→ペイント最小化の動きが2秒以下でできて凄いわ
今までスクショ撮る為だけにソフトいれてたけどUWSCあれば要らないな

380 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/08(月) 18:00:29.36 ID:swvpR35M0.net]
>>363
そもそもスクショ撮りたいだけならsaveimg使えばいいしな

381 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/08(月) 18:27:31.08 ID:ZQnp75cv0.net]
UWSC使ってるのにわざわざペイント経由する意味ある?

382 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/08(月) 19:22:10.10 ID:q6wGz54s0.net]
whileとrepeatどっちの方が使うこと多い?俺はメインループにwhile使って細かいループにrepeat使うんだが

383 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/08(月) 19:23:14.85 ID:3W1dOUPa0.net]
>>353
>>355
>>359
ありがとうございました 迷惑かけてすいません
管理者権限で実行したらたしかに動きました!
ほんとにありがとうございました

384 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/08(月) 19:28:06.72 ID:c3AQc4+E0.net]
>>365
言われてみれば確かに
今までそうしてたから撮った後に一枚ずつペイントで編集分類してたけど
編集分類の部分も自動でさせられたら便利さ半端なさすぎるな

385 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/08(月) 19:32:04.55 ID:psu8l3Ri0.net]
>>366
初回だけここはループの最後に判定したいからrepeatかな、とかやってみたけど
なんの意味もないなあ…と思ったから後はwhileしか使ってないw
repeatとか使ってる例もほぼ見ないしrepeatでないと困ることなんてないだろ、逆はあっても

386 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/08(月) 19:38:11.83 ID:q6wGz54s0.net]
>>369
確に条件が整っててもループ内の処理を1度はやるなんてことほぼ無いしなあ
癖でrepeatばっかり書いてるけどそもそもループの初回はほぼ確実にループする条件に当てはまるからどっちでもいいんだよな



387 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/08(月) 19:59:05.63 ID:psu8l3Ri0.net]
癖か…俺の場合chkimgとの組合せ以外だとほぼwhile trueでしか使ってないから偉そうなことは言えないw

388 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/08(月) 20:11:48.45 ID:q6wGz54s0.net]
>>371
俺も似たようなもんだけど強いて言えば事前にPublicで変数を定義して並列処理で経過時間を計測、それを1回は処理したいループの脱出条件に入れるとかだな

389 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/08(月) 22:02:01.60 ID:2zvrTpuN0.net]
>>366
俺は単に if や for で済むようなところでも、まず while 1 と
書いてから続きを考えることもある while 1 主義者。
if で始めてリトライが必要になると結局 while (等)に直さなく
ちゃならないからな。で、break で抜けるか、repeat でリトライ
するか exit で終わるか。最後の break 忘れてたまに永久
ループするが、自分のルール決めとくと色々と楽。

390 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/08(月) 22:24:43.99 ID:psu8l3Ri0.net]
1回しか処理しないwhileループ(ループしないんだけど)は結構使う
goto気分なんで作法としては良くないんだと思うw

391 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/08(月) 22:43:11.57 ID:q6wGz54s0.net]
>>373
俺も最初はwhileでやってたんだけど最初に条件書いて後からこれ無理じゃんって書き直すのが面倒になってrepeat使い始めたんだよなあ
結局whileもrepeatも殆ど同じだし好みでやれって感じなんだけどもね

392 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/09(火) 01:39:35.93 ID:jgOpUMsF0.net]
while 1
の次

393 名前:の行に break と書けば
wend までがコメント扱いになるしな
あ、repeat 〜 until 0 なら完全に同じか
[]
[ここ壊れてます]

394 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/09(火) 13:01:50.38 ID:1WZBuseG0.net]
ループじゃなくてエラー抜けしたい処理を repeat 〜 until true で括って
breakでエラー抜けさせられるのが便利かなとおもったり

395 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/09(火) 13:09:25.22 ID:E077VohF0.net]
バッドノウハウ

396 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/09(火) 13:15:51.55 ID:veqitIsJ0.net]
取り敢えず試行して結果ダメならもう一回 → repeat
条件判定してやるべきことがあり、失敗がある場合 → while
条件が連番 → for if

普通こうだろ?

while 1 は条件認識に失敗してもう一度やってしまう可能性があるから、2回やってはダメな作業ではやるべきではないと思う
キー入力は処理が終わった後 while getkey(vk_???); wend を入れると2重操作しなくなるので個人的にお勧め



397 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/09(火) 18:11:53.51 ID:J8eUxq4a0.net]
>>379
普通はそうなんだけども条件でループさせたい場合はifbの後にrepeat入れちゃうわ
複数分岐の場合は最初に全部条件書けるし

398 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/09(火) 20:23:07.69 ID:YfsIcBb90.net]
仕事とかでコーディング規則とかうるさいならまぁ意識するけど
uwscなんて自分で半分趣味でやってるからrepeatだろうがwhileだろうが全然気にしてないわ

399 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/09(火) 20:43:04.20 ID:2Jw3VGRi0.net]
仕事や規則(規約)じゃないからこそ自分好みに拘るのが楽しいんだがな
毎度変わるのはまだ量が不足してんじゃないか?

400 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/09(火) 20:45:50.92 ID:YfsIcBb90.net]
そんなん人それぞれ
自分の考えが全て他人に当てはまるもんじゃないんだよ

401 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/09(火) 20:47:38.91 ID:sFsF0+bo0.net]
俺もそう思うね
好き勝手できるからこそ拘れる喜び
ポリシーの見えない無秩序なコードは下だな

402 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/09(火) 21:02:41.78 ID:SHfDBLWX0.net]
UWSってVSでコーディングできる?

403 名前:名無しさん@お腹いっぱい。 [2018/10/09(火) 21:15:17.11 ID:qz/r21PC0.net]
趣味でやってるもんに上も下もねえだろ
なんですーぐマウントとりだすかね…
仕事で無秩序なコード見せられたら確かにキレるけどさ

404 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/09(火) 21:20:46.10 ID:2Jw3VGRi0.net]
>>385
https://www.google.com/search?q=VSCode+uwsc

コードスタイルの話しでふと思い出したがいい加減5chも行頭スペース書けるようにならんかね

405 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/09(火) 21:39:30.87 ID:SHfDBLWX0.net]
>>387
こりゃいいね あり

406 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/10(水) 09:39:07.87 ID:wB0Sw+5m0.net]
UWSCのバグなのか良くわかりませんが、

Thread あいうえお(1)

Procedure あいうえお(A)
select A
case 1
処理
case 2
処理

のようにし、普通に動くんですが、稼働し続けると1週間に1回とか、1ヶ月に1回ぐらい、

select A の行を指して、オーバーフローor型の不一致エラーが出ます。関数のカッコの中は正数のみ指定していて、変数などは渡していません。
なにか対処方法はありますでしょうか?

また、もうひとつUWSCを起動して、メインUWSCのステータスを定期的に取得して監視してるのですが、上記のエラーで停止していても当然ながら正常のステータスしか返ってきません。
エラーのメッセージが出て停止していることを、別のUWSCから検出する方法はありますでしょうか?(メッセージボックス自体の画像認識以外で)



407 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/10(水) 10:41:57.80 ID:DzrUE3kS0.net]
どんな文書いてるかが分からんからあれだけどAに入る値が無い場合だとそのエラーが起こる
()内の正数を決め

408 名前:髟舶ェでエラー起こしちゃってるんじゃないかな? []
[ここ壊れてます]

409 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/10(水) 10:44:16.54 ID:6jl6islu0.net]
>>389
別のUWSCではないけど、
Try〜EndTryでそのSelectを囲っての検出はどうですか?

410 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/10(水) 11:25:17.04 ID:2edAkwH40.net]
if文を処理の途中で中断させるにはどうすればいいですか?
UWSC自体を停止や、終了は無しでお願いします

411 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/10(水) 11:31:21.21 ID:B7BaAdq60.net]
>>392
ただのifなのにループのbreakみたいな不細工な書き方はしない

中断条件を満たした場合の処理と満たさなかった場合の処理を書けばいいだけ

412 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/10(水) 12:10:38.69 ID:HOdIOtwN0.net]
>>390
スクリプトのあちこちから、
Thread あいうえお(3)
とか、
Thread あいうえお(5)
とかで呼び出してます。
数値無しで呼び出してる箇所はありません。
ずーっと繰り返してるマクロなので、稼働1週間とかでエラーが出るのが謎過ぎです笑

413 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/10(水) 12:14:19.42 ID:wB0Sw+5m0.net]
>>391
なるほど〜
実は全体が4000行ぐらいあって、こういうのが週1とか月1で発生してて、毎回発生箇所がバラバラなので、発生の度にその箇所をしらみ潰しにエラー回避処理するのはなかなか骨がおれるんです笑

414 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/10(水) 16:05:36.97 ID:Siswhpib0.net]
>>379
>while getkey(vk_???); wend
ああ、こう書けばキー入力した状態が残るの100%防げるんだ
思考停止でSLEEP挟んで物理的に時間取ってたわ
WHILE TRUE
IFB GETKEYSTATE(VK_???)
SLEEP(0.1)
ELSEIF GETKEYSTATE(VK_???)
SLEEP(0.1)
ELSE
BREAK
Endif
WEND
ほんでこんな関数作って挟んだらいいのかな全部置換しよ

415 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/10(水) 16:09:28.03 ID:DzrUE3kS0.net]
vk_???の???に変数入れることって出来ない?inputで手に入れた文字を入れたいんだけど

416 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/10(水) 16:21:34.69 ID:02J1kihP0.net]
key = "VK_" + ????
GETKEYSTATE(key)
でできない?試したことないけど



417 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/10(水) 16:23:07.09 ID:PXd4h0yU0.net]
>>397
VK_???はただの定数だから対応する数字を入れればいいよ
VK_Aは65とか

418 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/10(水) 16:33:28.82 ID:DzrUE3kS0.net]
>>399
それは分かるんだけどその数字の入れ方が分からん
文字=input
kbd(vk_文字)じゃダメだった

419 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/10(水) 16:40:50.61 ID:PXd4h0yU0.net]
>>400
インプットされた文字をASC()でコードにして
文字=ASC("A")
ってしてそのまま
kbd(文字)
とかって数値として入れればいいはず

420 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/10(水) 16:47:56.75 ID:PXd4h0yU0.net]
400のアレンジで書くならこうね
文字=input("入力して")
コード = ASC(文字)
KBD(コード)

421 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/10(水) 16:53:14.97 ID:DzrUE3kS0.net]
>>401>>402
なるほどありがとう

422 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/10(水) 19:37:57.15 ID:dbdlcC520.net]
文字 = input()
eval("kbd("+"vk_"+文字+")")
これでもできるけどオススメはしない

文字 = input("キー名を入力(vk_*** の ***部分)")
while eval("getkeystate("+"vk_"+文字+")");wend
while true
if eval("getkeystate("+"vk_"+文字+")")
print 文字+"キー押下中"
endif
sleep(0.1)
wend

423 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/12(金) 11:26:07.50 ID:FPZfSE8Q0.net]
elseifを使うとカーソルが左上に移動するのは昔からだっけ?

424 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/12(金) 13:03:58.71 ID:KQvIG5lV0.net]
ハァ?

425 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/12(金) 13:06:31.67 ID:u0GkX7Wq0.net]
>>405
何言ってるのか分からんがたぶんそれエディタの機能じゃね

426 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/10/12(金) 14:26:32.00 ID:FPZfSE8Q0.net]
elseifさん関係なかった
その下でVKをBTNで押してるのに気付かなかった



427 名前:さいきょうのかんがえ [2018/10/12(金) 14:37:31.41 ID:pZ2tE50H0.net]
R

428 名前:ubyをuwscみたいに実行ファイルにして同等の機能(関数)を付けたら20世紀に激震と大改革をもたらすと思うよ []
[ここ壊れてます]






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<278KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef