2ch勢いランキング アーカイブ

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


名無しさん@お腹いっぱい。 [sage] 2013/05/01(水) 01:45:36.14 :UFD+MPgf0
Windowsの作業を自動化するツール
フリーソフト版とシェアウェア版の2種類がある
ttp://www.uwsc.info/download.html

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

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

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

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

Q.シェアウェア版で「L22が存在しません」とエラーが出て一部機能が動作しない
A.割れシリアルを使った時に出る、ささやかな割れ対策
名無しさん@お腹いっぱい。 [sage] 2013/05/01(水) 01:46:34.50 :UFD+MPgf0
●Pro版の追加機能
EXE化ツールが付属しています。(EXE化後は単体での実行が可能であり、ライセンスフリーにて配布できます)
IE(Web)用記録ツールが付属しています。(Web上の動作をUWSCのスクリプトとして記録する事ができます)
HTMLを利用した画面関数が使えます。
EXCELシート用関数が使えます。(OpenOffice.org/LibreOfficeの表計算(Calc)に対しても可)
デバッガが付属しています。

●質問したい方へ
「○○作れますか?」→ 可能か不可能かを聞いているのなら答えは「作れる」
「○○が作りたい」→ 自分が作れば?並大抵の事ならググれば似たようなスクリプトや知識が見つかる
「○○作って下さい」→ 依頼スレじゃありません。
過去ログを見る、検索する等、自分で出来る事を書き込む前にするように。
自力で作ったのを晒すか、具体的な解らない場所を提示して、改善点や解決策を求めるようにしましょう。

●スクリプトを晒す上での注意
他人が読みやすいようにインデントを付けるように。解らない人はググレ。
(タブインデントは使えないんだぜ 全角スペース等に 変換しておくべし)
言いたい事に関係無い部分は 〜○○の処理〜 や 処理A 等のようにし、
必要な部分を晒すようにする。

●他人の書いたスクリプトを安易に実行しないように。
ハードディスクをフォーマットされたりしても、自己責任。

●前スレ
8 ttp://anago.2ch.net/test/read.cgi/software/1333915056/
7 ttp://anago.2ch.net/test/read.cgi/software/1312390804/
6 ttp://hibari.2ch.net/test/read.cgi/software/1291347103/
5 ttp://hibari.2ch.net/test/read.cgi/software/1260304053/
4 ttp://pc12.2ch.net/test/read.cgi/software/1235990960/
3 ttp://pc11.2ch.net/test/read.cgi/software/1176677869/
2 ttp://pc11.2ch.net/test/read.cgi/software/1156416884/
1 ttp://pc7.2ch.net/test/read.cgi/software/1107738590/
名無しさん@お腹いっぱい。 [sage] 2013/05/01(水) 01:47:59.74 :UFD+MPgf0
次スレは がお願い。
名無しさん@お腹いっぱい。 [sage] 2013/05/01(水) 01:57:31.78 :J8309YQV0
で、前スレどこっすか?
名無しさん@お腹いっぱい。 [sage] 2013/05/01(水) 02:21:26.46 :UFD+MPgf0
●前スレ
自動化ツールUWSC使いよ集まれ9
9 ttp://anago.2ch.net/test/read.cgi/software/1350040751/
8 ttp://anago.2ch.net/test/read.cgi/software/1333915056/
7 ttp://anago.2ch.net/test/read.cgi/software/1312390804/
6 ttp://hibari.2ch.net/test/read.cgi/software/1291347103/
5 ttp://hibari.2ch.net/test/read.cgi/software/1260304053/
4 ttp://pc12.2ch.net/test/read.cgi/software/1235990960/
3 ttp://pc11.2ch.net/test/read.cgi/software/1176677869/
2 ttp://pc11.2ch.net/test/read.cgi/software/1156416884/
1 ttp://pc7.2ch.net/test/read.cgi/software/1107738590/

9入れたつもりが入ってなかった
名無しさん@お腹いっぱい。 [sage] 2013/05/01(水) 02:39:56.34 :JLKkaJw60
名無しさん@お腹いっぱい。 [sage] 2013/05/01(水) 06:16:54.32 :hAM2hSNN0
おつ!ROM勢だけどおつ!
名無しさん@お腹いっぱい。 [sage] 2013/05/01(水) 23:27:08.12 :Dey3AEuf0
呼び出し関係をまとめてみた

◇UWSC スクリプトからの呼び出し
UWSC.exe
 └[MyScript].uws
   ├CALL [MySubScript].uws
   ├DLL 関数
   ├COM オブジェクト
   ├PowerShell スクリプト
   ├DOS コマンド
   ├EXEC 各ファイルの実行
   └キー、マウス、コントロールの制御

◇UWSC 関数の呼び出し
 ┌COM オブジェクト イベント
 ├キー イベント
自作関数


がんばれば Win32API 使ってメッセージループできるけど向いてない。
ウィンドウクラスだけダミーで作って
GetMessage の後、DispatchMessage をせずに UWSC スクリプトの中で回せば簡単だけどこれは非推奨。


HSP に、ウィンドウメッセージ受信用 DLL (hsgetmsg.dll) がある。
これは HSP 専用プラグインだが、これと同様の DLL があれば UWSC でも簡単にメッセージを受信できる。
ウィンドウ関連の構造体データを DOM 的にアクセスできるようになれば、
ネイティブコントロールの作成とかも手軽にできるようになるかもしれない。
あ、それをやってくれるのが seraphyscripttools とか SFCmini のような COM オブジェクトなのか。
名無しさん@お腹いっぱい。 [sage] 2013/05/01(水) 23:32:52.72 :2h2u3XE30
UWSCのグループチャットってやつか
作者同士がUWSCネットワークを介して交流とか夢が広がるな
名無しさん@お腹いっぱい。 [sage] 2013/05/02(木) 22:13:22.41 :0OJElBe90
Aは画像認識→あったらクリック という命令として
今の自分の書き方だと [A1 A2 A3 … A25]
みたいに画像認識がすごく多くて1週するのに時間が結構かかっています。
↓みたいに命令を実行させたいのですが、どう書けば良いでしょうか?

・A1〜A20は連続の3個を1ブロックとして、どれか1個実行されたら1個ずつずらしていく
  例:[A1.A2.A3]→どれか実行→[A2.A3.A4]→どれか実行→[A3.A4.A5]→…
   →[A18.A19.A20]→略→[A19,A20.A1]→略→[A20.A1.A2]→略→(最初に戻る)
・A21〜A25は常に実行
名無しさん@お腹いっぱい。 [sage] 2013/05/03(金) 11:21:57.02 :WnnnYhHu0

3つずつ
for i = 0 to (length(A)-1)/3 step 3
 jMax = i + 2
 if length(A)-1 < i+j then jMax = length(A)-1
 while true
  for j = i to jMax
   ifb CHKIMG(A[j])
    処理
    break 2
   endif
  next
  // ここで毎回の処理
  sleep(0.1)
 wend
next

処理後に exit する関数にすれば
for i のループ
 3つずつの関数(A, i)
 毎回処理する関数(A, 開始位置, 終了位置)
 sleep(0.1)
next
って感じで少しすっきりする。
名無しさん@お腹いっぱい。 [sage] 2013/05/03(金) 11:44:55.02 :WnnnYhHu0
ttp://cx20.main.jp/blog/hello/category/win32-gui/
UWSC の GUI 版 Hello World! ソース見てびびった。
UWSC も PowerShell も、C#のソースを文字列定義して呼び出してるだけ。

ただ、.net ”開発”環境もいらないし
PowerShell 実行制限を迂回できると言うことで、
単に実行するだけならいい環境だったりするかも。


で、その下の Lua ってのが Win32API 使ってGUI使ってる。
Lua は以前チャレンジしようとしてやっぱ手が出なかったんだけど、
ネイティブの GUI が使えるとなると・・・
ま、RAD ツールがないと面倒なんだけどね。

それで、ちょっと、 UWSC と Lua の言語比較してみた。
すると、Lua の記述が UWSC と近いことが判明。
今までは Lua っぽいコードばっかり見てたから受け付けなかったのかな。
UWSC と違う部分は C言語っぽい。
ttps://docs.google.com/spreadsheet/ccc?key=0AnJADoDttLA2dDhmU1dDR2s1R2tQcmJNQW5UYWVraFE#gid=4

最初は UWSC に Lua を組み込もうかと思ってたけど
見れば見るほど「Lua すげー」ってなってる。
コールバックが使えるスクリプトとして、MIKO スクリプトってのも考えたけど、
Lua なら UWSC にコールバック機能を持たせることができるかも。よく知らないけど。
UWSC+API でやるのとどっちが簡単だろうね。
名無しさん@お腹いっぱい。 [sage] 2013/05/03(金) 20:40:37.35 :OYSIXHk10

ありがとうございました
改善案からさらに改良していくのが面白い(できたら
名無しさん@お腹いっぱい。 [sage] 2013/05/03(金) 20:40:45.70 :wT0yks5g0

乙!
名無しさん@お腹いっぱい。 [sage] 2013/05/03(金) 22:27:43.92 :WnnnYhHu0
は /3 とか変なのが残ってたね。
j を i*3 〜 i*3+2 ( i は step 1 )でやるか
i 〜 i+2 ( i は step 3 )でやるか迷ってて消すの忘れてた。


UWSCと関係ないけど、
3回ずつだと端数が出るからループ脱出条件が2つになる。
もし、3で割り切れる個数ならそもそもループする必要がなく、こう書ける。

for i = 0 to max step 3
 print data[i]
 print data[i+1]
 print data[i+2]
next

端数をループの外で書けば端数の問題は解消するけど、同じ処理を他の場所でやることになる。
C言語とJavaではこんな書き方がある。
書き換えるのがめんどいのでこぴぺ。

register n = (count + 7) / 8;
switch(count % 8) {
 case 0: do {  *to = *from++;
 case 7:     *to = *from++;
 case 6:     *to = *from++;
 case 5:     *to = *from++;
 case 4:     *to = *from++;
 case 3:     *to = *from++;
 case 2:     *to = *from++;
 case 1:     *to = *from++;
      } while(--n > 0);
}
名無しさん@お腹いっぱい。 [sage] 2013/05/04(土) 00:57:47.63 :EHWA8zF+0
RGB=PeekColor(512,384)
これやると真ん中指定しますが
X座標を502〜522、Y座標を374〜394くらいの範囲で指定したいんですけどできますか?
イメージはこんな感じです
ttp://www1.axfc.net/uploader/so/2889577.png
名無しさん@お腹いっぱい。 [sage] 2013/05/04(土) 01:02:00.35 :jsdWHLfU0
できますよ
名無しさん@お腹いっぱい。 [sage] 2013/05/04(土) 02:02:27.40 :EHWA8zF+0

よかったら教えてください

RGB=PeekColor(502,374,522,394)
↑こうではないですよね・・・?
名無しさん@お腹いっぱい。 [sage] 2013/05/04(土) 09:57:57.81 :RMywkBWm0

範囲でってどういうこと?
A. その周辺の色を混ぜ合わせた色?
B. それとも、その周辺のドットの集合?

どちらにせよUWSCでは2重ループで繰り返し実行ですね。
A の場合はそれを配列に入れて平均値を計算。

WindowsAPI なら BitBlt で矩形指定してコピーもできる。
ただし、メモリイメージそのままなので色の平均値は自分で計算だし、
BitBltするまでがちょっとめんどい。
名無しさん@お腹いっぱい。 [sage] 2013/05/04(土) 13:10:04.43 :EHWA8zF+0

RGB=PeekColor(512,384)
これだと画面の真ん中のみ有効じゃないですか
画面の真ん中から少しずれてもいいように多少大きく範囲をとりたいと思ってるんです

色ではなく場所です
名無しさん@お腹いっぱい。 [sage] 2013/05/04(土) 13:36:51.44 :RMywkBWm0

いや、PeekColor に範囲とかないから。

アクセサリのペイントを開いてスポイトツールを使ってみて。
それが PeekColor と同じ機能。
名無しさん@お腹いっぱい。 [sage] 2013/05/04(土) 14:10:16.36 :bgLiGgAt0

だから取りあえず2重ループでやってみればいいじゃん
スピードが遅いんならそんとき別の方法を考えれば良いんだし
名無しさん@お腹いっぱい。 [sage] 2013/05/04(土) 14:13:21.57 :fhgFSR4lT
範囲をとりたいってどういう意味だ
名無しさん@お腹いっぱい。 [sage] 2013/05/04(土) 18:52:56.14 :D1FvgZDG0
なんか1ドットの画像用意してchkimgのほうが…
名無しさん@お腹いっぱい。 [sage] 2013/05/05(日) 08:21:48.74 :X98CB5ag0

たぶんそういうことなんだろうね。



テスト駆動開発
ttp://appkitbox.com/knowledge/test/2013/01/15/tdd_basic

1.エラーになるコードを書く (呼び出し、エラーを返す。つまり、エラー処理を書く。)
2.正常処理するコードを追加 (正常でない場合、1のコードに飛ぶので、またひとつコードが増える。)
3.書いた分をきれいにまとめる。
4.1〜3を繰り返す。

正常なコードをすぐに書ければいいけど、やっぱり試行錯誤になるよね。
試行錯誤を繰り返すとコードは汚くなるので、動いた時点できれいに書き直したほうがいい。
それを少しずつ積み上げることで、全体として完成したときに全体がきれいに仕上がっているはず。

とは言え、これは言語やライブラリを理解したうえでコードを書くことが前提なので、
関数がどう動くのかどう使えるのか分からないときには
その関数だけのためにテストコードを書かないとひどいことになる。
名無しさん@お腹いっぱい。 [sage] 2013/05/07(火) 13:33:15.13 :Lu0ACr7p0
uwscの別プロセスのものが何故か自動で機能しなくなりました
関連ないことなのかもしれませんけどほぼ同時期に
一部ソフトを再起動させても、そのまま終了し起動しなくなりました

問題が曖昧すぎですが、何が問題なのか自分でもサッパリ分かりません
どうか分かる方がいましたらお願いします。
名無しさん@お腹いっぱい。 [] 2013/05/08(水) 00:09:08.30 :zkJ+gGFf0
IEを起動したら、ウインドウのIDを取得して操作したいんだけど、

IE = CREATEOLEOBJ("InternetExplorer.Application")
IE.visible = True
IE.navigate("about:blank")
repeat
sleep(0.1)
until !IE.busy AND IE.readystate=4
IEid = GETID("Windows Internet Explorer",-1)

いつ迄待ってもIEidが-1のままになってしまいます。
何か、間違ってます?
名無しさん@お腹いっぱい。 [sage] 2013/05/08(水) 00:28:37.51 :Sp3KJhYH0

クラス名を -1 にするからだろ
IEid = GETID("Windows Internet Explorer", "", -1)
名無しさん@お腹いっぱい。 [sage] 2013/05/08(水) 03:12:47.87 :awrNk5up0

画面は消えているように見えるのにプロセスが残っているために二重起動防止で落ちてるとかよくある。
27 [sage] 2013/05/08(水) 03:14:22.22 :zkJ+gGFf0

できました、ありがとうございます!
名無しさん@お腹いっぱい。 [] 2013/05/09(木) 00:28:49.53 :L2rgOZUy0
今janeを開いてて、
<<ITM_ACCCLK>>の113)が
自動化ツールUWSC使いよ集まれ10のこのスレなんだけど、
こういうののACCCLKってどうやって取得するの?
getstrとかでも取得できないんだけど、
ネットにあがってるスクリプトだと出来る
何が違うの?やり方教えて
名無しさん@お腹いっぱい。 [sage] 2013/05/09(木) 08:49:34.24 :e+gJTAz80

そのツールで取得できたんならよくね?
もし、クリック以外の何かをしたいんならツールと同じように取得すればよくね?

取得方法は以下のやつをループ
GetAllWin() の ALL_WIN_ID[]
GetItem() の ALL_ITEM_LIST[]
名無しさん@お腹いっぱい。 [sage] 2013/05/09(木) 21:56:55.50 :L2rgOZUy0

わかんない!おしえて!!
名無しさん@お腹いっぱい。 [] 2013/05/10(金) 00:45:03.85 :L/LQJXd50
入力したいフォームに高レベルな記録で
文字を入力してみましたが、保存したuwsのファイルには
何も書かれていませんでした。
こういう場合自動で入力は不可能ですか?
また、
フォームが1〜5まであって
getstrで文字を全て取得したいんですが、
なぜかアクティブになってるフォームしか取得できないです。
VK_TABで1個1個アクティブにして取得するのは格好悪いです
こういう場合どうすればいいですか?
27 [sage] 2013/05/10(金) 03:08:15.93 :iZDIOuiS0

そんな場合、どうしたらいいですか?
名無しさん@お腹いっぱい。 [sage] 2013/05/10(金) 04:01:48.08 :IYZT/2Fo0

> なぜかアクティブになってるフォームしか
HTML なら DOM 使う。
Winフォームなら裏側は非表示だろうから無理なんじゃね?
スパイアプリでコントロールIDでも取れれば API 経由でいけるかも。


ALL_ITEM_LIST とかでぐぐる
ヘルプ見る


タスクマネージャから終了するか
taskkll コマンドで終了するか
PowerShell の Stop-Process か
Windows を再起動。
名無しさん@お腹いっぱい。 [sage] 2013/05/10(金) 11:03:26.01 :XLdy1TSW0
("Microsoft.XMLhttp")を呼び出して
ソースを引っ張ってくるようにしてるんですが
オフラインなどで
エラーが出る時の処理を分岐させたいんですが
エラーを感知する方法が分かりません・・・

sendを先に書いておかないと
statusを取れないし
sendを先に書いてしまうとエラーを感知して止まってしまいます
名無しさん@お腹いっぱい。 [sage] 2013/05/10(金) 11:14:22.74 :BMB7v3wc0

try 〜 except 〜 endtry
または
COM_Err_Ign 〜 COM_Err_Ret して COM_ERR_FLG で判断
名無しさん@お腹いっぱい。 [sage] 2013/05/10(金) 13:11:55.92 :IYZT/2Fo0
MacromediaFlashPlayerActiveX を Chrome と FireFox でもできんかと
GetWindow で GW_CHILD して GW_HWNDNEXT のループして GetClassName してたけど
前スレにあったわ。

GETCTLHND() で取れる IEFrame だけが可能なだけだったんだな。
GetAllWin() で取れる TabThumbnailWindow を対象にしても駄目だったんだ。
無駄な努力だった。

Win7+IE9の場合
IEFrame
└Frame Tab
 └TabWindowClass
  └Shell DocObject View
   └Internet Explorer_Server
    └MacromediaFlashPlayerActiveX

しかし、ActiveX ならHTAでもアプリでもいける・・・
ってな感じで2ヶ月くらい迷走してるわ。
名無しさん@お腹いっぱい。 [sage] 2013/05/10(金) 13:20:58.75 :vQF21Pdv0

ありがとうです
後者で何とかいけそうです
名無しさん@お腹いっぱい。 [sage] 2013/05/15(水) 14:50:39.17 :8Ef9V77q0
いいことが書いてあった

これからコードを書く人に絶対やって欲しいこと★2
ttp://kohada.2ch.net/test/read.cgi/prog/1365269189/36
12 :仕様書無しさん [↓] :2013/03/10(日) 16:47:33.91
  動的型付け言語なら高機能なテキストエディタを使え
  静的型付け言語ならIDEを使え。
 
  なぜなら、動的型付け言語ではIDEのサポートが十分に得られない。重いだけ。
  静的型付け言語はコード自体は冗長になるが、IDEのサポートで大幅に生産性が上がる。

15 :仕様書無しさん [↓] :2013/03/10(日) 16:55:11.95
  コードは書くことよりも、読む時のことを考えろ。
  短く書いたとしても、読みにくければそれは駄目なコードだ。
  コーディングにかける時間の8割は、コードを読むことに使わている。


> 理由が書いてない(納得出来ない) コーディング規約はゴミだ。作るな。従うな。
名無しさん@お腹いっぱい。 [sage] 2013/05/16(木) 11:11:10.72 :fge6S+mG0
コーディングにかける時間の8割は、コードを読むことに使わている。

あぁ、そう言えば全くのその通りだった。殆どの時間読んでるわ。
名無しさん@お腹いっぱい。 [sage] 2013/05/16(木) 18:50:31.65 :hpeuLRSK0
スレチ
名無しさん@お腹いっぱい。 [sage] 2013/05/16(木) 20:18:54.78 :n6eGebxe0
最近変なやつが居座ってオナニーしてんのな
名無しさん@お腹いっぱい。 [sage] 2013/05/19(日) 13:06:25.09 :EcUCy2sL0

そのスレ参考になったぞ
そしてUWSCの言語仕様の限界を改めて認識してしまったな
名無しさん@お腹いっぱい。 [sage] 2013/05/19(日) 14:17:27.94 :1aluXXUfT
そのスレに興味を持つレベルならuwscなんて卒業しろ
uwscなんて本格的なプログラミングするためのものじゃない
名無しさん@お腹いっぱい。 [sage] 2013/05/19(日) 15:03:43.05 :m3wI8dtS0
これでline荒らしたら、人間関係崩れたんだけど
このソフト糞だわ
名無しさん@お腹いっぱい。 [sage] 2013/05/20(月) 01:35:00.14 :TQJJeLFcP
Lineやってことないんだけど
PC版Lineの画面ってどんな感じ?
名無しさん@お腹いっぱい。 [sage] 2013/05/24(金) 19:55:46.71 :e0QL6y9C0
クリックの繰り返しの際に、

for i=0 to 100
BTN(LEFT,DOWN,964,553,100)
BTN(LEFT,UP,964,553,62)
SLEEP(1)
next

こんな感じになると思うんですが、繰り返し回数(この例では100)を、コマンドラインから、
UWSC.exe TEST.UWS 100 のように引数で渡すことはできますか?
名無しさん@お腹いっぱい。 [sage] 2013/05/24(金) 20:05:39.37 :ZALXYKaU0
できますよ
名無しさん@お腹いっぱい。 [sage] 2013/05/24(金) 20:22:36.77 :e0QL6y9C0

スクリプトの方では、引数をどう受け取ればいいんですか?

for i=0 to 100

の100のところなんですけど・・
名無しさん@お腹いっぱい。 [sage] 2013/05/24(金) 20:27:58.59 :ZALXYKaU0
ヘルプの起動時パラメータを見ろ
名無しさん@お腹いっぱい。 [sage] 2013/05/24(金) 20:39:18.13 :e0QL6y9C0
for i=0 to =PARAM_STR[0]
 BTN(LEFT,DOWN,964,553,100)
 BTN(LEFT,UP,964,553,62)
 SLEEP(1)
next

コマンドライン UWSC.exe TEST.UWS 100

こうですな。どうもありがとう
UWSCのHELP、俺のPCだと開かないんだよね・・なんか環境がどうのこうのみたいなんだけど。
名無しさん@お腹いっぱい。 [sage] 2013/05/26(日) 16:45:15.20 :79a+oPyO0
UWSCの配列まわりでバグを発見した。
データが欠損するバグだ。これは致命的だ。
検証し速やかに報告をしなくては。
と思ったら俺オリジナルのバグだったまる
名無しさん@お腹いっぱい。 [sage] 2013/05/26(日) 22:07:51.28 :u6CyF/yT0
おまおれ
名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 12:47:44.70 :Vb6K8W270
配列の添字の仕様がアレですからねぇバグも出るよ。
名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 19:28:11.14 :wLizV2di0
配列添字の仕様で何かあったけ?
名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 20:08:20.89 :UeY4Jb/F0
ifb CHKIMG("check.bmp") then
SOUND("bell.wav")
endif

check.bmpという画像を元に、
"色を無視して形でチェックする"動作を行わせたいのですが、この場合どう記述すればいいのでしょうか?

CHKIMG("check.bmp",-1)ってやっても認識されなかったんだ・・・
名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 20:12:28.36 :UeY4Jb/F0
何か日本語おかしいな
check.bmpと同じ画像ではなく、同じ形の画像を認証させたいんだ
名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 20:31:14.36 :YVez0SZR0

C系言語が広がったんで
配列は0から始まるのが普通になったけど
それ以前は1から始まるのも結構あった
名無しさん@お腹いっぱい。 [] 2013/05/28(火) 20:41:49.26 :8GBjDRZd0
Cが広まったのってもう20年以上前のことじゃね?
名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 21:10:40.04 :w2XUmqDx0
配列が1から始まるのってBASIC系くらいじゃないの?
それよりも DIM A[10] ってしたとき A[0]〜[10]になるほうが慣れないなぁ
名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 21:11:42.12 :wLizV2di0
UWSCだって0始まりだよ。SafeArrayはともかく。
配列定義で DIM a[2] とやると 0〜2 の3つになるのはBASIC系言語の仕様でしょ
VBA、VBS、VB.NET、ActiveBasic …。もちろんUWSCはBASIC系。
社会人なら、エクセルのVBA位さわった事あるだろし
C系言語だけしか知らないのはどうかと思う
名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 21:38:44.82 :fFOk9yr80
今でもCOBOLのような業務系言語は基本的に1から。
名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 22:52:34.23 :SHgBZdOG0

これこれ
これが原因

添え字最小〜最大     = 配列数
1〜配列宣言時の数値   = 配列宣言時の個数    BASIC系
0〜配列宣言時の数値−1= 配列宣言時の個数    C言語系
0〜配列宣言時の数値   = 配列宣言時の個数+1 UWSC

FOR ループでは

for i = 0 to length(配列) -1   next UWSC
名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 23:09:52.74 :wLizV2di0

何言ってんの?
BASIC系も添え字最小は0だろが
名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 23:11:26.96 :SHgBZdOG0
マジで?


length(配列)じゃなくてmax(配列)として、添え字の最大値を使えればミスらないんだけどな。
for i = min() to max(配列)      next

これで解決。
名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 23:19:58.95 :wLizV2di0

上限値が欲しいなら Resize(配列)
for i=0 to Resize(配列)
next
名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 23:20:47.73 :SHgBZdOG0
maxだと要素中の最大値を求めるっぽくて駄目だな。
配列の添え字の最大って分かるようにしないと。
名無しさん@お腹いっぱい。 [sage] 2013/05/28(火) 23:35:21.36 :SHgBZdOG0

resizeで取れるならいいけど、一見して分かりにくいワードだな。まいっか。

C言語と同じ比較すればいいんだけどな。
添え字のカウントアップを忘れそうなのがな。

i = 0
while i < length(配列)
 i = i + 1
wend


だいたいBasic系の to って言葉が悪いよ。
なんで「〜の手前まで」って表現がないのか。
「To the front of」とか長すぎ。
名無しさん@お腹いっぱい。 [sage] 2013/05/29(水) 00:29:57.62 :zRGJR7FJ0
VBのUBound、LBoundが欲しいのか。
ごちゃごちゃしょーもねーな。
今更言ってもかわらねえよ。
名無しさん@お腹いっぱい。 [sage] 2013/05/29(水) 08:45:43.23 :1YG70QEx0
俺はCに慣れてるのもあるから0からが当たり前だと思っているがUWSCさわる人ってプログラムは知らないけどエクセルは使っていてエクセルマクロ(VB仕様?)で考えてる人が多いのかな?
俺はVBほとんどさわらないからその仕様もよくわかってないがw
名無しさん@お腹いっぱい。 [sage] 2013/05/29(水) 14:33:51.97 :klbIS0c8P
COBOLのような勘定系だけは1からだよ
C言語やVBで組んだとしても
名無しさん@お腹いっぱい。 [sage] 2013/05/29(水) 14:37:31.39 :2iSRKVo60
デフォルトは兎も角
環境の宣言で指標の使い方は自由に決める事が出来る言語は多い
名無しさん@お腹いっぱい。 [sage] 2013/05/29(水) 18:39:31.86 :4vdE1OTv0

俺ずっとそれでやってた上で、
> 0〜配列宣言時の数値−1= 配列宣言時の個数    C言語系
だと思い込んでやってたぜ。


VBAって
> 1〜配列宣言時の数値   = 配列宣言時の個数    BASIC系
だったか?
VB6のVBAけっこう使ったが、俺そこでも間違えてたのか?



UWSCってオブジェクト指向プログラミングで開発してるだろうに、提供する言語がコレって何かずるいw
名無しさん@お腹いっぱい。 [sage] 2013/05/29(水) 19:14:49.51 :VcYHKjX50
ttp://www.relief.jp/itnote/archives/001048.php
23区(23個)だから、「str23ku(23)」としたくなるところですが、
インデックス番号が「0」からはじまるため、
「Dim str23ku(22)」という宣言で計23個の配列が用意されることになります。

この「0」からはじまるという点が、配列を難解にしている要因の一つではないかと思うのです。

VBA(Visual Basic for Applications)ではこの0オリジンを1オリジンにすることができます。

> モジュールの宣言セクションに
> 「Option Base 1」
> と記述する

で、これがまたバグの元なので の UBound、LBound で範囲を設定すると言うわけか。
名無しさん@お腹いっぱい。 [sage] 2013/05/29(水) 19:36:42.32 :VcYHKjX50

数値とか個数という表現がさらにややこしくしてるんだな。
配列宣言時に入れる数値が最大なのか個数なのかが違う。

個数 = 10
最大 = 個数 - 1
として

・C言語
int 配列[個数]
for( i = 0; i < 個数; i++ ) {}

・VB, UWSC  (「Option Base 1」 を使わない場合)
Dim 配列[最大]
for i = 0 to 最大  next

で、最大 を入れるべきところで 個数 -1 を使ってたからややこしいと。

VBの場合は「Option Base 1」とか UBound、LBound を使って分かりやすく、間違いにくくできるけど
UWSC の場合は 0 が固定なので。
しかし、配列を処理する関数とか作ればUWSCでもなんとかなるかな。
イテレーターとか言うんだっけ。
token 切り出すみたいに1個ずつリターンしてもらう・・・
あ、配列にセットする場合はセットする関数が必要になってややこしいか。

関数作って覚えるなら、配列の扱いを覚えたほうが早いと言う。
っていうか、連想配列使えば1からでも好きなように出来るけど。
名無しさん@お腹いっぱい。 [sage] 2013/05/29(水) 19:39:11.02 :zRGJR7FJ0
true/falseで-1、0、1、
返り血で正常異常その他、-1、0、1、他、
色々さまざまあるじゃん

勝手な思い込みしないで、どっちだっけ?と確認する癖をつければいいんだよ。

てかレス遡ると配列サイズを得るのにlength()使うひとみたいだし、ヘルプや仕様をろくに読まないで文句いってるんでしょ。
名無しさん@お腹いっぱい。 [sage] 2013/05/29(水) 21:13:32.76 :ly6EKzsC0
sa = SafeArray() が、sa = SafeArray(1,0) と等価になるは納得いかん
上限値はResizeで変更できるけど、下限値は変更不可だから、1始まりのまま。
DIMで作る配列は0始まりなのに、紛らわしい仕様だ。
引数省略できなくするか、または、SafeArray(0,-1)をデフォルトにすべきだと思うな

長さ0の配列作ることのない人には関係ないかもしれんけど
名無しさん@お腹いっぱい。 [sage] 2013/05/30(木) 13:17:18.62 :/ebxCDEe0
どっちにしても全言語で統一されん限り確認は必要なのになに暴れてるんだ
名無しさん@お腹いっぱい。 [sage] 2013/05/30(木) 14:17:39.43 :AiY4CFow0
ttp://officetanaka.net/excel/vba/statement/OptionBase.htm

これ見ると、VBでも、A[5]は0〜4または1〜5であって、0〜5じゃないみたいだけど…?
名無しさん@お腹いっぱい。 [sage] 2013/05/30(木) 14:20:04.29 :AiY4CFow0
A[5]が0〜5になる言語なんて他にあるの?
名無しさん@お腹いっぱい。 [sage] 2013/05/30(木) 14:50:19.86 :AiY4CFow0

true/falseが定数名使わないと何であるかなんか、
定数名使う時点で関係なくなるから配列の添字の問題と関係無いじゃん…

確認するっつったって、確認した上で間違えるだろ、
あの素っ気ないHELPじゃ。


> 多次元配列には宣言が必要: DIM 変数名[数]
> (配列での初期値代入: DIM X[2]=1,2,3  配列数の省略可 DIM X[]=1,2,3 )


これだけだぜ。
「0〜4でも1〜5でもないので注意が必要です」とは書いてないからな。
名無しさん@お腹いっぱい。 [sage] 2013/05/30(木) 14:53:00.40 :AiY4CFow0

あと「ろくに読まない」について。
ヘルプに書いてない仕様が多すぎ。


> // For Next 文
> FOR 変数 = 初期値 TO 終了値 [STEP 刻み値] 
>   処理
> NEXT       // NEXTの後に変数を書いてはダメ


この変数が変更不能であるとは何処にも書いてない。
結果、様々な仕様テストPGを書きまくる必要が出てくる。
名無しさん@お腹いっぱい。 [sage] 2013/05/30(木) 14:53:23.18 :/ebxCDEe0
え…?
お、おう
名無しさん@お腹いっぱい。 [sage] 2013/05/30(木) 14:54:39.41 :arC1A+OO0

サンプルコードが、たまたまそうしてるだけでしょ
ttp://ameblo.jp/tech-note/entry-10157307186.html
名無しさん@お腹いっぱい。 [sage] 2013/05/30(木) 15:13:40.43 :arC1A+OO0

俺も以前それにハマッタわ

for i=1 to 5
 MsgBox(i)
 i=i+1
next

↑これ、VBSでもUWSCでも動作するコードだけど
VBSは、1,3,5 と表示される
UWSCは、1,2,3,4,5 と表示される
名無しさん@お腹いっぱい。 [sage] 2013/05/30(木) 15:38:52.61 :YYGEPe170

自分も前にハマったわ
他の言語じゃ普通に出来るので結構盲点
名無しさん@お腹いっぱい。 [sage] 2013/05/30(木) 15:39:43.26 :AiY4CFow0

VB6のVBAで試したら、

Option Base 0 '0と1でテスト
Public Sub testArrayUBound()
  Dim testArray(5) As Integer
  Debug.Print "LBound = " & LBound(testArray) ' Option Base で指定した数
  Debug.Print "UBound = " & UBound(testArray) ' 常に5
End Sub

正直すまんかった
名無しさん@お腹いっぱい。 [sage] 2013/05/31(金) 17:35:19.78 :98FmSm6p0
画像認証の場合でPCが小さくて画面サイズが小さい場合や
画像認証する画像が一番上に来ていない場合は動作しないの?
名無しさん@お腹いっぱい。 [sage] 2013/05/31(金) 17:44:29.14 :Tw3jfhbR0
1ドットの画像でも検索できる
バックグラウンドの画像でも検索できる
名無しさん@お腹いっぱい。 [] 2013/05/31(金) 19:25:46.81 :xbW2hM4i0
そもそもPCの解像度は関係ないだろ
名無しさん@お腹いっぱい。 [sage] 2013/06/01(土) 04:01:53.53 :OrBbD9si0
バックグラウンドはできないだろ。少なくともXPでは。
Vista以降ではウィンドウの表示イメージをアプリごとに持つようになったからできるかもしれないが。
名無しさん@お腹いっぱい。 [sage] 2013/06/01(土) 05:43:07.34 :IvQurseST
XPでも出来るよ
名無しさん@お腹いっぱい。 [sage] 2013/06/01(土) 17:39:15.30 :VghlwZOf0
VMwareで全て解決
名無しさん@お腹いっぱい。 [sage] 2013/06/01(土) 21:12:15.24 :Qq0Dkwxd0
XPmodeでも解決
名無しさん@お腹いっぱい。 [sage] 2013/06/02(日) 16:57:26.43 :dT70ZztK0
www.uwsc.info/history.html
> DOSCMD関数にてマルチ行の実行を出来るようにした

このマルチ行とはどのように記述すれば実行できるのでしょうか。

マルチ行の実行とは、DOSCMDの画面表示をTrueで実行すると
例えばバッチファイルに
echo テスト1
pause
echo テスト2
と記述して実行した場合と同じように複数行の実行ができると理解していますが、
理解が間違っているでしょうか。
名無しさん@お腹いっぱい。 [sage] 2013/06/02(日) 18:37:36.07 :75ivKy8G0

コマンドラインで1行ずつ入力するのと同じでしょ
バッチファイルとは異なり、gotoやサブルーチンコールなどは無理
名無しさん@お腹いっぱい。 [sage] 2013/06/02(日) 21:18:13.48 :qz1LaLI/0

確認してないけどマルチコマンドの事かと思ってた
echo テスト1 & pause & echo テスト2
こんな感じね
名無しさん@お腹いっぱい。 [sage] 2013/06/02(日) 21:53:53.39 :75ivKy8G0
command = "echo テスト1" + "<#CR>" + "pause" + "<#CR>" + "echo テスト2"
DosCmd(command, false, true)
改行文字を自動的に&に変換してのと同じになるってだけだよ
名無しさん@お腹いっぱい。 [sage] 2013/06/02(日) 22:06:17.70 :oZqy933X0
ファイルが大きくなってきたのでファイルを分割したいんですけど、複数のファイルを読み込む方法があったら教えてください。お願いします。
名無しさん@お腹いっぱい。 [sage] 2013/06/02(日) 22:15:17.97 :pE3hSVB30
ファイルの数だけオープンすりゃいいだけでないの?
何が聞きたいのか分からん・・・
名無しさん@お腹いっぱい。 [sage] 2013/06/02(日) 22:21:25.83 :rUqBSzew0

xpからprintwindowっていうAPIがあってバックグラウンドでもイメージを取得できるようになった
UWSCはこれを使っていると思われる
名無しさん@お腹いっぱい。 [sage] 2013/06/02(日) 22:26:41.51 :oZqy933X0

すみません
hoge.uwsが大きくなったので、hoge1.uwsとhoge2.uwsに分割して、
二つを一つのスクリプトファイルとして読み込んで実行したいです。
名無しさん@お腹いっぱい。 [sage] 2013/06/02(日) 22:32:32.69 :pE3hSVB30

hoge1.uwsに
call hoge2.uws
と書いて呼び出せばいい
名無しさん@お腹いっぱい。 [sage] 2013/06/02(日) 22:41:16.73 :oZqy933X0

・・・まじですか!!
ありがとうございます。
なんかすみません。
名無しさん@お腹いっぱい。 [sage] 2013/06/03(月) 10:06:18.60 :ZGvrm2Kx0
UWSCを使ってPCから音声出力があったらマクロを実行ってできますか?
また、音の高さで分岐とかの処理はできたりしますか?
教えてエロい人
名無しさん@お腹いっぱい。 [sage] 2013/06/03(月) 10:51:37.40 :PFaPKpzq0
音声出力や音の高さを判定するソフトを操作すればいいんじゃないの
名無しさん@お腹いっぱい。 [sage] 2013/06/03(月) 11:02:05.21 :y4dsxozF0
UWSCの恐ろしい所は単体で機能がなくても
ソフト連携で理論上なんでもできるところだ

波形ソフトで数値を取得したり、最悪画面描画でどうにかできそうだな(適当)
名無しさん@お腹いっぱい。 [sage] 2013/06/03(月) 11:10:36.74 :ZGvrm2Kx0
なるほどなるほど また調べます thx!
名無しさん@お腹いっぱい。 [sage] 2013/06/03(月) 16:32:29.59 :9yUXIAt80
音声入力のチェックだけならDICTATE関数で出来なかったっけ?
自分で使ったこと無いからどういう動作するかは知らないけど
名無しさん@お腹いっぱい。 [sage] 2013/06/04(火) 12:41:59.78 :D2R+OfVf0
オシロ表示できるソフトの画面監視すりゃいいんでね?
名無しさん@お腹いっぱい。 [] 2013/06/07(金) 21:26:36.21 :Nu5G3z9f0
ある数値を表示するとき、その数値>0の場合には+記号を付けたいのですが、どうすればいいですか?
名無しさん@お腹いっぱい。 [sage] 2013/06/07(金) 21:41:11.73 :wDDNi1sr0

それ用の関数を作ればいいよ

v = 3
MsgBox("v = " + cnv2str(v))

function cnv2str( x )
  if x>0 then RESULT="+"+x else RESULT=""+x
fend
113 [sage] 2013/06/07(金) 22:09:51.31 :5W9sZJKn0

できました!
ありがとうございますー。
名無しさん@お腹いっぱい。 [sage] 2013/06/09(日) 09:04:22.89 :fsDGzCHa0
久しぶりに使おうと思って最新のを入れて使ってるのですが
A=val("vk_1") でエラーの値しか帰って来ません。
昔はこれで整数に変換されてたとおもうのですが何か変わったのでしょうか?
名無しさん@お腹いっぱい。 [sage] 2013/06/09(日) 10:47:23.46 :5G4zFpJf0
何がやりたいかわからないがエスパーで
A=EVALl("vk_1")
名無しさん@お腹いっぱい。 [sage] 2013/06/09(日) 11:13:10.51 :af6X3Hrn0
A=vk_1だったり
名無しさん@お腹いっぱい。 [sage] 2013/06/09(日) 12:15:43.75 :fsDGzCHa0
すいません、説明不足でした。何がしたいかというと

STOP= EVAL("VK_" + READINI("設定","停止","設定データ.ini" ))
KEY = EVAL("VK_" + READINI("設定","キー","設定データ.ini" ))

IF STOP < 0 then exitexit

while true
fukidasi("tes")
IF getkeystate(STOP) then exitexit
IF KEY > -1 Then KBD(KEY,0)
wend

設定ファイルのキーコードを整数として扱ってそれできちんと設定されているか判断及び設定されているものだけ使用したいのです
教えていただいたEVALだと設定されているのもはきちんと値を返しくれますが使用したくない場合及び間違っている場合では定義されていませんと出て止まります
昔使ってたVALでは間違ってるものはエラーの値を返すだけなので使用したくなければINIで空白にでもしておけば使用しないように出来ました
最新のVALでは仮想キーコードはなぜかすべてエラーの値しか返してくれなかったのでお聞きしました
名無しさん@お腹いっぱい。 [sage] 2013/06/09(日) 18:42:31.00 :5G4zFpJf0
LENGTHを使えば?
空白なら0、なにか設定されていれば数値が返ってくると思うけど
名無しさん@お腹いっぱい。 [sage] 2013/06/09(日) 22:57:37.82 :g0cENTRK0
EVAL("VK_1")が構文評価で数値の1として評価されるなんて仕様が
定義されてるとHELPに書いてないから、作者が黙って仕様変更したんじゃね?
素直にPOS関数で文字列操作して数値変換したほうが。

っつか

TRY
  STOP = VK_0 + VAL( READINI("設定","停止","設定データ.ini") )
EXCEPT
  STOP = ERR_VALUE
ENDTRY

で済んだりして…
ttp://homepage3.nifty.com/ic/help/rmfunc/vkey.htm
名無しさん@お腹いっぱい。 [sage] 2013/06/10(月) 14:04:46.47 :ned+Tr5h0
マクロを完全に使いこなすにはどうしたらいいでしょうか?

書店等に本は出版されていますか?
Google先生のお陰でほとんどのことは出来るようになりました。
新しい壁に今現在ぶつかってしまい、物事さえうまく、説明ができないので知恵遅れだと感じました
名無しさん@お腹いっぱい。 [sage] 2013/06/10(月) 14:26:25.64 :5nXP9bfk0
そうですか
名無しさん@お腹いっぱい。 [sage] 2013/06/10(月) 14:55:17.31 :aLd1WaM10

構造化プログラミング
ttp://www.pro.or.jp/~fuji/mybooks/cdiag/index.html
名無しさん@お腹いっぱい。 [sage] 2013/06/12(水) 19:57:45.20 :dUBULt7r0
膨大なテキストから、特定の文字が含まれてたら
その行の文字を抜き出したいのですが
やっぱり全行を配列に格納してforによる総当たりposやるしかないですか?
もっと効率の良い方法ありませんか?
名無しさん@お腹いっぱい。 [sage] 2013/06/12(水) 20:26:20.96 :3W+l57Sd0

不可能ではないが、UWSCはWindows操作自動化ツールであってテキスト処理ツールではない。
出来たとしても専用ツールと比べ遅くてメモリも沢山食い潰しそうだ。
それより別のツールにやらせてその操作をUWSCで操作するのが本来的な使い方。
プログラミングでやるにしても他にもっと優れた言語が沢山ある。
バッチファイル+コマンドラインツールですらUWSCに勝るだろう。
名無しさん@お腹いっぱい。 [sage] 2013/06/12(水) 20:37:14.22 :3W+l57Sd0
っつか膨大なテキストをファイルに保存して1行ずつ処理すればメモリ食わないなw
名無しさん@お腹いっぱい。 [sage] 2013/06/12(水) 20:54:30.51 :HbO9IEH90

grepとかでざっくり抜き出し、その後uwscで処理が楽そう
名無しさん@お腹いっぱい。 [sage] 2013/06/12(水) 20:56:13.06 :5C+Yw55kT

正規表現使ったら?
名無しさん@お腹いっぱい。 [] 2013/06/13(木) 04:31:11.40 :dpmxU0lB0
メールを常に監視させて、条件に合致するメールを受信したらそれをトリガにしてある動作を走らせたいと考えています。
今風なやり方は、どんなですか?
メールは、Gmailです。

受信したら即座に反応してほしいので、時間差のあるPOPではなくて、IMAPでメーラーを設定するべき?
できればIEだけで何とかしたい。
名無しさん@お腹いっぱい。 [sage] 2013/06/13(木) 04:48:28.60 :fKmP/Ss20
即座に反応が重要ならメールサーバー立ち上げて転送機能を使ったほうがいいと思うよ。

送信は規制があってできないけど、受信は無料のサーバーで可能。
名無しさん@お腹いっぱい。 [sage] 2013/06/13(木) 11:12:32.27 :AtEMVCre0
メールトリガ手法は5年前に既に雑誌掲載済みだぞ

メール1通でPCを遠隔操作「GmailRemoteControl」 :教えて君.net
ttp://www.oshiete-kun.net/archives/2008/06/1pcgmailremotecontrol.html
まさに自爆スイッチ! Eraser&UWSCで緊急証拠隠滅 :教えて君.net
ttp://www.oshiete-kun.net/archives/2008/06/eraseruwsc.html
名無しさん@お腹いっぱい。 [sage] 2013/06/13(木) 18:05:51.60 :oTWqIS7D0

お勧めしないがBecky!2などの有料メーラーは
フィルタリング設定で条件マッチメール受信時に
実行ファイルの実行などを設定できる。
あとはやりたい放題。
名無しさん@お腹いっぱい。 [sage] 2013/06/14(金) 16:08:53.14 :gyZAJIqA0

なんでお勧めしないの?
GmailRemoteControlの方がいい?
名無しさん@お腹いっぱい。 [sage] 2013/06/14(金) 20:38:19.10 :VzX8I5H00

使いはじめるとベンダーロックインされる。
ベッキーのメールデータや振り分け設定などは他のメーラーに移行することが困難
名無しさん@お腹いっぱい。 [] 2013/06/15(土) 12:48:14.34 :zirlsqE10
画像判定について調べてると
ペイントで切り出すと精度が落ちるのでGIMP等で切り出そう!とか書いてるブログがありますけど
これってオカルトですよね?
単純なbmpなのにペイントとGIMPで生成画像に差が出るわけがないと思いますし
それとも何か理由があるんでしょうか?
名無しさん@お腹いっぱい。 [sage] 2013/06/15(土) 12:54:10.56 :1sbplwI70
ただの妄想だな
名無しさん@お腹いっぱい。 [sage] 2013/06/15(土) 13:59:42.24 :uIPTuPji0
あれだろ?精度が落るから繰り返しの中で画像が見つからなくなって止まるんだとか思っちゃう人だったんだろ?
名無しさん@お腹いっぱい。 [sage] 2013/06/15(土) 15:57:40.49 :qj2sql+LT

よくわからんけどマウスで切り取りの範囲選択しにくいってことじゃない
gimpだと細かく調整できる
名無しさん@お腹いっぱい。 [sage] 2013/06/15(土) 19:40:59.65 :RLdsHwZ/0
知り合いの話なんだけどで切り出されるネタが自分の妄想というのは
バレてるけどブログの話として自分の妄想を語る手口ってのは斬新だな
名無しさん@お腹いっぱい。 [sage] 2013/06/16(日) 08:31:03.91 :+GNRXPkP0

どういうこと?
もしベッキーしか使わないと決めるなら、メールをトリガーにしてマクロ起動するのに最適?
名無しさん@お腹いっぱい。 [sage] 2013/06/16(日) 23:11:39.40 :+GNRXPkP0
ttp://www.m88sb.com/Main/Sports/Sports.aspx

ここのユーザーネームとパスワードを入力させたいんだけど、RecIEを使っても記録されない。
inputがtableのなかにあるとできないっけ?

IE.document.getElementsByName("txtLoginID").Item(0).value = "test"
IE.document.getElementsByName("txtPassword").Item(0).value = "test"

IE.document.forms[0].elements[0].value="test"
IE.document.forms[0].elements[1].value="test"

IE.document.forms[0].txtLoginID.value = "test"
IE.document.forms[0].txtPassword.value = "test"

IESETDATA(IE,"test","txtLoginID","ユーザーネーム")
IESETDATA(IE,"test","txtPassword","パスワード")
も、みんなダメだった。
名無しさん@お腹いっぱい。 [sage] 2013/06/16(日) 23:38:52.75 :gFP3JC8Y0
ちょい質問
id = GETID("Microsoft Excel - 新規Microsoft Excel ワークシート.xls", "XLMAIN", -1)
これの xlmain と -1
って言うのは何か意味があるのでしょうか?
名無しさん@お腹いっぱい。 [sage] 2013/06/16(日) 23:50:05.57 :Ow9DJoNE0
あるよ
名無しさん@お腹いっぱい。 [sage] 2013/06/17(月) 00:03:47.36 :DRHhmxFu0

IFRAME内にフォームがあるから、フレームを辿る必要がある

たぶん
IE.document.getElementById("frameLogin").document.loginForm.txtLoginID.value = "test"
IE.document.getElementById("frameLogin").document.loginForm.txtPassword.value = "test"
142 [sage] 2013/06/17(月) 00:42:44.37 :B4TdB57y0

ありがとうございます。
でも、早速やってみましたがダメでした。
名無しさん@お腹いっぱい。 [sage] 2013/06/17(月) 16:43:54.90 :+1hECav50
ページ見てないけどインフレームでの入力ならこれじゃね?


RE:教えてください! umiumi

ドメインが違うIFRAMEの場合は、セキュリティ上 DOMでの制御はできません。

この場合は、SENDSTR関数(ACCを指定)を使用して下さい。
id = GETID("Sleipnir")
SendStr(id, "123456", 6, True, True)
名無しさん@お腹いっぱい。 [sage] 2013/06/18(火) 06:11:02.84 :mv3185SE0
エクセルを開いてマクロを実行させたいんだけど

excel = CreateOLEObj("Excel.Application")
excel.Visible = True
excel.WorkBooks.open("ファイル名")
excel.run("マクロ名")

だと
マクロは実行されるんだけど

COM_Error :例外が発生しました。
○行目:EXCEL.run("マクロ名")

って出るんだけどどこがダメなんでしょうか?
142 [sage] 2013/06/18(火) 12:16:56.15 :QeaOqY7V0

ありがとうございます。

ユーザーネームは

SendStr(id, "test", 3, True, True)

でいけましたが、パスワードは

SendStr(id, "test", 4, True, True)

でダメでした。
検証コードは

SendStr(id, "test", 5, True, True)

でいけます。
名無しさん@お腹いっぱい。 [sage] 2013/06/18(火) 20:31:43.75 :Q44JXB9F0

エクセル?
エクセルのあらゆる自動操作がエクセルVBAで可能で
マクロ記録機能使えばどんな操作もコード化してくれるのに
UWSCでエクセルに何いじるの?
名無しさん@お腹いっぱい。 [sage] 2013/06/18(火) 20:43:30.44 :Q44JXB9F0
こういうことするしかないんじゃね?俺はSENDSTRがACCでフリーズするので直接入力。
アルファベット対応版つくってくれ

// SENDSTR代用関数(フォーカス済みのテキストボックスに数字をタイプ)
FUNCTION sendNumDirectly(sourceNum, lPosX, lPosY, lFlgF10AndEnter=TRUE)
  RESULT = FALSE
  sourceNum = VAL(sourceNum)
  IF sourceNum=ERR_VALUE THEN EXIT
  LeftClick(lPosX, lPosY, 1)
  IF GETKEYSTATE(TGL_IME) THEN KBD(VK_KANJI,CLICK,500)
  KBD(VK_HOME, CLICK, 300)
  FOR lI=0 TO 5
    KBD(VK_DELETE, CLICK, 300)
  NEXT
  IFB sourceNum < 0 THEN
    KBD(VK_SUBTRACT, CLICK, 300)
    sourceNum = ABS(sourceNum)
  ENDIF
  sourceNumStr = "" + sourceNum
  FOR lI=1 TO LENGTH(sourceNumStr)
    aChar = COPY(sourceNumStr, lI, 1)
    KBD(VK_0 + VAL(aChar), CLICK, 500)
  NEXT
  //冒頭の対策でもIMEが解除できなかった(あるいは逆にIMEが起動してしまった)場合の対策
  //F10で半角英数、ENTERで確定。
  IFB lFlgF10AndEnter THEN
    KBD(VK_F10, CLICK, 300)
    KBD(VK_RETURN, CLICK, 300)
    KBD(VK_ESC, CLICK, 300)
  ENDIF
  RESULT = TRUE
FEND
名無しさん@お腹いっぱい。 [sage] 2013/06/19(水) 10:41:01.38 :KHwMYtgZ0

これ、どうやって使うの?
名無しさん@お腹いっぱい。 [sage] 2013/06/19(水) 13:31:15.16 :KHwMYtgZ0
LeftClickがありませんってエラー出る。
名無しさん@お腹いっぱい。 [sage] 2013/06/19(水) 18:45:02.33 :r7rd+SAb0
FUNCTION LeftClick(cx, cy, lSec=1, lBeforeSec=0.1, lAfterSec=0.4)
  RESULT = FALSE
  SLEEP(lBeforeSec)
  TRY
    BTN(LEFT, Down, cx, cy)
    SLEEP(lSec)
    BTN(LEFT, Up, cx, cy)
    RESULT = TRUE
  EXCEPT
    //writeLogAndFukidasi("ERR: LeftClick("+cx+","+cy+","+ly+")")
    SLEEP(10)
  ENDTRY
  SLEEP(lAfterSec)
FEND
名無しさん@お腹いっぱい。 [sage] 2013/06/20(木) 09:24:04.48 :xmgRBjlU0

問題は、どうやってそのテキストボックスにフォーカスするかだよね。
番号で指定できないとすると、タブ移動くらいしかないか。
名無しさん@お腹いっぱい。 [] 2013/06/20(木) 10:58:28.36 :HTL8kg6U0
のサイト見たけどSendStrで名前入れられるならその後TABキー(KBDで)でPASSWORD、検証コードって移動できるよ
名無しさん@お腹いっぱい。 [sage] 2013/06/20(木) 12:45:53.55 :cBQF4D4A0
とりあえず低レベル記録を再生して成功したら
パスワードを引数としてKBDで自動操作する関数を作りこめばいいだろうな
アルファベットや記号をVKにマッピングするのは面倒くさそうだ
例によってナンカのAPIだとtoStringで一発で出来るみたいではあるが
142 [sage] 2013/06/21(金) 09:21:10.08 :IAXRAkYw0
ありがとうございます。

さんが作ってくれたのは、残念ですけどよく分かりませんでした。

結局、これで何とかやることにしました。

SendStr(id, "test", 3, True, True)
sckey(id, vk_tab)
Sleep(0.2)
sckey(id, vk_t)
Sleep(0.1)
sckey(id, vk_e)
Sleep(0.1)
sckey(id, vk_s)
Sleep(0.1)
sckey(id, vk_t)
名無しさん@お腹いっぱい。 [sage] 2013/06/22(土) 11:03:44.42 :E5xi7mLz0
仮想マルチモニターとか仮想デスクトップ使って
UWSCで監視できる範囲を広げたいんだけど、何かいいツールない?

やっぱ、でっかい液晶モニタ買って物理的に画面でかくするしか方法ないんだろうか
名無しさん@お腹いっぱい。 [] 2013/06/22(土) 11:21:22.95 :J7eZCuiw0
モニタのサイズは関係なくね?
名無しさん@お腹いっぱい。 [sage] 2013/06/22(土) 11:49:14.19 :E5xi7mLz0

モニタが大きい分、ウィンドウを多く並べて監視対象を増やせる
名無しさん@お腹いっぱい。 [] 2013/06/22(土) 12:33:32.38 :J7eZCuiw0
モニタ関係ないでしょ
解像度の問題
名無しさん@お腹いっぱい。 [sage] 2013/06/22(土) 15:40:07.83 :np8pCKDJ0
監視ってそもそも何をどうやってなのか後出し臭がするので聞かないが、
肉眼で目を離さずに見比べ続けるとかでなければ
ウィンドウを複数開いて自動操作対象のウィンドウ以外を最小化すればいい
名無しさん@お腹いっぱい。 [sage] 2013/06/22(土) 21:10:34.31 :KkoGM7lcP
窓ID指定すれば隠れてるウインドウも監視・操作できるはずだけど。
それじゃいけないのかな。
名無しさん@お腹いっぱい。 [sage] 2013/06/22(土) 22:22:53.30 :E5xi7mLz0


0.1秒毎に各ウィンドウの指定の座標をクリックし続けるようなスクリプトなんだけど
ウィンドウID指定しても、ブラウザのバグなのかうまく最前面に来てくれない事がある。
最小化はさすがに頻繁にやりすぎて何かしら問題が起きそう

仮想マシンとか試してみたけど無理っぽいから
諦めてでかい液晶モニタ買うわ
名無しさん@お腹いっぱい。 [sage] 2013/06/22(土) 23:07:54.83 :7z0zXQJ60

acwとか使わないの?
名無しさん@お腹いっぱい。 [sage] 2013/06/22(土) 23:14:06.51 :E5xi7mLz0

そのacwでウィンドウID指定して最前面に持ってきてるよ
名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 00:03:07.18 :KkoGM7lcP
ちがうちがう。MOUSEORGで直接窓IDを指定。
MOUSEORG(窓ID,2)って書いたあとはMOUSEORG(0)で閉じるまで
その窓IDがキーやマウス操作の対象になる。
acwで全面に持ってこなくても、隠れたまま操作可能。
名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 00:36:39.41 :gaCUD+RD0

HELP見てみたが
第2引数の指定って
何でわざわざ0と1があんのかね
2が出来て完璧なら0も1も要らないじゃん
0や1じゃないといけないケースって何
と思った。
名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 00:40:23.21 :gaCUD+RD0

複数ウィンドウを0.1秒=100msごとにクリックって相当過酷な操作だな
仮に自動操作じゃなくて超速くて正確な手動操作したとして
ウィンドウのほうが処理落ちでついてこれないことがあるんじゃね?
WindowsもLinuxもリアルタイムOSじゃないからね
名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 00:42:07.19 :+D0W6Ffx0
直接送れない対象もあるからだろ
名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 00:49:10.89 :hzDrnjpnP

窓内の相対的な位置で座標指定できれば、PC自体の解像度が変わっても
問題なく動作するっしょ。

0.1秒間隔でクリック連打するマクロは使ってるが、意外と大丈夫だ。
ぜーんぜんなんともない。
名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 00:51:09.28 :m4lgJVDw0

2が効かないケースがあるからな、ゲームとか
名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 02:05:38.05 :gaCUD+RD0
Ready状態後のウィンドウ上でなら100msぐらい余裕で反応するが
リソース不足気味のPCで
FLASHやUnityなど重いページを表示したブラウザなどを
タブでなく複数のウィンドウで何枚も立ち上げたりすれば
ウィンドウの切替だけでも数十msは待たされる印象がある
最小化したりすると目に見えて軽くなる
名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 02:07:19.36 :gaCUD+RD0
2が効かないケースが有るってことは
逆に言えば、最初から2を試して
効かない場合のみ下げていったほうが良いのかな…
今度やってみよう
名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 16:35:06.97 :Was00iAI0
MOUSEORGなんて便利なものがあったのか……
ただ、今からやろうと思うと膨大な量の書き変えと
ポチった液晶モニタのキャンセルが必要にorz

まあおいおい対応させよう
名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 17:39:07.22 :w8xoYb+30
MOUSEORG 使っても、画面より大きい範囲は指定できないと思うが。
名無しさん@お腹いっぱい。 [] 2013/06/23(日) 18:47:19.07 :qLhcglRE0
ここを見て、メール受信をトリガにしてマクロを動かすにはBeckey!がいいことはわかりました。

では逆に、マクロを動かし続けて、ある条件が発生したときにメールを送信して通知させるには、どうするのがよいでしょうか。
これも、やっぱりメーラー動かした方がいい?
名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 20:26:37.63 :hzDrnjpnP
Beckey!ってマクロ機能あったっけ?
そういうのなら秀丸じゃないかな??

UWSCは操作を自動化するソフトに過ぎないから
メールを送信するにはどうしたらいいかで
難しく考える必要は無いかと。

いつも使ってるメーラーがあれば、それを操作してメール送ればいいし
Pro版でよければWebブラウザの操作を丸ごと記録再生できるから
それでWebメール操作するのがラクかもしれない。
名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 20:53:21.71 :eCLLFT3s0
CDO.Messageを使えばGmailとかでメールできる
ただし、アクセス数多いとアカウント停止する
名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 21:29:13.24 :ITAURYwvP
アプリ立ちあげずにメール送れるその方式、
前から便利だと思ってたんだが、1日200通くらいまでなら大丈夫そう?
名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 21:46:22.65 :eCLLFT3s0
自分の場合は200通くらいで停止した
アプリのスクショとって添付してたのも原因かもしれない。
アカウントは一日で再度アクセス可能になったし、複数アカウント用意しておいて
何通かで切り替えるかアカウント停止したのがわかれば、
そこで切り替えてもいいかも
名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 21:51:26.49 :ITAURYwvP

Twitterの短時間フォローみたいに
一定の規定に達したらしばらく強制休憩ってことか。参考になった。
名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 21:52:59.01 :ITAURYwvP
これか

バリュードメイ○の社員だけど、無条件解雇されそう
ttp://toro.2ch.net/test/read.cgi/hosting/1366267840/

時期的にもこれで合ってるっぽいな
名無しさん@お腹いっぱい。 [sage] 2013/06/23(日) 21:55:03.70 :ITAURYwvP
すまん、誤爆した。
名無しさん@お腹いっぱい。 [sage] 2013/06/24(月) 01:05:01.91 :EGunV/Pd0

Vectorで探せばいくらでも出てくるよ
俺は数年前、コマンドラインでテキストファイルをメール送信するツール使ってたな
名無しさん@お腹いっぱい。 [sage] 2013/06/25(火) 09:50:49.93 :VirZPVgE0

俺それ使ってたけど
自分宛にしか送れなかった
名無しさん@お腹いっぱい。 [sage] 2013/06/25(火) 12:56:10.80 :paIsEIm90
そりゃプロバイダのポートブロック回避や自分のPCのファイアウォール設定とか必要だし
名無しさん@お腹いっぱい。 [] 2013/06/26(水) 14:27:30.32 :2WyGqAvE0
COMオブジェクトの操作のまとめコードみたいのってあります?
ヘルプに載ってないみたいで
IE.visible = True
IE.navigate("")

こういうのが載ってるのです
名無しさん@お腹いっぱい。 [sage] 2013/06/26(水) 15:02:28.37 :7m8/o62z0

MDSNに全部載ってる
名無しさん@お腹いっぱい。 [sage] 2013/06/26(水) 18:57:39.59 :9l7/Hty60

Visual Studio でインテリセンスに頼りながらプログラミングしたほうが幸せそうだ。。。
名無しさん@お腹いっぱい。 [sage] 2013/07/05(金) 17:49:24.76 :YiRDgNimO
輪郭が背景に溶け込んでぼやけてる縦横15ドットくらいの文字列画像認識したいんですがいい方法ないですかね
chkimgだとどうも上手くいかなくて
名無しさん@お腹いっぱい。 [sage] 2013/07/05(金) 19:12:47.46 :kUEgHuAz0
captraだっけ?
名無しさん@お腹いっぱい。 [] 2013/07/05(金) 19:42:42.22 :JxXZfGli0
ぼやけてる部分削ればいいじゃない?
名無しさん@お腹いっぱい。 [sage] 2013/07/06(土) 04:50:41.30 :OpOoU1O6P
俺も背景が変化する半透明っぽいボタンの認識に苦労してる
良く出来た「あいまい認識」の実装が急務だと思う
最近のゲームはボタン一つにもエフェクトがかかってたりして手が込んでるから
ゲーム用マクロツールとして見ると正直時代遅れの感が否めない
公式サイトを見ても、掲示板はかつてのteacupのようですごく古臭いし
最近流行りのSNSやgoogle+のシェア機能なんかも全く利用してないし、
作ってる人の感覚やPCを使うスタイルみたいなものが10年前で止まってそう
たぶん40歳越えたおっさんだと思う
名無しさん@お腹いっぱい。 [] 2013/07/06(土) 08:27:22.40 :hglpgn4w0
いや俺ゲーム用じゃないし
公式掲示板でもゲームのたぐいの話はNGだからな
名無しさん@お腹いっぱい。 [sage] 2013/07/06(土) 09:10:23.25 :kyU6RCLv0

無理
重ねあわせ処理によりbmpとして見た時に異なる画像になってしまうからこれ当たり前


CAPTCHA(キャプチャ)なら絶対無理
CAPTCHA画像をSAVEIMGしてメール送信して回答メールから解読結果を書き込むことは出来る


OpenCVやOCRじゃないと無理
そこまでやろうとするともやはUWSCでは全くの力不足
ロボットの視覚ソフトウェア作るレベル
だがゲームのbotツールとして見るなら方向性としてはパケットやメモリを覗いたほうが正しい
でもUWSCはbotツール用のソフトではないので。
まぁ俺は使ってるけどね。
の場合なら単に背景に溶け込まない部分を探して使うだけ。
無ければそういう状況を探し出し作り出す。
当然その代償として作業全体としては遅くなる。
名無しさん@お腹いっぱい。 [sage] 2013/07/06(土) 09:16:28.53 :kyU6RCLv0
UWSCの最も生産的な使い方はコレな
ttp://jasst.jp/archives/jasst11e/pdf/E4-1.pdf
botツールでも何でもないから
甚だしい勘違いを力説されても聞いてるこっちが恥ずかしいから
192 [sage] 2013/07/06(土) 09:23:20.86 :epmGhJbJO
丁寧な解答ありがとうございます
文字の太さが1ドットなので溶け込んでない部分がないんですよね
OCR系のソフトと連携する方向で考えてみます
名無しさん@お腹いっぱい。 [sage] 2013/07/06(土) 10:21:24.19 :kyU6RCLv0

敢えて言おう
無理であると

もしそれがゲームであるなら、無理であることが意図通りであるということ

もしそれがゲームでないなら、別の手段でアクセシビリティが提供されていることに気づいていないか、
単にアクセシビリティが糞過ぎて使えないソフトかサイトであるということ
名無しさん@お腹いっぱい。 [sage] 2013/07/06(土) 11:26:29.25 :/UtYagXK0
公式掲示板が古臭いのは同意。俺も前から思ってたわ。
せっかく作者や使い手の交流が活発なのにもったいない。

誰か、スレッドフロート型にしてgoogle+1ボタン、facebokボタン、はてブボタン、mixiボタン、ツイートボタンとか設置することを提案してくれないかな。

今の仕組みじゃレス返信の固定URLを取得したい時にGETで繋げるの疲れるんだよね
ttp://www3.bigcosmic.com/board/s/board.cgi?id=umiumi&resno=ここにレスナンバー
例 -> ttp://www3.bigcosmic.com/board/s/board.cgi?id=umiumi&resno=4908

これじゃSEO的にもよろしくないっていうか、シェアウェアなのにサポートがレンタル掲示板な時点でもはや・・
名無しさん@お腹いっぱい。 [sage] 2013/07/06(土) 13:02:04.79 :kyU6RCLv0
まぁ
> 作ってる人の感覚やPCを使うスタイルみたいなものが10年前で止まってそう
> たぶん40歳越えたおっさんだと思う
は同意かなw
名無しさん@お腹いっぱい。 [sage] 2013/07/06(土) 21:05:33.51 :DYoRTlI/P

SNS連携だけはやめてくれ
名無しさん@お腹いっぱい。 [sage] 2013/07/07(日) 06:26:24.80 :Mu49Yu+8P
その何とかボタンってのまったく必要性ねぇwww
名無しさん@お腹いっぱい。 [sage] 2013/07/07(日) 10:20:59.59 :YJfmcDrT0
と思ってる無知なおっさんは時代に付いていけないのであった
名無しさん@お腹いっぱい。 [sage] 2013/07/07(日) 13:51:16.97 :S/QyIBwg0
SNS連携って何に使うの?
ゲームの知り合いとかに俺マクロしてるって言いたいだけ?
名無しさん@お腹いっぱい。 [sage] 2013/07/07(日) 13:56:46.56 :rs/+Gfht0
SNSで汎用関数群提供とか?
名無しさん@お腹いっぱい。 [sage] 2013/07/07(日) 15:28:14.50 :U0TriCwN0
そういう余分な気持ち悪い機能はいらん
名無しさん@お腹いっぱい。 [sage] 2013/07/07(日) 20:17:12.81 :CVZ4X/m/0
意味不明なマクロ構文が垂れ流されるぐらいなら余計な機能なんてイラネ
そもそも公式じゃなくて自分でその手のコミュ立ち上げてから口を開けよ
名無しさん@お腹いっぱい。 [sage] 2013/07/07(日) 23:09:37.41 :YJfmcDrT0

余計な機能なんてイラネ(キリッ

なんで上から目線なの?
お前みたいな屑の方がよっぽどイラネ(キリッ
名無しさん@お腹いっぱい。 [sage] 2013/07/07(日) 23:26:35.41 :3PhSIZj50
カスNSのボタン云々は蛇足じゃないの
デザインがショボいお、が真意じゃないかな
本気で連携ボタンほしいお、ってんなら、
いやどっちにしろ痛い子夏の風物詩だね
名無しさん@お腹いっぱい。 [] 2013/07/08(月) 05:59:21.52 :pgmJvHrF0
イイネボタンやツイートボタンで利用者アップ、
RSSフィードで更新情報や新トピックの配信、
Google+やトラックバックで関連記事と紐付ける、とかの
重要性が理解できないのは時代についていけなくなってる証拠
ガラケーで充分と言ってるのと同種の人間
本人は必要ない余分なものだと信じて疑わないが
実は価値観が出来上がってしまって頭が固くなってるだけ
気付くと新しい物に疎い中年の一丁上がり
ラジカセなんか要らないレコードの方が音がいい!
昔から延々と繰り返されてる
名無しさん@お腹いっぱい。 [] 2013/07/08(月) 07:53:06.27 :7JZtb1q3P
見ず知らずの情弱にイイネなんてつけられたら恥ずかしくて自害して果てる
名無しさん@お腹いっぱい。 [sage] 2013/07/08(月) 08:34:16.67 :4eIz7QGFT
本人は必要だと信じて疑わないが
実は価値観が出来上がってしまって頭が固くなってるだけ
名無しさん@お腹いっぱい。 [] 2013/07/08(月) 08:50:44.70 :1aHjlsVQ0
気付くと流行に踊らされるガキんちょの一丁上がり


そんなに新しい物が好きならこんな古臭い言語仕様のソフトなんて使うなよ
名無しさん@お腹いっぱい。 [sage] 2013/07/08(月) 11:25:46.46 :5EJiXE380

クソワロタwww
これ本気で言ってんだよな・・・?
すごい重要性だな!w
名無しさん@お腹いっぱい。 [sage] 2013/07/08(月) 13:30:16.57 :/3F9/myf0
検索
※過去ログ記事を検索するには、各過去ログ上で検索して下さい
※20件以上は表示されません


自前で掲示板一括全文検索できないなら
googleサイト検索のテキストボックスぐらいつければいいのに…
あ、レンタル掲示板でドメイン名がアレだから、それも無理なのかw
名無しさん@お腹いっぱい。 [] 2013/07/09(火) 07:47:45.63 :AZFmw7ltP
効いてる効いてるwww
名無しさん@お腹いっぱい。 [sage] 2013/07/09(火) 09:37:07.16 :r2U0dQBlP

”無いことのメリット”を説明できずに個人的な使用目的や感情論しか
垂れ流すことができないのって哀れだな。反論になってない事に気づいてない時点で論外。

新しいものを認めたくてキャンキャン泣いてる負け犬なのは誰がどう見ても明らかだが、この手のやつは
まともなスクリプト書く知能も思考能力も無いから短文や草、オウム返しとかでしか切り返しできないから見てな。
名無しさん@お腹いっぱい。 [sage] 2013/07/09(火) 09:45:20.47 :Qa5NRFrK0
きっとSNSに親でも殺されたんだろう。
仮にSNS=厨房が沸く的なイメージで固執してるならそれは大きな間違いだし
海外の技術フォーラムとか見た事あるスレ民なら説明しなくてもいわずもがなWeb連携のメリットは分かってるはず。

100歩譲ってボタンは省いたとしても、有用トピが超初心者のトピで沈むのを避けるために
形式変更はあった方が使いやすいね。掲示版住人も住み分けできてるから、例えば
一行の回答で終わるような話題は初心者トピに集めるとかすれば技術トピの発展もしやすい。
名無しさん@お腹いっぱい。 [sage] 2013/07/09(火) 10:59:32.03 :IlJj8ete0
uwscなんて本格的にプログラミングするためのものじゃない
これに尽きる
名無しさん@お腹いっぱい。 [sage] 2013/07/09(火) 11:24:58.08 :0nBCWq7U0
いや、お前の言う重要性とやらはよく分かったよ
お前にとってはかなり重要なことなんだろう
けどいちいち押し付けんなよ
名無しさん@お腹いっぱい。 [sage] 2013/07/09(火) 15:15:44.50 :FHocinqH0
使いたくないやつは機能実装されても使わなきゃいいだけじゃないの?
俺は使わん
名無しさん@お腹いっぱい。 [sage] 2013/07/09(火) 15:20:55.95 :FHocinqH0
他はともかくみたいなのは病気でしょ
いいねボタン押されようが押されまいが思われたら一緒じゃね?
いいねがつくつかないで何か変わるの?
むしろ「恥ずかしくて自害して果てる(キリッ」なんて書き込みの方が恥ずかしいと思うんだが
さっさと自害しろって話
名無しさん@お腹いっぱい。 [sage] 2013/07/09(火) 17:04:48.50 :8y8XUxcY0
高尚(のつもりらしい)論を展開するのがなぜここなのか、というのが一番滑稽なんだが。
作者さんに直接、僕の考えた最強のサイト!案を出してこいよ。
名無しさん@お腹いっぱい。 [sage] 2013/07/10(水) 02:29:52.13 :dTtS8g6U0
まだいたのかよさっさと作者に凸ってこいよくそめんどくせぇ

そんなことよりimacrosに変数受け渡すスマートな方法誰か教えてくれ
名無しさん@お腹いっぱい。 [sage] 2013/07/10(水) 06:54:27.21 :xsW6IVFI0
つーかそういうことこそ公式サポート掲示板で聞いたらよくね?
このスレいらなくね?
名無しさん@お腹いっぱい。 [sage] 2013/07/10(水) 08:45:22.07 :agiaWkGQ0
恥ずかしくて自害して果てるってイイネ
名無しさん@お腹いっぱい。 [sage] 2013/07/10(水) 11:47:59.20 :TBTyy4PN0

ネチネチと粘着して気持ちわりーやっちゃなぁ・・・
なんでも自分の思い通りにならないと気が済まないんだろうけど
いらんと思うなら来なけりゃいいだけじゃねーの?
名無しさん@お腹いっぱい。 [] 2013/07/10(水) 11:54:12.30 :4B9H8XFU0
新しいものを取り入れられないどころか
拒絶するようになったらいよいよ老化が進んでる証拠だな
名無しさん@お腹いっぱい。 [sage] 2013/07/10(水) 12:00:53.95 :xsW6IVFI0

公式掲示板で聞けって何か間違ってた???
名無しさん@お腹いっぱい。 [sage] 2013/07/10(水) 12:31:41.68 :ZJ6IruZ30

間違ってないから公式掲示板に行け
戻ってくんな
名無しさん@お腹いっぱい。 [sage] 2013/07/10(水) 20:04:55.53 :OXCghVA50
戻ってくるとか自由なのになんで強制されなきゃいけないの?
そんなことよりお前らに答えてやれよ
名無しさん@お腹いっぱい。 [sage] 2013/07/10(水) 21:47:40.16 :lpqeO91F0

義務を伴わない自由や意味不明な個性が大切にされる社会なんてのは
空想上の社会なのよ?w
名無しさん@お腹いっぱい。 [sage] 2013/07/10(水) 22:47:15.88 :OXCghVA50
は見てるならコテでもつけてもう一度降臨してほしい
気に食わない書き込みを全てお前だと決めつけている粘着キチガイが常駐しちゃってるぞ
名無しさん@お腹いっぱい。 [sage] 2013/07/11(木) 00:39:44.06 :gALvQ5k/0
検索
※過去ログ記事を検索するには、各過去ログ上で検索して下さい
※20件以上は表示されません


自前で掲示板一括全文検索できないなら
googleサイト検索のテキストボックスぐらいつければいいのに…
あ、レンタル掲示板でドメイン名がアレだから、それも無理なのかw
名無しさん@お腹いっぱい。 [sage] 2013/07/11(木) 13:50:32.00 :aFdSHBsc0

呼ぶなw
公式掲示板にいいねボタンつけろだとか
ここで喚いても意味ないことくらい分かるだろ?
名無しさん@お腹いっぱい。 [sage] 2013/07/11(木) 20:43:53.36 :62sGAFOb0
> googleサイト検索のテキストボックスぐらいつければいいのに…

その程度のことなら自分でできるだろ。
できることは自分で何とかするのが自動化ツールなんだってこと忘れるな。
名無しさん@お腹いっぱい。 [sage] 2013/07/11(木) 20:48:50.31 :U1mXYRfP0
はい、結論出ました
自動化ツールなんだから自分で何とかしろ
名無しさん@お腹いっぱい。 [sage] 2013/07/12(金) 08:03:05.90 :NYZtOCk50

缶切りの入った缶詰みたいな話ですね〜
イイハナシダナ〜
名無しさん@お腹いっぱい。 [sage] 2013/07/12(金) 09:18:48.77 :7rGn/c8R0
自分でgoogleサイト内検索できないような情弱はお断りなんだが
名無しさん@お腹いっぱい。 [sage] 2013/07/12(金) 10:00:38.86 :kwWda01y0
作者さんでもない人に何かを断られても何の影響も無さそうだが…

レンタル掲示板ドメインであってもUWSC掲示板のみターゲットとするサイト内検索方法を教えてくれないのなら、確かに困ったな。
俺情弱だから判らん。
名無しさん@お腹いっぱい。 [sage] 2013/07/12(金) 10:14:32.04 :kwWda01y0
Googleが独自ドメインとして扱う物はURLのスラッシュからスラッシュまでの間、
つまり http://この範囲/ 「この範囲」の部分です。

ですから独自ドメインを取得していなくても ”http://自分のID.ホストのドメイン/” 等、
エイリアスの場合も Google の検索システム上では独自ドメインとして扱われます。

ダメなのは http://ホストのドメイン/自分のアカウント/ の様に途中を/で切られてしまう場合です。
この場合はホスト下層のディレクトリーとして扱われます。


困ったな〜 情弱だから判らん
名無しさん@お腹いっぱい。 [sage] 2013/07/12(金) 13:25:54.11 :rd0TuFRI0
ttp://nem.symphonic-net.com/uwsct/0610uwsct.html
UWSC掲示板の過去ログ検索 UWSC掲示板の過去ログと現行ログを検索し、htmlファイルへ保存・表示します。(2008/04/13改版)

「 uwsc site:bigcosmic.com inurl:umiumi 」
約 845 件中 53 ページ目 (0.25 秒)

直リン  ttp://google.co.jp/search?q=site:bigcosmic.com%20inurl:umiumi
名無しさん@お腹いっぱい。 [sage] 2013/07/12(金) 18:51:51.98 :kwWda01y0

それサイト内検索じゃなくてフリー検索だけど
総論であなたが情強です
名無しさん@お腹いっぱい。 [sage] 2013/07/12(金) 19:15:20.50 :swEyN7iT0
ローカル保存してそこから検索するのならUWSC掲示板の一番下に置いてあるやん
名無しさん@お腹いっぱい。 [sage] 2013/07/12(金) 22:11:06.92 :rd0TuFRI0

サイト内検索でぐぐって一番最初に出てくるんだけど。
・普通はオプションを隠し属性で渡してるだけ。
・フリー検索じゃねーから

ttp://www.hyuki.com/netserv/google.html
検索サイトGoogle.comの検索用のテキスト入力のところでsite:というキーワードを利用すると、 指定したサイト内の検索を行うことができます。

でも上記の方法だと、site:www.hyuki.comという文字列が表示されていて、 ちょっと不恰好ですね。
このページでは site:www.hyuki.com を表示させずに サイト内検索をする方法を示します。

<input type="hidden" value="hyuki.com" name="as_sitesearch" />


ttp://www.google.co.jp/intl/ja/faq_freewebsearch.html
よくある質問 -- Google フリー検索 (カスタマイズ版) : ウェブ検索
よくある質問 -- Google フリー検索 (カスタマイズ版) : サイト検索
名無しさん@お腹いっぱい。 [sage] 2013/07/13(土) 17:36:37.53 :BzGdfk6A0

結局、
公式掲示板がコレ使わずに
過去ログを20件づつ分けてしか検索できないようにしてるのは
つけようと思えばつけられるけど
俺達への愛の試練として
敢えてつけないってことでFAなのか?
名無しさん@お腹いっぱい。 [sage] 2013/07/13(土) 19:40:24.85 :o1MYRZkK0

馬鹿はヘルプすら読まないから掲示板のその他の内容にも
目を通しておけってこった。意味不明な改行するぐらいなら
名無しさん@お腹いっぱい。 [sage] 2013/07/13(土) 20:55:28.55 :BzGdfk6A0

バカがヘルプすら読まないと
なんで掲示板が出てくるんだ?
ヘルプ読めば掲示板の過去ログなんて不要だから検索を便利にする必要もない、
なら筋は通るが
名無しさん@お腹いっぱい。 [sage] 2013/07/14(日) :8G/7BQ3a0
沸いてるのが沸いてるナ
名無しさん@お腹いっぱい。 [sage] 2013/07/17(水) :ifWXJKcRP
スレタイ読めよ。「UWSC使いよ集まれ」だよ。
「UWSC使いたい人集まれ」じゃないんだよ。
名無しさん@お腹いっぱい。 [sage] 2013/07/17(水) :wTQ+6tj40
クリックイベントをバックグラウンで送れるように
タッチイベントをバックグラウンドで送りたいんだけどなにか方法ないかな
名無しさん@お腹いっぱい。 [sage] 2013/07/17(水) :qVNMOs0q0
公式で聞け
名無しさん@お腹いっぱい。 [sage] 2013/07/18(木) :vba2ML/t0
作ったスクリプトがどう動いてるか知りたいのですがよい方法ありませんか?
printを使って一文毎やると凄い手間がかかってしまいます。わかる方教えてください
名無しさん@お腹いっぱい。 [sage] 2013/07/18(木) :XY1/hefU0

ttp://www3.bigcosmic.com/board/s/board.cgi?id=umiumi&mode=all&no=4907
名無しさん@お腹いっぱい。 [] 2013/07/18(木) :+5oWFf0C0
デバッガー
名無しさん@お腹いっぱい。 [sage] 2013/07/18(木) :vba2ML/t0

ありがとうございます。正にコレですね
ただ…高い…。試用期間2週間って何度も出来るわけじゃないですよね?


そういえば、昔Excelのマクロを少し勉強した時にデバッグって目にした覚えがあります。調べてみます
名無しさん@お腹いっぱい。 [sage] 2013/07/18(木) :CloOvDmV0
msgboxを入れてる
255 [sage] 2013/07/21(日) :15KbCEU/0
デバッガをググってみたけど、pro版しかなさそうでした…。


ありがとうございます。msgboxはその都度止まってしまうし、print使うのと手間が変わらないです
名無しさん@お腹いっぱい。 [sage] 2013/07/21(日) :CiMFRvso0
・関数分割による構造化の徹底
・CALL文によるファイル分割
・main()に相当する本分は1ファイルとし、他ファイルは関数ライブラリとする
・多用する基本命令を関数でラッピングし、エラー処理する
・ファイル入出力関数を使い、デバッグログ関数を作る
・長い関数は分割するのが基本だが、やむを得ない場合、
 関数内のどこまで進んだかの進行度変数を持たせ、
 ログやPRINTに表示させる。

PUBLIC LOG_FNAME_DEBUG = "debug.log"
PUBLIC gFlgLoggingDebug = TRUE
PUBLIC gMaxLinesNumOfLoggingDebug = 2000

PROCEDURE writeLog(lStrLog)
  IF !gFlgLoggingDebug THEN EXIT
  lFID = FOPEN(LOG_FNAME_DEBUG, F_READ or F_WRITE)
  deleteLinesUntilTargetLineCount(lFID, gMaxLinesNumOfLoggingDebug - 1)
  FPUT(lFID, getCriteriaDateTimeStr() + " " + lStrLog)
  FCLOSE(lFID)
FEND

PROCEDURE writeLogAndFukidasi(lStrLog, lMsgPosX=0, lMsgPosY=0)
  FUKIDASI(lStrLog, lMsgPosX, lMsgPosY)
  writeLog(lStrLog)
FEND
名無しさん@お腹いっぱい。 [sage] 2013/07/21(日) :CiMFRvso0
FUNCTION deleteLines(lFID, lStartLine, lEndLine)
  RESULT = FALSE
  TRY
    //IF lEndLine < lStartLine THEN swapVariable(lStartLine, lEndLine)
    FOR lI=lStartLine TO lEndLine
      FDELLINE(lFID, lI)
    NEXT
  EXCEPT
    EXIT
  ENDTRY
  RESULT = TRUE
FEND

FUNCTION deleteLinesUntilTargetLineCount(lFID, lTargetLineCount, lDeleteDirection=0)
  RESULT = FALSE
  lLineCount = FGET(lFID, F_LINECOUNT)
  IFB lLineCount <= lTargetLineCount THEN
    RESULT = TRUE
  ELSEIF lDeleteDirection = 0 THEN //先頭行から削除
    RESULT = deleteLines(lFID, 1, 1 + lLineCount - lTargetLineCount)
  ELSE //最終行から削除
    RESULT = deleteLines(lFID, lTargetLineCount + 1, lLineCount)
  ENDIF
FEND
255 [sage] 2013/07/21(日) :15KbCEU/0

これ自分に対してですよね?

そうだとしたら素人なのでよくわかりません。すいません。
これをスクリプトのどこかに貼れば良いんですかね?
無知ですいません。
名無しさん@お腹いっぱい。 [sage] 2013/07/21(日) :RgGEVbsd0
ただのオナニーだから相手にしなくて良し
名無しさん@お腹いっぱい。 [sage] 2013/07/21(日) :CiMFRvso0
関数分割(メソッドの抽出)
ttp://d.hatena.ne.jp/steel-plate/20080206/1202302846
ttp://www.woodensoldier.info/computer/refactoring/ExtractMethod.htm
ttp://www.pwv.co.jp/~take/TakeWiki/index.php?%E3%83%AA%E3%83%95%E3%82%A1%E3%82%AF%E3%82%BF%E3%83%AA%E3%83%B3%E3%82%B0%2F%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89%E3%81%AE%E6%8A%BD%E5%87%BA

構造化プログラミング
ttp://www.pro.or.jp/~fuji/mybooks/cdiag/index.html
255 [sage] 2013/07/21(日) :15KbCEU/0

すいません。
今日は7月21日ってことで許してください


纏めれるものは纏めてしまえば解析が楽になるということですね
先程のスクリプトは何ですか?
名無しさん@お腹いっぱい。 [sage] 2013/07/21(日) :CiMFRvso0
あらうまいw


出来ればコードを読んで使って欲しかったが…
デバッグ用のログファイルを出力するのに使う関数ですよ。
PRINT文の代わりにwriteLog("デバッグメッセージ")とすれば
テキストファイルに残るので、長時間の動作見るのに使える。

もっともPRINT文は、
> 同じ内容をUWSC.LOGに保存
> (最大行数は uwsc.ini の LogLines= にて指定可、もしくはOptionにて)
とあり、Optionでパスやモードも指定できるので、
ログファイルのファイル名が単一で良い場合は不要ですな…

私はPRINTのウィンドウが邪魔なのと
ファイル名を起動PCによって変えたりするのでコレでやってます。

あ、getCriteriaDateTimeStr() が無いとダメですね。

FUNCTION getCriteriaDateTimeStr(lOffsetDays=0, lRefDt="")
  IFB lRefDt = "" THEN
    GETTIME(lOffsetDays)
  ELSE
    GETTIME(lOffsetDays, lRefDt)
  ENDIF
  //  YYYY/MM/DD HH:NN:SS
  RESULT = G_TIME_YY4 + "/" + G_TIME_MM2 + "/" + G_TIME_DD2 + " " + G_TIME_HH2 + ":" + G_TIME_NN2 + ":" + G_TIME_SS2
FEND

全角スペースは半角かタブ文字に置き換えてね
255 [sage] 2013/07/21(日) :15KbCEU/0

すいません。
まだ始めたばかりの素人なんで…。せっかく親切に教えて頂いたのできちんと時間ある時に一つずつググります。

それと、内容は全く理解してないですが
,262,267をスクリプトの最初に貼り付けてみましたが、動かなくなりました。
名無しさん@お腹いっぱい。 [sage] 2013/07/22(月) :Ew9PK0rK0

関数を最初に貼りつけたら
その後ろのベタ書き(main()相当)は動かないよ
後ろに貼り付けるか別ファイルにしてCALL
でもそれ以前の段階みたいだね
プログラミングの基礎から関数までのテキスト読んだほうがいいな
255 [sage] 2013/07/22(月) :iklThCsb0

すいません。
本当にそれ以前の段階です。

皆様はどうやって学習していったのでしょうか?
自分はにある初歩のサイトでスクリプトをコピペして動かして少し変えてみて動きを理解している段階です。
名無しさん@お腹いっぱい。 [sage] 2013/07/22(月) :5CMbpVX70

ttp://pgtop.net/category/7687666-1.html
ttp://www.amazon.co.jp/dp/479812253X
ttp://moeprog.web.fc2.com/moe/sb/index.htm

UWSCは、言語仕様やそれについての情報の出方など、
初学者に極めて不利な言語。
こんな言語でプログラミング始めちゃうと袋小路に陥るよ。
255 [sage] 2013/07/22(月) :iklThCsb0

そうなんですか…。
数年前事務職でEXCELとACCESSを少し使っていて、マクロに興味を持っていたんです。
最近UWSCの存在を発見したので遊び心で時間ある時にやりはじめたんです。

参考URLをご丁寧にありがとうございます。見てみます。
255 [sage] 2013/07/22(月) :iklThCsb0
というか、自分スレ汚ししてるような気がするので、捨てアド貼った方が良いですかね?
名無しさん@お腹いっぱい。 [sage] 2013/07/22(月) :MQGVK2XO0
メールだと誰かレスしたのかどうか分からないし
特定の人に依存することになるからよくない。
メールでやるくらいだったら公式掲示板で作者に質問したほうがいい。

2ちゃんねるは喧嘩とかにならなければ自由に書き込んでいいんじゃね?
時期によって常駐してる人も違うし、書き込んでみて何か言われたら考えればいい。

夏休みとかになると子供が多いんで適当なこといいまくるけど
そういうのは気にしなくていいお。
名無しさん@お腹いっぱい。 [sage] 2013/07/22(月) :tB0sLBW60

UWSC使いが集まるチャットがあれば便利そうだな

ちなみに一昔前はグループチャットといえばIRCが定番中の定番だった
今もネット古参達の間では当たり前のように使われてるそうだが
名無しさん@お腹いっぱい。 [sage] 2013/07/22(月) :T+NuwD250
別にこのままがベストだと思うけどな
チャットだと常に誰か居るわけでもないしすぐ過疎るのが目に見えてる
このスレで別に他のことで盛り上がってるってわけでもないし
名無しさん@お腹いっぱい。 [sage] 2013/07/26(金) :udXNnBBY0
Linuxで同じようなソフトないかなぁ
名無しさん@お腹いっぱい。 [] 2013/07/28(日) :JPJ+NpRD0
画像認識を含むスクリプトをexe化したいんだけど誰か方法わかりませんか?
iexpressでやってもやっぱり意味無いですもんね・・
名無しさん@お腹いっぱい。 [] 2013/07/28(日) :Sb1g5G6j0
pro
名無しさん@お腹いっぱい。 [sage] 2013/08/01(木) :MIPwYUryP
ちょっと質問なんですが
chromeで画像認識の簡単な操作してるんですが、デスクPC(i5、8GB、win7home)で再生すると
開始数分で通常時40%前後のメモリ使用率が80%を越えます。終了しても減らず、
タスクマネージャーで確認してもその使用率の上昇分が表示されず何に使われているのか不明です。
同じものをノートPC(i3、8GB、win7home)で再生してもこの現象は起きません。
原因わかる方いますか?
名無しさん@お腹いっぱい。 [sage] 2013/08/01(木) :D5v7PAGU0
エアロ切ってないとかじゃない?
名無しさん@お腹いっぱい。 [sage] 2013/08/02(金) :92qyhKvwP
回答ありがとうございます。
試したところ異常はなくなりました。ただどちらもエアロが有効のままだったので
片方だけ起きたのが謎ですね。
名無しさん@お腹いっぱい。 [sage] 2013/08/10(土) :34t+9fGZ0
ピークカラー関数を使って、あるポイントの色($FF0000)の識別をしているんですが
たまに色が変わってないのにエラーが出る(ポイントの色が変わった時用のif分岐動作)ので調べてみると
$000000と$FFFFFFを吐き出しているようなんですが、これは仕様でしょうか?
負担をあまりかけないようにピークカラーは1秒おきに使用しているし
PCのスペックはそこそこで、使用中は余裕があるほどなのでスペック不足ということも無さそうなのですが…。
どなたか分かる方いらっしゃいますか?
名無しさん@お腹いっぱい。 [sage] 2013/08/10(土) :qauz7CzG0

まずは再現する短かなソースかif周辺のソースを貼ったほうがいいかと
名無しさん@お腹いっぱい。 [sage] 2013/08/10(土) :34t+9fGZ0

ソース張り忘れ失礼しました。
┌─┐
│; ↓
│while true
│;     sleep(1)
│;     color = peekcolor(25,25)
│;     ifb color = $FF0000
│;     ;     break
│;     elseif color = $000000
│;     ;     break
│;     elseif color = $FFFFFF
│;     ;     break
│;     else
│;     ;     エラー時の処理
│;     endif
│wend
│; │
└─┘
(25,25)が$FF0000色だったらbreak→再び1秒後カラーチェック
今はelseifで$000000と$FFFFFFを吐き出した時も問題ないようにして正常に動いてるんですが、なんかスッキリしなくて…。
もちろんチェックしてる座標に黒い物や白い物を被せたりはしてないですorz
名無しさん@お腹いっぱい。 [sage] 2013/08/10(土) :LIYTDKH/0
色が変わってるんじゃない?
名無しさん@お腹いっぱい。 [sage] 2013/08/10(土) :34t+9fGZ0

チェックしている対象は色が変わるような物ではないので大丈夫だとは思うのですが
一応各break、elseの部分に「print color」を入れてしばらく数値をチェックしてみましたが
自分で意図的に座標部分を隠した時以外は$FF0000(チェックしたい色)$000000、$FFFFFF以外の数値は出て来なかったので
目で判別できないレベルで色がひっそり変わってるというのは無さそうですorz
名無しさん@お腹いっぱい。 [sage] 2013/08/10(土) :qauz7CzG0

今まで使ってきてpeekcolor()が変な値を返した事はないなぁ、mouseorg()とかは大丈夫?

あと可能ならuwscのバージョン変えて確認してみるのも1つかもよ
最新だから良いって物でもないしね
名無しさん@お腹いっぱい。 [sage] 2013/08/10(土) :EdiHYuHy0
printでのチェックは他の部分も含めてのチェック?
そのループ部分だけの状態でのチェックだと他の部分が悪さしてるのとかわからないからエラーはかないってこともあるよ
名無しさん@お腹いっぱい。 [sage] 2013/08/10(土) :DHhr1DP90
後出し後出しにならないように、サンプル作ってUPしてくれ。それが早い。
環境依存か仕様かどうかを、(俺以外の)スレ住人が総力を挙げて全力で調査してやる。
名無しさん@お腹いっぱい。 [sage] 2013/08/11(日) :XK8uab3i0
elseでcolorが何になってるか吐かせればいいだけ。
何ならその時をSAVEIMGすればいいじゃん。
名無しさん@お腹いっぱい。 [sage] 2013/08/11(日) :XK8uab3i0
ん?$FF0000色「しか」有り得ないはずって前提か?
ならば色判定する必要性自体が皆無なんだが…
$FF0000色になるのを待つ、って処理で、
$FF0000色になっているはずなのに$0や$FFFFFFを取得し続けるのか?
ループの中にウィンドウID再取得とMOUSEORG入ってないが?
名無しさん@お腹いっぱい。 [sage] 2013/08/14(水) 17:34:28.14 :mCz48KBM0
質問です、ネットゲームの話なんですが
メインPC側でUWSCを動かして仮想PC側のネットのキャラを動かしたいのですが
画像認識が上手くいきません

ACW(GETID("Windows 7-1 - VMware Player","VMPlayerFrame"),0,0,1170,928,0)


ifb chkimg("A.bmp",0,0,0,1000,0500)
mmv(G_img_X,G_img_Y)
endif

これで動かしているのですが目的の画像の上にマウスポインタが移動しません
bmpも24ビットで保存していて、画像自体も一色のみです
もしかしてメイン側では仮想PC側の画面を判定するのでできないのでしょうか?
名無しさん@お腹いっぱい。 [sage] 2013/08/14(水) 20:22:21.79 :uSPijeZ10
そっかー
名無しさん@お腹いっぱい。 [sage] 2013/08/15(木) 01:50:27.92 :8rADeWfMP
A、Bはそれぞれの行動であるとして・・・

Aを3回繰り返した後、Bを1回する。

これをループさせたいんですがどうすればいいんですか?
for kaisu=1 TO 3
A
next
B
からわかりません
名無しさん@お腹いっぱい。 [sage] 2013/08/15(木) 01:59:13.68 :SvjJrj/h0
リピート 1
A、B
名無しさん@お腹いっぱい。 [sage] 2013/08/15(木) 02:11:15.01 :hHgj9zWnP

それをループさせればいいんじゃない?
名無しさん@お腹いっぱい。 [sage] 2013/08/15(木) 19:43:21.12 :bN9bHqqX0

本当に画像判定が失敗しているってことが特定できているのかな?
SAVEIMGで画像が取得できていることを確認してみ。
実は、判定に成功してマウス移動しているけど、VMToolsのラグで操作が無効になってたりする場合も考えられるよ。
その場合は、画面内を一度クリックしてから操作するとか何とかが必要かもね。


VB 多重ループ でググる
名無しさん@お腹いっぱい。 [sage] 2013/08/21(水) 13:33:36.57 :U3XmayND0
UWSCでブラウザの操作を自動化したいのですが、同時に
二つのブラウザを使うもののそれぞれのセッションを別けな
いとダメのようです。

ブラウザを起動するときは -nomerge と言うオプションを使
って別けているのですが、UWSCで起動するときは

IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True

以外にどの様な命令を出せば良いでしょうか?
名無しさん@お腹いっぱい。 [sage] 2013/08/21(水) 13:45:48.60 :qXvQQLco0
IE = CreateOLEObj("InternetExplorer.Application")
IE2 = CreateOLEObj("InternetExplorer.Application")
と2つオブジェクト作って操作するのはダメなの?
名無しさん@お腹いっぱい。 [sage] 2013/08/21(水) 13:55:54.75 :U3XmayND0

すいません説明不足でした。
UWSCを実行するときは既に一つブラウザが開いて使っている状態です。

それとは別にUWSC経由でブラウザを開いて、それは元から開いている
のとは異なるセッションを持たせたい感じです。

理由は特権権限でログインしてログを表示させながら一般権限でログ
インしてデータの投入を行いたいのです。IEとFirefoxを使えば実現出
来るかと思ったのですがシステムがIEでしかダメで、パソコンを別ける
のも難しいので悩んでいます。
名無しさん@お腹いっぱい。 [sage] 2013/08/21(水) 14:55:07.69 :g5EsATWj0

IE8以上使ってるならだったら
InPrivateブラウズモード使うといいかも

doscmd("start iexplore -private")
sleep(3) //IE起動を待ってみる
InPrivateIE = GETACTIVEOLEOBJ("InternetExplorer.Application", "InPrivate")
名無しさん@お腹いっぱい。 [sage] 2013/08/22(木) 17:37:22.45 :wqTqUzdp0
クラス感覚で機能単位のuwsファイル用意してcallで呼び出そうとしたら返値的なもの受け取る方法ないよね
どうしたものか
名無しさん@お腹いっぱい。 [sage] 2013/08/22(木) 17:51:34.83 :PVn8WfTn0
publicな変数で渡せばいいんでない?
名無しさん@お腹いっぱい。 [sage] 2013/08/22(木) 18:12:07.89 :7bTVXJ8F0

ありがとうございます!
なんとか行けそうです。
本当に助かりました。
名無しさん@お腹いっぱい。 [sage] 2013/08/22(木) 18:16:35.68 :wqTqUzdp0

そんなんアリなの?と試したらできたー
返値専用のpublic変数を用意しておけば捗るね
名無しさん@お腹いっぱい。 [sage] 2013/08/22(木) 19:46:27.29 :vQyzv3p30
IEのReferer弄ってUser-Agent変えたりReferer: ttp://www.jasrac.or.jp/とかにして遊んでるんだが
Use-Agentもそうだったが偽装って、開いたそのページ単体限定だよね。

サイトのアクセス解析には記録されるの?
名無しさん@お腹いっぱい。 [sage] 2013/08/29(木) 13:02:01.57 :2farnKmb0
androidでUWSC的な自動操作したいのだけどまだそういうソフトないのな
名無しさん@お腹いっぱい。 [sage] 2013/08/29(木) 13:43:50.78 :1Ek6LF/I0
Android マクロで検索すればいくつか出てくると思うけど?
アンドロイド端末でやらせるよりもリモート操作だったりPでCで操作できるようにさせてPCからマクロ実行っていうのが多いと思うけど(アンドロイド端末でやらせるよりも処理が軽い)
名無しさん@お腹いっぱい。 [sage] 2013/08/29(木) 18:17:30.86 :34ZOVHgZ0

PC対応ソーシャルゲームだがandroidの標準ブラウザでも一応動くのでスマホでマクロ操作させたい。
PCつけっぱは電気代がもったいない
名無しさん@お腹いっぱい。 [sage] 2013/08/29(木) 19:24:50.17 :zao0VB880
そうですか
名無しさん@お腹いっぱい。 [sage] 2013/08/29(木) 20:45:07.57 :AVh0QSJW0
電気代ケチる人が自動とか考えちゃダメだよ。
省電力PC組むだけじゃない。
この際出費も考えちゃダメ。
名無しさん@お腹いっぱい。 [sage] 2013/08/29(木) 20:51:51.16 :mLvRtgsAP
新調が必要なら、ノートPCならデスクトップと比べて遥かに電気代安いからノートがいいぞ
いまどき充分な性能のなんて3-4万でごろごろしてる
ttp://kakaku.com/pc/note-pc/ranking_0020/
名無しさん@お腹いっぱい。 [sage] 2013/08/30(金) 06:48:05.76 :coTgE53C0
電気代をケチるレベルならそもそもそのゲーム止めれば
そんなはした金ケチる必要ないんじゃね?
名無しさん@お腹いっぱい。 [sage] 2013/08/30(金) 07:24:24.28 :zYVg1Tzt0
PC一台マクロに占有されたくなく、使ってない旧いスマホなら占有されてもいいっていうか使い道ないから活用したい
ってならわかる
名無しさん@お腹いっぱい。 [sage] 2013/08/30(金) 07:49:19.92 :WlOSyuJl0
でもそうなると完全にスレチなので適切なスレへどうそって話だわな
名無しさん@お腹いっぱい。 [sage] 2013/08/30(金) 11:36:29.34 :DQoTlwfU0
単純に動作を記録再生だけならFRepとか使ってればって思う
AndroidはJAVAで簡単にプログラムも組めるしゲームのマクロ位ならツール探すよりも自分で作っちゃったほうが簡単な気もする
ただアンドロイド端末でずっとつけっぱなしとか熱対策とかそっちの問題のほうが難しとおもうが
名無しさん@お腹いっぱい。 [sage] 2013/08/30(金) 13:59:23.20 :/Qv/PnyoP

Tasker
名無しさん@お腹いっぱい。 [sage] 2013/08/30(金) 18:32:19.34 :3AgqLMPl0
UWSCの強みは、低レベル操作関数の作り込みと画像判定。
オブジェクトを取得してOLEで自動操作するのは
VB.netやC#などのオブジェクト指向言語+総合開発環境のほうが普通に楽だろ。
自動操作を考慮されてないアプリに対して自動操作を強行するには
画像判定でゴリ押しするのが手っ取り早い。
自分でやろうとしたら画像処理を自作で作り込むか、OpenCV使わないとだめだろう。
Linux系で無いのが残念。
名無しさん@お腹いっぱい。 [sage] 2013/08/30(金) 20:44:31.86 :jT4prRdU0
全角英数→半角英数にするの一番上手いやり方って何かね。
ヘルプ見てもこの変換はできないようだ。カタカナは変換したくない。

今はテキストエディタでやってるから問題ないし
26種×2をreplaceするのもなーって思った。
正規表現は分からんので参考になるURLあったら張ってくれ。
名無しさん@お腹いっぱい。 [sage] 2013/08/30(金) 21:10:26.29 :3AgqLMPl0
DOSCMDでこういうの使えば?
ttp://hp.vector.co.jp/authors/tfuruka1/software/zen2han/zen2han.html

StrConvをOLEで使うと書くのは楽だが重そう。自作するとこうなるらしい。
ttp://blog.livedoor.jp/midorityo/archives/51064633.html
名無しさん@お腹いっぱい。 [sage] 2013/08/31(土) 00:38:53.45 :95E4IqPW0

このくらいしか思いつかないわ

FUNCTION strconv2(str)
   for i=1 to length(str)
      ascii=asc(copy(str,i,1))
      if (ascii>=65296 and ascii<=65305) or (ascii>=65313 and ascii<=65338) or (ascii>=65345 and ascii<=65370) then ascii=ascii-65248
      RESULT=RESULT+chr(ascii)
   next
FEND
名無しさん@お腹いっぱい。 [sage] 2013/08/31(土) 11:14:47.78 :Ra07XkvF0
そうだぱーるでだぶりゅえすしーをかこう
名無しさん@お腹いっぱい。 [sage] 2013/09/01(日) 01:16:23.84 :n0EYOx0F0

電気代もそうだがこの時期無駄に部屋が熱くなる。
まぁお前は視野が狭いからどうでもいいんだろうが
名無しさん@お腹いっぱい。 [sage] 2013/09/01(日) 01:17:53.58 :n0EYOx0F0

なんか大げさだろ
スマホでできることをわざわざPCでって
自鯖とかもお古のスマホで十分
UPSいらないしな
名無しさん@お腹いっぱい。 [sage] 2013/09/01(日) 01:19:35.37 :n0EYOx0F0

ああそれそれ


カタイ事言うな
名無しさん@お腹いっぱい。 [sage] 2013/09/01(日) 01:43:22.16 :5txjSDWV0
ぷw
名無しさん@お腹いっぱい。 [sage] 2013/09/02(月) 13:31:29.18 :RIvn3m7+0
[Ver4.9]
  TRIM関数の全角指定にて UNICODEのスペース($2029-$202E)も削除するようにした
  GETACTIVEOLEOBJ関数にて順番に-1が指定された時は最新(一番最後)のものを取得するようにした
  SAVEIMG、CHKIMG、PEEKCOLOR関数にてクリップボードを利用するモードを付けた
  CTRLWIN関数にてトップにするがアクティブ化しない TOPNOACTV を付けた
  STATUS関数にて IDが有効かを調べる ST_ISID を付けた
  GETSTR関数にてアイテムが存在しない場合は EMPTYを返すようにした
  FUKIDASI関数のエリアス名として BALLOON を付けた
  スレッド使用にてエラーが出るパターンがあるのを修正(スレッドの安定化、最大数を64に)
  COM_ERR_IGN、MOUSEORGの有効範囲が全範囲だったのをスレッド単位にした
  SENDSTR関数にて DateTimePickerに日付を送れなくなっていたのを修正
  Pro版:
  SETFORMDATA関数直後の Navigate("javascript:") が実行できないを修正
  Debugger: メニューから登録スクリプトを実行できるようにした(初期状態で4つのスクリプト)
  RecIE: デフォルトのレンダリングモードが IE7相当だったのをインストールされているIEに合わせた
  RecIE: BusyWait関数のロジックを変更した(JavaScript、マルチフレーム対応の為)
  RecIE: 再生時に IEが終了されたらスクリプトも終了するようにした
  RecIE: 環境によりマルチフレームでの記録ができなくなっていたのを修正

ダウンロード
ttp://www.uwsc.info/download.html
名無しさん@お腹いっぱい。 [sage] 2013/09/02(月) 19:38:33.80 :Nt7TOesx0
復帰
名無しさん@お腹いっぱい。 [sage] 2013/09/03(火) 20:50:15.38 :L+RViJsF0
公式掲示版ってたまに白熱した展開になるよな
名無しさん@お腹いっぱい。 [sage] 2013/09/03(火) 22:11:26.98 :HF32yzN2P
ff14の単純作業でマクロを作ってみようと思うのですが
AutoHotKeyとUwscだとどちらが機能性充実していますか?
またどちらが覚えやすいでしょうか?
名無しさん@お腹いっぱい。 [sage] 2013/09/03(火) 23:14:41.89 :4iodfhPU0
どちらもそんなんに変わらん
UWSCは外部のAPIとかDLLを読み込めるが実行ファイルとかにするには有料版が必要(配布とか考えているなら)
AutoHotKeyはGUIの作成が簡単、実効化ファイル作るのが無料で出来る
名無しさん@お腹いっぱい。 [sage] 2013/09/03(火) 23:40:05.18 :WHaArix60
ありがとうございます。
UWSCの方が日本産まれなので参考になるサイトが多いかなと思ったのですが
少し触ってみるとたしかにAutoHotKeyは直感で組み立てることができますね。
名無しさん@お腹いっぱい。 [sage] 2013/09/03(火) 23:44:18.43 :SmAJC8yp0
ホットキーとしてつかうなら断然AHK。速度も早い
ただ書式がとっつきにくい… (自分は)
名無しさん@お腹いっぱい。 [sage] 2013/09/03(火) 23:54:40.02 :4iodfhPU0
ゲームのマクロって画像認識させてとかレベルのものでしょ?
テストで適当に特定条件下でのボタン押しマクロみたいに単純なもの作ってみて作りやすい、精度が高いと思ったほう使えばいいんだよ
ゲームマクロ程度ならUIも外部のAPIやDLLなんてほとんど関係ないんだから

中華のmobみたいなもの作ろうと思ったらマクロツールじゃなく本格的なプログラミング覚えた方が良い
名無しさん@お腹いっぱい。 [sage] 2013/09/04(水) 00:04:19.93 :WHaArix60

その通りです。画像認識を使って単純作業の効率化を目論んでます。
BOTを作るにはバイナリーのレベルで解読しないと無理なんですよね?
憧れますけどかなり敷居が高いですね。マクロすらまともに扱えない素人なので
名無しさん@お腹いっぱい。 [sage] 2013/09/06(金) 23:21:54.79 :kJgC51VJ0
> STATUS関数にて IDが有効かを調べる ST_ISID を付けた
やっとか
今までハンドルに変換してからウィンドウIDに再変換とか無駄なことさせられてたよ。
名無しさん@お腹いっぱい。 [sage] 2013/09/08(日) 10:19:18.58 :eECp2ZLU0
みんなahk使ってるのか
せっかくuwsc覚えてそこそこ使えるようになったのに
名無しさん@お腹いっぱい。 [sage] 2013/09/08(日) 12:22:57.05 :eosrxOyP0
主観をみんなと表現しちゃう人って
名無しさん@お腹いっぱい。 [sage] 2013/09/09(月) 09:18:55.35 :JNaRIkU70
さくらエディタでスクリプト書いてる人はこれやってる?
makoto-watanabe.main.jp/program.html#sakura
名無しさん@お腹いっぱい。 [sage] 2013/09/09(月) 11:00:39.95 :3ZzSIi720
それやらないとサクラエディタ使ってる意味殆ど無くね?
名無しさん@お腹いっぱい。 [sage] 2013/09/09(月) 11:15:45.62 :3fkjxtgS0
半端なurlだる
それってなに
名無しさん@お腹いっぱい。 [sage] 2013/09/09(月) 13:01:00.83 :VcrUiu1f0
ttp://anago.2ch.net/test/read.cgi/software/1350040751/909-911

909 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2013/04/10(水) 10:45:29.23 ID:W+/E9QGj0
サクラエディタで .uws の色分け設定手順 のメモ
(後略)

911 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2013/04/10(水) 12:38:32.28 ID:v0JIHrgl0
ttp://makoto-watanabe.main.jp/program.html#sakura
に既にあるよ
名無しさん@お腹いっぱい。 [sage] 2013/09/09(月) 13:01:29.80 :3ZzSIi720
頭にhttp:付ければ見れるよ
強調ワードとかF1でUWSCのヘルプ検索とかそういう設定
名無しさん@お腹いっぱい。 [sage] 2013/09/09(月) 13:07:15.68 :JNaRIkU70
頭にhttp:付けなくても今時のブラウザなら自動補完してくれるわけだが
開くの面倒とか思ってるやつは頭おかしい
名無しさん@お腹いっぱい。 [sage] 2013/09/09(月) 14:34:05.62 :3fkjxtgS0
なるとん
:が入ってたら補完してくれるかな
名無しさん@お腹いっぱい。 [] 2013/09/09(月) 18:49:38.33 :Y7+Rnm/L0

ttp://qb5.2ch.net/test/read.cgi/operate/1377674620/871

アドレスの修飾を省略するのが流行ってんのか?
名無しさん@お腹いっぱい。 [sage] 2013/09/09(月) 20:16:01.50 :KRdjHckK0
忍法帳のレベルが低いとURLかけないのよ
名無しさん@お腹いっぱい。 [sage] 2013/09/09(月) 21:08:20.83 :Y7+Rnm/L0
ああ、そういうことだったか。
確か :// あたりに反応するんだっけ。
名無しさん@お腹いっぱい。 [sage] 2013/09/09(月) 23:44:14.60 :UZG+jAID0
にんにん
忍法帖【Lv=40,xxxPT】(1+0:8) [sage] 2013/09/11(水) 09:50:04.09 :IKpy+pD/0
にんにん
!ninja [sage] 2013/09/14(土) 12:53:49.32 :8bZZxalT0
名前欄に !ninja
名無しさん@お腹いっぱい。 [] 2013/09/16(月) 16:07:59.86 :gkEdeY2B0
データグリッドビューを操作することってできないんですか?
名無しさん@お腹いっぱい。 [sage] 2013/09/17(火) 02:14:41.63 :6N2JIO6OP
call(ブレイク)の数に制限ありますか?
今まで20個コールして自動運転できてました
25個に増やすと必ず22個目にハングアップ
uwscをタスクマネージャーでプロセス終了してはテストしてます
呼び出す順番変えても22個目にハングアップ
13個と12個に分けて2つのスケジュールにすると止まらず運転できます

windows xp sp3
uwsc4.8
Google chome

ブレイクかコールが怪しい気がしてます
どなたかご教示お願いしますm(_ _)m
名無しさん@お腹いっぱい。 [sage] 2013/09/17(火) 02:36:37.14 :cQEK+mzT0
そういう仕様についての質問は開発者しかわからんだろうし公式で聞きなよ
ちなみにテストで PRINT ("番号") だけ書いたファイルを25個用意して順番に読み込ませるテストしてみたけど正常に動作した
名無しさん@お腹いっぱい。 [sage] 2013/09/17(火) 04:00:11.21 :KYAFdips0
だからコール1回きりの関数プログラミングにしとけとあれほど…
名無しさん@お腹いっぱい。 [sage] 2013/09/17(火) 04:13:58.67 :6N2JIO6OP
354です
早速レスありがとうございます
うみうみ氏のところで質問しようとしたら
書き込みのところにゲーム関係の質問はしないで下さいとありました
嘘ついてまで質問できないのでこちらで質問させて頂いた次第です
今も全く別のスクリプトを作ってテストしました
やはりコールの23番目にハングアップします
開発者しかわからない仕様かもしれないですね
2つのスケジュールにわけて25個を動かす事にします
70分毎なのでスケジュールに設定するのが倍の手間になり面倒なので
一つのスクリプトからコールしたかったんですが
2つのスケジュールでやりくりしてみます
ありがとうございました
名無しさん@お腹いっぱい。 [sage] 2013/09/17(火) 04:33:07.49 :6N2JIO6OP
354です
書き漏れありました
コールで呼んだスクリプトの中にコールが一つあります
25個とも同じ作業です
Chromeを起動する時にUAで識別させているので
中身で違う部分はUAのユーザー部分だけでバイト数は全て同じにしてあります
失礼しました
名無しさん@お腹いっぱい。 [sage] 2013/09/17(火) 09:13:03.56 :ibplWCXa0

>356氏の言うようにコールじゃなくて関数化

UWSCのコールは都度読込みのではなくて、起動時に一括読込みだから
おそらくメモリ管理あたりでハングしてる
名無しさん@お腹いっぱい。 [sage] 2013/09/17(火) 11:32:39.30 :36GibZDU0
CALLは命令の文言的に誤解されちゃうのかな?
非関数部分のスクリプトは動作しちゃうから
その誤解を助長してしまう部分もあるかもしれないけれど
CALLはincludeな使い方をする命令
CALL先のスクリプトは出来るだけ関数のみ定義して
必要に応じて関数を呼び出す方が良いよ

同じファイルをCALLで複数呼び出すと変数の管理が想定外の自体になりやすそう
名無しさん@お腹いっぱい。 [sage] 2013/09/17(火) 21:01:18.94 :nJ6vraJi0

ネトゲ関係の質問しないでってそういう意味じゃないだろw
名無しさん@お腹いっぱい。 [sage] 2013/09/18(水) 00:49:53.48 :QV8bh5a60

も言ってるけど、ネトゲ関係の質問するなってそういうことじゃないと思う。
掲示板のログ全部読んだわけじゃないけど、◯◯のゲームで××出来ますか、どうやるんですか、みたいな質問が多かったんじゃね?
お前の場合ならCALLで呼んでる別スクリプトの個別の内容の書き方を聞くような、ドキュメント嫁で終わる内容のさ。
その手のアホ質問じゃないから公式凸っていいと思う。というよりはうみうみ氏もバグ出しありがとうなネタなんじゃないかな
名無しさん@お腹いっぱい。 [sage] 2013/09/18(水) 09:17:25.86 :PCLMBNx00
何も考えず試さず、どうやってbot作るの教えれみたいな思考停止厨が嫌われてるだけで
掲示版は優しい人多いから理由(根拠)述べれば大丈夫だよ
名無しさん@お腹いっぱい。 [sage] 2013/09/18(水) 12:58:02.74 :z8shnxZb0
まぁその後ろめたい気持ちは忘れずになw
名無しさん@お腹いっぱい。 [sage] 2013/09/18(水) 13:37:30.75 :ukO20Gtq0
自動ログイン程度のことも出来ないスクリプトの知識がまったく無いやつが
一からUWSCを使えるようになるのに有用な本やサイトがあれば教えて頂きたい。
名無しさん@お腹いっぱい。 [sage] 2013/09/18(水) 14:26:13.78 :Ipi6esCZP
一からどこまでやりたいのかわからないとアレなんじゃねぇか?
名無しさん@お腹いっぱい。 [sage] 2013/09/18(水) 15:21:23.31 :cyy5QVev0

>1
名無しさん@お腹いっぱい。 [sage] 2013/09/18(水) 19:37:30.60 :1+41nBuCP
357です
原因わかりました
callでは無かったみたいです

callでスクリプト@を呼び出す
chromeをUA付きで起動して
ピークカラーで色判定
閉じる

callでスクリプトAを呼び出す
chromeをUA付きで起動して
ピークカラーで色判定
閉じる

作業内容は全く同じです
テストではprintとsleepだけです
23個目にハングアップ

chromeの起動する時にUAを付けないとハングアップしない
ピークカラーを使わずにsleepで時間待ちするとハングアップしない

うみうみ氏のサイトのサンプルでchromeの読み込み待ちを試したところ
UA無しでは機能していますが
UA付きでは機能しません
それでピークカラーでの色判定で読み込み確認していました

やりたい事はUA付きでchromeを起動して読み込み待ちです
22個目までは動きますが23個目にハングアップ
呼び出したスクリプト内にはcall無しに書き換えてもハングアップしました
ここまでわかりました長文すいません
名無しさん@お腹いっぱい。 [sage] 2013/09/18(水) 21:08:21.58 :1+41nBuCP
368を一部訂正
うみうみ氏のサイトのサンプルでは
UA付きでchromeを起動しようとしたら
エラーでChromeが起動しないです
もしかしたら私のUAの付け方に問題あるかもしれないです

拡張機能をオンにしてUA無しでChromeを起動させて読み込み待ちはできました

ChromeでUA付きで起動させて読み込み待ちをご存知の方おられましたら
ご教示お願いしますm(_ _)m
名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 10:28:53.98 :LLboGBuX0
宜しくお願いします。久しぶりにUWSCを使ってスクリプトを書いてみたのですが
私の想像通りの動きをするかの確認とスクリプトのアドバイスお願いします。
【Aループ開始】
画像1があればクリック→画像2があればクリック
どちらも無い場合【Bループに突入】
画像3を見つけてクリックするまでクリックできたらBreakでAループに戻る
上記の動きを上手く書けているかの確認と
バックグランドで動かしたいのでMOUSEORGを入れてますが現在上手く動きません。
なのでCTRLWINでアクティブにしてるのですがもう少し良いアドバイスあればお願いします。
id = GETID("F")
ifb id = -1 then
MOUSEORG(id, 2)
While True
 CTRLWIN(id,ACTIVATE)
 if GETKEYSTATE(VK_ESC) then exit
 endif
sleep(2)
 IFB CHKIMG("1.bmp")
  BTN(LEFT,click,G_IMG_X+25,G_IMG_Y+5)
  sleep(2)
  IFB CHKIMG("2.bmp")
   BTN(LEFT,click,G_IMG_X+25,G_IMG_Y+5)
 else
  While True
  IFB CHKIMG("3.bmp")
   BTN(LEFT,click,G_IMG_X+25,G_IMG_Y+5)
  eles
   Break
  endif
  WEnd
 endif
WEnd
名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 10:52:28.44 :rxRV5QPu0
クリックできたらBreakじゃなく画像が見つからない場合はBreakになってるよ
クリックできたらにしたいならBTNの下にBreakでしょ
名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 11:11:19.81 :GS2M5JEb0

これ実行してエラー出ないの?
色々ぐちゃぐちゃだけど
名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 11:20:03.00 :rxRV5QPu0
While True
if GETKEYSTATE(VK_ESC) then exit
sleep(2)
IFB CHKIMG("1.bmp") or CHKIMG("2.bmp")
BTN(LEFT,click,G_IMG_X+25,G_IMG_Y+5)
sleep(2)
ELSE
While True
IFB CHKIMG("3.bmp")
BREAK
ELSE
BTN(LEFT,click,G_IMG_X+25,G_IMG_Y+5)
ENDIF
WEND
ENDIF
WEND
こんなかんじだな
名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 11:20:53.43 :rxRV5QPu0
あ、上のままにするならね
これだとESC押しても3.bmpのループ中には終了しないとか問題ありそうだけど
名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 14:00:08.99 :LLboGBuX0

ほんとですねorz御指摘助かります。

画像3が出なかったら一応動きますよ。

or文って使えるんですか!勉強になります

画像3が必ずあるわけではないので
画像1をクリック→画像2をクリックまでは一連の流れなのですが
画像2をクリックしたあとアプリが更新されて20〜30秒待たされるんです
その後、アプリが問題なければまた画像1で
エラーだったら画像3をクリックしないと駄目なんです
とりあえずループさせて待ち時間を回避しようとしてますが何か良い案ありますか?
名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 14:16:06.48 :8Lperdvt0

コピペでエラー出る
13-14行目 endif追加
18行目 eles → else
名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 16:16:58.07 ://1K/9uk0
ネトゲ不正スクリプトを添削してもらえるスレ
名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 18:52:21.22 :ZcqEfqq00
え?艦これの登録スクリプトだと思ってたぜw
名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 19:32:38.11 :Ab7uiD7Q0
画像1クリック→画像1が消えて画像2がでる
画像2クリック→エラーなしの場合は画像2が消えて画像1が表示
          エラーの場合は画像2が消えて画像3が表示
ってこと?


それとCHKIMG("1.bmp") or CHKIMG("2.bmp")って書き方はダメ
1.bmpが見つかって2.bmpが見つからなかった場合にG_IMG_X,G_IMG_Yに値がはいらない
名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 19:33:01.29 :zfAR1vuf0
// main()
while true
  ifb click1and2() then continue
  while true
    ifb click3() then break
  wend
wend

// functions
function click1and2()
  result = false
  if !CheckWindowAndMouseorg(2) then exitexit
  ifb clickImage(LEFT, "1.bmp", 25, 5, 2) then
    ifb clickImage(LEFT, "2.bmp", 25, 5, 2) then
      result=true
    endif
  endif
fend
function click3()
  result = false
  if !CheckWindowAndMouseorg(2) then exitexit
  ifb clickImage(LEFT, "3.bmp", 25, 5, 2) then
    result=true
  endif
fend
名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 19:34:38.08 :zfAR1vuf0
function CheckWindowAndMouseorg(lAfterWaitSec)
  result = false
  id = GETID("F")
  if id = -1 then exit
  result = true
  mouseorg(id, MORG_DIRECT, MORG_BACK)
  sleepWithEsc(lAfterWaitSec)
fend
function clickImage(lButton, lBmpName, lOffsetX, lOffsetY, lAfterWaitSec)
  try
    result = CHKIMG(lBmpName)
  except
    result = false
    exit
  endtry
  BTN(lButton, click, G_IMG_X + lOffsetX, G_IMG_Y + lOffsetY)
  sleepWithEsc(lAfterWaitSec)
fend
function sleepWithEsc(lSec)
  for ldSec=0 to lSec*10
    if GETKEYSTATE(VK_ESC) then exitexit
    sleep(0.1)
  next
fend
名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 19:36:13.58 :zfAR1vuf0
訂正:main() の ifb は全て if
名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 19:44:49.21 :zfAR1vuf0
も一々callせず、
やりたいことを関数分割して main() の入ってないサブスクリプトを冒頭でcallしておき、
あとはcallではなく関数を呼び出すといい。
名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 20:02:21.70 :Ab7uiD7Q0

それだと画像3がでるまで無限ループしね?
名無しさん@お腹いっぱい。 [sage] 2013/09/19(木) 20:27:20.81 :zfAR1vuf0
どうしたいのか判らんけど
ここまで抽象化したら一目瞭然のはずなので
後は好きな様に変更すればよろし
名無しさん@お腹いっぱい。 [sage] 2013/09/22(日) 00:03:55.37 :vq2VKzfx0
IEのお気に入りとかのサイドバーが開いているか、閉じているかの判定はどうしたら良いのでしょうか?
名無しさん@お腹いっぱい。 [sage] 2013/09/22(日) 02:54:15.60 :cQEOBztW0

オプション指定して開くところから組み込めば好きに出来るんじゃね?
名無しさん@お腹いっぱい。 [sage] 2013/09/27(金) 13:19:38.89 :NbziS2wX0
幾つかthread命令を使った関数を走らせてる状態で、
メインは走らせつつ、メインから全threadの一時停止と再開、
メインは走らせつつ、とあるthreadから自分以外のthreadの一時停止と再開、
こういうことは可能でしょうか?

検索でヒットしたんですけど、何やら危険な香りが・・・
ttp://siromasa.digi2.jp/uwsc/u_sample/Base/SuspendThread.txt
> 排他制御中にサスペンドされるとデッドロックの可能性があります。
> それらを考えると、使用は全く勧められません。

PUBLIC変数をフラグとして使って、
好きなときに一時停止・再開をやろうとすると、
極端な話、1命令毎に変数チェック
とかやらないとダメなんでしょうかねぇ・・・
何か安全で良い方法は無いでしょうか?
名無しさん@お腹いっぱい。 [sage] 2013/09/27(金) 17:06:08.33 :yLJlY9pV0
全部止めたい時の一番簡単な方法はメッセージボックスの表示
特定のスレッドなら一旦そのスレッド閉じさせるとかフラグ作ってというのが簡単じゃない?
名無しさん@お腹いっぱい。 [sage] 2013/09/27(金) 19:34:14.13 :RZyz2ytJ0

厳密にやりたいならそれなりの言語にした方がいいよ。
外部からの強制一時停止だとか見るからに危険そうじゃん。
いつなら止まっても安全なのか知ってるのは、走ってるスレッド本人だけ。
既に思いついている通り、自作の一時停止願いシグナルを発行し、
スレッド側が出来るだけ常にそのシグナルをチェックし、スレッド側が自主的に一時停止。

シグナル用のあるグローバル変数がTRUEのとき一時停止として、
スレッドは一時停止していいタイミングごとにシグナルをチェック。
TRUEなら、それがFALSEになるまでSLEEP挟んで無限ループする関数に跳ぶ。
ゾンビスレッド対策に、そのループのときに別のシグナルでスレッドを終了してしまう箇所も設けておく。
どうかね?
名無しさん@お腹いっぱい。 [sage] 2013/09/27(金) 19:40:08.89 :RZyz2ytJ0
しょっちゅう使うSLEEPなどをラッピングしてぶっ込んだらどうか。

gSignalPleaseSuspendAllThreads = FALSE
gSignalPleaseTerminateAllThreads = FALSE

function eSleep(lSec, lUnitSec=0.2) //remoteExtendableSleep略してeSleep
  ifb lSec<lUnitSec then
    sleep(lSec)
  else
    lRemaining=lSec
    while lRemaining>0
      sleep(lUnitSec)
      if gSignalPleaseTerminateAllThreads then break
      lRemaining=lRemaining-lUnitSec
    wend
  endif
  while gSignalPleaseSuspendAllThreads and !gSignalPleaseTerminateAllThreads
    sleep(lUnitSec)
  wend
  result=!gSignalPleaseTerminateAllThreads
fend

スレッド側でeSleep使う時は if !eSleep(5) then exit などと使う。
動作確認はしていない。
名無しさん@お腹いっぱい。 [sage] 2013/09/27(金) 19:49:05.49 :RZyz2ytJ0
スレッド個別に制御したい場合は、まずスレッド生成時に一意のスレッド番号を必ず付与して区別できなければならんだろう。
このスクリプトでやるならその仕組は当然自作w
んで、シグナル発行直前に、複数の個別対象スレッドを指定する番兵付配列を設定してシグナル発行だ。
正直、それを以ってやりたいこと自体をもっと洗練させて、こんな手段が必要ないようにした方がいい気がするが…
名無しさん@お腹いっぱい。 [sage] 2013/09/27(金) 19:57:17.58 :RZyz2ytJ0

関数の前半訂正
function eSleep(lSec, lUnitSec=0.2) //remoteExtendableSleep略してeSleep
  lRemaining=lSec
  while lRemaining>0
    ifb lRemaining<lUnitSec then
      sleep(lRemaining)
      break
    else
      sleep(lUnitSec)
    endif
    if gSignalPleaseTerminateAllThreads then break
    lRemaining=lRemaining-lUnitSec
  wend
以下略
名無しさん@お腹いっぱい。 [sage] 2013/09/27(金) 22:39:35.03 :eK2BCJYE0
画面のド真ん中(上下左右周囲誤差2ミリ)に指定した色があるとクリックしてくれるような物を作りたいのですが
できるでしょうか?
またクリックは時間0.1〜1秒単位で調整できないでしょうか?
色はF8F848位の明るい黄色からD3D822くらいの暗めの黄色です

イメージはこんなかんじです
ttp://i.imgur.com/GblFtqB.png



WHILE TRUE

RGB=PeekColor(512,384)
R=RGB AND $0000FF
G=(RGB AND $00FF00)/$100
B=(RGB AND $FF0000)/$10000


//ifb GETKEYSTATE(VK_RBUTTON) then
ifb ((R>=$色 AND R<=$色) AND (G>=$色 AND G<=$色) AND (B>=$色 AND B<=$色)) then
BTN(LEFT,CLICK)


Endif
//Endif
Endif
sleep(0.002)
WEND

これだとど真ん中しか意味がなくて困ってます
名無しさん@お腹いっぱい。 [sage] 2013/09/27(金) 22:53:29.94 :is10BqEK0
chkimgで範囲指定すれば簡単なんじゃね?
名無しさん@お腹いっぱい。 [sage] 2013/09/27(金) 22:56:26.95 :HUGPg872P

>できるでしょうか?

できます。
名無しさん@お腹いっぱい。 [sage] 2013/09/27(金) 23:06:32.69 :/HDIC86x0

repeatの式に範囲指定入りのchkimgをセット。
ネトゲの自動操縦のために同じ操作のもん作って使ってる。
名無しさん@お腹いっぱい。 [sage] 2013/09/28(土) 08:30:07.43 :OD1sw5uA0
そこまで色の幅があって、もし色がその幅の間を連続的に変化するとかだと、
仮に出来たとしても非常に辛いことになる(判定が安定しないだとか思いだとか)
まずは全力で、判定に使える変化しない画像が間接的に取得できないか考える。
名無しさん@お腹いっぱい。 [sage] 2013/09/28(土) 09:13:11.52 :U0jDnT+n0
色幅ありすぎるとchkimgでは厳しいから、
範囲も2mmと狭いし、素直に考えればまぁ
ループで回して1ピクセルずつ判定だろうなぁ
for py=384 to 394
  for px=512 to 522
名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 13:57:55.41 :kbraxm0W0

これ最初の変数 PUBLIC 書かなきゃダメだったね
名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 17:48:06.67 :kbraxm0W0
SPLIT関数の戻り値で配列を生成する場合、
データが無かったなどでSPLITの戻り値が要素のない謎の配列になる。
この状態の謎配列を、配列を引数に取る関数に渡すことが出来てしまう。
その時点でエラーにならない。

HELPには、SPLITの戻り値はSAFEARRAY型と書いてあるが、それ以外何の説明もない。
UWSCのHELPにSAFEARRAY型の仕様について記載はない。
ネットでググると、.NETのオブジェクトの一つっぽい。
UWSC自体を開発している言語に属するものなのだろう、と推測できるだけで解決には役立たない。

さてこの謎配列、関数側のエラー処理のつもりでこの配列の中身に指1本でも触ろうとすると、
「GetValue:バリアント配列が範囲を超えています」というエラーで止まってしまう。
配列サイズをRESIZEで調べると、配列でない変数は -1 になるはず(HELPに記載なし)だが、
この謎の配列はそうではないらしく、添字最大値判定でチェックできない。

そして、正常な配列であれば、少なくとも配列[0]だけは存在するはずだが、
その配列[0]の中身を参照しようとした時点で初めてエラーとなる。

エラーの原因が、異なる型を代入しようとしたのか、謎の配列を渡されてしまったのかを区別するために、
TRY〜EXCEPTで配列[0]の内容をログとして残そうとしても、エラーとなり記録に残せない。
そのため腫れ物に触るように2重3重にエラー処理を書くことになった。

元々UWSCのHELPにエラーメッセージ表すら無いのだから、GetValueの記載もバリアント型の説明もあるはずがない。
ネットでググると、.GetValueはNETのメソッドらしい。
UWSC自体を開発している言語に属するものなのだろう、と推測できるだけで解決には役立たない。

別に何らかの解決を望んでいるわけではない。
これがUWSCというスクリプト言語なのだなぁ。と感じるだけ。
プログラミング言語初心者にお勧めできない理由を巧く表現できないが、まぁそういうことなんですよ。
名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 18:27:35.08 :h7eXmv9f0
白馬の王子様まで読んだ
名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 19:44:00.67 :WpPp5CbK0
sckeyをバックグラウンドに送れたらいいのに
名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 20:02:40.88 :ifGtCVgR0
こんな感じでread processmemoryで読み込むアドレスを繰り返し処理で変動させてサーチみたいのしたいんだけど

DEF_DLL ReadMemory(string, DWORD, var DWORD, DWORD):int:Memory.dll
PUBLIC pname="○○"
PUBLIC size=4
public Buffer = 0
public Size = 4
public PowerAd = $△△△△
for i = 0 to 1000000
ReadMemory(pname,PowerAd+i,Buffer,Size)
IF (Buffer = $××××) THEN
next

これだと糞遅いんですけどどうにかなりませんかね
名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 20:03:50.02 :ifGtCVgR0
メモリを読み込んで指定範囲内のアドレスで特定の値があったら○○とかいうスクリプトを組みたいんです
どうすれば高速でできますか?
名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 20:06:38.84 :ifGtCVgR0
まあ画像認識とかでなくメモリサーチ型のbotを組んでみたいんだけどどうしたらいいか分からんとです
名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 20:09:56.48 :53zdW4H+0
素直にcでも使えよ
名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 20:17:12.50 :ifGtCVgR0
デバッガみたいな機能をスクリプト内でどうにかしたいんだがな
メモリ検索ソフトなんかすると一瞬でサーチできてる訳で
名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 20:39:19.42 :HJOF9n570
c++で作れば瞬時で終わるわ
uwscに拘る意味がわからん
名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 20:43:54.85 :ifGtCVgR0
一応UWSCとデバッガだけでどうにかする方法は思いついた
プログラミング言語も勉強したいけど…
名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 23:00:04.50 :5ZZUoNLo0
アプリのメモリ変更機能も欲しいが、俺はパケット生成機能の方が欲しい
名無しさん@お腹いっぱい。 [sage] 2013/09/29(日) 23:35:39.21 :ZgTfUU3i0
gui作成機能ほしい
名無しさん@お腹いっぱい。 [sage] 2013/09/30(月) 00:00:57.94 :5KavxXSQP
ttp://www.microsoft.com/ja-jp/dev/express/

開発環境ならマイクロソフトが無料で配ってるから大人しくCでやれ。
UWSCがまともに使えてるならこっちもやることはたいして変わらない。
名無しさん@お腹いっぱい。 [sage] 2013/09/30(月) 00:14:37.03 :acbWQbDh0

せめてC#にしたほうが
(unsafeの中なら何でもできる)
名無しさん@お腹いっぱい。 [sage] 2013/09/30(月) 01:42:46.48 :NliY0HqK0
分からんあるよ
完成品をいじるとかならともかくいきなりは無理ぽw
名無しさん@お腹いっぱい。 [sage] 2013/09/30(月) 07:53:20.05 :gQTBIC150

安鯖(2core以上,IntelNIC)買ってESXi5.1が最強。バックグラウンドに沈める必要自体が無かった。
名無しさん@お腹いっぱい。 [sage] 2013/10/02(水) 23:42:02.84 :7J20suBX0
早速visual studioダウンロードして動画やサイトを見ながらやってなんとかドラクエ10のメモリサーチするプログラムは組めました
でもc++で組んでも遅いんだよな
cheat engineなんかだと検索が一瞬で終わるのに
名無しさん@お腹いっぱい。 [sage] 2013/10/02(水) 23:51:34.58 :Ri4AmZEu0
スレチだけどサーチする範囲指定してないんだろ
名無しさん@お腹いっぱい。 [sage] 2013/10/03(木) 05:32:50.00 :WsYRHfXM0

マジこれ
名無しさん@お腹いっぱい。 [sage] 2013/10/03(木) 06:43:15.83 :QB4OoNl80
2013/10/03 UWSC Ver4.9a、 Pro版と Free版をリリースしました。
名無しさん@お腹いっぱい。 [sage] 2013/10/03(木) 07:20:50.68 :dkjQxuTt0
おう
名無しさん@お腹いっぱい。 [sage] 2013/10/03(木) 08:18:08.73 :yFcS95K90

pro版でhtml使えばいいじゃん
名無しさん@お腹いっぱい。 [sage] 2013/10/03(木) 11:56:25.13 :CObtDnQx0
直接CreateWindow叩いてウィンドウ作ればいいじゃん
それかサンプルの「PowerShellより .Net Frameworkを利用しフォームを作る」みたいにやるか
名無しさん@お腹いっぱい。 [sage] 2013/10/03(木) 13:30:33.68 :T/UN8W/Z0
.NETからUWSCをコンポーネントとして使えるようにすれば全て解決なんだがなぁ
名無しさん@お腹いっぱい。 [sage] 2013/10/03(木) 13:44:32.21 :6toiXf0z0

誰かがブログでやってたが、
メッセージループとコールバック関数が必要になり、裏技的にしか解決できない。

具体的にはマシン語のバイナリでそれを用意してスレッド作成とかで・・・だったような。
で、そこまでやったとしても、そのバイナリコードに UWSC のスクリプトを呼び出す仕掛けを作りようがなかったような。
まあ、メッセージループは UWSC で回せなくもないので割り込んで制御を読み取るなんて事は可能かな。
しかし、スクリプトが遅いので窓枠をマウスでいじると落ちたような。

PowerShell 経由で画面を作れるけど、結局、普通に UWSC としてコントロールするしかないので
特別リアルタイムに画面を作る必要でもない限り、HTML で作ったほうがいい。
ただ、ローカルの HTML を開くとセキュリティの警告がウザイ。
HTA で開けば警告は出ないけど COM オブジェクトがなくてコントロールできない。


マルチスレッドのプログラミングでメッセージのやり取りで同期を取る仕組みがあるんで
それを使って呼び出してるように見せることは可能じゃないかと思うけどめんどくさすぎ。
名無しさん@お腹いっぱい。 [sage] 2013/10/03(木) 15:54:26.66 :T/UN8W/Z0
GrapeCityみたいにコンポーネントの使用ライセンスで売れば商売になるだろ〜
PRO買った人には割安で頼むぜ
名無しさん@お腹いっぱい。 [sage] 2013/10/03(木) 19:03:11.64 :yFcS95K90

そのブログ知ってるけどあんなクソめんどくさいことやらなくても
createwindowはできる
名無しさん@お腹いっぱい。 [sage] 2013/10/03(木) 19:06:52.53 :6toiXf0z0

メッセージループでそのまま処理するんだっけ?
推奨されてない方法だけど。
404 [sage] 2013/10/04(金) 00:54:56.85 :+qKH2C550
read processmemoryの読み込みバイト数が4バイトずつ読み込んでたのが遅い原因でした
c++でプロセスメモリ検索みたいなのは組めたからuwscでも同じやり方でいけると思う
名無しさん@お腹いっぱい。 [sage] 2013/10/07(月) 21:15:28.05 :PdumpsxW0
win7だとバックグラウンドで実行できない?
名無しさん@お腹いっぱい。 [] 2013/10/07(月) 22:46:18.21 :uuINVVvt0
どっかのブログで既に開いているIEを取得して
操作するってのがあったけど思い出せない
誰かわかったら教えて
名無しさん@お腹いっぱい。 [sage] 2013/10/08(火) 01:18:22.15 :v32VmwGG0

できる


GETACTIVEOLEOBJ
名無しさん@お腹いっぱい。 [sage] 2013/10/08(火) 11:57:28.16 :YtPkArXU0

まじかー、xpからwin7に変えたらできなくなったんだよなぁ
名無しさん@お腹いっぱい。 [sage] 2013/10/08(火) 13:24:52.57 :gUrftZgt0

タブブラウザになってややこしくなってるだけじゃね?
名無しさん@お腹いっぱい。 [sage] 2013/10/08(火) 21:56:38.67 :ijSJS1eMi

ありがたい
名無しさん@お腹いっぱい。 [sage] 2013/10/10(木) 17:00:36.70 :Al5LPAbd0
POFF(P_MONIPOWER2)
sleep(10)
POFF(P_MONIPOWER3)
10秒間モニターOFFにしようと上記を実行したんですが
一旦オフになってすぐにオンになってしまいました

どうすればできるでしょうか?
名無しさん@お腹いっぱい。 [sage] 2013/10/10(木) 17:14:40.98 :EE93X4Sf0

最初に Sleep(1) を入れてみて
名無しさん@お腹いっぱい。 [sage] 2013/10/10(木) 17:41:44.21 :Al5LPAbd0

やってみましたがダメでした
名無しさん@お腹いっぱい。 [sage] 2013/10/10(木) 17:45:25.44 :EE93X4Sf0

じゃあ権限がなくてスルーされてるか
省電力動作を拒否してるアプリがいるかのどっちかかな。
管理者権限でUWSCを起動して実行するとか、
怪しい常駐ソフトを全部落とすとか。

デバイスドライバが省電力機能をに対応してない可能性もあるけど。
名無しさん@お腹いっぱい。 [sage] 2013/10/10(木) 18:10:58.90 :Al5LPAbd0

管理者権限で実行したら出来ましたー
ありがとうございます
440 [sage] 2013/10/11(金) 17:52:41.00 :nLsJdmZj0

訂正
原因は管理者権限ではなく
省電力動作を拒否してるアプリの方でした
394 [sage] 2013/10/16(水) 13:37:25.27 :D+9oU0+e0
Repeat

  //Aの色があればクリックしてX地点へ
  ifb CHKIMG("色")
   x=G_IMG_X
   y=G_IMG_Y
   BTN(LEFT, CLICK, x, y, 300)
  endif

  X地点

 //Bの色があればクリック、無ければZ地点へ戻る
 Until CHKIMG("色")

 x=G_IMG_X
 y=G_IMG_Y
 BTN(LEFT, CLICK, x, y, 300)
  endif

これを繰り返せばいいんでしょうか?
初心者なもので質問ばかりですいません・・・
名無しさん@お腹いっぱい。 [sage] 2013/10/16(水) 13:57:25.66 :wmvgywDY0
悪かった。君はもういいから掃除てもしてなさい。
名無しさん@お腹いっぱい。 [sage] 2013/10/16(水) 19:21:55.26 :C+VZh1h00
kusoresu.quit()
名無しさん@お腹いっぱい。 [sage] 2013/10/16(水) 19:34:55.28 :vyBCanNi0
このスレの人間は閉鎖的だな
リアルでもそうなんだろうけど
名無しさん@お腹いっぱい。 [sage] 2013/10/16(水) 19:58:14.38 :Dtwhp/0w0
xyに格納する理由が分からないけどまぁいいや。
名無しさん@お腹いっぱい。 [sage] 2013/10/16(水) 21:13:52.43 :o0LxKudr0
閉鎖的も何も三角関数はUWSC独自の話じゃないのよ
普通に検索して発見したロジックを移植したらいい
名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 08:27:06.80 :AbPeGgMt0
BOTスクリプト欲しがってるアホはUWSCの機能に関する質問とか一切せずに
糞BOT用に組んだ動かない馬鹿文の添削させようとしてるだけですし
名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 16:26:38.82 :sd51e1PI0
RGB=PeekColor(512,384)って座標指定してるからでほ
素直にフォーーーーーーーーーーって回してればええやん

for Xi = 500 to 505
for Yi = 380 to 390
RGB=PeekColor(Xi,Yi)
ifb 似ている色
クリック
breakbreak
endif
next
next
名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 19:10:26.34 :zUXVQmaR0
あ〜ふぉーやるのか〜
名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 19:20:44.33 :yie1+zES0
にある通り色幅ありすぎだから。
CHKIMGのオプションでカバーできる範囲を超えてる。
提示した通りの判定方法でやるならフォーしかないが重い処理になる。
もっといい判定方法を探した方がいい。
名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 19:31:01.03 :sd51e1PI0
どんな使い方するのかしらんがそこまで重くなるか?
option SHORTCIRCUIT
は必須な
名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 20:46:58.80 :pxJlxHYnP
失礼します。
先生方、モバゲーで自動操縦しようと簡単なマクロを試験したら右クリックは可能なのに左クリックだけが対策されてるようで実行されないようなのですが
左クリックの代理となるショートカットキーやその他の抜け道をご存知でしたら教えてください。
よろしくお願いします。
名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 21:00:01.90 :zUXVQmaR0
よし、マウスのドライバで右左のクリック反転しようぜ。

しかし、対策されてたかなぁ?
名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 21:09:22.63 :imzyr2Zl0
聞いたことないけど
名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 21:16:58.13 :/rq1237LP

左クリック対策?
モバゲーのなんてゲームだろか
はじめて聞いた
名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 21:47:38.29 :yie1+zES0
重いと ,CLICK では反応しない場合があるぞ。
,DOWN ,300)
,UP ,700)
SLEEP(0.2)
ぐらいで、クリック成功を判定するまで何回でもクリックするループ組んでみ
名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 21:55:22.58 :pxJlxHYnP

モバゲー星矢っす。
手動だと左クリック可能ですけど、uwscで操作だと左クリックできません。
何かがおかしいのかな。
でもネットにも載ってるスクリプトで特におかしなとこはないと思うんですが。
名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 22:01:52.93 :4OIyHLEK0
自分で書いてないんなら書いた奴に言えよ
名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 22:34:56.25 :pxJlxHYnP

ありがとうございました。
教えの通りやってみましたがやはり不動でした。画像の場所までは行くのですがね。
星矢自体なぜかプロテクションが多くて嫌になります。
ネットに載ってる方法だけではPCプレイもできず、更にsgviewerを使って初めてPCプレイが可能になるほどです。
名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 22:41:37.26 :e0Uz+Nah0
UWSCが敗北する時がこようとは
名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 22:58:38.33 :sd51e1PI0
VMも無理なん?
名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 23:06:00.42 :pxJlxHYnP
VMってググったけど見ただけで俺がギブアップですw
名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 23:12:48.37 :Y/JXjsR60
先にMMVできちんと座標移動してからクリックでもだめなん?
名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 23:31:12.00 :/rq1237LP

CLICKではなく
down,upで時間の調整してみては?
自分は時間調整したり
連続DOWNのあとUPしてみたりしてるよ
BTN(LEFT,DNWN,座標x,座標y,20)
BTN(LEFT,UP,座標x,座標y,20)

BTN(LEFT,DNWN,座標x,座標y,40)
BTN(LEFT,UP,座標x,座標y,20)

BTN(LEFT,DNWN,座標x,座標y,100)
BTN(LEFT,UP,座標x,座標y,20)

BTN(LEFT,DNWN,座標x,座標y,20)
BTN(LEFT,DNWN,座標x,座標y,20)
BTN(LEFT,DNWN,座標x,座標y,20)
BTN(LEFT,DNWN,座標x,座標y,20)
BTN(LEFT,UP,座標x,座標y,20)
名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 23:33:03.63 :pxJlxHYnP
ありがとうございます。座標移動は省略可能なので試す意味がないかと思います。
名無しさん@お腹いっぱい。 [sage] 2013/10/17(木) 23:44:09.50 :pxJlxHYnP

ありがとうございました。
それ全部試して全滅でした。
名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 00:08:15.81 :RYIBRo1HP

ブラウザはGoogle Chrome ?
星也やらないからわからないけど
他のモバゲーでクリック対策された時に
ブラウザの拡張機能
Mouse2 Touch
これをChromeに拡張したらクリックできたよ
多分、ここに聞きにくる前に試してるとは思うけど念の為。
名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 00:10:26.14 :yFjnc+Dh0

違うよ
ゲーム側がどうやって判断してるかの推測、化かし合いでしょ。
マウスポインタが、人間が操作した時のように動いてからクリックしたのではなく、
いきなり特定の座標に瞬間移動してからクリックしたら、
自動操縦ソフトだと判断して操作を受け付けないような仕掛けがしてあるかもしれんでしょ。
操作の記録で、MMV省略しないよう設定してやってみればすぐ確認可能でしょ。
名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 07:21:05.54 :LcZccTmmP

ありがとうございます。クロムです。
Mouse2 Touchの拡張機能探してみたけど現在はないみたいで代わりにchromeタッチで
スライドタッチできるようにしてみたけどやっぱり不動です。

ありがとうございます。mmvでも動きませんでした。
名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 08:07:39.45 :1O6VRs/l0
というかそれゲームではなくクロームの拡張機能が制御してるんじゃないの?
ソーシャルゲームビューア使って無理やりスマホ用のゲームPCので動かしてるんでしょ?
名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 10:38:56.79 :LcZccTmmP

ということはsgviewerを使うと左クリック禁止になるってことですか?その他のモバゲーゲームでまだ試してないんで帰宅したら試してみます。
名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 10:42:53.55 :LcZccTmmP
寝マクロくんでも左クリック可能かどうか試してみます。
名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 18:41:35.68 :1O6VRs/l0
ちなみに下のサイトの一番下に書いてあるのは試してるよね?
ttp://nanapi.jp/67082/
名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 21:06:18.19 :LcZccTmmP

ありがとうございます。
設定弄るのは初耳だったので早速やってみましたがやっぱ不動です。
あと、モバゲーのガンダムコレクションも同様にやってみましたが星矢と同じで左クリックできませんでした。
名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 21:17:51.66 :LcZccTmmP
寝マクロも左クリックできん。詰んだ。
名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 21:33:00.01 :I5Mw1X2O0
普通にできるじゃん
そもそもUWSCとか寝マクロの問題じゃないからこれ以上は他所でどうぞ
名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 22:19:05.12 :LcZccTmmP

sgviewer環境で星矢できてるんですか?ブラウザなら普通に出来ると思いますけど。
あと、ここ以外UWSCの話題はスレ違いで入れないですよ?
名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 22:33:42.89 :IpIzhm5mP
ブラウザで普通にできるならブラウザでやれよ
名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 22:46:51.02 :RYIBRo1HP

ガンダムコレクション
今やってみた
やり方わからないから「探索」ってのを押して適当にクリックしてたら
新しいエリアってのに行けるようになった
UWSCのカメラモードで記録して再生しても同じようにできた
特別な事は何もしてない
Windows XP sp3 で試した
名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 23:12:37.97 :RYIBRo1HP

GoogleChromeの拡張検索でマウス2タッチは何故か検索できないようになってた
マウス2タッチをインストール済みのChromeでマウス2タッチのURLを調べた
そのURLへマウス2タッチのインストール無しのChromeから移動してみた
まだ無料でマウス2タッチをインストールできた
URLは長いから要請あれば教える
他のタッチで代用できてるなら要らないよね
名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 23:24:30.02 :LcZccTmmP

他にもctouchとか拡張してみましたがやっぱり左クリックできません。
解決したらもう消えますので、なんとかマウス2タッチのurlを教えていただけませんか?
うざくて申し訳ありません。
名無しさん@お腹いっぱい。 [sage] 2013/10/18(金) 23:59:36.42 :RYIBRo1HP

エッチてぃてぃぴーえす//chrome.google.com/webstore/detail/mouse2touch/bmokioijeefenglkpfnbalmpmocnodo

ガンコレはこれ無しでできたと書いてる
しかも代用も見つけたと書いてる
なんで今更これがいるのかね
自分が思うに左クリック出来ないのはUWSCが原因ではないと思う
つまりここで聞いても解決しないと思うね
まあやってみて。多分UWSC関係ないところで解決の糸口みつかる思う
UWSCはクリックするだけ
クリックのタイミングは変えれるがあくまでクリックするだけ。
名無しさん@お腹いっぱい。 [sage] 2013/10/19(土) 05:46:08.24 :xB2YOrMK0
堂々とゲームマクロ宣言してる上にこんな痛い奴相手にしてあげるなんてやさしいのな
違うスレにきたかと思ったわ
名無しさん@お腹いっぱい。 [sage] 2013/10/19(土) 07:20:21.12 :9pl7tSgXP

すみません。url行ってみましたが関係ないstylishという拡張機能のページが出てきました。
あと、ガンコレでできたとはどこにも書いていません。それは他の方がテストしてくれたものです。
代用タッチも失敗なので見つかっていません。
名無しさん@お腹いっぱい。 [sage] 2013/10/19(土) 07:48:33.33 :Bp61+rvoP

ガンコレで出来たって俺がテストしてあげてここに書いたけど
クリック出来ないのはUWSC関係ないかもね
クリックの問題=UWSCの問題
そう思ってるのならずっと解決しないよ
名無しさん@お腹いっぱい。 [sage] 2013/10/19(土) 08:49:10.13 :9pl7tSgXP
僕もそう思ってまして誠意調査中です。テストありがとうございました。
名無しさん@お腹いっぱい。 [sage] 2013/10/19(土) 10:28:26.21 :OmYFilmN0
単に画面右に時計やらカレンダーやら表示したままやろうとしてるだけじゃね?
名無しさん@お腹いっぱい。 [sage] 2013/10/19(土) 14:17:21.22 :Fn0sTgkK0
メモ帳にSENDSTRで文字列を送信すると
メモ帳がアクティブになってしまうんですが
バックグランドのまま送信することはできるのでしょうか?
名無しさん@お腹いっぱい。 [sage] 2013/10/19(土) 15:52:34.09 :uQg3rBD40

sendstr( id, "文字列", 1, false, 2)
名無しさん@お腹いっぱい。 [sage] 2013/10/19(土) 17:23:20.92 :Fn0sTgkK0

ありがとうございます
それ単体で動かすとアクティブにならずに送信できるんですが、
私がやりたいマクロに組み込むと送信ができないので
別問題ですかね
,1, false, 2)を使わなければアクティブにはなりますが送信はできるので歯痒いです
453 [sage] 2013/10/20(日) 00:36:51.79 :NlPrYuIzP
魚おおおおおおおおおおおおおっ。
できた。左クリック。
みなさんに色々提案していただきましたが、根気強く検索して自力解決できました。
windows7とvistaはそのままじゃUWSCが実行できないエラーが出る時があるんです。
解決方法はクロームとUWSCの両方ともダブルクリックじゃなく、右クリックで管理者として実行を選択するとエラー回避になるそうです。
これで僕も皆さんも一つ賢くなれました。ありがとうございました。約束通り消えます。
名無しさん@お腹いっぱい。 [sage] 2013/10/20(日) 01:04:35.44 :4+oRDMn30
UWSC一時敗北したと思ったがまた勝ってしまったか
名無しさん@お腹いっぱい。 [sage] 2013/10/20(日) 01:39:29.22 :ZKv2vJCO0
てか、管理者実行って基礎中の基礎…
名無しさん@お腹いっぱい。 [sage] 2013/10/20(日) 03:56:40.30 :ouHJd/VBP

そんなの当たり前だ
ここに来る連中はお前以外全員知ってる
あまりにも初歩的なので
ワザとではWindows XPで試したって書いておいたのに
読み飛ばしていたとはな
案の定管理者権限かよ
ここに書くのも恥ずかしいくらい初歩の初歩。
名無しさん@お腹いっぱい。 [sage] 2013/10/20(日) 10:20:04.51 :vvpxdxQO0
皆さんも一つ賢くなれました()
名無しさん@お腹いっぱい。 [sage] 2013/10/20(日) 10:34:05.79 :EA+PKxdl0
顔真っ赤で書いたんだろスルーしてあげろよそれが日本人の優しさだろ
名無しさん@お腹いっぱい。 [sage] 2013/10/20(日) 12:46:30.02 :zsqO5NmJ0
皆さんも一つ賢くなれました (=_=;)

なれてるとしたら次回から、こうすることに決めたことか。

真っ先に「管理者権限は?」と聞いて、
まともに答え(られ)ない奴を門前払い。
名無しさん@お腹いっぱい。 [sage] 2013/10/21(月) 07:16:17.15 :PFP4qAku0
香ばしいな
芋ケンピかってくるか
名無しさん@お腹いっぱい。 [sage] 2013/10/22(火) 23:41:10.23 :KqgMYyGLi
IE=createoleobj
でIE操作をするとき、1回の起動だったらだいたい問題ないんだけど、
何度も開いたり閉じたり、タブを複数扱ったりするとうまくいく時といかない時があるんだけど
、対処法ってあるんですか?

うまくいかない:スクリプトは間違っていないのに(何度かは開けている)のにたまにCOMエラー、
5回IEを開く命令をしたのに3回目でIEがずっと読み込み中のまま停止、
IE.document.forms[n].elements[i].value=1 とかでも、だいたいはうまくいくけど、たまにCOMエラー。
Excel = getactiveoleobj("Excel.application")これでもCOMエラーが出る時もあるんだけど、
対処法わかる人いたら教えて下さい。

ちなみに自宅でも職場でも似たような事態になるので、PCスペックとかではないかと。
一応自宅のはウインドウズ7、職場は確かXP。
名無しさん@お腹いっぱい。 [sage] 2013/10/23(水) 01:02:39.86 :uoD4c3xn0

間違ってなくてもタイミングでCOMエラーは出るよ。
たとえばドキュメントが空の時にページ内にアクセスしようとしたときとか。
名無しさん@お腹いっぱい。 [sage] 2013/10/23(水) 03:09:10.59 :7vLU54oT0

例外処理するかCOMエラー無視するかすればいいのでは
名無しさん@お腹いっぱい。 [sage] 2013/10/23(水) 08:09:09.53 :vfNEFuSR0
管理者権限忘れてるとかUWSCの問題じゃなく
知能が低すぎた事が原因じゃねーかw
名無しさん@お腹いっぱい。 [sage] 2013/10/23(水) 11:14:16.46 :lEAE4a4C0
,502
あざっす!
そういうときはやっぱりの言われるようにCOMエラー処理で皆さん対応されてるんですかね。
例えば、1.IE開く 2.navigateで特定URLへ誘導 3.そのサイトのフォームへ入力して送信
みたいな場合の2でCOMエラーが出ちゃう場合は、エラー無視してもしなくても(フォームが表示されないので)
アウトになっちゃいますかね?COMエラーは今まで触ったことないんで、これから学んでみます。
名無しさん@お腹いっぱい。 [sage] 2013/10/24(木) 04:08:05.90 :JZhyDuiY0
UWSCの「ChkCtlID.uws」というスクリプトを
どなたか、「AutoIt3」か「AutoHotKey_L」用に
移植していただけませんか?

どうかよろしくお願いします。
名無しさん@お腹いっぱい。 [sage] 2013/10/24(木) 04:15:45.52 :IuI8Dxub0

名無しさん@お腹いっぱい。 [sage] 2013/10/25(金) 14:02:44.40 :myLg+qn90

いくら出す?
名無しさん@お腹いっぱい。 [sage] 2013/10/25(金) 15:13:58.37 :QeOGckb30
お金は出せないが、
・無炭酸ノーマル味トンスル2本
・炭酸入りノーマル味トンスル2本
・無炭酸キムチ味トンスル2本
(1本350ml)なら用意できまする。

残念ながら、炭酸入りキムチ味トンスルは人気ゆえ現在在庫を切らしてる。
名無しさん@お腹いっぱい。 [sage] 2013/10/26(土) 01:08:28.88 :Mz3zlYRoP
そんな報酬じゃ朝鮮人しか引き受けねぇよな
名無しさん@お腹いっぱい。 [sage] 2013/10/26(土) 17:25:47.01 :rbH32/6B0
マクロ実行中にブラウザが消えてしまいました
もしやと思いctrlwinを試したところ無事表示されたんですが、原因の見当がつく方いらっしゃいますか?
スクリプトの内容は、単純なFlash操作で、せわしなくクリックを反復する類です
以前に一度だけあったような気もしますがそれだけなので、再現率はかなり低いと思いますが
不可解なので理由を知りたい
名無しさん@お腹いっぱい。 [sage] 2013/10/26(土) 17:42:44.72 :0nwTKMHm0
ポーズ入れて噴出しいれて何の処理したら消えるのか自分で確かめろよ
お前のローカルにあるスクリプトなんざ誰が確認できるんだよアホ
名無しさん@お腹いっぱい。 [sage] 2013/10/26(土) 19:20:35.62 :3BLZFps70
吹き出しよりもプリントの方が放置できるでしょ
UWSC以外の原因でもブラウザのバージョンアップで消えていたとかいろんな可能性はあると思うが
名無しさん@お腹いっぱい。 [sage] 2013/10/26(土) 20:47:58.42 :Clsf+Y8x0
これからの季節に最高の犬肉サムゲタンを2名様
炭酸入りキムチ味トンスルをお一人様1本ずつ
サービスするから作って〜
名無しさん@お腹いっぱい。 [sage] 2013/10/26(土) 21:07:25.61 :nHVY41Qv0
スクリプト作成で困っている人を対象に
有料サポート掲示版を設置するのはどうだろう。
互いがWIN-WINになるだろうし。
名無しさん@お腹いっぱい。 [sage] 2013/10/26(土) 22:00:03.19 :3BLZFps70
金払うなら普通に業者に頼んだほうがいいだろ
後はクラウドソーシングとかはすでにあるしその手のサイトでも結構UWSCのスクリプト作ってみたいのはあるぞ
名無しさん@お腹いっぱい。 [sage] 2013/10/27(日) 15:08:15.28 :Bc3CZdr90
POSの引数の左右間違えちゃうわー
名無しさん@お腹いっぱい。 [sage] 2013/10/27(日) 16:32:38.67 :B8b8MZAV0
そうそう。
クラウドソーシングでUWSCの依頼あるね〜
放置されてるけどw
名無しさん@お腹いっぱい。 [sage] 2013/10/27(日) 19:16:52.28 :Er3d5o3V0
まじか。過疎るってことは重要無いってことなのかな
それとも日の当たりを浴びてないだけかどっちだろ
名無しさん@お腹いっぱい。 [sage] 2013/10/27(日) 19:38:25.66 :B8b8MZAV0
依頼者が技術を甘く見てるとか、
そんなのUWSCで無理やりやるの?
みたいなパターンのほうよ。
名無しさん@お腹いっぱい。 [sage] 2013/10/28(月) 01:00:24.02 :23r+fMxT0
windows7で動いていたのが、持出し用のwindows8ノートパソコンに移したら全然動かなくなった。
マウスのクリックが全然記録・実行されないようだ。
SONY VAIOタッチパネル付。タッチパネルが悪さしてるのかな?
まだ過去ログあさってないのだが、こういう事象って解決してますか?
名無しさん@お腹いっぱい。 [] 2013/10/28(月) 01:04:13.93 :23r+fMxT0
70くらい上のレスに「管理者として実行」というのがあったので、
これか!と思い試してみたところ、見事に問題解決しました。
本当にありがとうございました。
名無しさん@お腹いっぱい。 [sage] 2013/10/28(月) 12:46:50.48 :rcD6MX+X0
皆さんも一つ賢くなれました(名言w)
名無しさん@お腹いっぱい。 [sage] 2013/10/28(月) 22:15:45.87 :s3Odbqit0
ご教授をお願いします。
UWSC4.9aのプロ版を試供状態で作ったスクリプトが、ライセンス登録後に動かなくなりました。
原因のわかる方いらっしゃいますか?
現在試したこと
○アンインストール後、試供版での動作
×アンインストール後、ライセンス登録での動作
○友人pcでの試供版での動作

いずれもver4.9aです。
523 [sage] 2013/10/28(月) 22:18:02.60 :s3Odbqit0
以下は実際に動かしているスクリプトになります。
Sleep(3.0)
while true
ifb CHKIMG("開始.bmp")   
x=G_IMG_X           
y=G_IMG_Y
BTN(left,click,x,y)        
SLEEP(3.0)
if CHKIMG("中止.BMP") THEN KBD(VK_1,CLICK)
SLEEP(3.0)
endif              
ifb CHKIMG("中止.bmp")   
x=G_IMG_X           
y=G_IMG_Y
MMV(x, y)          
endif              
Wend
名無しさん@お腹いっぱい。 [sage] 2013/10/29(火) 00:29:40.82 :rweRPAld0

登録済みでも動くけど
名無しさん@お腹いっぱい。 [sage] 2013/10/29(火) 00:42:04.95 :XWXNqM+o0
ライセンス登録したならデバッグツール使ってみれば?
無駄は多いけど変なところはないと思うけど
名無しさん@お腹いっぱい。 [sage] 2013/10/29(火) 00:57:17.70 :Gp8ITveT0
行数少ないんだから、とりあえず1行ずつ消してみて、どこで動かなくなっているか見るのも手だわな
動いてる人もいるんだし
名無しさん@お腹いっぱい。 [sage] 2013/10/29(火) 01:08:57.87 :lvzW+Lk60
left,click
523 [sage] 2013/10/29(火) 05:33:25.28 :q+h1Wa5+0
ご返信ありがとうございます。
デバックツールで確認したところ
L20が存在しません。
というエラーが表示されました。

エラー内容が解釈できないのですが、どなたかご教授をお願いします。

何度も質問ばかりで申し訳ない。
名無しさん@お腹いっぱい。 [sage] 2013/10/29(火) 08:16:56.44 :Ra6FInjq0

それは是非公式に聞いてください
名無しさん@お腹いっぱい。 [sage] 2013/10/29(火) 08:38:42.45 :6if1SN5D0

もっと、お勉強してからにしましょうね!
名無しさん@お腹いっぱい。 [sage] 2013/10/29(火) 13:52:40.26 :rweRPAld0

ちゃんとライセンス買ってください
529 [] 2013/10/29(火) 16:09:49.91 :q+h1Wa5+0
ご返信ありがとうございます。
もう少し調べてみます。

ライセンスは自分で購入したものです。
名無しさん@お腹いっぱい。 [sage] 2013/10/29(火) 16:59:42.19 :2s2ZtBSO0

の最後にあるように割れ対策じゃね
誤爆だから作者に連絡し
523 [sage] 2013/10/31(木) 05:59:37.30 :JXFIbavg0
L20のエラーについてですが、アドバイスを頂いたとおり、公式にて問い合わせをして解決しました。
アドバイスを頂きありがとうございました。
名無しさん@お腹いっぱい。 [sage] 2013/10/31(木) 08:16:04.43 :9Pw/9XzB0
原因なんだったんだ?
折角なんだから一言ぐらい書いておこうぜ。
名無しさん@お腹いっぱい。 [sage] 2013/10/31(木) 08:45:34.29 :rFsYD34F0
虚偽でなければ、(違法割れ業者とか割れ友人から)購入したんじゃね。
都合が悪い事から書けないでしょ。
523 [sage] 2013/10/31(木) 09:22:37.25 :Yb7q90j80
私が購入した、シリアルナンバーの入力を誤っていたのですが、偶然にもその数字が通ってしまい、アドバイスを頂いた割れ対策のエラーがでていたようです。

以下、公式からのお返事です。

登録するのは 伝票番号の xxxxxxxxx ではありません。
ベクターより 17桁のライセンスキーが発行されているはずですので
一度 UWSCをアンインストールしてから 再インストールをして
17桁のライセンスキーを入力してください。

たまたま、伝票番号の xxxxxxxxxx が登録処理を通り
その後に 不正キーの扱いになり、機能制限がかかったようです。
大変に失礼いたしました。

こんなミスをする人はなかなかいないと想いますが、L20のエラーを次回のテンプレのL22の次にでもそっと追加をお願いします。
名無しさん@お腹いっぱい。 [sage] 2013/10/31(木) 09:57:29.35 :VEqL6FdH0
> 登録処理を通り
> その後に 不正キーの扱いになり、

あるんだね@
名無しさん@お腹いっぱい。 [sage] 2013/10/31(木) 10:15:17.48 :8eXda3A3P

報告おつでした
名無しさん@お腹いっぱい。 [sage] 2013/10/31(木) 10:44:56.89 :a28apKJB0
試しに何度か適当にキー打ってみたら登録ありがとうございますって出た
もっともエラーコードも出なくて試用状態のままだから本当に不正キーとして通ってはないようだけど
名無しさん@お腹いっぱい。 [sage] 2013/10/31(木) 22:45:52.07 :xspnaOUP0
むう…Chromeでブラゲーをバックグランドでも動かしていたのだが
とーとつにクリック情報を認識しなくなってしまった。

id = GETID「ウィンドウ情報」
hnd_id = GETCTLHND(id,"Chrome_RenderWidgetHostHWND",1)
MOUSEORG(hnd_id,2)

アクティブならちゃんと動作するし、hnd_idで出力してもIDちゃんと吐くんだけど
他にバックグラウンドで動かすのに必要な要素を
見落としてそうなら、ぜひ教えてください
名無しさん@お腹いっぱい。 [sage] 2013/10/31(木) 23:56:57.15 :+mcM++QP0
ヘルプに、バックグラウンドだか非アクティブだかって単語があったようなないような
名無しさん@お腹いっぱい。 [sage] 2013/11/01(金) 08:35:33.60 :4cR8MTIl0
UWSCのキージェネレータって今もアプリ版とVBS版2種類出回ってるんだな。最新版には対応してないけど。
VBS版は普通にテキストエディタでソースもろ見えだから見たけど結構単純なアルゴリズムだった。



悪意なく偶然にも通ってしまったのか。疑ってすまんかった。

UWSCの試用期間と登録キーは2エントリ共レジストリで管理してるけど
登録キーってアンインストールしてから 再インストールをすれば直ったっけ?

過去にいずれもピンポイントでバックアップ取って14日制限を復活させたり、
UWSCProを一度も立ち上げずに正規登録済みにして遊んだ事があったが
アンインストールでは試用期間は復活しなかったのは覚えてるけど
そういや登録キーの方は試してなかったんで気になった。どうでもいい事だが。



試用期間消えないダミー処理もあるのか。
IERECやデバッグツールが動くかどうかで正規として通ってるか判断できると思う。
まぁエラー出ると思うが、その番号がL22かL20かそれ以外なのかをできれば報告頼む。
名無しさん@お腹いっぱい。 [sage] 2013/11/01(金) 23:44:46.17 :PXZP+Eni0
今まで2Dゲームでuwsc使ってマクロ作ってたんだが、3Dゲームになると難易度めっちゃ上がるな…

画像認証なんてのは3Dゲームだと陽当たり、角度で認識が変わるから使えんし、移動も角度によって行き先が変わるから中々上手くいかない


3Dゲームでuwsc使ってる人いたら移動とかのアドバイスくれないか?
名無しさん@お腹いっぱい。 [sage] 2013/11/01(金) 23:50:44.98 :4z3Ujd150
マップが表示できるならそこで判断
それ以上のことやると座標データ取るのにメモリ解析とかさせないといけないから外部DLL作るとか別ソフトと連動させるとかしないとかなり面倒だと思う
そこまでするならUWSCに拘る必要性もなくなるが
名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 06:32:23.15 :VY3THxib0

アイテムのプロパティだとかダイアログだとかは2Dだろ?
名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 09:33:50.28 :V9ftTVrJ0
CHKIMGのG_IMG_X、G_IMG_YってTHREAD実行で二つ以上の画像判定を並行させて
同時にヒットしたときってどーなってんだろ?
てかG_IMG_X、Yに限らず関数実行結果が返る特殊変数全般なんだけど。

RPGをセミオート化しててなんも考えず
「敵シンボルを認識して追跡」
「同時に戦闘コマンドウインドウを認識(エンカウント)したら追跡中断し戦闘ロジックへ」
みてーなことやってみて今んとこ衝突誤爆らしき事象がないんだが・・・
たまたまかな?
名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 09:51:00.87 :74szR1uR0
グローバルじゃないから問題ない
名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 10:27:56.29 :V9ftTVrJ0

おー、グローバルじゃないんだ。ありがと!

特殊変数のスコープってヘルプや公式に記載あるの?
全然見つけられん・・・
名無しさん@お腹いっぱい。 [] 2013/11/02(土) 11:50:37.39 :J6jlqaqni

今どきダイアログに透過かかってねぇ3Dゲーなんてほとんどないよ
そんだけで単純なchkimgじゃ検知しづらい
2Dオブジェの点滅や回転も多いしね。

まぁUWSCでやる範疇じゃねーな…
名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 12:43:52.36 :+GHyYRAl0

uwscで使う画像も透過にすりゃいいだけだろw
名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 16:19:03.00 :VY3THxib0

UWSCにデータシートみたいな上等なもん期待しちゃいかん…w
名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 16:24:14.97 :VY3THxib0

透過あり画像で出来るかもしれんけど、
行き当たりばったりなプログラミングじゃなくて
うまくいかないのが画像判定に失敗してるのかバグなのか
判定するためのテストケースのあるプログラミングが
必要になってくるね。
> IMG_MSK_BGR4: 各色(BGR)に対し 16/256の色幅を許す
のオプション以上に曖昧な判定するには
OpenCVに手を出さなきゃあかん
メモリピークとどっちが楽なんだろw
どちらにしてももはやUWSCでやるメリットが少ない
名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 19:19:02.44 :vmw8hfJt0
UWSCはBOTツールではなくマクロツールだからな
BOTを作りたいならCとかCが難しいならPythonとかRubyあたりを勉強するといいよ
名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 21:06:52.89 :V9ftTVrJ0

・・・。
特殊変数の有効範囲程度でも自力検証してるってこと?
名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 21:34:45.68 :gziCldKj0
G_IMG_Xってグローバルだと思うよ
別スレッドでChkimgしたとき上書きされた
名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 22:01:20.62 :dTg0fzXN0
どういう検証をしたらグローバルだと思うんだ
名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 22:27:18.22 :VY3THxib0
グローバルだとするとのclickImage関数がリエントラントじゃくて使えない
ローカルならもはや関数化しない理由がない


FOR文の変数が変更不能なのすら書かれてないしw
名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 22:34:00.88 :sTaBUkPW0

>FOR文の変数が変更不能なのすら書かれてないしw

これ、むっちゃハマったわ
名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 22:34:47.87 :VY3THxib0
名前 G_IMG のプレフィックス G はグローバルであることを示している可能性大。
グローバルなら、
グローバル変数で割り込み禁止フラグを設定し、
CHKIMG実行前にフラグONなら待機もしくは中止
CHKIMG実行前にフラグON
G_IMGの読み取り後にフラグOFF

ttp://anago.2ch.net/test/read.cgi/software/1350040751/410
の方法

これも関数化しないとひどい目にあう
名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 22:41:02.19 :VY3THxib0
そもそもUWSCはスレッドを使うように設計されてないんで
スレッドを使わずラウンドロビンにするなど極力避けたほうがいいぞ。
スレッドがリソースのデッドロックで応答なしになった場合、
通常のまともなマルチスレッド言語と違って
スレッドを強制終了する方法そのものが実装されて無い。
UWSCは自動操作の相手次第でデッドロック頻発する。
名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 22:42:00.41 :VY3THxib0
あと、複数のスレッドから特定の1スレッドを指定するIDも、必要になったら自作だなw
名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 23:08:37.12 :gkIwz1g90
1ドットの青と赤の画像用意してやってみたけど変わらんやん

Thread c2()

for i = 1 to 3
CHKIMG("c:\blue.bmp")
print "c1 " + G_IMG_X + " " + G_IMG_Y
    Sleep(1)
next
print "ここからCHKIMGなし"
for i = 1 to 10
print "c1 " + G_IMG_X + " " + G_IMG_Y
sleep(1)
next

procedure c2()
  for i = 1 to 20
CHKIMG("c:\red.bmp")
print "c2 " + G_IMG_X + " " + G_IMG_Y
    Sleep(0.5)
  next
fend
名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 23:16:48.66 :VY3THxib0
特殊変数はコンテクストによって
ローカルになったりグローバルになったりしてる可能性はあるね
初心者に分かり易くという親切心で謎の挙動になってるんじゃね
検証してみればなんてことはないかもしれんが
他にも仕様が謎の部分だらけなんでやる気起きない
名無しさん@お腹いっぱい。 [sage] 2013/11/02(土) 23:58:23.29 :74szR1uR0
恥の上塗り
名無しさん@お腹いっぱい。 [sage] 2013/11/03(日) 00:01:34.21 :kJlRwpqy0
スレッド内のchkimgの変数がグローバルかどうかはちょっとコードを書けば確認できるけど
それが仕様なのかどうかがHelpとか読んでも判らないのが・・・
名無しさん@お腹いっぱい。 [sage] 2013/11/03(日) 01:03:02.93 :v89Bom+B0
仕様だと明記する仕様として確定してしまい黙って変更できなくなる。
その手間すら惜しい開発体制なのだろう。

仕様をせっかく検証しても、「今のところ」という非公式なものとなり
その仕様に従って開発するのは自己責任ですということに。
クローズドの典型的な悪い例みたいになっちゃってる。
名無しさん@お腹いっぱい。 [sage] 2013/11/03(日) 01:36:52.92 :/CHfXc7v0

ゲームにもよるがchkimgの透過、色幅でどうこうできる範疇超えることが多いねー

一見単純な2Dに見えるもんが実はテクスチャだったり
辺りの話にコマンドウインドウ等の透過処理、アンチエイリアス、光源、エフェクト・・・と
色々絡まって一見同色に見えるもんが刻々と変わってる感じ。

そこをシステムデザイン・UIの穴堀り、なんとか色固定ドット数点と認識幅探して、透過やエフェクト時のマッチングパターンも多数用意して・・・
なんて力技かましゃ「認識できない・・・」から「誤爆が増えたw」になる嫌な予感しかしねーから素直にOpenCVsharpにシフトするも
画像処理の地盤がない俺じゃやれること(勝手にそこまでやってくれるwこと)が多くて
適正な手法を絞れず結局超えられない壁が残っちまうw
HH [] 2013/11/03(日) 08:28:15.18 :gJ3EnPh60
初めて投稿します。
どなたかからUWSC EXECLシートのプリントプレビュー画面の枚数を取得する方法をご存知の方 教授ください。
UWSCでEXCELシート内データを一部を変更して、ファイルセーブするスクリプトを持っています。
これにプレビュー枚数を記録する機能をつけたく思います。
現在は、いちいちプリントプレビューを開き、枚数をずらして、複数枚になっていないかを確認しているのでとても手間が
かかっています。
EXCEL(.DOCUMENT(50)なる表現をインターネット上で見つけたのですが、UWSCでの実装方法がわかりません。
どなたか、教授頂けると幸いです
名無しさん@お腹いっぱい。 [sage] 2013/11/03(日) 09:07:32.86 :v89Bom+B0
EXCELなんてVBAマクロで全て自動化できるだろ
マイクロソフトがEXCELをそう作ってある
UWSCでEXCEL操作するという発想自体が筋が悪い
VBAで出来るはずのことを調べきらずに
UWSCで誤魔化す形になってないか
名無しさん@お腹いっぱい。 [sage] 2013/11/03(日) 09:11:15.26 :i7XdnQhk0

EXCEL = GETACTIVEOLEOBJ("Excel.Application")
Page = EXCEL.ExecuteExcel4Macro("get.document(50)")
MsgBox(Page)
名無しさん@お腹いっぱい。 [sage] 2013/11/03(日) 09:13:21.58 :v89Bom+B0
言っておくがUWSCでEXCELを操作しようなんて
わざわざ問題を難しくしてるんだぞ
UWSCのテキストエディタじゃ
EXCELのオブジェクトの後にドットをタイプした後に
候補が表示されたりせんだろ?
ttp://ja.wikipedia.org/wiki/%E3%82%A4%E3%83%B3%E3%83%86%E3%83%AA%E3%82%BB%E3%83%B3%E3%82%B9#.E4.BE.8B

調べるのはUWSCじゃなくてEXCELのVBA。
UWSCは必要ないしココじゃわからないしスレ違い。
名無しさん@お腹いっぱい。 [] 2013/11/03(日) 15:52:12.39 :RaTkj/Nv0
以下、ダウンロードさせて頂いたプログラムですが
デザイン変更で動かなくなってしまいました

1.画像A(反転前)があるか判定する
2.画像Aがあれば、画像Zをクリックする
3.画像A(反転前)が無い場合、画像B(反転後)をクリックしたい
名無しさん@お腹いっぱい。 [] 2013/11/03(日) 15:53:03.61 :RaTkj/Nv0
PROCEDURE MYPAGE_CHECK()
//マイページのチェック、移動
mypage = 0
LOOP_COUNT = 0
WHILE mypage = 0
SLEEP (0.5)
PRINT ("LOOP_COUNT: " + LOOP_COUNT)
mypage = CHKIMG("mypage03.bmp")
PRINT ("マイページ画像検知(WHILE中): " + mypage)
LOOP_COUNT = LOOP_COUNT + 1
IF mypage = 1 THEN BREAK
IF LOOP_COUNT = 10 THEN BREAK
WEND
IFB mypage = 1
mypage = CHKIMG("mypage03.bmp")
PRINT ("マイページ画像を検出: " + mypage)
PRINT ("マイページ画像座標: " + G_IMG_X)
PRINT ("マイページ画像座標: " + G_IMG_Y)
MMV (G_IMG_X + 5,G_IMG_Y + 5)
BTN (LEFT,CLICK)
SLEEP (1)
MMV (10,10)
ELSE
PRINT ("マイページ画像を検出不可")
CALL reload01.uws
SLEEP (2)
CALL energy_recheck.uws
名無しさん@お腹いっぱい。 [] 2013/11/03(日) 15:54:05.64 :RaTkj/Nv0
UWSC 画像判定と条件分岐について質問です
画像判定してボタンを押したいのですが一度ボタンを押すと色が反転してしまいます
そのため 押したいボタンの反転前と反転後の双方を候補にして
どちらかが判定されたら次の処理に入りたいと思ってます
アドバイスお願いします
ちなみに次の処理もボタンを押すと色が反転するタイプです
宜しくお願いします
名無しさん@お腹いっぱい。 [] 2013/11/03(日) 15:57:28.63 :RaTkj/Nv0
↑  ↑  ↑
なぜか3つに分かれてしまいました ごめんなさい
もし アドバイス頂けたら助かります  ↑
名無しさん@お腹いっぱい。 [sage] 2013/11/03(日) 17:16:01.17 :ATUfXnl+0
FOR loop_count = 0 TO 9
  SLEEP(0.5)
  mypage = 1
  IF CHKIMG("mypage03a.bmp") THEN BREAK
  IF CHKIMG("mypage03b.bmp") THEN BREAK
  mypage = 0
NEXT

IFB mypage = 1
  MMV(G_IMG_X + 5, G_IMG_Y + 5)
  BTN(LEFT, CLICK)
  SLEEP(1)
  MMV(10, 10)
ELSE
  CALL reload01.uws
  SLEEP(2)
  CALL energy_recheck.uws
ENDIF
名無しさん@お腹いっぱい。 [] 2013/11/04(月) 13:48:07.48 :B13tSujf0
さん
ありがとうです 無事クリアしました
助かりました
またお願いします 感謝です
名無しさん@お腹いっぱい。 [sage] 2013/11/08(金) 07:18:41.25 :k2YzIZCi0
最近になってUWSC始めました

現在極々簡単なスクリプトをスケジュールで一回だけ実行に登録して使っています
本当はインターバルがよいのですが、明示的に今から40分毎に・・・
とはできないんですよね?みなさんはこういう時どうされてますか?

あともう一点、たまに実行時間を忘れてマウス操作などをしているときに
スクリプトが走り出して止まってしまうことがあります
スクリプト実行中は、例えばesc以外のkeyやmouseを
受け付けなくする方法などはありますか?(UWSCの処理を優先したい)
名無しさん@お腹いっぱい。 [sage] 2013/11/08(金) 07:42:26.02 :Zj0emzR20
もう忘れてしまったな現役に教えてもらってくれ

単にこれキックじゃダメなんだっけ
ループ終了
SLEEP(40*60*60)
実行処理
ループ終了

実行の数十秒前にこれでも書いて自分に警告ウィンドウ出すとか
MsgBox
あとは仮想マシン上で実行とか

40分毎って回復のタイミング??ゲームとか?
名無しさん@お腹いっぱい。 [sage] 2013/11/08(金) 07:43:07.04 :Zj0emzR20
ループ開始をループ終了と書いてた
名無しさん@お腹いっぱい。 [sage] 2013/11/08(金) 08:34:54.81 :6RBz0/hh0
スケジュール使ってないから知らんけど
式による設定で出来るんじゃない
ヘルプに書いてあるのが
(YMDNN mod 18)= 0 // 18分間隔
だからmod 40にして=0を適当に変えりゃいいんじゃないの

>受け付けなくする方法
LOCKHARDとかLOCKHARDEXとか
特定キー残したいならSETHOTKEYでいらないキー潰すとか?
名無しさん@お腹いっぱい。 [sage] 2013/11/08(金) 11:04:45.43 :x8SdEe0M0

sleep 1回だとかなりアバウトになる。

のやり方は初めて知ったけどいいね。
どういうときに使うのか知らんけど。

> 今から40分毎
今を基準にするなら
((YMDNN+x) mod 40)= 0
とか言う式になるけど、xはどうやって設定するのか。

UWSC.ini の [SCHEDULE] に登録すれば GetTime で現在の x が指定できるっぽいね
x = INT(GetTime() / 60) mod 40
str = "((YMDNN+" + x + ") mod 40) = 0"
WRITEINI( "SCHEDULE", "M" + 番号, str, GET_UWSC_DIR + "\UWSC.ini" )

S スクリプトファイル
M 条件
P 別プロセスフラグ

でも、現在時刻で起動するか分からんな。
重複チェックした上で1回目は起動してやる必要がありそう。
名無しさん@お腹いっぱい。 [sage] 2013/11/08(金) 16:58:42.30 :k2YzIZCi0

レスありがとうございます。sleepは最初使っていたのですが、他のスクリプト走らせると
とまってしまうので(別プロセスもうまく働かない)スケジュールにしてました

msgboxはモニタを見てない時に困るので何かないかな?と
仮想マシンはありかもしれないですね。そちらの導入も少し考えてみます

風景を時々刻々アップしてるサイトのスクリーンショットとか
ニコ動でキーワード検索して新しいものがあったらダウンロードなどに使ってます
40分はあくまで例えです。すいません


ループのところしか見てませんでした
式による設定、あとで調べてみます

>LOCKHARD
おー!そういう命令がやはりあるんですね。
一通り目を通したつもりでしたが見落としてました。
どうもありがとうございます


ちょっと複雑になってきましたが、詳しくありがとうございます
式による設定しらべてみます

せっかくインターバルあるならこの辺りの設定
作者さん見直してくれないかな〜とおもいつつ・・・
みなさんに教えていただいた方法、試行錯誤してみます
どうもありがとうございました
名無しさん@お腹いっぱい。 [] 2013/11/09(土) 13:36:37.84 :gzzGzzLX0
570です
572さん RES どうもありがとうございました。
プリントプレビュー画面を開くことで画面数の取得ができました。
以上
名無しさん@お腹いっぱい。 [sage] 2013/11/14(木) 21:12:10.24 :W+xyXMne0
perlとpython使いの先輩がセミオートでドヤ顔しながらPCに張り付いて仕事してたから
UWSCでさらっと完全自動なものを作ったら怒られた
名無しさん@お腹いっぱい。 [sage] 2013/11/15(金) 05:30:52.07 :GLXccNAH0
Ver4.9b3
名無しさん@お腹いっぱい。 [sage] 2013/11/15(金) 07:27:44.50 :lGKSYVtG0

自動化で君の仕事がなくなったので明日から会社に来なくていいよクビね
名無しさん@お腹いっぱい。 [sage] 2013/11/15(金) 16:17:56.80 :ZozEFNAfP
Jane Styleのレスボタンをclkitemで押すのは無理なのかな?
名無しさん@お腹いっぱい。 [sage] 2013/11/15(金) 20:48:39.91 :m9esDzip0
超ど素人なんだけど質問よい?
ループで再生するとマウス座標が勝手にずれてくるんだけどなぜ?
例えばAの位置からBにマウスを引っ張って最後またAに戻るとゆう操作を
再生するとAとは明らかにずれた位置から始まる。

しかも最初の頃は問題なかったのに突然こうなった。
どうすれば回避できるのか教えて欲しい
名無しさん@お腹いっぱい。 [sage] 2013/11/15(金) 20:50:17.23 :m9esDzip0
あとUSWCってセキュリティは大丈夫ですか?
なんかこれ使いだしてからクレカの番号盗用されて
不正利用されたんだけどまさか情報吸い取られてたりとかないよね
名無しさん@お腹いっぱい。 [sage] 2013/11/15(金) 20:50:53.10 :m9esDzip0
失礼
USWC ×
UWSC ◎
名無しさん@お腹いっぱい。 [sage] 2013/11/15(金) 23:17:04.55 :1lkAb53y0

AからBまで、例えばMVしてるなら座標からインターバルから何から何まで見直すか、破棄して一新。
ダメならバージョンやOS諸々晒しつつ再現方法を提示してくれ。暇な住民が検証するかも。


怪しいと疑惑を吹っ掛ける根拠を示してくれ。必要のない背景や被害状況は省いて。
名無しさん@お腹いっぱい。 [sage] 2013/11/16(土) 00:12:42.55 :6RqO6Np90
Ver4.9b3にしてみたら既存のスクリプトがエラーが発生したので

調べてみたらこの対応に漏れがあるね

UWSC 掲示板
ttp://www3.bigcosmic.com/board/s/board.cgi?id=umiumi&mode=all&no=5077

1行目からCLASS宣言してる自前のCALL用のスクリプトでエラーが発生していた
1行目をコメントにしたらエラーが発生しなくなったぜw

エンバグ対応のケース出し甘いよ
名無しさん@お腹いっぱい。 [sage] 2013/11/16(土) 07:48:08.55 :23B9K16rP

オンラインゲームの自動操作のためにUWSCを導入

構文を学習せずにマクロスレや親切()な人のサイトでマクロを拾ってくる

アッー!

なんてことをしなければね。
自分で書いてる分には大丈夫だよ。

身元不明のEXEファイルを実行しちゃいけませんて学校で習ったよね。
UWSCも同じだからね。
名無しさん@お腹いっぱい。 [sage] 2013/11/16(土) 09:07:46.79 :UhpLBBuh0
とあるツールの補助ツール作って限定配布したことがあるが
そのツールで表示できる情報なら根こそぎ奪えるよな〜と思ったことはあるな。
ログインから求めるようにすればパスワードも入力するだろうし、
バックグラウンドで何か送信するとかもできるし。まあUWSC以外の全プログラムにも言えるが。
名無しさん@お腹いっぱい。 [sage] 2013/11/16(土) 10:26:35.82 :uhNaj/0g0


ど素人の自分にレスくれてありがとう。本当に初心者なので
他人のサイトを参考にwhiel1って入力したぐらいで、他人の作ったマクロは
まだ使用していないから盗用の件でUWSCは特に問題なさそうですね。
たまたまタイミング的に近かったから思わず疑ってしまったけど、
自分結構ネットショップとかでクレカ使用してたからそこから漏れたんだとは思うw

あとズレに関してはあきらかに同じ位置にマウスを持ってきてるのに
座標みても完全に横にそれてしまってるから、新しく記録を繰り返すんだけど
またズレて記録されているといった感じ。素人すぎてなんのこっちゃ
自分にはよくわからないから、ファイル自体を一旦削除してまたDLでやってみても
最初の2〜3回はうまく行くけどまた同じような症状に戻ってくる。
もしかしたら自分のやってるオンゲで狂わせるような対策されてるのだろうか・・・
名無しさん@お腹いっぱい。 [sage] 2013/11/16(土) 13:37:28.41 :J8NATlyD0

ブラウザは?
途中からブラウザのツールバー出てきてない?
名無しさん@お腹いっぱい。 [sage] 2013/11/17(日) 06:08:06.08 :eVkjMAE60
おれも超初心者だけど
再生中に自分でなにか操作すると上書きされたりするよね?
ちょっと上のレス参考にして

Lockhard で挟んでスケジュール化(while削除)
Mouseorg(2) を使うことでうまくうごくようになた

ただlockhardはちょっと危険かもしれない
名無しさん@お腹いっぱい。 [sage] 2013/11/17(日) 17:44:39.59 :jRtTDlcT0
配列IMG[5][5]があったとして、中身が例えば
00122
00122
00122
00122
00122
となっていた場合、0の部分を白、1の部分を赤、2の部分を黒の画像を表示
させる方法はあるでしょうか。
1ピクセルのそれぞれの画像を用意して、それを張り合わせていく方法を考えたのですが、
今回は5*5ピクセルですが、実際に使う場面だと数百*数百になって、とても効率が悪そうです。
uwscでbmp画像を作成、その後表示という方法とか理想的かなと思ったんですが
そもそもどう作ればいいのかぐぐればいいのかがよくわからなかったですorz
名無しさん@お腹いっぱい。 [sage] 2013/11/17(日) 18:34:18.88 :vT4n3l0m0

「BMP ファイルフォーマット」とか「BMPデータ構造」とかでググれば出てくる
32bitBMP形式が一番単純で作り易い
名無しさん@お腹いっぱい。 [sage] 2013/11/17(日) 18:34:41.83 :GQKDHkCO0
昔グリッド表示させるだけの簡単なツール作ろうとしたけどめんどくさかったからCで作ったの思い出したわ
ttp://d.hatena.ne.jp/junjun777/20130221/uwsc_popupmenu_ex
この辺りの記事は参考になるんじゃないか?
名無しさん@お腹いっぱい。 [sage] 2013/11/18(月) 08:35:38.07 :DwKKw/ngP
UWSCの紹介して正規ユーザーなったら2000円バックとかないかな?
アフィリエイトってやつw
あれば結構な人数を紹介できそうなんだよね
作者さんここ見てる?
紹介制度検討して下さい
名無しさん@お腹いっぱい。 [sage] 2013/11/18(月) 12:32:29.22 :kU4iDUl+0
ゲームマクロ乞食が昇格した?
名無しさん@お腹いっぱい。 [sage] 2013/11/18(月) 15:31:39.86 :wNf+o+2t0
俺が製作者ならサイトをSEO対策してBBSもスレッドフロート型にした上でSEO対策する
名無しさん@お腹いっぱい。 [sage] 2013/11/18(月) 16:49:53.63 :8gRgTwhk0
一部のオタクしか課金しないんだからSEOで収益が上がるようなものじゃないだろ
名無しさん@お腹いっぱい。 [sage] 2013/11/18(月) 18:32:41.67 :bfW4eMwA0
s/UWSC/Win8.1/ < 604 > nul
名無しさん@お腹いっぱい。 [sage] 2013/11/19(火) 03:19:41.27 :mKl63du20

黙って紹介しろよw
名無しさん@お腹いっぱい。 [sage] 2013/11/19(火) 06:40:16.19 :p7hxwwtC0
ClkItemのアイテム名はFlashだとどこを見ればわかりますか?
名無しさん@お腹いっぱい。 [sage] 2013/11/19(火) 07:01:58.05 :8oT7GQ9h0
ソース
名無しさん@お腹いっぱい。 [sage] 2013/11/19(火) 08:09:19.42 :gHtbsTwx0

お前何も分かってないのなw
名無しさん@お腹いっぱい。 [sage] 2013/11/19(火) 18:34:32.99 :p7hxwwtC0

swfを落としてflaにして中身を見るということですか?

サンプルのIEFlash.uwsが正常動作しなかったので
(GETSTR(flashid, 1, STR_ACC_STATIC)以下が効かない)
なんとかしたかったのですが、
検索すると昔は ClkItem(flashid, "Pause" が ClkItem(flashid, ""
だったということまでしかわかりませんでした
GETSTR(flashid, 1, の「1」を30まで増やしてみましたが無理でした
どうすれば動くようになりますか?
名無しさん@お腹いっぱい。 [sage] 2013/11/19(火) 19:40:14.96 :X/HDHiUF0

エスパーして答えるが
IE10、IE11だったらFlashハンドルを取得出来ないからそのサンプルは使えないぞ
どうしても試したかったら、XPもしくはwin7+IE9(できたっけ?)で動かすしか無い
名無しさん@お腹いっぱい。 [sage] 2013/11/19(火) 20:32:56.60 :p7hxwwtC0

ありがとうございます
最初に書いてあるのに思いきり見逃していました
名無しさん@お腹いっぱい。 [sage] 2013/11/20(水) 04:43:53.38 :Pwzu/+cH0
ぬおおお
何で座標指定してクリックするとウインドウが切り替わるんだ

今日休みだから一日使って考えられること全部実行して、解決出来なかったら質問させて頂くかもです
その時は宜しくお願いします
名無しさん@お腹いっぱい。 [sage] 2013/11/20(水) 23:07:26.64 :Pwzu/+cH0
616ですが事故解決しました。
結局直接的な原因が何だったかは分からずでしたが...
名無しさん@お腹いっぱい。 [sage] 2013/11/21(木) 04:13:19.34 :9tFw0a6v0
フリーの高機能テキストエディター「Mery」v2.2.0.4910が公開
ttp://www.forest.impress.co.jp/docs/news/20131118_624089.html
プラグイン機能が拡充、不具合の修正と機能の改善も
名無しさん@お腹いっぱい。 [sage] 2013/11/21(木) 06:33:02.35 :9HTmfqi30
誤爆
名無しさん@お腹いっぱい。 [sage] 2013/11/21(木) 07:18:44.22 :cMbn85Zii
大学の課題全部片付けるスクリプト作ったった
捗るわ
名無しさん@お腹いっぱい。 [sage] 2013/11/21(木) 08:15:48.30 :6xc710eh0

ツール売れば人生セミリタイアできるくらいには稼げるんじゃね?
名無しさん@お腹いっぱい。 [sage] 2013/11/21(木) 08:17:19.60 :6xc710eh0
世の中にはUWSCのためなら金払っても構わん人達も少しながらいるらしいな
ttp://www.lancers.jp/work/search?keyword=UWSC
名無しさん@お腹いっぱい。 [sage] 2013/11/21(木) 14:50:53.40 :OGSKo2zj0

某大学の特定のネット上課題を遂行するスクリプトだからなぁ
その大学の生徒には売れるかもしれんが
名無しさん@お腹いっぱい。 [sage] 2013/11/21(木) 16:59:50.95 :23jTyM8C0
1時間程度で出来そうなスクリプト作るのに1ヶ月丸々かかっちゃってるんですけど。
名無しさん@お腹いっぱい。 [sage] 2013/11/22(金) 04:40:00.31 :ptSzHs+B0
俺も大学の卒業研究で膨大な量のデータ処理する為にスクリプト組んで処理させてたわ

今年も同じような研究してる筈だけど、プログラムのプの字も知らない輩だから大変だろうな
礼儀が全然な奴らだったからスクリプトも全部消したかそういえば
名無しさん@お腹いっぱい。 [sage] 2013/11/22(金) 04:46:16.07 :cltufWvl0
あっそ
名無しさん@お腹いっぱい。 [sage] 2013/11/22(金) 08:38:43.30 :piUdSr0t0
業務が捗りすぎてヤバいのは感じたことあるな
RPGでみんな必死にボカスカやってる中でザキやデス覚えてしまったような感覚
名無しさん@お腹いっぱい。 [sage] 2013/11/22(金) 18:06:28.36 :3cCwn0Ip0

やぁ、クリフト。
名無しさん@お腹いっぱい。 [sage] 2013/11/22(金) 20:01:24.47 :7bdTwuoSP
リメイク版ではザキ連発しなくなった代わりに、アリーナがちょっとでもダメージを受けていると最優先で回復するようになったぞ
名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 00:56:28.34 :K31vMnpx0
uwscで割り込みとか、ある処理を強制的に外部から止めるとかってさすがに厳しいのかな

thread 処理()
sleep(3)
処理() exit


procedure 処理()
while true
hukidasi("a")
sleep(1)
wend
fend
みたいな感じに外部から強制的に処理を中断する手段がほしい
名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 01:19:21.42 :dTuMZrho0

グローバル変数で自作
スレッド内で変数を見て自主的に終了
名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 01:25:22.13 :K31vMnpx0

やっぱりそれしかないかなぁ
実際はスレッド内はいろんなところでループしてるからそのループごとに
監視しないといけないとなるとかなりの手間になっちゃう
名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 01:40:54.69 :OsoXcu5+0

exitexit すれば強制的に全部終了


個別にやるなら、フラグで制御できるループをスレッドで呼び出して
そっから機能を呼び出せば、機能自体はいじる必要がない。
ただし、強制的な終了じゃない。

もっときめ細かくやるなら、処理の最中に常にフラグをチェック。
めんどくさいならSleepを呼び出すときにフラグをチェックして終了する関数にする。

public flag = false って終了フラグと

function fSleep(time)
 Sleep(time)
 result = flag
fend
って関数を作っておいて

通常
Sleep(1) とか書くところを
if fSleep(1) then exit と書く

長ったらしい行動スクリプトのときにやったけどめんどくさいし反応遅いけどね。

処理時間を引数から出して
kbd(vk_a); if fSleep(1) then exit
とかやるんだけど
いくつかまとまった行動を関数化しているときはその関数内でフラグチェックして
if walk() then exit

ああ、強制終了が欲しくなるな・・・
名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 01:48:36.32 :jh3F0xy70
スレッド生成時に何も受け取っていない時点で・・・

因みに自分はめんどくさがりなので大抵のバッチ系はこんな感じで動かしてる
何か例外的な事が発生したら自分でおkボタンを押してるわ

thread メイン処理() ←※基本無限ループ、正常終了する時は下のおkボタンを押下しちゃう
MSGBOX("OKボタンを押下すると終了", BTN_OK, 4, 858)
名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 02:09:11.19 :K31vMnpx0
説明に不備があってやろうとしてることがうまく伝わっていない様子
読み返してみたら言わんとしてることと確かに違う
上記のは処理の例で、実際にやろうしていることは

while true
while true
長ったらしい処理
wend
別の処理
wend


基本的にループの「長ったらしい処理」をしてて、目的のことを終えると「別の処理」に移って、
それも終わったらまた最初に戻る
ただ、「長ったらしい処理」を待たず、別のスレッドから命令を与えると、そのループを抜けて
「別の処理」を行うようにしたい
割り込みでよくある電話でたとえると、
・基本的に本を読んでいる 本を読み終えるとAさんに電話をして、電話が終わったらまた本を読み始める
っていう処理に、本を読んでいる途中にAさんから電話がかかってくる処理を追加したい
・Aさんから電話がかかってきたらすぐに電話に出る。ただ、電話が終わったあと
しおりをはさんでいないので、最初から読み直す

という感じにしたい これも例えがわかりにくい気がしてきた・・・
名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 02:44:23.12 :OsoXcu5+0
ttp://siromasa.digi2.jp/uwsc/u_sample/Base/SuspendThread.txt
umiumi さん が作ったスレッド停止スクリプト。
Win32API を使ってスレッドを停止、再開する。

それで他の関数を探してみたが、
CloseHandle はシンプルだけど終了しなかった。
TerminateThread はUWSCのプロセスが終了しなくなる。
ためしに SuspendThread したまま exitexit しても同様に終了しなかった。

最終的に強制終了は必要になるけど、TerminateThread でスレッドは止まる。
しかし、SuspendThread したまま放置したほうが安全かもしれない。



それは外部から強制終了とか不可能だけど
マルチプロセスでやれば可能。
名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 03:08:32.59 :OsoXcu5+0

EXECに同期フラグってあるでしょ。
だからこれでおk。
while true
 EXEC(GET_UWSC_DIR + "\UWSC.exe " + REPLACE(GET_UWSC_NAME, 自分のファイル名, "sub.uws"), true)
 別の処理
wend

sub.uws を taskkill コマンドで強制終了すれば実現できる。
・・・どうやって sub.uws と自分を区別できるんだっけ。
タスクリストから自分のプロセスハンドルを除外した UWSC.exe を全部終了すればいっか。
ハンドル見るからちょっとめんどくさいね。
自分のハンドル取得は GetCurrentProcess。

マルチプロセスはデータの共有とか同期がめんどくさいんだよね。
起動に時間かかるからよっぽどじゃないと使わない。
名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 03:53:55.49 :K31vMnpx0
の方のが一番しっくりきそうな感じです
ただ、ハンドルとかそのあたりのことを一切知らないのでこれから勉強ですねorz

あと、replaceがどういう意図で使われているのかがわかりません
普通に"sub.uws"とどういう違いがあるんでしょうか
名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 05:15:04.45 :OsoXcu5+0

スクリプトの起動方法によってカレントディレクトリが変わるんで
ファイルはフルパスで指定したほうがいいかなと。
で、スクリプトファイルのディレクトリのパスを直接取得できないんで
スクリプトファイルのパスを取得してファイル名部分を置き換える。
ファイル名を削ってからつなげるのが普通だと思うけど、めんどくさいんで。
あと、REPLACEを使えば みたいに1行で書けるし。
名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 08:21:02.06 :aLnYvoV00
読書中にかかってきた電話が偶然にもコーヒーカップを口に運んでる時だとして、
カップを床に落としても問題がないので電話を取るっていうのなら殺すべきだろうけど、
読書中にコーヒーを飲む事ある?あるならカップはテーブルに置いた方がいいかも。
興味本意だけどそこが気になった。しっくり来たならコーヒーは飲まない派だろうけど。
名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 20:30:24.72 :zNMIqzEz0

すまんわからん
名無しさん@お腹いっぱい。 [sage] 2013/11/25(月) 20:50:32.77 :w2REF44q0
IE11にしたらルーター操作のIEマクロが動かなくなった
作り直して動けばいいけど、上げるんじゃなかった
名無しさん@お腹いっぱい。 [sage] 2013/11/26(火) 08:04:06.08 :YSzEgR5B0
俺もアンインストしたぜ
名無しさん@お腹いっぱい。 [sage] 2013/11/29(金) 09:36:03.76 :util4cTD0
まともな大学生ならスクリプトなんて組まずにプログラムを組むし
どんな三流大だよ
名無しさん@お腹いっぱい。 [sage] 2013/11/29(金) 15:28:00.77 :ei62fL2Q0
スクリプトにはスクリプトの長所ってものもあるのさー
人間の作業負担の代替の場合は基本的に手続き型の操作になるから特にね

コスパでどっちを使うか選べば良い
名無しさん@お腹いっぱい。 [sage] 2013/11/29(金) 17:42:58.03 :PBQCCQCq0
というかどんな作業なのか分からないのに
プログラムの方がいいとか判断できるはとってもすごい大学行ってるんだなw
名無しさん@お腹いっぱい。 [sage] 2013/11/29(金) 19:50:35.10 :ETKomlWdP
スクリプトもプログラムの種類なんですけど
名無しさん@お腹いっぱい。 [sage] 2013/11/30(土) 01:21:28.37 :luoLBufb0
認証させたい画像が良くても5割しか判定に成功しません
切り取る画像の大小、デフォ透過色無視の0,1,-1も試しましたが無理でした
同ゲーム画面の別の画像は問題なく認識します
解決方法をご存じないでしょうか

ifb CHKIMG("認識したい画像.bmp",IMG_MSK_BGR6)      //
x=G_IMG_X 
Y=G_IMG_Y
BTN(LEFT, CLICK, x, y, 80)
名無しさん@お腹いっぱい。 [sage] 2013/11/30(土) 01:24:45.92 :luoLBufb0
↑が途中で切れてしました
確認に使っているスクリプトです
ifb CHKIMG("認識したい画像.bmp",IMG_MSK_BGR6)      //
x=G_IMG_X 
Y=G_IMG_Y
BTN(LEFT, CLICK, x, y, 80) 
else
PRINT "みつかりません "
endif
名無しさん@お腹いっぱい。 [sage] 2013/11/30(土) 02:18:38.00 :2vwDJyFb0
画像の撮り方が悪いとかエフェクトがはいってて認識できないとか
名無しさん@お腹いっぱい。 [sage] 2013/11/30(土) 02:29:13.90 :3O3UvhwD0

それだと透過色/色無視の引数にIMG_MSK_BGR6を指定してるから
ifb CHKIMG("認識したい画像.bmp",,,,,,,IMG_MSK_BGR6)
これで試してみ

それ以外だと情報が少なすぎて分からないな
名無しさん@お腹いっぱい。 [sage] 2013/11/30(土) 09:09:22.23 :luoLBufb0
原因が分かりました、それより上の行のスクリプトがおかしかったようです

PUBLIC id=getid("ゲーム名")
正:MOUSEORG(0)  誤:MOUSEORG(id)
以下↑に同じ

どちらもマウス移動の相対化で
どこかのサイトには(0)より(id)の方がいいと説明されてました
名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 08:37:32.64 :VZ9QrxsBi
名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 09:50:07.87 :VZ9QrxsBi
UWSCを触り出して2ヶ月になります。色々なサイトを見ながら、仕事に必要な
マクロはだいたい組めるようになり、他の人(職場の)に比べて数十倍以上の
効率で処理を行えるようになったと思います。なので、現時点で特に
スキルアップの必要性はないけれど、個人的な興味から今より上の技術を
学びたいと思っています。ただ僕はUWSC以外のプログラムはほぼ触ったこと
がなく、VBAをわずかに触ったくらいです。UWSCの上級者と思われる人たち
は、UWSC以外にも精通している方が多いですよね。色々な点で自分は
相当無知だとも自覚しており、今はある程度全体を俯瞰できるような上達の
目安表が欲しいと感じています。

例えば漫画板ではちょくちょく見かける強さランキング。
Sランク:
Aランク:
Bランク:
Cランク:

このような形で「ここまで到達したらUWSCのレベルはこのくらい」みたいな
部分を教えて頂けないでしょうか。
名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 10:00:28.54 :VZ9QrxsBi
連投すいません。個人的な主観の場合。

■初級の中:記録機能を使わずとも、最低限の処理は一から書いて対処できる程度。
 ウインドウ関連…getid,clikitem,ctrlwin,sendstr,sckey,sendstr,getstrなど
 ダイアログ関連…input,msgbox,slctbox
 制御関数関連…exec,sleep,gettimeなど
 文字列操作関連…copy,pos,length,replaceなど
 スクリプト構文…変数、if(ifb)-endif、for-next,select-selendなど
 …この辺りの一部を扱い、基本的な処理を形にできる。

■初級の下:記録機能からの「保存→編集」ができ、不要な記述を
カット、編集して効率化を図れる程度。
 ウインドウ低レベル関数(mmv,btn,kbd,acw)やsleep辺りを何となくいじれる。

■触り始めた直後:記録機能を使って「保存→再生」ができる程度。
名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 10:02:38.69 :qSolREYa0
UWSCに限らずプログラムというのは一方向に知識が偏ることが多いからこれができたらこのランクというものはない
あえて言うなら詰まった時に自分で調べて打開できるか出来ないかの違いだけだ
名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 10:07:11.51 :cGDn0QjY0
物事を1つやるだけでもいろんなアプローチの仕方があるし
ソースだって重視するのが見やすさか文字量か処理の早さも人によってこだわりがあるだろうし

ただ、レベル高い人は正規表現が使いこなせるイメージがある
名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 10:09:33.17 :PoC6gXCV0
正規表現なんて初歩の初歩だろ・・・
名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 10:15:59.59 :QpNJpLmDP
Excelなら読み書き保存で初級、グラフ・関数で中級、マクロで上級ってのが一般だが
会社によって使用頻度の高い機能が違うから、これができてこれを知らないのかよ!
ってのはありがちなのと同じだな。

この感覚でいけば、記録再生で初級、ヘルプを読めばソース書けるで中級
外部のAPIやDLLなどと言い出したら上級のような気がしてる。
名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 10:25:21.13 :R19BYUvk0
>強さランキング

ネタをネタだとわからないようじゃあ、いつまでも2ちゃん初心者
名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 12:45:04.41 :gtUCgZTV0
UWSCは、他のプログラム言語でそれなりの知識を積んだ人が、使うものだと思うよ
ヘルプも、プログラミング中級者以上を対象にした書き方になってるし
少し気の効いた事やろうとすると、COM/WindowsAPI/マルチスレッド&排他処理などが、必要になってくる
それらの知識を持たないなら、いつまで経っても初級のまま・・・かもしれない
名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 13:37:17.63 :BNiYCnON0
初級:
・記録したマクロを、構文や変数などで初歩的な構造化を施し、改変できる。
・ヘルプのスクリプト関数を調べて7割を活用できる。

中級:
・自作関数による基本的な構造化が出来る。( CALL多用は除外)
・ヘルプのスクリプト関数を調べて9割を活用できる。
・googleで検索してトラブルシューティングやヘルプ未記載の仕様制限を確認できる。
・googleで検索して初歩的なAPI活用・OLE使用を行い、UWSCの使用制限を突破できる。
・基本的な例外処理を行える。

上級:
・自作関数を適切に分類し、自作ライブラリを構築してCALLでincludeしている。
・ソフトウェアテストの行い易い構造化を行い、大規模になっても部分に切り分けたアジャイルな開発を行える。
・他の言語と比べたUWSCの欠点を理解し、費用対効果でUWSCが適している場合のみUWSCを使う。
・高度な例外処理や、リソースのデッドロックによるフリーズに対処出来る。

超上級:
・UWSCを卒業。オブジェクト操作は各種高級言語から、画像判定はOpenCVで行う。
・あるいは逆に、ソフトウェアテスト業界でUWSCをバリバリ活用しているか、LancersなどでUWSCの仕事を受注している。


余計な一言
UWSCなんぞで数十倍以上の効率で仕事を処理できるなんて、なんて非効率で甘々な仕事なんでしょうか。羨ましいです。
名無しさん@お腹いっぱい。 [sage] 2013/12/01(日) 18:21:51.11 :VZ9QrxsBi

やっぱりそうですよね。ヘルプ読んでてそう感じました。


ありがとうございます。こういうのが欲しかったです。
参考にさせて頂きます。
※「処理が数十倍」というだけで結果は必ずしもそうではなく、極端な例で言うと
漫画家に近いかもしれないです。週1本書けるのが普通の漫画家とすると、
それを30本描けるようになった…みたいな。
名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 00:18:10.14 :wBtlrZYu0
この土日をフルに使って、某ブラゲの長時間遠征系のマクロの雛形が出来た
いい解説サイトがなくて、調べて理解して自分で使って動作検証しての繰り返しでかなり手間がかかった

今までは単純なマウス記録で済ませてた。

使ったのはifb CHKIMG、Else、sleep、xy=G_IMG_Y、BTN(LEFT, CLICK, x,y ,80)
くらいだから、UWSC初心者レベルで見ても相当遅いんだろうな
名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 00:48:47.89 :MJ36lxJ50
吐き出したいけど卑怯だと理解してるからTwitterなどSNSでは言えず、結果ここしかないんだろうけど、目障りだって想像できないのかな

まあ実際にはどういうつもりかは知らんけどアプローチの仕方を少しも考えないような、やはりゲームを自動化するような奴は自己中なんだろうって思いました
名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 01:28:16.53 :uaNtuaug0
なんじゃそりゃ
目障りもなにも、見たくなきゃ見るな、というのが2ちゃんねるなんですけど。

単純作業の自動化は、単純作業で延命するタイプのネトゲでだけ卑怯とされるのであって、
ゲーム以外のほとんど全てでは、推奨される美徳であり、生産的な価値ある行為なんだがなw
名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 02:01:52.47 :dfQlVJCTP
その通り
見たくなければ来るな
名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 04:13:53.32 :2wsp+l6xi

お前目障りだな
名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 07:35:30.27 :4w3ZnRs7P
え、まぁチラ裏すぎてなぜこのスレに書いたのかわからない日記には見えるけどw
名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 07:39:44.04 :26s67htj0

じゃあ消えろ
名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 08:08:17.60 :FAVWzEvbi
uwscをそこそこ触れるようになった時点で、
次のステップとしてお奨めの言語ってありますか?
どれやっても大差ない?
名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 10:24:52.60 :mkpy9VBG0

VBS
名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 17:05:02.70 :2nIyQNqZ0

UWSCぐらいの日本語情報がないと厳しいなら
今ならC#あたりじゃない?
名無しさん@お腹いっぱい。 [sage] 2013/12/02(月) 17:50:57.77 :uaNtuaug0
DOBON.NETで勉強できるC#かVB.NETで決まりだな。
名無しさん@お腹いっぱい。 [sage] 2013/12/03(火) 08:31:28.07 :JbyZZNIR0
N88BASIC
名無しさん@お腹いっぱい。 [sage] 2013/12/03(火) 09:03:58.40 :O6KFcVp/0
アプリのメモリ弄りたいんだがどれがおすすめ?
名無しさん@お腹いっぱい。 [sage] 2013/12/03(火) 10:18:41.78 :4fSifEn90
どれもそう変わらんから自分の好きなの使うといいよ
名無しさん@お腹いっぱい。 [sage] 2013/12/03(火) 10:33:38.38 :13+niociP
どれを好きになればいいのかって事かと
名無しさん@お腹いっぱい。 [sage] 2013/12/03(火) 12:28:44.85 :pAgmWecwi
皆、どういう目的のプログラム組んでるの?
仕事、私用問わず。

俺は仕事の7割くらいの作業の効率化と、
生活のルーチン化。

アフィリで稼ぐのにプログラム組んでる人ってどのくらい?
名無しさん@お腹いっぱい。 [sage] 2013/12/03(火) 13:27:08.04 :JbyZZNIR0

俺使ってるよ。年額でたった75万位にしかならんけど。
名無しさん@お腹いっぱい。 [sage] 2013/12/03(火) 20:44:23.94 :pAgmWecwi

マジか。それってクリック式のとこ?
組み方の問題とか、遊びでやってるレベルだからとか?
それともやっぱセンスなのかね。

まぁ75でもお小遣いとして見れば悪い数字ではないよね。
名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 08:33:53.34 :bw3mM4NP0
そりゃ今どきこんなんもゴロゴロしてるからなw
ttp://crowdworks.jp/public/jobs/36700

報酬30万〜50万。
今回はお前らに譲ってやるからサクッと作ってミソ。
名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 09:27:06.77 :O9PKPAQg0
オープンデータでアプリ開発 総務省がコンテスト
ttp://uni.2ch.net/test/read.cgi/newsplus/1386020361/
総務省はパソコンやスマートフォン向けアプリの開発コンテストを開く。
行政や公的企業が公開する指定のデータを利用するのが条件だ
名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 10:23:05.97 :Xx/m3zMm0

作れんし
作れても詐欺師の道具なんて金もらえんだろ。
ウィルス作成罪で警察に突き出すと言われて逆に脅し取られるわ。
名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 11:10:07.90 :Xx/m3zMm0

> オートマウスにての稼働ですが、
> これを完全自動化させた感じで

オートマウスでの自動が駄目ならUWSCもダメだろ。
最初から作らないと。
名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 11:19:36.96 :DDVDxB9Yi
不正でのアクセス稼ぎじゃなくて、送信数を大幅に増やすことで
アクセスアップを狙えば問題ないわけだろ。興味のありそうな人への
自動送信とかさ。この「興味がありそう」っていうところをプログラムでの
自動判別にして、手動だったら毎日10人送るのも面倒かもしれない作業を、
自動で毎日1000人くらいに撒けば、最低でもアクセスはそこそこ取れる。
ブログや記事内容が不正や騙しでなければ固定ファンがつく可能性もある。
30〜50の不正プログラムを作るなら、毎月コンスタントに5万稼げる健全な
プログラムを考えた方が遥かに良いとは思うな。
名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 11:35:55.65 :XNzpX2uF0
IEでページ移動した後、いつまで経ってもBusy状態なのだけど、何か考えられる理由ありますか?
名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 13:48:04.97 :p7b8WpTl0
GetItem(id,ITM_ACCTXT,-1)で
まったく取得できなくなったんだけどわかる人いるかな。
他の環境(OS・ブラウザ同じ)だとちゃんと取得できるんだけど。
今の環境だとIE以外のブラウザでも取得負荷。たっけてー
名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 19:20:32.54 :YzQNco3L0
つかIP偽装しなきゃ毎回変えられんだろ…
名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 19:21:59.02 :YzQNco3L0

アクセシビリティ経由は超遅くて超不安定。
デッドロックで応答なしもショッチュウだな…
名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 20:22:51.19 :CfzmkTdX0

JavaランタイムとJava Access Bridge for Windows がインスコ済みかどうかの違いとか?
名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 21:05:10.25 :p7b8WpTl0

Bridegeはどっちも入ってない ランダイムは入れなおしてみたけどだめだった
他のアプリだと取得できるけど、やっぱりIE,Firefox,Chromeはだめだー
名無しさん@お腹いっぱい。 [sage] 2013/12/04(水) 23:02:14.08 :XNzpX2uF0
IEのポップ(規定のブラウザにしますか?、パスワードを保存しますか等)を
uwscで消す方法ってどうするのん?
名無しさん@お腹いっぱい。 [sage] 2013/12/05(木) 03:45:22.88 :c0ktLMVg0

>やっぱりIE,Firefox,Chromeはだめだー
ここ読んで少し試してみたけどIE,FirefoxはACC経由の情報は問題なく取得できるけど
Chromeは取得できないな
本家サンプルの
// Google Chrome にてGoogleを表示、日本語ページより検索(ACC方式)  #n37
ttp://www.uwsc.info/sample.html#n37
も動かない(GETITEM(id, ITM_ACCCLK or ITM_ACCTXT))で戻り値0で表示完了処理でループしてる

win7+IE11,Firefox,Chrome,uwscは共に最新
環境によるのかねえ・・・
名無しさん@お腹いっぱい。 [sage] 2013/12/05(木) 04:18:30.43 :gM/tAOSd0
最新()
名無しさん@お腹いっぱい。 [sage] 2013/12/05(木) 09:23:36.07 :Uf0CCUOd0

そのウィンドウが出たら閉じるボタン押せばいいだけでは
名無しさん@お腹いっぱい。 [sage] 2013/12/05(木) 12:25:33.41 :6PYLkaC6i

それを自動的にしたいのだと思われ。
俺も似た症状がしょちゅう出るうっとい。
名無しさん@お腹いっぱい。 [sage] 2013/12/05(木) 12:37:24.73 :cllrD0gp0
本来手動で行う操作の自動化なんだろ?
ならばその画面が出る可能性がある箇所に
画面が出ていないか判定し出ていたら任意の操作を行う関数を作成
呼び出しすればいいだけじゃね?
名無しさん@お腹いっぱい。 [sage] 2013/12/05(木) 14:39:29.20 :MK4OvRdJi
というかスレッド処理しろよどんだけ無知なんだよ
名無しさん@お腹いっぱい。 [sage] 2013/12/05(木) 17:48:28.14 :dBf/68S20
というか、IEの設定画面から無効にするか、レジストリを書き換えるかしろよ
名無しさん@お腹いっぱい。 [sage] 2013/12/05(木) 21:26:11.55 :V0rkpS1D0
While true

if GETKEYSTATE(VK_ESC) then exit     // ESCキーを押すと終了させる

ifb CHKIMG("6.bmp",0)      //
btn(left,click,g_img_x,g_img_y)
endif

wend

画像認証で指定の画像をクリックする簡単なマクロですが
マウスの移動→クリックの過程の動作を早くすることは出来ますか?
名無しさん@お腹いっぱい。 [sage] 2013/12/05(木) 23:13:21.36 :xFO7dKYI0
良いCPUのPCで実行する
intervalを10にするとなんか早い気がする
名無しさん@お腹いっぱい。 [sage] 2013/12/06(金) 00:02:10.76 :qtwVC0200
実行までの待ち時間はきちんと入力したほうが早い
詳しくは忘れたがデフォだと100だか200に固定されてるんだっけ?
名無しさん@お腹いっぱい。 [sage] 2013/12/06(金) 00:30:32.14 :r8O6LCJL0
CLICKよりも、DOWNしてUPさせた方が速い
名無しさん@お腹いっぱい。 [sage] 2013/12/06(金) 08:09:08.53 :BHCOviGC0

IE/Firefoxに関してはAcrobat proが原因でした。
Chromeは改善せず。
名無しさん@お腹いっぱい。 [sage] 2013/12/06(金) 19:26:50.84 :hf02iXmP0
速くするだけなら幾らでも早くすればいいが、
相手があるんだからその分失敗率が高くなるぞ
名無しさん@お腹いっぱい。 [sage] 2013/12/07(土) 11:52:58.81 :UVBdHf6I0
相手のレスポンス待ってる訳じゃないからな、
やれることは指定時間のウェイトの後にクリックする事出し。
名無しさん@お腹いっぱい。 [sage] 2013/12/10(火) 01:01:16.27 :4K0w/5tR0
どなたか詳しい方、教えてください…
hoge.dll
public class a{
public a(string b){
...
}
public int c(){
...
}
}
こういうDLLがあるとして、UWSCから使うにはどうすればよいのでしょうか?
bのaを作って関数cを使いたいです。
DEF_DLLでオブジェクトaを作ろうにも、bの渡しかたがわからず挫折しました。
DLL自体を解ってないのでそもそもの発想が間違ってるのかもしれません…
名無しさん@お腹いっぱい。 [sage] 2013/12/10(火) 13:01:53.68 :cfeTVeM9i
msgboxの自動ループって機能的に無理ですよね?

例えば、ページ1、ページ2、ページ3…ページ100とかあって、
それをOKボタンを押さずに、3秒おきにページを進めていくとか。

printだとちょっとニュアンスが違うような気がして。
fukidasiでも考えてみたいですけど、先にmsgboxから。
名無しさん@お腹いっぱい。 [sage] 2013/12/10(火) 13:27:47.75 :nIhaKsx10

DLLの呼び出し規約で、vc++の場合は関数名の後ろに@数字がついてる。
あと、DLL側で extern はしないといけないんじゃないかな。


できないね。
名無しさん@お腹いっぱい。 [sage] 2013/12/10(火) 14:09:27.06 :NfZkpDL30

Thread使うと出来そうだけど
SLCTBOXで代用したほうがシンプルで良さそうだよ
タイマーも付いてるし
名無しさん@お腹いっぱい。 [sage] 2013/12/10(火) 14:41:42.79 :SrrG4AtL0
エスパーして中断機能が欲しいと予想しても、だ
基本 Thread を使い中断機能部分は msgbox に
進捗状況はその上にオーバーライドさせた fukidasi で表示するのが吉かな
名無しさん@お腹いっぱい。 [sage] 2013/12/10(火) 21:27:21.09 :zPPbVhv30
WScript.Shellオブジェクト作ってPopUpメソッド呼び出す力技
名無しさん@お腹いっぱい。 [sage] 2013/12/10(火) 22:07:52.01 :4t1OnZV20
thread多用し過ぎw
それで済んだとしても典型的なバッドノウハウだろ。
SLCTBOXで十分だし、
それで不満ならUWSCを卒業した方がいい。
名無しさん@お腹いっぱい。 [sage] 2013/12/11(水) 00:33:45.68 :y4jYxVxx0

勉強になります。
externはDLL側に必要なんですね。
DLL付属のドキュメントには関数ぐらいしか書かれてなかったので、externされていることを祈りつつ呼び出し規約を色々試してみます。
名無しさん@お腹いっぱい。 [sage] 2013/12/11(水) 08:13:50.28 :EcETM5+z0

VBscriptにはmsgboxのタイマー設定できるのな。自動で○秒表示。
UWSCにもその機能あればいいのに。
名無しさん@お腹いっぱい。 [sage] 2013/12/11(水) 11:43:21.80 :JgCyEb1D0
なぜかChromeのRC版テスターに選ばれて
32.0.1700.41 m Auraを使ってるんだけど

クラス名「Chrome_RenderWidgetHostHWND」取得が出来なくなったみたい
影響は少ないと思うけど(UWSCでChrome操作してる人いるのか・・・)
次期Ver32で少し改修しないといけない場合があるかも(安定版でどうなるかわからないけど)
Chrome_RenderWidgetHostHWND→Chrome_WidgetWin_1で座標系が少し狂うのかな?
名無しさん@お腹いっぱい。 [sage] 2013/12/11(水) 12:28:11.98 :ZOveDWBO0

SLCTBOXにはついてるでしょ
名無しさん@お腹いっぱい。 [sage] 2013/12/11(水) 17:36:06.88 :EcETM5+z0

MSGBOXのこと言ってるのに何こいつ

これがアスペか
名無しさん@お腹いっぱい。 [sage] 2013/12/11(水) 18:40:39.35 :ZOveDWBO0

わがまま言わないのっ
名無しさん@お腹いっぱい。 [sage] 2013/12/11(水) 18:45:06.85 :NRJZIdbi0

VBSのタイマー付きは、と同じだろ
既に在るのに、何言ってるのw
名無しさん@お腹いっぱい。 [sage] 2013/12/11(水) 23:42:12.15 :B7dif2gFi
スクリプトAを毎日、違う時間で実行させたい時、例えばinputで
「15:20」と入力したら、15:20に起動させるようなことって可能?
それが「式による設定」になるんかな?
名無しさん@お腹いっぱい。 [sage] 2013/12/11(水) 23:59:48.29 :3TsV9WVa0
現在の時刻と指定時間の差を取ってsleepで待つ ってしてるな
名無しさん@お腹いっぱい。 [sage] 2013/12/12(木) 01:41:31.81 :1iGv0hPy0

WScript.Shellやってみたけど消えなくね?
user32.dll、MessageBoxTimeoutAは消えたけど色が変だ
名無しさん@お腹いっぱい。 [sage] 2013/12/12(木) 01:55:03.43 :1iGv0hPy0

OK押さずにか・・・
こういうのじゃ押しちゃうから駄目ってことか

THREAD msgclk()

for i = 0 to 10
msgbox("test"+i)
next

PROCEDURE msgclk()
while true
sleep(3)
id = GETID(, "TFmsgDlg.UnicodeClass", -1)
CLKITEM(id, "OK", CLK_BTN)
wend
fend
名無しさん@お腹いっぱい。 [sage] 2013/12/12(木) 02:00:29.63 :zx8f+biJ0

MessageBoxTimeoutはミリ秒、PopUpは秒
名無しさん@お腹いっぱい。 [sage] 2013/12/12(木) 08:36:12.75 :XPNt3Jjz0

OK押さずにってところで

CLKITEM(id, "OK", CLK_BTN)

CTRLWIN(id, CLOSE)

これでどうだ(閉じる、キャンセルボタン押した事になる)
名無しさん@お腹いっぱい。 [sage] 2013/12/12(木) 11:57:57.58 :8RGLip6z0

UWSCのスケジュール機能の式による設定ってのは
設定画面で入力するYMDを使う計算式のことだろ。
YMDと四則演算しかないから違う時刻というのは無理。

> 例えばinputで
それはスクリプトで出来るけど既に動いてるスクリプトがあっての話。
動いてるスクリプトがあるんならCALLでもEXECでもなんでもすればいい。
名無しさん@お腹いっぱい。 [sage] 2013/12/12(木) 21:42:27.07 :CF+xnjhz0
バグの危険性増やしてまで仕様以上のことをしようとするより
素直にSLCTBOX使えば良い。
ボタンの配置などがちょっとMsgBoxと違うだけで使用上は全く問題ない。
仕様で出来る範囲で割り切って使う。
そのかわり簡単手軽にサクッと使う。
それが“スクリプト”を使う意義。
ボタンの配置などがちょっと違う程度のことも許せずに
延々と不要で煩雑な手間を掛けるのはテクニシャンでも何でも無く
ただの暇人。
名無しさん@お腹いっぱい。 [sage] 2013/12/13(金) 14:00:04.21 :FL5R9eVIi

そういうので全然おkっす。あざっす!
要は、「手動作業を入れずに」ってことですね。
(自動でボタンを押す分には問題ない)


仮にそれが暇の産物だったとして、暇から生まれた有益な開発は多いですよ。
アインシュタインの相対性理論だってある意味そうだし、科学上の重要な発見の多くもそうだと思うので。

個人的にはデフォルトでできることを、
癖のある変則スクリプトなど組んで、傍から見たら
「よくもそこまでやるねぇ」って呆れられるくらいのレベルの人が
細部においても実力がある人が多いように感じます。
uwscとかプログラムに限らず、どんなジャンルでも。
名無しさん@お腹いっぱい。 [sage] 2013/12/13(金) 14:21:38.39 :JuAhHeQu0

最初の人かどうかはもはやどうでもいいんだけれどさ

それって作業前の応答待機中は何もしないって事なんだぜ
って事はそもそも進捗表示じゃないから
print や fukidasi を使ってみようかって考えている時点で・・・

そして自動応答なら SLCTBOX にあるのだから
メイン処理が止まっているのに
わざわざ THREAD を作ってまで MSGBOX 使うって・・・

まぁ、おつかれさん
名無しさん@お腹いっぱい。 [sage] 2013/12/13(金) 14:57:17.56 :+/SEDNvb0
本当に優秀なプログラマは無駄なコードは書かない
名無しさん@お腹いっぱい。 [sage] 2013/12/13(金) 18:04:35.00 :0g6Ly3oc0
優秀なプログラマはトリッキーな事はしない
シンプル伊豆ベスト
名無しさん@お腹いっぱい。 [sage] 2013/12/13(金) 19:28:06.15 :Ic4HdSRj0
最近まで動いてたんだけど
マウスとキー情報を直接送ることができなくなった
最低限のこのプログラムでも動かなくて
//test.bmpのx,y=100,100にクリック
mouseorg(getid("test"),2)
btn(Left,0,100,100,100)
windowsのアプデのせい?
誰か解決策教えて
名無しさん@お腹いっぱい。 [sage] 2013/12/13(金) 19:46:24.57 :CGWOFh4w0
何がしたいのかいまいちわからん
相対座標にして情報送っただけと指定の座標をクリックするだけで動くも動かないもないかと
それだけで何もしないならUWSC自体が動作してないって事でアプデ以前の問題
名無しさん@お腹いっぱい。 [sage] 2013/12/13(金) 20:27:53.20 :Ic4HdSRj0
>相対座標にして情報送っただけと指定の座標をクリックするだけで動くも動かないもないかと
そう指定の座標をクリックしたいだけ

win付属のペイントでtest.bmp開いておいて、
ペイントは非アクティブの状態で、
uwscでマウス情報を直接ペイントに送って、ブラシ(マウス)で点を描きたい

最近まで出来てたのに、、、
名無しさん@お腹いっぱい。 [] 2013/12/13(金) 22:45:39.46 :YLPUMqSi0
管理者
名無しさん@お腹いっぱい。 [] 2013/12/13(金) 22:47:48.78 :YLPUMqSi0
管理者権限での実行は?
常識だけど…
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 03:24:00.34 :Sfxs7E+C0

興味本位で聞くけど、ペイントで自動操作ってどんな用途で使ってるのか
支障が無ければ教えて
あと、Windowsの種類とペイントのバージョンもあれば情報が出やすいかも知れない
XPと7のあのペイントは別物だろってくらい違うでしょw

windowsのアプデって、XP→8.1にしたとか言う落ちだったら笑うが
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 06:36:55.72 :QbNMeCa10
もちろん管理者権限も確認してます


ペイントは最低限の動きを確認するため
即席で書きました

実際は
ショートカットキーを押すと非アクティブウィンドウに指定した座標を押すという簡単な作業に使ってます

mouseorgの基準指定を(0に)変えればマウスカーソルが動いて点を描くんですが、、、
地味にキー情報を非アクティブウィンドウに送信するというのが便利だったんです
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 06:49:18.20 :4RTqbKED0
解決策システムの復元
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 06:58:17.03 :XkK8E4tQ0
今まで動作していたって話なら
前提条件が崩れているとしか考えられないから

とりあえず getid が成功しているのかとか
処理を分解しながら確認してみたら?

後、成功を前提としたスクリプトを描いていると
何処で躓いているか迷うから最低限のエラー処理は入れておくべきだよ
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 08:44:14.58 :UVZHtyeJi

グダグダ入ってないで代替案と代替コード。
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 09:08:10.64 :C08spLVQ0
他力本願
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 09:41:26.92 :Vc79l0iS0

Windows7とかのペイントだったら描画部分をmouseorgでクリックしたい場合はそこのオブジェクトを指定しなきゃダメだぞ?
お前何か勘違いしてないか?

こんなかんじで
mouseorg(getctlhnd(getid("ペイント"),"Afx:0000000000000000:8"),2) // 16桁の0の部分は起動ごとに変わる
btn(Left,0,100,100,100)
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 10:04:23.97 :QbNMeCa10
mouseorg(getid("test",,-1),2)
btn(left,0,100,100,100)
print "end"
これでtestのペイント開いてない状態で走らせると、もちろんgetidのところで待ちに入る。
ペイント開いた瞬間endが表示され、プログラムはそこで終了する。
しかし点は描かれない。なぜ〜
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 10:07:01.84 :QbNMeCa10
mouseorg(getid("test",,-1),0)
btn(left,0,100,100,100)
print "end"
こちらはキー情報直接送信ではない方
マウスカーソルが動くがプログラムとしてはちゃんと動いてるので問題なし

プログラムは何も問題無いはずなんだよ(この最低限の3行コードでも動いてくれてないけど
キー情報直接送信だけがどうしても、うまく動いてくれない
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 10:31:20.53 :QbNMeCa10

ありがとう
getctlhndで動きました
オブジェクトを指定しなければならないとはわからなかった
アイテム名って簡単に調べる方法や固定する方法はありますか?
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 11:48:17.93 :Vc79l0iS0

調べたいところにマウス合わせて
idtohnd(getid(GET_FROMPOINT_OBJ))
とかかなぁ
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 11:57:46.66 :Vc79l0iS0
名前が知りたいならこっちか
status(getid(GET_FROMPOINT_OBJ), ST_CLASS)
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 14:41:16.43 :Sfxs7E+C0

なるほど、ペイントは確認のために使っただけで実際は違うプログラムの操作を行っていると
とするwindows updateの前にペイントにマウス、キー情報を直接送れてた訳ではない感じか


ペイントの場合だけどAfx:以下が変わるのであれば、固定されている所から取得するように作ってみた

getallwin(hndtoid(getctlhnd((getid("ペイント")),"MSPaintView")))
id = hndtoid(getctlhnd((getid("ペイント")),status(ALL_WIN_ID[0],ST_CLASS))) //ALL_WIN_ID[0]は子ウインドウ1個の場合なので考慮が必要かも
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 15:32:41.78 :owIcRGV/0
指定したアドレスをchromeで開くのにSENDSTRを使って、
F6
SENDSTR(ID,"アドレス",1,True,True)
RETURN

で試してみたのですが、まずF6を押して、そのままENTERを押してしまっているようです。
IDはChomeになってるし、アクティブにもなっています。Windows7です。

誰か解決方法教えていただきたいです。
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 16:01:45.54 :Sfxs7E+C0

エスパーするとid取得が出来てない
本家サンプルの
path = "C:\xxxx\Application\chrome.exe"
id = Exec(path + " --force-renderer-accessibility --process-per-tab --new-window ttp://www.google.co.jp/")
この形だとidに-1が返ってきてid取れないから

id = GETID("Google","Chrome_WidgetWin_1")
Chrome開いたあとあらためてid取得しないとダメ
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 16:27:05.55 :owIcRGV/0

chromeっていいましたが、実際はchromiumというブラウザです、すいません。

いつもはchromiumを開いた後にマクロを開始して、一行目に
ID = GETID("Chromium")
としてやっているのですが、なんせ知識が全くないもので合ってるのかわからないのですが。
そもそもGETID("Chromium")では取得できてないですか?
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 16:56:12.75 :Sfxs7E+C0

idが取得できたか知りたいときは
ID = GETID("Chromium")
print ID

で-1が返ってきた時は取得できてない(通常は1とか2とか)
chromiumを使ってないから分からないけど、仮にChromeと同じ感じだとして
google(ttp://www.google.co.jp/)を開いている時のid取得は
ID = GETID("Google")
クラス名を指定していないから、googleと言うタイトルのプログラムがあれば
そちらを拾ってくるかもしれない
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 17:15:57.62 :owIcRGV/0

1が反映されました。
IDが取得できているのなら、SENDSTRのところが間違ってるのかもしれませんね。。。
SCKEY(ID,VK_F6)
SENDSTR(ID,"http〜",1,True,True)
SCKEY(ID,VK_RETURN)でできないです。

ちなみに、SENDSTRでアドレスをクリップボードに置いて、それを張り付けて移動ということはできました。
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 17:40:38.71 :owIcRGV/0
連続してすいませんが、
SENDSTR(ID,"http〜”)で行うと、文字を一文字ずつ打ち始めました。
エディトコントロールとかいうのがポイントかもしれません。
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 19:07:48.26 :Sfxs7E+C0

うーん、わからない
Chromeだとgoogle開いておいて

id = getid("Google",,-1)
sckey(id,VK_F6)
sendstr(id,"ttp://anago.2ch.net/test/read.cgi/software/1367340336/",0,True,True) //第3引数はF6押してフォーカス持っているので
sckey(id,VK_RETURN)

これで行けるんだけどな
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 22:56:05.22 :2n9SW1AO0
日々、コピー&ペーストで確認する作業に疲れてしまい
UWSCの導入を考えています。
IDを複数所有していまして、順番にサイトにログインして確認する作業を自動化、ルーチン化したいのです。
例えば
ID1
ID2

ID50
とIDが50個あり、これをサイトのログインページに自動でログインさせ、表示されたページの特定の数字を.txtなどにID毎に出力をさせたいのですが
UWSC コバヤシ式とかいうサイトを見ればできるようになりますか?
このようなスクリプトはだいたい既にネット上に落ちているスクリプトをパズルのように組み立てていくと聞いたのですが、
初心者の自分には左も右もわからない状態です。
おすすめの参考サイトなどありましたら教えて下さい。
名無しさん@お腹いっぱい。 [sage] 2013/12/14(土) 23:48:45.77 :XkK8E4tQ0

753 [sage] 2013/12/14(土) 23:48:55.79 :Sfxs7E+C0
訂正します
>id = Exec(path + " --force-renderer-accessibility --process-per-tab --new-window ttp://www.google.co.jp/")
>この形だとidに-1が返ってきてid取れないから

Chromeが一つも開いていない状態で実行するとidが取得出来ました
Chromeがすでに開いてい状態で(新たにChromeを開く形で)実行すると-1になりました
名無しさん@お腹いっぱい。 [sage] 2013/12/15(日) 01:19:41.34 :0Dfj/ivV0

楽勝でできる。構文がわかれば10分もかからずに作れる。
構文を学ぶにはをどうぞ。無料だ。
名無しさん@お腹いっぱい。 [sage] 2013/12/15(日) 01:27:34.61 :BKUUjItg0
文脈的に単一のサイトに50のIDと読めるがなんだろうな
およそまともとは言いがたいだろうと想像してしまうが、どうでもいいことか
名無しさん@お腹いっぱい。 [sage] 2013/12/15(日) 11:00:26.79 :5waI6v/O0

ちなみに何のID?
簡単なら作ってみるよ!!
名無しさん@お腹いっぱい。 [sage] 2013/12/15(日) 11:25:36.22 :XL6gRW5r0
RecIE
名無しさん@お腹いっぱい。 [sage] 2013/12/16(月) 13:36:49.49 :P1CceyfHi
ぶっちゃけた話なんですけど、コバヤシ式のサイトに書かれてることとか、
本に書かれていることってあまり上級な内容ってないですよね?
悪口は言いたくないんですけど、あのサイトなり本なり読んで「上級」って
書かれてることは、ちょっと学べば誰でもすぐにできると思うので、
初級〜中級のように感じました。中級を上級と言われると、勘違いしてしまう
のが嫌ですね…。
名無しさん@お腹いっぱい。 [sage] 2013/12/16(月) 17:49:49.07 :1XaQBdMT0
明確な資格試験が無い以上
自称上級者や勘違いなんて主観の問題なんだよ

他人に主観を押し付けている時点で同類になるから
思うだけにしとけ
名無しさん@お腹いっぱい。 [sage] 2013/12/16(月) 20:20:54.24 :zXajPP3R0
いままでは
PRINT ("ブラウザ再起動開始")
画像A = CHKIMG("画像A.bmp")
IFB CHKIMG("画像A") = 1
PRINT ("画像A検知有無: " + 画像A)
PRINT ("画像A画像座標: " + G_IMG_X)
PRINT ("画像A画像座標: " + G_IMG_Y)
MMV (G_IMG_X + 450, G_IMG_Y)
SLEEP (2)
BTN (LEFT, CLICK)
KBD (VK_F5, CLICK, 50)
PRINT ("リロード実行")
PRINT ("トップ画像検知スタート")
画像B = 0
LOOP_COUNT = 0
       WHILE 画像B = 0
SLEEP (1)
画像B = CHKIMG("画像B.bmp")
PRINT ("TOP画像検知: " + 画像B)
LOOP_COUNT = LOOP_COUNT +1
PRINT ("LOOP_COUNT: " + LOOP_COUNT)
IF 画像B = 1 THEN BREAK
IFB LOOP_COUNT = 30
PRINT ("ERROR: 画像B NOT FOUND ")
PRINT ("ブラウザ再起動失敗")
っで問題なく動いてましたが
最近は複数のエラーが多発のため画像を2つ追加して対策したいと思ってます
『新規画像1を感知した場合、新規画像2を左クリック』←追加したい
新規プログラムを以前のプログラム先頭にして
新規画像1を感知しない場合は以前のプログラム通り動いて欲しいと考えてます
ご教授 宜しくお願いします
名無しさん@お腹いっぱい。 [sage] 2013/12/16(月) 21:16:26.16 :jp57wvxR0

>『新規画像1を感知した場合、新規画像2を左クリック』←追加したい

簡単だよ。既存のそのプログラムからも学べるし、のサイトを参考にしてもいい。
名無しさん@お腹いっぱい。 [sage] 2013/12/16(月) 23:20:45.53 :zXajPP3R0
さん
是非とも新規プログラムを以前のプログラム先頭にして
発見時は新規プログラム実行後、以前のプログラムへ以降する書き方を
教えていただきたいです
プログラム自体を教えて頂きたいのです
参考サイトの伝授は いま現在はパスです
ありがとうです
名無しさん@お腹いっぱい。 [sage] 2013/12/17(火) 00:01:09.71 :b9ycVjHg0
sute.jp のログインスクリプト作ってたらアクセス拒否食らった。
作成済みのアカウントにログインは出来るけど新規が作れない。
アカウントは24時間で無効になるから・・・オワタ

以前、ログインを試行錯誤してたことがあったけどそん時は大丈夫だった。
ログインは今も可能なことを考えると、パスワードミスとかで何度も試行することは許容されるのか。
それとも作成できるアカウントの数に制限があるのか。

めんどっちいから成功失敗関係なく通しで処理したのがいけなかったのかな。
名無しさん@お腹いっぱい。 [sage] 2013/12/17(火) 07:46:44.96 :zvnFUH9g0

5万といいたいところだが3万でいいよ
名無しさん@お腹いっぱい。 [sage] 2013/12/17(火) 22:03:14.47 :YitmULdvi
「スクリプトを組む能力」と「数学的に考える力」は別物と考えて
いいんですかね?例えばfor〜next、repeat〜until、while〜wend
を多用したスクリプトを見て、「この実行結果はこうなるだろう」って
すぐに予想できるのは数学的な力が高い人だと思うんですけど、
プログラムを組む際にそういう力って重要なんでしょうか?
(無関係ではないのはわかるんだけど、ここで聞きたいのは
「重要かそうでないか?」ということ)
名無しさん@お腹いっぱい。 [sage] 2013/12/17(火) 22:51:27.35 :CVky9ZRf0
数学的なのかは知らんが
実装したい手続きを抽象化してグループ分けする力とか
そういうのであればあった方が楽なのは確かだよ

でもそれって別にUWSCに限った話じゃないしな
名無しさん@お腹いっぱい。 [sage] 2013/12/17(火) 22:55:50.33 :8wRZFCri0
数字の認識力について、か。
お題としては数学と言うよりは算数だし、重要ではないかな。
その辺りの話なら算数よりもロジックの積み重ね方や閃きの方が重要。

しかし、ループで複数行を使えば実現は可能だが、ある計算式、公式を知っていたらたったの一行で済むということはたまにある。
可読性、バグの発生、メンテナンス性が上がるという点で、重要と言える。

でもUWSCに限らない話だな。プログラミング雑談スレ part836に逝ってよし
名無しさん@お腹いっぱい。 [sage] 2013/12/18(水) 03:16:38.99 :fCfq0HiW0
・組む能力
言語的熟語力です。

・ループを数式に
中高レベルの数列です。
名無しさん@お腹いっぱい。 [sage] 2013/12/18(水) 18:43:01.84 :/RT+wXEhi
スケジュール設定で、「条件が満たされていなければ実行」
「満たされていたら実行しない」みたいな設定ってできないですよね?

例えば毎時間、「今日はノルマの腕立て伏せ50回しましたか?」っていう
確認メッセージが出てくるとして、「はい」を押したらそれ以後は出てこない
(明日になったらまた出てくる)。「いいえ」の場合は、「はい」が押されるまで
24時まで毎時間出続ける…という形にしようと思ったら、
スケジュール設定ではなく、sleepでやるべきなんでしょうか。
名無しさん@お腹いっぱい。 [sage] 2013/12/18(水) 19:01:35.73 :anX/Ell/0

条件は実行するスクリプト内で判断すればいいのでは
「実行後、条件が満たされていなければ続きの処理」
「実行後、条件が満たされていれば何もせず終了」
名無しさん@お腹いっぱい。 [sage] 2013/12/18(水) 19:52:17.97 :jglqda+X0
これじゃなきゃダメなんてルールはないし自分でやりたいようにやりゃいい
スリープでやろうが次官取得なり何らかの条件付けでやろうが思った通りの動作してくれりゃ自分で使うにはなんの問題もないだろ
名無しさん@お腹いっぱい。 [sage] 2013/12/18(水) 23:15:26.77 :fhnY0MBu0
以前、公式掲示板でUWSC.INIを直接書き換えてスケジュール設定する方法を
考えている人がいたな

ポイントは、UWSC.INI書き換え後UWSCを再起動しないと設定が適応されないらしい

興味があれば、(公式掲示板直リンしてもいいのかわからないのでgoogleで
「UWSC.INI ある条件となった際にスケジュールを設定する方法」で検索して)該当スレを探してくれ

一応書いておくけどUWSC.INI壊すと、当然設定壊れるから慎重に、最悪誤動作の可能性もある
わからなければスルーが吉
名無しさん@お腹いっぱい。 [sage] 2013/12/18(水) 23:28:13.03 :jglqda+X0
再起動なんてしなくても適用されるだろ
iniへの上書きだけで変数変えてないとか逆にiniだけ書き換えて再読み込みしていないとかポカしてるだけじゃね?
少なくとも俺が試した限りでは再起動なんて必要ない
そもそもUWSC.INIで設定する必要も・・・
名無しさん@お腹いっぱい。 [sage] 2013/12/18(水) 23:31:15.75 :Y1sO7Jhr0
いにじゃなくてつくりこもうよたのしもうよ
名無しさん@お腹いっぱい。 [sage] 2013/12/18(水) 23:42:36.21 :OKj70rsb0
起動するのに、Windows標準装備のタスクスケジューラを使うのは、このスレではご法度なの?
名無しさん@お腹いっぱい。 [sage] 2013/12/18(水) 23:43:14.59 :I35zS+P70
iniを屠るのもそれはそれで楽しそうだな

スクリプトはsleepで待って、PC自体はWindowsのスケジューラでスリープから復帰ってしてるな
そんで処理が終わったらPCもスリープに入る の繰り返し
名無しさん@お腹いっぱい。 [sage] 2013/12/18(水) 23:50:27.90 :fhnY0MBu0

そうなのか、いつか使おうと思って覚えていただけなので
教えてくれてありがとう。

の場合はsleepで待機しての通り条件判断するか、
状態記録するファイルを用意してインターバルで1時間に一回起動
条件判断がいいかもしれないね

の言う通り
名無しさん@お腹いっぱい。 [sage] 2013/12/19(木) 00:09:01.59 :ijTdWfFs0

その方法もあり
名無しさん@お腹いっぱい。 [sage] 2013/12/19(木) 07:55:43.11 :fN2y80zU0
色々突っ込もうと思ったがが結論出してた

例えば数万行のテキスト処理方法を議論してる中で
正規表現使えよみたいな効率化観点ではない時点で
結局はどういう方面でアプローチしていくかの次元でしょって事
名無しさん@お腹いっぱい。 [sage] 2013/12/19(木) 16:00:23.94 :ihCKETXj0
俺なら各スクリプトを制御するマスタスクリプトを走らせるな
何らかの出来合いのもので管理するということは、
その出来合いのものが想定した枠内でしかスケジュールが組めない。

ましてや、サブスクリプトの実行結果をマスタプログラムが見て、
スケジュールを条件分岐させることは不可能だろう。

たとえば二日間連続で実行して次の三日間は実行しない、
なんてパターンはどのスケジューラも既定で持っていないパターンだろう。
スクリプトなら、年間積算日を返す関数などを作っておいて、
( DayOfYear() MOD 5 ) < 2
で判定できるわな。

サブスクリプトの実行結果をマスタに送信するには、
単にグローバル変数を使ってもいいし、
既存のINIファイル命令を介してもいいだろう。

マスタスクリプトの信頼性に自信がないなら、
自分が活動中であることを示すため、
レポートを好きな形式でログに出してもいいし
FUKIDASIで表示してもいいだろうし、
コマンドライン対応のタイニーメールサーバでメール報告させてもいいだろう。
それらを介して外部ツールがマスタスクリプトの生存確認を行い、
生存か確認できなければUWSCの全プロセスを強制停止して再起動すれば良い。

したがって、既存のスケジューラで十分な、単純なスケジュールなら、
マスタスクリプトの製作の手間を省く意味でのみ、既存のものを使い、
そうでないなら、姑息な裏ワザなど追求せずに、マスタスクリプトを書けばいい。

まぁあくまで個人の感想ですが。
名無しさん@お腹いっぱい。 [sage] 2013/12/19(木) 16:48:06.28 :2jFgW9wG0
すいません
IE.document.body.innerTEXTを取得してprintできるサイトと
できないサイトがあります。この違いは何でしょうか?
名無しさん@お腹いっぱい。 [sage] 2013/12/19(木) 17:37:40.84 :rL44yr4d0

<BODY>が有るか無いか。フレームだけのページなどは<BODY>が無い
または
サイトの応答が遅いのに、IEの読み込み完了待ち処理をせず、sleepで時間を決め打ちしてるなど
名無しさん@お腹いっぱい。 [sage] 2013/12/19(木) 18:09:20.16 :2jFgW9wG0

どっちも大丈夫です
何が悪いんでしょうか
名無しさん@お腹いっぱい。 [sage] 2013/12/19(木) 18:53:24.29 :rL44yr4d0

「エラーが出る」 それとも 「有効な文字列が返ってこない」 どっちなの?
サイトのURLは出せないの?
名無しさん@お腹いっぱい。 [sage] 2013/12/19(木) 23:44:28.88 :2jFgW9wG0

例えばこういうページです
社名とか住所とか抽出したいって思った時に出来なかったので
ttp://townwork.net/detail/Fh30010s_lac_01_rid_15469519_axc_40/
ttp://townwork.net/detail/Fh30010s_lac_01_rid_15474704_axc_40/
名無しさん@お腹いっぱい。 [sage] 2013/12/20(金) 00:36:11.40 :TwwIyG9Q0

問題なし
名無しさん@お腹いっぱい。 [sage] 2013/12/20(金) 00:45:46.49 :+ZuJ2gew0


SLEEP(1)
SENDSTR(0,IE.document.body.innerTEXT)
SLEEP(1)
txt=GETSTR(0)
SLEEP(1)
company=BETWEENSTR(txt,"企業情報・お問い合せ先","住 所 :")
sleep(1)
print company

これでもならないんです
名無しさん@お腹いっぱい。 [sage] 2013/12/20(金) 00:58:43.63 :cky2JDef0

できたけど

IE.Document.body.innerTEXT
IEGETDATA( IE, "TAG=body" )

どっちでもできる。
BETWEENSTRで失敗してるだけ。

”住 所:”  ○ 
”住 所 :”  × 

エディタで検索したら一発
名無しさん@お腹いっぱい。 [sage] 2013/12/20(金) 00:59:23.43 :TwwIyG9Q0

所 と : の間に余計なスペース文字が1つ入ってる

SendStr(Exec("notepad"), txt, 1, true)
してtxtを確認すべき
名無しさん@お腹いっぱい。 [sage] 2013/12/20(金) 01:31:06.35 :+ZuJ2gew0
ありがとうございました。
名無しさん@お腹いっぱい。 [sage] 2013/12/20(金) 08:28:35.22 :n6HVXl8p0
こういう住所や電話番号などの絡みは
テキストを一旦、全角か半角に統一・余計な空白削除・括弧類削除
ーを-に修正etcを統一で行う変換関数を作っておくと便利
名無しさん@お腹いっぱい。 [sage] 2013/12/21(土) 12:33:38.88 :7c2sTaTH0
CHKIMG関数の座標なんですがデスクトップの座標をしている為、
他のPCで使用すると座標がずれてしまいます。
起動しているアプリ上の座標を指定するにはどうしたらいいでしょうか?
名無しさん@お腹いっぱい。 [sage] 2013/12/21(土) 12:43:15.73 :av9VbQcF0
mouseorg
名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 03:04:59.42 :8CS1lk/R0
すいません
uwscでcsvに出力したいんですが、
セルを指定して出力することは出来ますか?
A1なら会社名、B1なら住所、C1なら電話番号みたいな感じで
名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 04:00:41.45 :DeAG8fOO0
エクセルオブジェクト
名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 08:50:17.39 :TPfcNBRBi

comオブジェクト、createoleobjとかgetactiveoleobjでExcel作って、
Excel.range("a"+n).value=kaisya

とかで。コバヤシさんのサイトに触りは書いてる。
名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 09:29:07.73 :DeAG8fOO0
そういえばCSVなら便利な関数あるじゃん
あぼーん [あぼーん] あぼーん
あぼーん
名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 11:54:34.35 :8CS1lk/R0
FPUT(fid,company+address+tell,3,3)
これでやると
companyが3行目の3列目C3
addressがA4
tellがA5って感じになっちゃいます
列に隣り合って出力したいんですが・・・
例:A1=company B1=address C1=tell
名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 12:35:12.55 :r78nVN2p0

FPUT(fid, company, 10, 1) //10行1列のセルにcompanyを書き込む
FPUT(fid, address, 10, 2) //10行2列のセルにaddressを書き込む
FPUT(fid, tel, 10, 3) //10行3列のセルにtelを書き込む
名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 12:42:16.01 :bWx3fLwv0
HELPよく読んでなくてFPUTの引数を間違えてるだけか…
実際のテキストがどうなってるかCSVをテキストエディタで開いてすらいないだろうな。
FPUTになまじ列対応機能とかあるのが裏目に出たな。
名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 13:28:59.09 :8CS1lk/R0

やってるんだけど、出来ないんです
10,1=A10
10,2=B11
10,3=C12
に出力されちゃうんです
名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 14:06:39.78 :DeAG8fOO0

>10,1=A10
>10,2=B11
>10,3=C12

バグじゃん、開発に報告よろ
名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 14:10:55.09 :r78nVN2p0

UWSCのCSV機能は中途半端だから、改行やダブルクオートを含んだ文字列だと、正常なCSVにならないよ。
FPUTのCSV機能使わずにやるか、EXCEL/Calc経由でやるかだね
名無しさん@お腹いっぱい。 [sage] 2013/12/22(日) 16:13:29.81 :2PGvt7Kg0
事前に文字列編集してから、FPUTすればいいような
名無しさん@お腹いっぱい。 [sage] 2013/12/23(月) 00:19:37.24 :AYjBzUmf0
まぁ俺もFPUTの列機能なんて使ったことなくて、
単に
FPUT(fid, company + "," + address + "," + tell)
ってやってるだけだけどね。


だからさ
その出力されたCSVをテキストエディタで開いてみたかい?
CSVというのはそもそも何なのかぐぐってみたかい?
出力されちゃうんです、じゃねーよw
名無しさん@お腹いっぱい。 [sage] 2013/12/23(月) 00:44:54.61 :qo4dX5M80


テストコード書いたよ
F_READ or F_WRITE を指定するのが普通だけど
それだと前回書いた 4:3 の ”3” が残っちゃって分かりにくいんで。

[test_13_018.uws]
filename = replace( GET_UWSC_NAME, ".uws", ".csv" )

FID = FOpen( filename , F_WRITE )
FPut( FID, "a,b,c",  2 )
FPut( FID, "1",    3,  1 )
FPut( FID, "2",    3,  2 )
FPut( FID, "d,e,f",   3,  F_INSERT )
FPut( FID, "3",    3,  3 )
FPut( FID, "g,h,i" )

FClose( FID )
DOSCMD("notepad " + filename)


[test_13_018.csv]

a,b,c
d,e,3
1,2
g,h,i
名無しさん@お腹いっぱい。 [sage] 2013/12/23(月) 01:56:25.79 :JSLVoiAW0
ちゃんとした利用法なら十分な利用性のある関数でしょ
読み書き、蓄積、なんでもござれだよ
名無しさん@お腹いっぱい。 [sage] 2013/12/24(火) 05:03:39.84 :hIhyC3Zn0
バグなのか
ならしょうがないな
771 [sage] 2013/12/24(火) 06:13:49.26 :4ztCQIgc0
sute.jp は、1日あたり5〜10のメアドが使えるらしい。
それ超えると新規作成を拒否される。

たかがログインするだけのものが意外とでかくなった。
ttp://scripts.web.fc2.com/scriptsup/sute.zip


↑のスクリプトで fukidasi() をスレッドで呼び出そうとしたらなぜか死ぬほど遅くなる。
スクリプト全体が遅くなる。
IEのイベント登録したのが関係あるのかな。
名無しさん@お腹いっぱい。 [sage] 2013/12/24(火) 12:35:31.69 :+HAhVDeGi
途中まで書いたけど、そこで断念して放置したまま3ヶ月以上死蔵している
スクリプトっていくつくらいあります?
名無しさん@お腹いっぱい。 [sage] 2013/12/24(火) 14:22:13.79 :MMX97s2G0

module構文なんて使わないから面白かったわ。
変数のスコープをmodule内に限定できるみたいだから便利だね。
コレ使えばよかったわってのが手持ちに沢山あるな…

ところで
GetTime()
date = eval(G_TIME_YMD)
time = eval(G_TIME_HMS) // YMDとHMSを同時に処理できない
こういうのは凝ったことせず素直に
function getDateAndTime(var date, var time)
で良くね?

ログ出力はFPUT使ってるけどバッチファイル方式かw

Function GetWindowTitle( ID ) に status(id, ST_TITLE) 使わないのは何故

> fukidasi() をスレッドで呼び出そうとしたらなぜか死ぬほど遅くなる
myfukidasiの中でthreadで更に呼び出して
2〜3秒後に自動的に消える投げっぱなし方式のfukidasiにしたかったとか?
即席でテスト書いてみたけど特に怪しい動きはしなかったよ。
試しに1000個生成しようとしたら64個制限エラーが出て生成できなかったし
64個ではCPU使用率に変化殆どなし。
ただし、試しにスレッドごとにIEオブジェクト生成させてみたら、
20個ぐらいから遅くなり始め、MAX64個生成したら俺の4コアマシンでも応答なしになって
UWSCを強制終了するのに数分かかってしまったよ。
名無しさん@お腹いっぱい。 [sage] 2013/12/24(火) 14:23:01.20 :MMX97s2G0
げ、UWSC強制終了してもIEのプロセスが64個残ったままだわw
名無しさん@お腹いっぱい。 [sage] 2013/12/24(火) 17:42:22.81 :4ztCQIgc0

やりたい事と出来る事を突き合わせて作るので未完成と言うのはあまりないけど数は分からない。
他の言語なら未完成があるよ。
UWSCの場合は”出来なかった”と言う確認の積み重ねがほとんどだと思う。
結局、UWSCで出来る事を確認するためのテストコードを大量に書く事に。
動いたコードをGrepで探してコピペだから、一旦動けばずっと使える。

まあ、可能な事なら完成するまでつぎ込める時間があるです。
だけど、Web使うものはWebサイトが閉鎖されたり、仕様が変更されたりした時点で動かなくなって放置なんで
大抵のものが死蔵になってるかな。
gooメールとかメール確認すらなく登録できてたのに・・・



G_TIME_ って GetTime() を呼び出したスコープでしか使えない。
G_TIME_ を使えば、GetTime() の1回の呼び出しでいろいろ自由にできる。
自由に指定できる関数を作ると言う手もあるけど・・・自由度が増せば複雑度が上がる。

> status(id, ST_TITLE) 使わないのは何故
存在を忘れてた。いや、マジで。
WindowsAPIを使いたい中二的意味もあるかも。

> 2〜3秒後に自動的に消える投げっぱなし方式のfukidasiにしたかったとか?
そうそう。
スレッドはこういうときに便利に使えるはずなんだけどなぜか重くなっちゃって。
名無しさん@お腹いっぱい。 [sage] 2013/12/24(火) 18:17:50.49 :MMX97s2G0
> G_TIME_ って GetTime() を呼び出したスコープでしか使えない。
関数の中でGETTIMEを呼び出してG_TIME_を元に加工した値を返せばいいでしょ。
俺はG_TIME_みたいなシステム変数をメインルーチンの中では一切触らずにやってるよ♪

for id=0 to 65
  myfukidasi("thread myfukidasi id:"+id, 3+id)
next
sleep(10); exitexit
procedure myfukidasi(str, wait)
  thread threadMyFukidasi(str, wait)
fend
public _staticMyFukidasiId=0
procedure threadMyFukidasi(str, wait)
  fukidasi(str, _staticMyFukidasiId*20, _staticMyFukidasiId*30)
  _staticMyFukidasiId=_staticMyFukidasiId+1
  sleep(wait); fukidasi("")
  _staticMyFukidasiId=_staticMyFukidasiId-1
fend
この_staticMyFukidasiIdもmoduleで外から隠せるのでそのうち使いたいと思ふ
名無しさん@お腹いっぱい。 [sage] 2013/12/24(火) 23:02:17.66 :q5yMpqMO0
UWSC 画像判定と条件分岐について質問です
どうか宜しくお願いします

1.画像Aがあるか判定する
2.画像Aがあれば、画像Bをクリックする
3.画像Aなければ、いままで使ってるリロード処理を行う

画像A判定→画像Bクリック

以下 いままで使っているリロード処理
IFB ZZ_reload = 1
ZZ_reload = CHKIMG("ZZ.bmp")
PRINT ("リロード画像を検出" + ZZ)
PRINT ("リロード画像横軸: " + G_IMG_X)
PRINT ("リロード画像横軸: " + G_IMG_Y)
MMV (G_IMG_X + 5,G_IMG_Y + 5)
BTN (LEFT,CLICK)
SLEEP (2)
BREAK
ENDIF

IFB LOOP_COUNT = 5
PRINT ("リロード画像無し")
BREAK
ENDIF

困っています 是非お願いします
名無しさん@お腹いっぱい。 [sage] 2013/12/24(火) 23:40:02.05 :m3X1dCwI0
.画像Aがあるか判定する
これがまず出来てないじゃん

IFB CHKIMG("A..bmp")
画像があるときの処理(画像Bをクリックする)
ELSE
画像がないときの処理(いままで使ってるリロード処理)
ENDIF
名無しさん@お腹いっぱい。 [sage] 2013/12/24(火) 23:46:14.16 :aJSnW0Lh0



名無しさん@お腹いっぱい。 [sage] 2013/12/25(水) 22:08:16.14 :ns18OXLs0
//1.画像Aがあるか判定する
判定A=CHKIMG...
//2.画像Aがあれば、画像Bをクリックする
IFB 判定A THEN
  //画像Bをクリック
ELSE //3.画像Aなければ、いままで使ってるリロード処理を行う
  //リロード処理
ENDIF

こんなの今や義務教育らしいじゃん?
名無しさん@お腹いっぱい。 [sage] 2013/12/26(木) 03:17:20.66 :WuxhXLR9i
自分のプライベート用に作ってるプログラムってどんなのあります?
俺はスケジュール管理系ばかり。
名無しさん@お腹いっぱい。 [sage] 2013/12/26(木) 08:24:35.33 :QuoI/O7E0
IEと相性良いんで、ネット活動の自動化や一括化やね。

(アフィ)サイトの自動更新、テキスト整形(innerHTML連携で便利なんで)
ブラウザPCゲームの自動稼ぎ、一括登録系、一括POST系、一括メール送信
あとはAPI提供が無いサイトからデータ蓄積・抽出botみたいなスクレイピング。
名無しさん@お腹いっぱい。 [sage] 2013/12/26(木) 09:42:55.81 :HQsDpckn0
SAVEIMGで保存された時の画像名なんだけど
同じフォルダにその名前のものがあったら違う名前を自動でつけるのってどうすればいいんだ?
名無しさん@お腹いっぱい。 [sage] 2013/12/26(木) 10:57:51.05 :OI9DnE6z0

basename = "hoge"
extname = ".bmp"
suffix = ""
for i=1 to 10000
 filename = basename + suffix + extname
 if FOPEN(filename, F_EXISTS)=false then break
 suffix = "(" + i + ")"
next
if i>10000 then MSGBOX("ファイル多過ぎ")
SAVEIMG(filename)
名無しさん@お腹いっぱい。 [sage] 2013/12/26(木) 11:11:28.23 :OI9DnE6z0
とりあえず上書きされなければいいのなら

def_dll GetTickCount(): dword: kernel32.dll
SaveImg("hoge " + GetTickCount() + ".bmp")
名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 00:25:18.14 :RRJWn5gn0

このバグの回避方法教えてください
Excel出力は有料じゃないと使えないので無料のcsvでなんとだめなんです
名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 00:44:46.07 :rgUl75St0

指定通りに出力されるみたいだけどどのあたりがバグなの?
名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 00:47:08.07 :cb+pHm6l0
名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 00:49:13.78 :RRJWn5gn0

されてないじゃん
名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 00:55:58.66 :RRJWn5gn0
ごめん されてたわ 忘れて
名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 01:38:32.81 :O962ZiXx0
イラくるなあ
名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 06:30:55.19 :pqunq3290

バグがある機能は使わない。

直された後でさえ、かつてバグがあった機能は使わない、永遠にだ。

この程度の開発体制のスクリプトに期待を持つな、不当な期待だ。
名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 10:32:38.11 :muE0Qsfli
スクレイピング時の疑問なんですけど、例えば
単語1/単語2/単語3/単語4…単語155
とかってあったとして、単語の文字数も一定ではなく、単語の項目も一定ではない時に、「山」「川」「谷」「田」のどれかを
含む単語だけ抽出したい、っていう場合ってあっさりしたコード記述では難しいですよね?山川…の漢字も4つとかでなく、100以上あるような場合は
結構難解なコード書くしかありませんかね?

あと、入力をした数字によって表示される文字列を変えるコードを書く時、今は

Dim moziretu[99]
test=input("testに数字を入力")

select test
case 0 ;print moziretu[0]
case 1 ;print moziretu[1]
case 2 ;print moziretu[2]

case 99 ;print moziretu[99]
selend

と律儀にやってるんですけど、例えばこれを

select test
case test ;print moziretu[test]
selend

みたいにするのはできないんですかね??
さっき試してみて、どちらも撃沈したやつなので、簡略化できる方いたら教えて下さい。
名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 10:37:49.70 :5l7CgQ1V0
配列を使うかcsvのように区切り文字を使って抽出する範囲を判別させる
名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 11:00:22.31 :+NM9ZlC40

s = "池本/桜井/中川/釜田/安永/川本"
re = CreateOleObj("VBScript.RegExp")
re.Pattern = "[^/\s]*[山川谷田][^/\s]*"
re.Global = true
m = re.Execute(s)
for i=0 to m.Count-1
 print m.item(i).Value
next
MsgBox("END")
名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 12:28:09.90 :cb+pHm6l0
やっぱ正規表現か。だよな。
名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 14:45:01.00 :uj3SuZ7Y0
質問番号でもつけろよ。
前半の質問
正規表現が最も有効だが
使わないなら、検索対象単語配列の各要素に対して検索語配列の全要素を検索する2重ループにする。
もちろん低速。とはいえ100*100程度なら数秒じゃないか?
コードとしてはあっさりしたものになるぞ。

後半の質問
test=input("testに数字を入力")
IF CHKNUM(test) THEN print moziretu[test]
ではなくSELECTしてる理由は?
名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 23:36:04.82 :RRJWn5gn0
すいません。URLパターンがttp://*******@ttss
のみを絞るときはどうすればいいですか?↓だと全URLが出てしまいます
re.Pattern = "https?:\/\/[-_.!~*'()a-zA-Z0-9;\/?:\@&=+\$,%#]+"
名無しさん@お腹いっぱい。 [sage] 2013/12/27(金) 23:38:23.09 :RRJWn5gn0
事故解決しました
名無しさん@お腹いっぱい。 [sage] 2013/12/28(土) 00:45:40.44 :n/FJjJDP0
ttp://anago.2ch.net/test/read.cgi/software/1278083626/876
というのをUWSCでやってみた。

最初 (1) を作ったんだけど3つのプロセスのうちひとつしか設定されないうえに
タスクマネージャーから開くと権限が書き換わってエラーが出るようになった。
管理者権限でタスクマネージャーを起動すれば見れたけどそんなのあほらしいんで
(2) を試してみたらしたらうまく行ったんだけど、これだと start コマンドでやっても同じだなあと。

(1)
ID = exec(program)
Hnd = OpenProcess( PROCESS_QUERY_INFORMATION or PROCESS_SET_INFORMATION, TRUE, STATUS( ID, ST_PROCESS ) )
SetProcessAffinityMask( Hnd, 5 )
CloseHandle(Hnd)

(2)
Hnd = GetCurrentProcess()
SetProcessAffinityMask( Hnd, 5 )
exec(program)
CloseHandle(Hnd)

// 定義部分
DEF_DLL GetCurrentProcess(): hwnd: kernel32
DEF_DLL OpenProcess(dword, bool, dword): hwnd: kernel32
DEF_DLL GetProcessAffinityMask(hwnd, var dword, var dword): bool: kernel32
DEF_DLL SetProcessAffinityMask(hwnd, dword): bool: kernel32
DEF_DLL CloseHandle(hwnd): bool: kernel32

public PROCESS_DUP_HANDLE       = $0040
public PROCESS_SET_INFORMATION   = $0200
public PROCESS_QUERY_INFORMATION = $0400

program = "C:\Users\xxx\AppData\Local\Chromium\Application\chrome.exe"
名無しさん@お腹いっぱい。 [sage] 2013/12/28(土) 02:02:25.47 :ZNYh/MSX0
数分間、又は数回画像認識できない場合F5を押して途中で見つかったらまた繰り返す処理をしたいのですがどうすればいいでしょうか
While True
ifb CHKIMG("画像A",0)
x=G_IMG_X
y=G_IMG_Y  
btn(left,click,g_img_x,g_img_y)
MMV(x+50,y+50,0)
sleep(3)
//B,D,E,F画像で同じ回数chekimg
endif //個数分書いてます

IFB chkimg("画像1.bmp")=true THEN
 ifb CHKIMG("画像2.bmp",0)
 x=G_IMG_X
 y=G_IMG_Y   
 btn(left,click,g_img_x,g_img_y)
 MMV(x+50,y+50,0)
 sleep(3)
 endif
 REPEAT
// chekimg数回
UNTIL chkimg("画像3")=true 
endif
wend

このような感じです
名無しさん@お腹いっぱい。 [sage] 2013/12/28(土) 02:57:30.35 :n/FJjJDP0
ほれ
どう考えてもperiodに達しないけど


dim 秒数 = 60
dim 回数 = 3
dim 画像リスト[] = "画像A", _
          "画像B", _
          "画像C", _
          "画像D"

while true
 // 内while終了条件をリセット
 period = gettime(秒数/24/60/60)   // ループ終了条件1 予定時刻
 count = 0              // ループ終了条件2 予定エラー回数
 
 while gettime() < period
  for i = 0 to length(画像リスト) - 1  // 必要な個数分繰り返し
   ifb !chkimg(画像リスト[i])
    count = count + 1       // なかった回数をカウント
   else
    // あったらやり直し?
    continue 3
   endif
   sleep(0.1)
  next
  if 回数 < count then break
  sleep(1)
 wend
 KBD(VK_F5)
 
wend
名無しさん@お腹いっぱい。 [sage] 2013/12/28(土) 13:40:44.79 :KkqSZHRk0
URLリストからブラウザでIEを起動せず、情報を入手したいんですが
それってできますか?
名無しさん@お腹いっぱい。 [sage] 2013/12/28(土) 14:14:52.97 :VkYFC1vS0

つ Microsoft.XMLHTTP
名無しさん@お腹いっぱい。 [sage] 2013/12/28(土) 14:16:52.56 :pthmA2h10
可能だよ
でも結局ブラウザに類するオブジェクトを内部的に作成して〜って流れになるよ

参考URL
ttp://siromasa.digi2.jp/uwsc/u_term/MSXML.html
名無しさん@お腹いっぱい。 [sage] 2013/12/28(土) 18:11:24.19 :Sm1OlDTO0
IE8以降ならHTML独自仕様ほとんどないから
Safari,Chromeあたりと同じ位置づけでいいんじゃない?
名無しさん@お腹いっぱい。 [sage] 2013/12/28(土) 18:24:57.67 :J11FVOKU0
ChromeもCOM的に操作できたら捗るんだけどなぁ。
840 [sage] 2013/12/29(日) 07:34:58.06 :qF357mkgi
返事遅くなりました。


ありがとうございます!正規表現調べて自分のものにします。
参考にさせてもらいます。
VBScriptとか全然触れたことがなかったけれど、コードを見る限り、
全く手が届かないものでもなさそうなので、そちらも調べてみます。


質問番号は確かに。以後気をつけます。

>>検索対象単語配列の各要素に対して検索語配列の全要素を検索する2重ループにする

これって「自分が予想できる要素のみで構成されている場合において有効」なもの
ではないでしょうか?例えば「単語が100あり、その中に全ての常用漢字が使われる可能性がある」
というような場合、コードを書く時かなりしんどくないでしょうか?

CHKNUMは触ったことがなく、用途も知りませんでしたが、確かにそれならいけますね。
勉強になりました。ありがとうございます!
名無しさん@お腹いっぱい。 [sage] 2013/12/29(日) 13:23:07.10 :y3E8xddb0

スクレイピングと言ったのだから対象要素が不定という要求仕様があるということは
言わなくても判るものだ、というつもりだったのかな?
VBScriptも正規表現も使ったことないのに今までどんだけ言語いじってきたか知らないが、
そこまで言うなら金出してスクレイピングソフト買うなり製作依頼の仕事出すなりすべきじゃないか?
要求仕様の後出しはやめようね。

大量のデータ捌くのは、データ構造の設計して、
判定用マスタ情報も自動で読ませるのが普通。
じゃなきゃどんな方法使おうと無意味。しんどいに決まっとる。

まぁ正規表現でやるにしても、常用漢字のチェックとか
不利だらけのUWSCでやらなきゃいけない意味が判らんが。

エラーチェックはChkNumだけでなくもっと沢山必要だぞ。
ループでやるなら判定材料を配列に納めろところさえ自動でやればPG自体は簡単。ただし遅い。
正規表現でやるならさらに、式を文字列操作関数で自動生成することになるが、
果たして何文字までの正規表現ならまともに動くかな?ということになるな。

ちなみに[a-z]とは書けるが[亜-腕]と書けるわけでもない正規表現で
2136字の常用漢字を判定するつもりなら、
正規表現が最適かどうか怪しいぞw
要求仕様の後出しはやめようね。
名無しさん@お腹いっぱい。 [sage] 2013/12/29(日) 14:42:01.56 :gH8OCtI+0
もしVBSの正規表現で間に合わないならbregonig.dllでやるのもいいよ
そっちならShiftJIS全文字並べた長いパターンでも大丈夫だし、戻り読みにも対応してる
名無しさん@お腹いっぱい。 [sage] 2013/12/29(日) 18:33:20.42 :6fGhBvbo0
ファンクションを作成したuwsファイルを別のuwsファイルで読み込んで
使うことってできる?
名無しさん@お腹いっぱい。 [sage] 2013/12/29(日) 18:36:34.33 :U3C3rCXu0
call
名無しさん@お腹いっぱい。 [sage] 2013/12/29(日) 18:53:21.14 :6fGhBvbo0

できました
ファイルの実行しかできないと思ってた、有難うございます!
名無しさん@お腹いっぱい。 [] 2013/12/30(月) 00:10:29.58 :uCwyxvsg0
IESETDATA( IE, 1, , "A" )
IESETDATA( IE, 1, , "B" )
IESETDATA( IE, 1, , "C" )

これらをwhile trueの間ランダムで選択し続けたいのですがどうすればいいのでしょうか

また
Aを押したらBかC、Bを押したらAかC、Cを押したらAかBとするのは可能ですか
名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 00:35:19.60 :iGnraarK0
> Aを押したらBかC
HTML内でOnClickイベント時にBかCをするようにinnerHTMLを書き換えればいいけど
直接呼び合うとおかしくなるんで
それぞれをクリックしたときの動作を関数として外に出してそれを呼ぶようにする必要がある。

WebページのボタンをクリックしたときにUWSCを呼び出す事は出来ない。
Pro版を使ってGUIを作ったときの話は知らないんで本家で聞いてね。

 RANDOM(Range)      // 0 <=X <Range の範囲にある乱数を返す

select RANDOM(3)
 case 0
  data = "A"
 case 1
  data = "B"
 case 2
  data = "C"
selend
IESETDATA( IE, 1, , data )

配列を使ってもいいけどこっちの方が汎用的。
名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 00:43:07.89 :GBw32SmH0
近頃UWSCと関係ない、それ以前の構造文の基礎の質問だらけだな。
義務教育でプログラミングが採用されてからは習ってるはずだが?

chars[] = "A", "B", "C"
sel = 0
while true
 sel = random(3) // 0-2の整数
 IESETDATA(IE, 1, , chars[sel])
wend


VKABC[] = VK_A, VK_B, VK_C
getABC[] = false, false, false
for idx=0 to resize(VKABC)
 getABC[idx] = getkeystate(VKABC[idx])
next
resChar = ""
for idx=0 to resize(getABC)
 ifb getABC[idx] then
  resChar = chars[( idx + random(2) + 1 ) mod 3] //または
  resChar = CHR( ASC("A") + ( ( idx + random(2) + 1 ) mod 3 ) )
  break
 endif
next
名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 00:49:52.71 :iGnraarK0
ああ、AとかBとかCとかを押したらってのは文字通りキーボードの事だったか。
だけど呼び合う事が出来ないのは同じ。

UWSCでBをクリックすると、Bがクリックされた事を拾ってしまうから。
名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 07:48:43.41 :dTdK4kbH0
フラグ管理しとけばなんお問題もない
名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 09:45:35.27 :u85b+QZp0
> 近頃UWSCと関係ない、それ以前の構造文の基礎の質問だらけだな。
> 義務教育でプログラミングが採用されてからは習ってるはずだが?

高等学校情報B
ttp://ja.wikibooks.org/wiki/%E9%AB%98%E7%AD%89%E5%AD%A6%E6%A0%A1%E6%83%85%E5%A0%B1B

これいつ頃からやってんの?w
名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 10:40:01.59 :/xfC/q5R0
プログラミングってこと理解した方がいいよな
わからないならマウス記録機能だけ使ってろっての
名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 13:51:06.76 :WqxIqwX90
キーボードは使っちゃいけないの?コード組むよりショートカット使ったほうが捗ることもあるけど
名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 17:42:00.42 :7PGIvt+4P

こういうのってさ、英語と同じで教科書ばっかり進化しても
先生がそもそも知らんわけよ。
ヘタしたら親がPCいじりの好きな生徒の方が詳しかったりね。

もともと義務教育でベーシック言語みたいな項目がさらっとあったはずだけど
先生もまともに説明できないもんだから、歴史の教科書の後半並みに飛ばし読みで
終わりだし。
名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 17:46:26.77 :jYyFXJvx0
いつから高校が義務教育になったんだ
名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 18:36:16.98 :JYEaJHQV0
必死にP2使ってまで無知をひけらかすとか何がしたいんだろうな。
もう来るな。
名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 18:58:55.48 :W3exYdgUP
2chでp2バカにする奴は田舎もん確定
p2使うのはIP規制が頻繁にあるから
つまり人口が多い地域に住んでいる証明みたいなもん
地方じゃIP規制なんてならない
年がら年中IP規制なあ時なんて無い人はP2使う
田舎もんには信じられないだろうが
あるんだよね
年がら年中IP規制の地域
どこのプロバイダーに替えてもIP規制の多い地域は一緒一緒
結局人口密度だろ

無知をひけらかしたんでは無く
本人大真面目
お前にそういう時期は無かったの?
そういう時期だから質問するってさっしてやれよ田舎もん
名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 19:01:51.74 :eezGA68y0
安定の末尾Pw
名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 19:49:45.57 :F+f0ZyTmP

地方でもそうでなくても大手のISP使うのは変わらん気がするが?
名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 20:06:19.02 :uMbXUb3w0
ここ数日、回答もらったのにお礼すら書かない人が多いね
義務教育で礼儀を教えろよ>文科省
名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 20:28:48.71 :7PGIvt+4P
あれだ、年末でバタバタしてんだろ。
名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 21:19:17.75 :u85b+QZp0

基礎がないので貰った回答が理解できんのだろう。
名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 21:28:47.20 :jYyFXJvx0
2chなんかでお礼を期待するほうが馬鹿
名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 22:37:42.88 :DADWNRVk0
じゃあ、2chで回答を期待するのも馬鹿ってことになるな
名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 23:20:45.31 :jYyFXJvx0
そういうとこだろ
名無しさん@お腹いっぱい。 [sage] 2013/12/30(月) 23:21:59.65 :DADWNRVk0
じゃあ、もう回答も不要だな
スレ終了w
名無しさん@お腹いっぱい。 [sage] 2013/12/31(火) 01:33:01.85 :+kaZuARN0
期待するなってことなのに
どうして極論なのか
名無しさん@お腹いっぱい。 [sage] 2013/12/31(火) 02:11:17.39 :IabyV/GM0
ぶっちゃけ、くだらない質問に親切心で答えてやってるやつが
結果的に「荒らしに餌をやる構図」になってる。

答え教えてるやつが結果的にスレ汚しに加担してる形になってるわけだ。

テンプレ読まない、何がやりたいのか説明しない、作成途中のスクリプトすら書かないやつには
直接答えを教えず、道標だけ示せばいいかと。それか放置か叩けばそのうち懲りるんじゃね。
名無しさん@お腹いっぱい。 [sage] 2013/12/31(火) 13:23:17.63 :xO+kU/q10
「ぼくの考えた最強の2ちゃんねる」は過去現在未来において存在しません
名無しさん@お腹いっぱい。 [sage] 2013/12/31(火) 13:32:55.77 :S468KNLe0

それ、次からテンプレに入れるべきだね
名無しさん@お腹いっぱい。 [sage] 2014/01/02(木) 00:18:59.49 :ccFUumo70
は無駄だったと思ったんだけど意味あったよ。

環境引っ越して chrome-win32 を Program Files (x86) に置いてショートカットを設定しようとしたら
start コマンドじゃ登録できなかった。

ダブルクォーテーションが使えないんだな。
C:\Windows\System32\ にあるアクセサリは start コマンドでもいけた。
ただし、Windows 8.1 のスタート画面のショートカットではコマンドプロンプトは開くものの、アプリは起動しなかった。

Windows 8.1 は動作がきびきびしてるが、コマンド関係が不自由になってる。
名無しさん@お腹いっぱい。 [sage] 2014/01/02(木) 01:07:24.03 :o8PIdPa50
ウィルス対策だから仕方ないわな
名無しさん@お腹いっぱい。 [sage] 2014/01/02(木) 05:59:52.19 :ccFUumo70
いや、俺が間違ってただけだった。
ダブルクォーテーションのありとなしで動作が変わるからはまった。

詳しくは
ttp://anago.2ch.net/test/read.cgi/software/1278083626/876-877
ttp://toro.2ch.net/test/read.cgi/tech/1374205515/321-323

UWSCでもコマンドライン オプションでプログラムを指定して汎用的に動くようにしようとすると
ダブルクォーテーションをつけないと動かなかったんだ。当然と言えば当然だけど。

だけど、UWSCのスクリプトで直接実行ファイルを指定して動かせたから
start でも動くかもと試行錯誤する気になったわけで、まあ、意味はあった。
急ぐ場合でもとりあえず動かせるのがいい。

ちゃんと動くコマンドラインのサンプルがこれ。
C:\Windows\System32\cmd.exe /c start /affinity 5 "chrome" "C:\Program Files (x86)\chrome-win32\chrome.exe"
"C:\Program Files 3\uwsc\UWSC.exe" "C:\Program Files 3\uwsc\小物\SetAffinity.uws" "C:\Program Files (x86)\chrome-win32\chrome.exe"
名無しさん@お腹いっぱい。 [sage] 2014/01/02(木) 22:40:55.09 :zaHC9MQ50
バッチファイルユーザーは過去散々、
忌まわしい空白混じりパスに対しダブルクォーテーションで戦ってきたので
例え不要になったとしても省略したりなどしない。
ダブルクォーテーションで囲ってもいいなら是非囲う、それが漢ってもんだろ。
名無しさん@お腹いっぱい。 [sage] 2014/01/02(木) 22:47:48.33 :r85/cisY0
コマンドに渡すときだけダブルコートだね
変数定義でダブルコートつけてるやつはニワカ
名無しさん@お腹いっぱい。 [sage] 2014/01/02(木) 23:48:25.30 :34T51zIfP
いやぁ。パスは囲んじゃうね。
囲まないことでトラブることはあっても囲んで悪いことは無いし
習慣として囲むわ。
名無しさん@お腹いっぱい。 [sage] 2014/01/02(木) 23:56:15.83 :2HtQnuQy0
Program Files 何度MSってバカじゃねーのと思ったことかw
名無しさん@お腹いっぱい。 [sage] 2014/01/03(金) 00:37:45.86 :OcF3kY1E0
実はバカじゃなくて、独禁法違反の妨害行為なんだろうけどね。
今回の Program Files (x86) のカッコもわざとだろ。
自爆してるけど。
「Microsoft の使い方が誤っています」ttp://orangeclover.hatenablog.com/entry/20090903/1251988909
スレ違いだからこの辺にしておくか。
面白いネタをありがとう。
名無しさん@お腹いっぱい。 [sage] 2014/01/03(金) 17:53:21.05 :LYGpL4/d0
LFNの完全に正しい仕様
そりゃ20年経ってもLFNに対応しないのがおかしい
名無しさん@お腹いっぱい。 [sage] 2014/01/04(土) 20:15:04.45 :U27tC0SB0
質問させてください。
id = EXEC("notepad.exe")
と書いたuwsファイルを実行すると、問題なく新規メモ帳が開きますが
fid = FOPEN("D:\UWSC49\test.txt", F_READ or F_WRITE)
と書いてもtest.txtが起動しません。

念のためMSGBOX(GET_CUR_DIR)でテストしましたがtest.txtを置いている階層はあっていますし
ファイル名、フォルダ名共に間違いもありません。
何か他に考えられる原因などありますでしょうか?

win7proで使用しています。
すみませんがよろしくお願いします
名無しさん@お腹いっぱい。 [sage] 2014/01/04(土) 20:27:52.00 :lt87u3EU0
fopenはそういう用途に使うもんじゃない
名無しさん@お腹いっぱい。 [sage] 2014/01/04(土) 20:44:43.31 :AfeuS2620

何が聞きたいのかよく分からんけど、おそらくメモ帳でtest.txtを開きたいってことかな?
だったらexec("notepad.exe D:\UWSC49\test.txt")でいいと思うけど
名無しさん@お腹いっぱい。 [sage] 2014/01/04(土) 20:45:47.93 :Y6uX3Tpp0
fopenはUWSC.exeが自分でFGETしてFPUTしてFDELLINEしてFCLOSEするので
notepad.exeは必要ないし起動もしない

*.txtを関連付けで起動したいなら、DOSのstartコマンドを使う
c:\> start "Hello World" "D:\UWSC49\test.txt"
名無しさん@お腹いっぱい。 [sage] 2014/01/04(土) 20:55:53.72 :U27tC0SB0
皆様、レスありがとうございます。
fopenは、あくまで内部的に操作をするという事だったのですね。
私が考えていた動作はさんが書いて下さったものでした。
私の質問文が言葉足らずだったようで申し訳ありません。

回答ありがとうございました。
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 04:18:01.75 :uecPH+Nc0
とあるブログからコピペした↓を自分の環境で動かしてみたら

while True            //ループ開始
ifb CHKIMG("ball.bmp")   //もし、ball.bmpと同じ画像があったら
x=G_IMG_X           //xにball.bmpのX座標を代入
MMV(x, 770)          //座標(x,770)にマウスを移動(y座標は調整してください)
endif               //IFbの条件終了
WEND             //whileからここまでの無限ループ

KansuCall:モジュール 'UWSC.exeのアドレス 004FCD34 でアドレス00000000 に対する読み込み違反がおきました。
2行目:IFB CHKIMG("ball.bmp")
と表示されて動かないんだけど何が原因?
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 05:04:04.51 :AIY7SRvH0

画像がおかしいんじゃね?
24ビットカラーで保存してる?
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 05:30:23.89 :uecPH+Nc0

うん

試しに他の画像にしても同じエラーが出る
書き込む前にggってみたけど同じ様なエラーでてる人いないっぽいし
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 05:52:20.72 :RUQK6DJV0

じゃ、他の画像もおかしいんじゃね?
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 06:11:23.55 :uecPH+Nc0

小さくてわかりづらいかも知れないけど

ttp://uproda.2ch-library.com/747466sLR/lib747466.bmp
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 06:27:16.80 :bdZGvP5F0
晒せる範囲で環境晒してみたら?

自分はWin7x64環境のV2C(x64)で
設定した板を巡回するスクリプトでCHKIMG()を使っているが
特に問題ないよ

後、問題の切り分けのために
調査対象じゃない画面でCHKIMG()を使ってもエラーになるかとか調べてみるといいよ

要するに自分の環境ではエラーになるという現実を受け入れて
どこにその原因があるかを考えるのだ

UWSCのバージョンを変えてみるとか
再インストールしてみるとか
頑張れ
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 06:49:43.09 :uecPH+Nc0

バージョン下げてみたらエラーでなくなった

ありがとう
これで先にすすめるよ
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 07:05:09.19 :BC7rx3sd0

jpgやん
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 07:52:48.18 :rRy9nCfoi

専門馬鹿?

>そこまで言うなら金出してスクレイピングソフト買うなり製作依頼の仕事出すなりすべきじゃないか?
要求仕様の後出しはやめようね。

読んでわからない人?後出しせず最初に書いてるがな。
ソフト買うのは目的と違うし、自分は毎回買いながら言わないと筋違い。

>大量のデータ捌くのは、データ構造の設計して、
判定用マスタ情報も自動で読ませるのが普通。
じゃなきゃどんな方法使おうと無意味。しんどいに決まっとる。

それを最初から聞いてるのわからないかな?
結論「俺じゃ無理」とだけ書いておけば、的を射た回答だった。
何かうっすいし疲れるね。プログラム出来てもコミュ(ry

ただ、勉強にはなった。今後気をつける。
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 08:10:03.80 :rRy9nCfoi


遅くなってすいません。
参考にさせて頂きます。ワードを参考に調べてみますね!
ありがとうございました。
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 10:09:00.25 :CZaJ7SoX0
メモ帳に以下のようにあります

//文字列行数、名前、チーム,
//チームは必ず2人1組です

1山田,1
2,田中,2
3,佐藤,3
4,小川,2
5,高橋,3
6,西川,1
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 10:29:39.15 :+eNMVSJd0
宿題は自分でやりなさい
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 10:32:56.67 :6spSaAVu0
すみません、途中で送信してしまいました。

チーム1の山田さんはチーム2の田中さんのことが好きです。
チーム3の佐藤さんは同じチームの高橋さんが嫌いです。
他にも、チーム替えすべきことが幾つかあります。
相応しいチームに組み替えるCSV処理を教えてください。
なお、サンプルの人達は男子校を想定しています。
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 10:59:34.59 :Mqt93rqf0

作成依頼スレで聞いてください
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 11:03:18.70 :p22aiR/T0
腐女子の自動カップリンクスクリプトか?
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 11:06:29.26 :CZaJ7SoX0
すみません、気付かないうちに途中で書き込んでしまっていました。
聞きたかった事は、どの組み合わせが一番効率が良くなるか?という事です。
(組み合わせ=ペアです)

それではよろしくお願いします。 
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 12:56:06.91 :TUVWg/yo0

何も難しいことはない、速度を気にしなければループで処理するだけ、お前以外の誰でも出来る。
正規表現もお前以外だれでもできるが、各正規表現ライブラリの仕様制限がどこまでかに縛られる。
あとのワードはキーワードな。おまえは伸びない。
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 12:59:23.33 :0w/qSVoX0
IFB  …A
 IFB …B
  IFB…C
  ENDIF
 ENFIF
ENFIF

上記のようにIFBを入れ子にして上からA,B.Cとする
Aの式の条件を満たしてない時にBの式の条件を満たしても
Bのスクリプトは動作しないよね?
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 13:07:25.45 :CZaJ7SoX0

つかそんなの適当に計算なりカウントなり適当に動作させれば分かるだろ
ここで聞く事か?

自分の頭で何も考えられないゆとりは帰れよ
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 13:11:56.95 :GRZ6wbM60
そうそう。屑質問は徹底的に叩き潰せ。
少しでも情けをやると付け上がって俺たちを無料デバッガーか
UWSC版Googleのようにこき使うからな。
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 13:27:18.93 :0w/qSVoX0

最近始めたばかりで簡単な式で試験的に動作させるという発想がなかったわ
ありがとう試してくる
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 13:27:34.78 :4FXrkyqB0

なにがそれでは、だw
これはデータ構造と、数理計画・離散最適化の問題で、やればやるほど難しいし、
そもそも操作自動化スクリプトであるUWSCが目的とする課題ではない。
素のC言語やBASIC言語やJavaやらで勉強したほうがためになるよ?

//同姓同名を考えず、名前のみで一意な個人が特定できるものとする。
//同姓同名がいる場合は名前に対応するシリアルナンバーが必要。

//好き嫌いテーブル:名前、チーム,好き嫌い,対象の人,対象の人のチーム
//一人が複数の好き嫌い対象を持つことも可能
山田,+1,田中
佐藤,-1,高橋


//判定テーブル
山田,山田,-999
山田,田中,+1
山田,高橋,-1

田中,山田,…

このような総当り判定表を2重ループで自動生成。
各個人ごとにうまく配列に納めてソートすれば、各個人が誰と一番組みたいかまで判る。
更に、ある個人が一番組みたい誰かと、その誰かがその個人とどれだけ組みたいかの
判定ポイントを合算した配列をソートすると良いだろう。
想定通りにうまく判定させるには好き嫌い判定ポイントを絶妙に設定する必要がある。
また片思いや三角関係やストーカー関係まで判定するには更なる工夫が必要。

ちなみにこの分野はこういうのね。
ttp://www.secom.co.jp/isl/research/cs/report03/
これをBLのカップリングスケジュール問題として応用するわけかw
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 13:33:34.04 :B/Gq4CWU0

悪質な質問は完全スルーしろよ
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 13:33:47.66 :4FXrkyqB0
の訂正
//好き嫌いテーブル:名前、好き嫌いポイント,対象の人
//一人が複数の好き嫌い対象を持つことも可能
山田,+1,田中
佐藤,-1,高橋


だな。
RDBならクエリを連鎖させれば数発で出る。
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 13:34:11.35 :CZaJ7SoX0

おう、そのやり方はコード書く上では必須だから今後も使うといいぜ。

他には
FUKIDASI() とか、PRINT() なんかもデバックにはかなり使えるから試してみるといいよ
頑張れよ!!
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 13:35:33.28 :4FXrkyqB0

出来ないのに云々の捨て台詞阻止で
どれぐらい無理ゲーなのかを示してやっただけだよ。
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 13:36:22.53 :4FXrkyqB0

それハマったけど
FUKIDASI("hoge")
PRINT "hoge"
なんだよなぁw
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 16:45:08.57 :4FXrkyqB0
//このスクリプトはリファレンスに乏しいから、
//一々こうやって調べにゃならんのよ。

// FORのテスト

PRINT "FOR loop=0 TO 3"
FOR loop=0 TO 3; PRINT loop; NEXT// 0,1,2,3
PRINT "end of 'FOR loop=0 TO 3'"
PRINT "now loop="+loop+", out of loop." // ループ抜けた後も生存し、値は4
PRINT

PRINT "FOR loop=1 TO 1"
FOR loop=1 TO 1; PRINT loop; NEXT // 実行されんの?
PRINT "end of 'FOR loop=1 TO 1'"
PRINT "now loop="+loop+", out of loop." // ?
PRINT

PRINT "FOR loop=1 TO 0"
FOR loop=1 TO 0; PRINT loop; NEXT // エラー?逆方向にループ?
PRINT "end of 'FOR loop=1 TO 0'"
PRINT "now loop="+loop+", out of loop." // ?
PRINT

PRINT "test end."
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 21:17:20.58 :bdZGvP5F0
この言語に限らず
何か気になった時に実際に組んでいる途中のスクリプトだと問題点の切り分けがややこしくなりがちなので
最小単位の独立したサンプルを作成して試すってのは往々にして必要だよね
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 21:21:45.16 :Kggkpa/w0
つ オブジェクト指向
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 21:22:06.17 :izEOBSmY0
だな、自分はforの変数がループ内で変更出来ないのでハマったわ
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 21:46:31.53 :4FXrkyqB0
お、テストにソレ忘れてたと思って書いてみたら
俺の認識を更に改める結果になったw

FOR loop=0 TO 5
  IF loop=2 THEN loop=3
  PRINT loop
NEXT

UWSCの仕様だと
0, 1, 3, 4, 5
0, 1, 2, 3, 4, 5
0, 1, 3, 3, 4, 5
どれでしょうか?
こんな事がHELPに仕様、書かれてないのがUWSC
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 22:05:10.40 :FYJIQhJu0
それはそれとして
for文のループ変数を途中で弄るよう奴が書くコードなんて読みたくないな
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 22:29:50.77 :p22aiR/T0

HELPにキチガイの間違い集とか要らないんで
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 22:55:02.34 :4FXrkyqB0
jpcertのセキュアコーディングスタンダードなどのコード規約や
コーディング作法でならば非推奨でも、
仕様に書いていない、何の規格も規約も無いスクリプトで、
禁止されていない書き方をしたのだから、間違いではないなw
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 23:06:37.65 :bdZGvP5F0
うーん、HELPをど親切にしろとは言わないが
例えば GETKEYSTATE() は瞬間値では無いという説明が無いのは良くないと思うぜ
While等のループ脱出に使いたい場合空呼びが必要ってのは地味にハマる
名無しさん@お腹いっぱい。 [sage] 2014/01/05(日) 23:39:35.23 :+eNMVSJd0
基本もっと親切にっていう人は他のプログラムにさわったことない人なんだよな
ヘルプにUWSCとは別の部分のリファレンスがわからないから説明載せろとか(APIとかDLLとか)
名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 00:20:50.84 :v0tRZf2D0
>935
While等のループ脱出に空呼びって、どういうこと?
ループ中に入れたsleep()にgetkeystate()を押したらダメということ?
名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 00:53:37.44 :Yt+Bs/7Y0

GETKEYSTATE() は過去に指定したキーが押下されたか判定する関数なので
例えば無限ループをESCキーで脱出したい場合は

GETKEYSTATE(VK_ESC)
While True
if GETKEYSTATE(VK_ESC) then exit
//適当な処理
WEnd

ってしていないとダメ
長いスクリプトで起動からループまでの間に VK_ESC が押されていたら 適当な処理 が動作しない
なのでWhile前に ESCキーの押下判定を一旦クリアする必要があるの
名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 01:03:46.60 :Krcr01vp0
長い処理させる時には普通キー用の自作関数作って並列処理(厳密には並列処理していないが)させるだろ
名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 01:45:44.74 :v0tRZf2D0
>938
初めて知った。
今まで、ループ前にキー押下げクリアなんてしたことなかった。
ありがとう。
名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 01:46:36.63 :+eI3fzs30

なるほど直前にバッファークリアが必要なんだね。
組み込み系のプログラミングに似てるな。
参考になったわ。


長い処理させるときに並列処理で補助するかしないかはスタイルの一つであって
普通かどうかは自明ではないよ。
キー用に限らずあらゆる事を自作関数にして抽象化すること自体は普通だけどね
名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 07:56:18.49 :Z43t07Si0
ttp://msdn.microsoft.com/ja-jp/library/cc364583.aspx
名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 08:02:39.22 :ARjq633PP

ハマったわー。
ググったら例のせてくれてる人がいてすぐ解決したけど
名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 08:39:05.70 :+eI3fzs30

やっぱりな〜
「GETKEYSTATEのその他の仕様はMSDNと同じです」
などと書くか、
そのページを丸ごとコピペでもして置いてくれればよかったのにね。
名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 08:41:50.20 :+eI3fzs30
ってかそもそも、仮想キーコードからしてそうだよな。
「A」が「VK_A」なのも「VK_A=65」なのも、一切書いてないし。
もはやそれがUWSCらしさだよ。
名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 08:52:16.61 :cZ4NkHVk0
HTML の話だけど
ドラッグ&ドロップで受信する方法は何がいい?

HTML5 の ondrop を見てるけどうまく動かん。

IEの空ページにドロップして BeforeNavigate2 を受け取ってキャンセルが一番確実かなと思う。

ondrop とか FileAPI 関係見てると HTML と Javascript だけで行けそうと思ってしまうけどダメなんだな。
確かに megaupload とかはやってるっぽいんだけど・・・
名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 14:39:48.19 :N4SpDzR00
ゲームが起動してる時だけUWSCで画像が認識されなくて、
ゲームの起動をやめれば画像をちゃんと認識してくれます・・・
ゲームを起動しながら画像を認識してくれるようにするにはどうすれば良いですか?
ちなみに仮想マシンのwindowsXPです。

ゲーム起動時の画像と、そうでないときの画像をPrtScnで保存し、拡大して見比べましたが
両方一致しました。
けどなぜかゲームを起動しているときだけ画像認識が動いてくれません。

メインpcはちゃんと動きます
仮想のwin7も動きます xpのだけ動かなくなりました。
名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 14:51:03.03 :Nift5gto0
本気で解決したいならこれ以上書く事無いと思えるまで情報を書け
情報不足

Aの可能性もあるがBの可能性もある。けれどCという場合もあるしDを試すのも良いかもしれん
…という回答でいいなら別だが
名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 15:02:09.91 :t8gval8A0
win7で記録しようとしても「保存すべき有効なデータがありません」と出て
保存できない症状なんですが、FAQにある他の常駐アプリを消しても
UACのレベルをあわせ?ても(管理者で実行等)、症状が改善されません。

他に何か考えられることはありますか?
ちなみについ先日購入したばかりの新しいPCです。
今まで他のPCでは使えていたのですが、新しいPCに乗り換えてから
記録できない症状が出ました。何かしらのセキュリティに引っかかってるの
でしょうか?セキュリティソフトはESET使ってます。
名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 15:24:27.45 :Ev3dFHii0

設定-記録方法-低レベル記録
名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 15:47:31.64 :t8gval8A0

低レベル記録になっていますね・・
名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 16:13:04.21 :Ev3dFHii0
セキュリティソフト全部切ってnotepad等の記録を試しても出来ないのならもう誰も判らん
名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 16:22:39.58 :Yt+Bs/7Y0
確か記録に必要なのは RecUws.dll だけど同梱されているから
とりあえずUWSCの破損を疑った方が良いので再DLしてみたらどうかな
後、環境との相性の可能性も無くはないので過去バージョンも含めて色々試してみると良いかも
名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 19:28:05.66 :lz3428n30

「設定」−「記録後クリップボードへコピーする」にチェックを入れて
メモ帳にコピペでもだめ?
名無しさん@お腹いっぱい。 [sage] 2014/01/06(月) 21:50:09.71 :E/Kpd+Tq0

ゲームがdirect xで画面かいているか、そうでないか程度は最低限書いた方が良いな。
俺は、それ聞いても分からんけど
名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 00:07:58.21 :gWrRYOEB0
=
皆さんレスありがとうございます。
クリップボードへコピーでもコピーできてませんでしたので
先程バージョンを下げて試したところ無事記録できるようになりました。
相性の問題なのかわかりませんがひとまずこれで
やっていこうと思います。
ありがとうございましたm(_ _)m
名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 08:33:58.44 :FtwaQqTr0
Windows8.1 + IE11 でリンクをドロップしようとしてるんだけど
通常起動したIE11ではドロップを受け付けるのに
UWSCで起動したIE11ではドロップを受け付けてくれない。

同じファイルで同時に起動しててもそれぞれ違う動作をする。
タイトルバーにすらドロップできないから移動できない。

動作環境変えて動いたとしてもめんどくさいな。

試しに CreateOLEObj("InternetExplorer.Application") を
exec( IEPath + HTMLPath )
GetActiveOLEObj( "InternetExplorer.Application", Title )
に変えてやってみたけどダメだった。

バッチファイルから IE と UWSCを呼び出したら成功。
だけど、start で呼び出さないとコマンドプロンプトが残る。
start使ったからか、カレントディレクトリが変わってしまうので . が使えない。
TIMEOUT はHTMLのタイトルが設定されるまで待つため。

-- test2014_010.bat --
set CURDIR=%CD%
"C:\Program Files\Internet Explorer\iexplore.exe" "%CURDIR%\test2014_009.htm"
TIMEOUT /T 3 /NOBREAK
start "UWSC" /b "C:\Program Files 3\uwsc\UWSC.exe" "%CURDIR%\test2014_010.uws"

同じタイトルのIEが起動してると失敗するから、
IE起動前に同じタイトルのウィンドウを閉じるかリスト化して渡すといいかもしれんがめんどくさいな。
でも確実に動いてほしいから閉じることにするか。
名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 11:06:27.94 :NfQOr1I/0
DOSCMDとかDROPFILEは使わんの?
名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 12:12:44.13 :FtwaQqTr0

DOSCMD は戻り値がコマンドが出力した文字列だから意味がない。
やってみたけどやっぱりドロップを受け付けなかった。
DROPFILE はドロップ操作を自動化するものだけど、ドロップされたファイルを処理するものではないし。

そもそもIE起動時に HTML を渡すのはタイトルを指定することで他のウィンドウと区別するためだし。
今やってみたら IE を閉じないと進まなくなったんで START で起動するように変更した。

GetActiveOLEObj の前に GetID() で 見つかるまで待つ(-1)を指定したら、TIMEOUT はなくしても大丈夫だった。

GetID( Title, "IEFrame", -1 )
IE = GetActiveOLEObj( "InternetExplorer.Application", Title )


affinity を指定したとき、UWSC の affinityMask が起動後のアプリに引き継がれたことを考えると、
UWSC本体がドラッグ&ドロップを受け付け・・・・るよな。
なんでこんなことになるのか分からんけどできる方法が見つかったからまあとりあえずおk。
名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 14:05:27.53 :FtwaQqTr0
ダメだ。
バッチで起動して GetActiveOLEObj だと、ページが遷移したときに OnQuit が飛んできて
BeforeNavigate2 の URL も ”about:blank” になってしまう。
キャンセルフラグをセットしてもキャンセル出来ない。
IEの画面では普通にドラッグされたページが開いているのに。

しかも、そのあと IE を終了すると OnQuit を受信してるし。

ログ
start
get
OnQuit
getNavigateURL : about:blank
getNavigateURL : no match : about:blank
OnQuit

あ、IEの保護モードのチェックを外したら普通に動いた。

ややこしい。
名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 14:42:21.78 :QzAVQZuY0
ファイルのドロップだと、ondropでフルパスは得られないからBeforeNavigate2イベントなんだろうけど
ウェブページのリンクをドロップなら、JavaScript側からURLを読み取れるでしょ
名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 15:49:44.75 :B4h7jA6Z0
FGETでメモ帳から数値を読み取り1行目の3列目と6列目の数値を計算させようとしました。
数値A = FGET(ID, 1, 3)
数値B = FGET(ID, 1, 6)

計算結果 = 数値A + 数値B 

を計算したいのですがエラーが出て上手く計算できません。
エラーは"型があっていないorオーバーフローです"と表示されます。
数値A数値Bはともに小数点以下3桁まであります。
良くわからずググった結果、型が合っていないとエラーが出るのは文字列型になっているのかな?と考え
AAA = VARTYPE(数値A, VAR_DOUBLE)
と試してみましたが違うエラーが出ました。
"OleStr型からDouble型へのバリアント型変換はできません"

・FGETで参照した値は全て文字列扱いなのでしょうか?
・小数点以下3桁までの計算を行う方法があるでしょうか?

知識不足なので、質問内容自体、変な事を言っていたらすみません。
名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 16:07:10.65 :B4h7jA6Z0
962です。
自己解決しました。解決方法がuwscのヘルプに乗っていたのを見落としていました。
スレ汚しすみませんでした。
名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 16:38:20.73 :AAKW+iTv0
質問掲示板で嫌われるタイプ。
・教えてもらった知識は俺のもの。俺が自力で気付いた知識は俺だけのもの。
・質問の仕方の不備を指摘されると逆ギレ。
・自己解決しました、のことを、自決しました、と書いて命を無駄にする奴。

故意ではないだろうが1番目のやつに該当。
名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 16:41:46.70 :aBW4r/WR0

意味わかんね、安価させよ
名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 16:53:14.63 :FtwaQqTr0

目的がファイルのダウンロードなんだけど、普通は「名前を付けて保存」ダイアログを操作する必要があるから
JavaScript で自動ではできない。

FileAPIはよく分からん。
名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 17:10:06.88 :B4h7jA6Z0
です。で自己解決したと書きましたが、その内容です。
数値A = FGET(ID, 1, 3)
数値B = FGET(ID, 1, 6)
計算結果 = 数値A + 数値B
では、"型があっていないorオーバーフローです"とエラーが出ましたが

計算結果 = VAL(数値A) + VAL(数値B)
とする事で問題なく計算が行えました。
小数点云々の私の質問は自分の勘違いだったようで、整数でも少数でも計算可能でした。

・FGETで参照した値は全て文字列扱いなのでしょうか?()
の質問は、これはuwscのヘルプの#n21に該当していました。以下引用です
>数値を COPY、POS、CHGMOJ、GETSTR関数等で取得して 数値演算したいのだが文字演算になる  #n21
>>文字操作関連の関数は戻り値として文字列を返す為です。
>>VAL関数を使い数値にする必要があります

helpにも載っていた事でしたので、あえて詳しい内容までは書きませんでしたが
は恐らく自分に対しての指摘だと思いましたので、内容を書かせていただきました。
質問時のマナーを知らず、不快にさせてしまっていたら本当にすみませんでした。
以後気を付けたいと思います。
名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 17:54:55.00 :AAKW+iTv0

やっぱVALか、おつかれw
名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 18:03:06.58 :wCiKvcnI0
exeを起動したいのにexec関数で起動しません。どういうこと?
EXEC("C:\Program Files (x86)\hoge\xxx.exe")

仕方なくデスクトップのショートカットをクリックという方法で代用してます。
CLKITEM(GETID("Program Manager", "Progman", 1), "abc", CLK_LSTVEW or CLK_DBLCLK)

環境はwin7(64)です。
名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 18:20:49.53 :QzAVQZuY0
× EXEC("C:\Program Files (x86)\hoge\xxx.exe")
   ↓
○ EXEC("<#DBL>C:\Program Files (x86)\hoge\xxx.exe<#DBL>")
名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 20:27:26.65 :A30Yirm20
IE11に自動アップデートされてしまった
busywaitを公式FAQのに変更しただけじゃ昔通り動かなくなった
ctrlwinで最大化する処理省いたら直ったけどなんだったんだか
名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 21:10:21.86 :pbwF3a880
現在のマウスカーソルの位置情報を取得した後に指定箇所をクリック
その後もとの位置にマウスカーソルを戻すにはどうすればいいでしょうか
名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 21:27:28.38 :8nOZyfS+0

現在のマウスカーソルの位置情報を取得
↑の座標にmmvすればいいだけでは
名無しさん@お腹いっぱい。 [sage] 2014/01/07(火) 21:50:07.66 :lIdyOim40

同じwin7(64)だけど、問題なく起動できる(IE、Chrome)
何のプログラムか分からないけど管理者権限で実行とかじゃないの?
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 01:57:44.22 :QRJpD11F0
fizz buzzができない
教えて
for i = 1 to 100

print i

next
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 02:21:12.37 :QRJpD11F0
ここまで出来たけど、fizz buzzがうまくいかない

for i = 1 to 100
if int(i/3)=(i/3) then
print "fizz"
elseif int(i/5)=(i/5) then
print "buzz"
elseif int(i/3*5)=(i/3*5) then
print "fizz buzz"
else
print i

endif
next
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 02:29:56.29 :t9zaTET30
fizz buzz問題って教えてもらうものか?
特に縛りがなくてシンプルなコードにするなら MOD 使うといいよ
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 02:32:15.93 :QRJpD11F0

modなんて関数ない
教えてくださいじゃないと寝れないです
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 02:34:35.56 :t9zaTET30
関数じゃなくて演算子
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 02:54:37.13 :u/wf6nTj0
ひどいコードだな
そもそも最初のif文に包含されてるから動くわけないんだが
インデントくらいつけろよと
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 03:19:51.80 :EAgfSN4R0
modなんてエクセルにもあったろエクセルのヘルプみろって…
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 03:41:32.63 :h9lX67Zz0
変数を理解して無いクズと見た
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 03:45:31.69 :opUgv9RQ0

がんばれw

プログラムの基本ならCかJavaの入門書で勉強するのがお薦めだよ
アルゴリズムの基礎も探索やソートを分かりやすく解説した書籍があるし
WEBで評判の良い物を何冊か探して、実際に大きな書店に行って
自分に合いそうなもので学習しなよ
特にアルゴリズムの基礎は今後UWSC(その他プログラム言語)を使う上で
学習しておいて損はない

あとhelpを読むのは基本だよ
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 03:49:44.84 :opUgv9RQ0

スレが1000に近いのでとりあえず作ってみた

for i = 1 to 100
ans = ""
if !(i MOD 3) then ans = "Fizz"
if !(i MOD 5) then ans = ans + "Buzz"
if ans = "" then ans = i
print ans
next
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 03:53:39.82 :opUgv9RQ0
インデントが消えてしまったorz
全角スペースじゃないとダメなの忘れてました、ごめんね
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 07:46:17.97 :ohh50qT+0
これ解答なんてキリないぞw
ttp://codezine.jp/article/detail/7546
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 08:05:01.66 :t9zaTET30
もともとプログラマの個性や言語仕様に対する理解や閃き的な部分を評価するための問題だからね
ぶっちゃけ答えそのものは説いた人の数だけあると言っていい
なので「教える」もんじゃないのよ
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 08:25:26.58 :ohh50qT+0
S="FizzBuzz";FOR i=1 TO 100;PRINT i+":"+COPY(S,(i MOD 3)*9,4)+COPY(S,5+(i MOD 5)*5,4);NEXT
90文字
957 [sage] 2014/01/09(木) 10:17:56.83 :Jp4PcdDZ0
どうもうまくいかんからいろいろいじってたけど
Javascriptにバグがあるとまったく反応しなくなるんだな。

if 文の判定のかっこを忘れても警告とかないし
オブジェクトを間違って使っても警告なし。

UWSC からも Javascript からもソースをいじろうとして反応しなくなったからなんだろうと思ったら
そういうことらしい。
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 10:34:31.68 :haB4wTeX0
UWSCから外部モジュールを使うんじゃなくて
外部モジュールからUWSCを使えさえすれば
全て問題ないのにね
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 11:33:22.88 :FI6wHjFI0
dim a[]=0,"Fizz","Buzz","FizzBuzz";for i=1 to 100;a[0]=i;print a[(i mod 5=0)*2+(i mod 3=0)];next


エラー表示するかどうかはブラウザの設定次第だよ
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 13:14:00.37 :hFz7Kd3R0
次スレ立てますよ
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 13:19:29.38 :hFz7Kd3R0
次スレ
自動化ツールUWSC使いよ集まれ11
ttp://anago.2ch.net/test/read.cgi/software/1389240960/
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 14:05:28.21 :n9nCZ7V20

名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 15:05:11.72 :3HQ+L1tS0
1
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 16:27:17.06 :Jp4PcdDZ0

おつ
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 17:03:55.73 :kaf0rJYM0
1
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 17:29:06.52 :t9zaTET30
うめうめ
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 18:42:03.05 :aUvaeWPw0
名無しさん@お腹いっぱい。 [sage] 2014/01/09(木) 18:42:36.91 :aUvaeWPw0
5年ぶりの1000!
1001 [] Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。

勢い5万以上のスレをメールでお知らせするサービス、実施中!!
憧れボディをGETしたい!その夢、ボニックで!

2ch勢いランキング アーカイブ ソフトウェア板ランキング

凡例:

レス番

100 (赤) → 2つ以上レスが付いている
100 (紫) → 1つ以上レスが付いている

名前

名無しさん (青) → sage のレス
名無しさん (緑) → age のレス

ID

ID:xxxxxxx (赤) → 発言が3つ以上のID
ID:xxxxxxx (青) → 発言が2つ以上のID

このページは2ch勢いランキングが作成したアーカイブです。削除についてはこちら