1 :
名無しさん@お腹いっぱい。 :
2006/08/24(木) 19:54:44 ID:x9yegvov0
∩ ミミ ヽヽヽヽリリノノノノノ || ミ ,,、,、,、,、,、、,、,、、 彡 || l i''" i彡 /〔.| 」 ⌒' '⌒ | 〔 ノ´`ゝ <・> < ・> | ノ ノ^,-,、 ノ( 、_, )ヽ| /´ ´ ' , ^ヽ ノ、__!!_、| ・・・と、村上に伝えておけ。 / ノ'"\ ヽニニソ | 人 ノ\/ ^ ノ / \_/\ヽ、 / \ / / \ `ー── '/ ヽ / ─── / ヽ
5 :
名無しさん@お腹いっぱい。 :2006/08/26(土) 22:16:06 ID:oQgKw5Cw0
話題が無いので、誰かがお題を出して、 そのお題を美しく実現するスクリプトを考察してみまいか? windowsデフォルトのアプリ以外は基本的に使わない事が前提になってしまうが
chkimgってThread使っても排他処理なのか・・・
たぶん便利なんだろうが敷居高すぎて手が出せないな。うん。
9 :
名無しさん@お腹いっぱい。 :2006/09/04(月) 15:47:23 ID:zmbyospj0
スクリプト晒すって手もあるけど 汎用スクリプトってほとんどありえないよな、これ。 個人が自分のマイナーな環境でこんなの使ってます、ってぐらいか。
10 :
名無しさん@お腹いっぱい。 :2006/09/05(火) 10:02:37 ID:G4SO6/DD0
質問させてください。 チケットだったり、楽天とかみたいに、 午前○時になったら、発売開始みたいなショッピングHPで その時間になったら、自動で手続きをしていくみたいなスクリプトって 作ることは可能ですか?
全く問題無いな 時間前からアクセスして、買うのが可能になったら買うとかも可能。 もろそのためのソフト
12 :
名無しさん@お腹いっぱい。 :2006/09/05(火) 19:42:53 ID:oAZxVHH70
>>11 ありがとうございました。
全くの初心者ですが、挑戦してみたいと思います。
今日、Windowsマクロテクニックという本を買ってきました。
この本を手本に少しづつ勉強してみたいと思います。
ちなみに、僕が使用としてることは、結構難しいことですか?
難易度は高いのでしょうか?
KBD(VK_F1,CLICK,40) 最後の40ってゆうのは何なんでしょうか?
>>13 ヘルプくらいみようぜ。
そんなスクランブル解除できない自分に萎え
>>12 俺もさっきアマゾンで予約した。
お互い頑張ろうぜー!
>>12 調度いいんでないかな。その本買ってみたけど割と良かったよ。ガンガレ
本にも書いてあったが、パーツは細かく作るといい。
1.HPをリロード
2.中身確認(販売開始したかどうかのキーワードだけ検索)
開始してたら3へ
開始してなかったら少々waitして1へ
3.各要素に情報を入れて投稿
4.終了
と作って、「1〜4を実行するマクロ」を作って時間実行に登録しておくのが普通?
HPアドレスと2の一部を変更すれば、3の変更だけでどんなものにも対応可能。
商品名をダイアログボックスにすれば、同じwebサイトでは使いまわせるとか、工夫すると限り無い。
>>14 ヘルプ見たけど多すぎてどこにのってるのか分からん
分かりやすく教えて
へ へ|\ へ √ ̄| ( レ⌒) |\ ( |\)| |/~| ノ ,__√ |\_/ /へ_ \) | | | |∠ | |__ / ̄`> _, --、 _ \_./| |/ \ .| |( ̄ _) | ) /~ ̄~'i /~ ̄~'i/~ ̄  ̄~7 /  ̄ ̄ ̄ ̄ ̄,/ / / ̄~ヽ ヽ. | | フ ヽ、 ノ √| | ./ ././ /l,,,,,,, ,,,,,,,ノ、._.{____ ./ / /| | | | | |( ノ| |`、) i ノ | | { ノ/ ./''~ ̄  ̄7~ `ヽ _/ / | | | | / / | | . し' ノ ノ | | _,~二'-'~ /ヽ、, .,,ノ,ヽ-、 ./,_.l ̄ _ノ \\ノ | / / | |___∠-". | | /~ ,/ ,,-' .//~ ̄ ̄ ~`>/ r-''~ \_ノ_/ / (____) し',/_,,,,,,,,,、 ---ー'~''''~~~~~~~~~`''''ー-------'''''~ ./ ∠-''~ ~/ * O K O T O W A R Y C U R E +_,,,/ ./ _,,,,、 -一一''''''''''''''''''''''ー--------一'''~ ./_,, -ー''''~ ./-~
クリップボード上の複数行文字列を一行ずつ配列要素にしたいんだが...
UWSC4.0dなら楽
21 :
19 :2006/09/08(金) 02:45:09 ID:OUmrZBpt0
とりあえず分からんので一度ファイルに書き出して 一行ずつ読み込むという不毛なことをしていて...
改行コード検索すればいいだろ? POSとかTOKENとか使えないか? A= ”あああ<#CR>いいい<#CR>" SENDSTR(0,A) //クリップボードへ A= GETSTR(0) //クリップボードから WHILE(A<>"") PRINT TOKEN(”<#CR>”,A) WEND 試してないが。
カッコつけすぎた。失敗。 訂正 WHILE A<>""
よく知らないんだけど、 これってWSHやVBAで出来ないことが出来るとか、 より便利だとかってあるの?
まずWSHやVBAで出来ない事を上げてくれないか。
26 :
19 :2006/09/09(土) 13:37:19 ID:607dzFbo0
>>22 サンキューTOKENはこういう時に使うのか!
WHILE A<>""
PRINT TOKEN("<#CR>",A)
TOKEN("<#CR>",A)
WEND
で良い感じでした。精進します。
27 :
名無しさん@お腹いっぱい。 :2006/09/10(日) 22:51:44 ID:ldg6iOEZ0
UWSC 旧バージョンをダウンロードできるサイトってありますか?
web archiveは?
29 :
>>27 :2006/09/11(月) 02:00:46 ID:A4Etdx200
GJ
ダイアログにフォーカスがいかない場合があって、失敗するんですけどどうすればいいですか? 具体的には、IEでファイルをダウンロードする場合の、「保存する」ボタンで、XPです。
ターゲットダイアログ キャプション=名前を付けて保存 Class=#32770 ※親ウィンドウ キャプション=ファイルのダウンロード Class=#32770 ※親ウインドウ=なし 可視=TRUE 有効=FALSE
execで起動先にパラメータ渡す事ってできます?
>>33 できる。
けど、そんなことくらい、やってみればわかるだろうに。
35 :
名無しさん@お腹いっぱい。 :2006/09/18(月) 08:33:18 ID:tp2NSRu10
>>7 排他したくなかったら別プロセスで起動すればよい。
既定の接続使って 自動でネットに繋げる&切断する方法ってある?
ちょっとでかいテキストファイルを扱うと簡単に重たくなるorz やりたいこととしては単純にテキストをファイルに追記したいだけなのだが… あと関数名のスコープもよくわからん。 関数をまとめた共通ライブラリみたいな使い方をしようとする場合、例えば "callするuws" "callされるuws"の両方で気兼ねなく call させたい場合、 循環参照以上に気を揉まなくてはならないのが少々辛い。 うまい解決手段はないだろうか 昔から使わせてもらっているけど、皮肉なことに便利で素晴らしいが故に 細かいアラが目立ってしまう(´・ω・`)
質問です。 ペンタブレットを使用するペイント系ソフトでUWSCを使用しようとしているのですが、 BTN命令で直接ウインドウをクリックする操作が、 マウス使用時は問題なく動作するのに、ペンタブレット使用時は、うまく動いてくれません。 (そのBTNを行うタイミングにペンをタブレットの外に出すと正常に動作します) 推測ですが、ペンタブレットはマウスよりもコンスタントにカーソル位置情報をPCに送っていて、 その情報とBTN命令からの情報がカチ合って目的の動作をしてくれないという感じです。 一時的にペンタブレットからのカーソル位置情報を無視する方法はないものしょうか LOCKHARDはやってみましたが、うまくいきませんでした。
>>39 Call はインクルードと一緒。
呼び出されたスクリプトは呼び出し側イメージにマージされる。
ライブラリはエディタであらかじめマージして一本プログラムにした方がいい。
あるいはライブラリの関数呼び出しは諦めて
Exec uwsc.exe xxx.uws p1 p2 p3という感じでパラメータ渡しで
必要な機能を呼び出すようにするとか。
42 :
名無しさん@お腹いっぱい。 :2006/09/24(日) 09:45:19 ID:MI2R6VEW0
UWSCのVer3.0前後の英語バージョンってもう手に入りませんか?
>>41 やっぱりそれしかないでありますかorz
execするとオーバーヘッドが大きすぎるし、
一本化するとライブラリのバージョン管理の手間がorz
using句とか創設してくれないかなぁ…
>>42 バイナリリポジトリにもないっぽい
最近のバージョンでは駄目なのかい?
>>43 無料コンパイラでDLL作るだな。
あと、AUTOITを試すとか。
俺はUWSCではあんまり複雑な事はしない主義。
自動操作する対象を除いてはUWSC.EXEとスクリプト1個で
全て賄うのがこのソフトを使う肝と思ってる。
>>44 >無料コンパイラでDLL作るだな。
は仰るとおり大仰に過ぎるかと(;´∀`)
今ところは一本化をしているのですが、
やはり事実上の選択肢はこれくらいしかないみたいですね。
ありがとうございました。
おまいら難しいことばかり言うなよ〜。とても分からないじゃないかー
>>39 ログとかかな。ちょっと試してみたけど、copyコマンドより遅いね。
-test.uws-
fid = FOPEN("b.txt", F_WRITE)
FPUT(fid, "test test")
FCLOSE(fid)
EXEC("a.bat", TRUE)
-a.bat-
copy /b a.txt+b.txt
--
こんなのどう?
>>47 その手があったか!気がつかなかったよ!
bat用意しなくてもDOSCMD関数使えばよさげやね
ほんとありがとう!
>>39 そのためのクラスなんじゃないの?
newできないクラスなんて、namespace代わりに使うぐらいしか
利用方法が思いつかないんだが。
50 :
名無しさん@お腹いっぱい。 :2006/09/28(木) 18:14:53 ID:sIrPOmIv0
座標(190,100)が黒くなると{8}を押すマクロを誰か組んでくれないか・・ orz
IEで特定の文字が出たときにボタンをクリックする方法ってある?
>>50 PEEKCOLOR(190,190) を使えばおk
IFB PEEKCOLOR(190,190) = 0
KBD(VK_8)
ENDIF
とかか?適当だが・・・
>>51 COM使えばおk
COMはヘルプとかにサンプルがあるからそれみればいい
あとは少しHTML/JavaScriptの知識がいる
とほほのWWW入門でぐぐれば両方とも解説されてる
他にもやり方がありそうだけど、すぐにはわからないや
ちがってたらごめん
負荷が大きかったりすとちゃんと動かないというのに やたら言語仕様を拡張されてもウンザリすんだが。
↑
>>50 と同好か?
書いている意味がさっぱりワカラン。
せいぜい仲良くしろ。
56 :
名無しさん@お腹いっぱい。 :2006/10/02(月) 12:29:00 ID:VK84fyQu0
57 :
名無しさん@お腹いっぱい。 :2006/10/04(水) 16:23:41 ID:mTVBsp4v0
設定でスケジューラーで設定したのがパソコンの電源オンオフしたら スケジューラーの設定が消えてた。ばぐ?
58 :
名無しさん@お腹いっぱい。 :2006/10/04(水) 17:45:53 ID:XlU0S/VK0
マウスの左クリック右クリック中クリックをキーボードでできのないのでは、 プログラムが作りにくい。
( ^ω^)?
60 :
名無しさん@お腹いっぱい。 :2006/10/06(金) 10:12:08 ID:5m00SAfb0
キーボドやマウスの操作をパソコンに覚えさせるのは面白いソフトだけど もう少しわかりやすくならんかな。
1度実行したマクロを停止→再度実行すると激遅くなるバグを改善してほしい
62 :
58 :2006/10/06(金) 11:56:50 ID:kld74IFI0
// マウス移動 MMV( x, y, [ms] ) 引数 x, y: 位置 ms: 実行までの待ち時間 (ミリセカンド) -------------------------------------------------------------------------------- // マウスボタン BTN( ボタン, 状態, [x, y, ms] ) 引数 ボタン: LEFT(0), RIGHT(1), MIDDLE(2) 状態: CLICK(0), DOWN(1), UP(2) x, y: 位置 (省略時は現在位置にて)
63 :
58 :2006/10/06(金) 12:03:22 ID:kld74IFI0
saveHTMLTo("
http://www.yahoo.co.jp ", "yahoo.htm");
procedure saveHTMLTo(url, filePath)
e = CREATEOLEOBJ("InternetExplorer.Application");
e.navigate(url);
while e.busy = true or e.readyState <> 4; SLEEP(0.1); wend
fileOutHTMLTo(e.document.parentWindow.document, filePath);
fend
procedure fileOutHTMLTo(document, filePath)
fileID = FOPEN(filePath, F_WRITE);
ifb fileID <> -1 then
FPUT(fileID, document.body.parentElement.outerHTML);
FCLOSE(fileID);
endif
fend
64 :
58 :2006/10/06(金) 12:21:38 ID:kld74IFI0
id = exec("notepad.exe") acw(id,50,50) sleep(1) acw(id,100,100) sleep(2) acw(id,0,0) //ノートパッド起動後左上に行く
65 :
58 :2006/10/06(金) 16:24:33 ID:kld74IFI0
// RANDOM(Range) 0 <=X <Range の範囲にある乱数を返す print RANDOM(6)+1 さいころプログラム
うぇぶの取得にIE使わなくてもいいだろ。 と、思いました●
67 :
名無しさん@お腹いっぱい。 :2006/10/07(土) 23:52:34 ID:EDQj6l5g0
exec("C:\Program Files\Internet Explorer\IEXPLORE.EXE") webページ開く
68 :
名無しさん@お腹いっぱい。 :2006/10/08(日) 00:13:41 ID:fcriUCip0
入力した文字を吹出しで表示する KAISU = INPUT("何か入れてください") FUKIDASI(KAISU, 100, 100, 0, 30) SLEEP(10)
69 :
名無しさん@お腹いっぱい。 :2006/10/08(日) 00:59:05 ID:fcriUCip0
プログラムの命令を日本語でわかりやすくならんかな SLEAP⇒休みとか
sleep の間違いではないか。
71 :
名無しさん@お腹いっぱい。 :2006/10/08(日) 08:12:29 ID:dsiDZkNA0
すまん、そうだった、ここ人がまったくいないわけではないんだな、 しかしプログラム書きこむ者が少ない、 ソフトに欠陥あるのか、 プログラム用のサイトがあるのかな、Javaより簡単だと思うが、もっと日本語化して欲しい、 年とった自分には面倒
72 :
名無しさん@お腹いっぱい。 :2006/10/08(日) 09:20:20 ID:/OF9ES520
あと、予測変換機能あるといい、 sを押すとsleep がでるようなに
73 :
名無しさん@お腹いっぱい。 :2006/10/08(日) 09:21:14 ID:/OF9ES520
でるようなに× でるような O
沸いてるな
めもちょうでまくろかいてるんですか
日本語でコード書きたいやつはなでしこでぐぐれ インテリセンスはサクラエディタので代用できる
77 :
名無しさん@お腹いっぱい。 :2006/10/08(日) 20:23:07 ID:8dClfRVE0
78 :
名無しさん@お腹いっぱい。 :2006/10/08(日) 20:29:01 ID:8dClfRVE0
79 :
名無しさん@お腹いっぱい。 :2006/10/08(日) 20:41:01 ID:8dClfRVE0
いい加減にしろ!
>>77-78 .urlファイル(インターネットショートカット)でも置いておけば?
>>79 これの何がうれしいのかさっぱりだ
メタサーチエンジンでもHTMLで書いた方がよほど役に立たね?
82 :
名無しさん@お腹いっぱい。 :2006/10/08(日) 22:47:17 ID:8dClfRVE0
練習中。このUWSCつかって1週間、
83 :
名無しさん@お腹いっぱい。 :2006/10/08(日) 22:48:32 ID:8dClfRVE0
もたってない。 基本を調べてる。しかしまだ難しいな、javaよりはわかりやすいが
84 :
名無しさん@お腹いっぱい。 :2006/10/08(日) 22:59:37 ID:8dClfRVE0
// スクリーンセーバーを変更する id = Exec("Control Desk.cpl") // 画面のプロパティを起動 ClkItem(id, "スクリーン セーバー", CLK_TAB) ClkItem(id, "伝言板", CLK_LIST) // 伝言板を選択し設定する ClkItem(id, "設定", CLK_BTN, True, 1) SendStr(GETID("伝言板"), "練習中", 1, True) ClkItem(GETID("伝言板"), "OK") ClkItem(id, "OK")
>>82 練習ならわざわざ書き込まんでもいいだろう
だから
>>80 のようなレスが帰ってくることになる
それからわざわざレスを分割するなよ
86 :
名無しさん@お腹いっぱい。 :2006/10/08(日) 23:23:58 ID:8dClfRVE0
礼あらざるは聞くなかれ (礼儀知らずの話は聞かずともよい)
電波襲来
88 :
名無しさん@お腹いっぱい。 :2006/10/09(月) 08:00:24 ID:mgCYGQoH0
まあ掲示板はググればやまほどあるからな、
うちのスクリプトが勝手にここに書きこんでるようですいません。 最近やんちゃで全然手が付けられないくらい状態なんです。
>86 とりあえずトリップつけてくんない?
91 :
名無しさん@お腹いっぱい。 :2006/10/10(火) 00:48:13 ID:sATsasDf0
ゼロックスのドキュワークスのファイル(.xdwや.xdb)のOCRデータの有無を取得することは出来るのでしょうか?
92 :
名無しさん@お腹いっぱい。 :2006/10/10(火) 01:08:27 ID:FAlUR16d0
バージョンうp [Ver4.1b] COMのイベント処理ができる OLEEVENTを付けた INIファイルをメモ帳で修正すると正しく読めなくなるのを修正 DLL使用にて var PCHAR, var PWCHAR指定時に文字列長が勝手に変化しないよう修正 [Ver1.0] 一部のWebページにて浮動小数点数演算エラーが出るのを修正
93 :
名無しさん@お腹いっぱい。 :2006/10/10(火) 08:11:39 ID:FILBXPW40
uwscのすれ立てようとすると、よく悪口かかれるな、ソフトの開発者が失業するからか 。しかしフリーのソフトは信用できんのだよな。ただでくれるわけない 悪質なプログラムはいってんじゃねえの とうたがってしまう。 ビルゲイツはエイズの研究機関に資金援助したりしたので 悪いやつではないと思って WINDOWSを使えるが、しかしまだUWSCでも難しいな初心者でも作れるようにならんかな
どこを日本語読み?
95 :
名無しさん@お腹いっぱい。 :2006/10/10(火) 09:48:36 ID:ydq9/y/K0
たとえば、バックアップソフトでバックアップ→検索ソフトのインデックス作成→デフラグ→シャットダウン を自動的に行わせることも可能なんですか?
例えばじゃなくてそれをやりたいんだろ? 素直にやり方尋ねろよ。 (自動書き込み by 2ch_surf.uws)
97 :
名無しさん@お腹いっぱい。 :2006/10/10(火) 15:59:58 ID:2DJUW8+30
礼あらざるは聞くなかれ(礼儀知らずのはなしは聞かずともよい)
>>97 2ch初心者は半年ROMれという話があってだな
>>93 そのUWSCも「フリーのソフト」なんだがなぁ
そのスレの建て方とか自分自身の書き込みとかの原因を疑ってみろよ
2chはおろかWindowsの初心者してますって感じだな
>>98 まて、
>>97 はもしや2ch_surf.uwsじゃね?
あらゆるスレで 「スレ住人ならわかりきった質問をして解答させようとする香具師」 「あからさまに間違ったことを書いてツッコミを誘う香具師」を 頻繁に見かけるんだが、何なんだろうねコレは?
101 :
名無しさん@お腹いっぱい。 :2006/10/10(火) 17:08:24 ID:BqSsW1JB0
UWSCは株式会社が作ってて責任がはっきりしている、 ほかのフリーソフトは使う気にならんな、悪質なプログラムが隠れているんじゃ中と疑う、 UWSCに文句言うのはプログラマーが失業がこわいからだろ。 まあほとんど学生のバイトだと思うが。
102 :
名無しさん@お腹いっぱい。 :2006/10/10(火) 17:11:27 ID:BqSsW1JB0
ACW(GETID("スタート メニュー","DV2ControlHost"),0,244,400,494,0) BTN(LEFT,DOWN,63,749,1272) ACW(GETID("スタート メニュー","DV2ControlHost"),0,244,400,494,0) BTN(LEFT,UP,63,749,140) KBD(VK_U,DOWN,180) MMV(188,724,50) KBD(VK_U,UP,1682) KBD(VK_U,DOWN,180) MMV(188,724,50) KBD(VK_U,UP,1682) //終了プログラムUWSCに投げ込むだけでウインドウXP終了。時間指定すれば勝手に電源オフ
BTN MMV KBD : : この繰返し まだまだ甘ちゃんだね。 (自動書込み by 2ch wacher.uws)
104 :
名無しさん@お腹いっぱい。 :2006/10/10(火) 18:49:33 ID:CzZkec6z0
// マウスカーソル下の文章を読み上げる,英語しか不可 sv_s = "" While True x = G_MOUSE_X; y = G_MOUSE_Y id = GETID(GET_FROMPOINT_WIN) // アクティブウィンドウ ofx = x - STATUS(id, ST_CLX) // 相対位置 ofy = y - STATUS(id, ST_CLY) wks = PosACC(id, ofx, ofy) // マウスカーソル下の文章拾得 ifb sv_s <> wks sv_s = wks Speak(wks) // 読み上げ endif Sleep(0.5) Wend
ヘルプに載っている例文をコピペして何がしたいの君は
106 :
91 :2006/10/10(火) 19:12:49 ID:sATsasDf0
アプリケーション固有の情報を取得して、その情報の内容によって作業内容を決めるというようなことも出来ますか? 具体的には、1万以上ある.xdwファイルのなかでOCR情報が無いファイルに対してOCRをかけたいと言うものです。 せめてリストアップでも出来れば、対象ファイルが1万までOKというソフトを使ってOCRをかけようかなと思ってまして・・ 対象ファイルが1万なら全部OCRかけろ、と言われそうな気もしますが・・・ なんとか自動化したいなと思ってます。せめて、可能か、不可能だけでも御教授いただきたいと存じます。
解釈困難 (自動書込み 2ch_crawler.ahk)
uwsc についてはさほど詳しくないのですが、
xdw ファイルをどんな viewer でみるかによって情報を取得できるかどうか
変わると考えます。
ちょこっと技術的な話をすると listview クラスのクラスや static text など
uwsc でハンドリングできれば、上記のリストアップが可能だと思います。
http://ascii24.com/news/i/soft/article/2004/03/17/648745-000.html でこちらのスクリーンショットなどみるとなんとなくできるのではないのか?
とかって考えましたけど保障はできないです。edit クラスになりそう。。。
で SDK base で xdw の読み書きはできるはずなので、こちらをもちいたほうが
面倒かもしれませんがらくちんぽんです。でここまでがファイルのリストアップ。
リストアップした部分を
OCR にかける部分は、UWSC でスクリプトかけばいいかとおもいます。
と学生がのたまわっています。。。
はずしていたらごめんなさい
109 :
名無しさん@お腹いっぱい。 :2006/10/10(火) 20:33:50 ID:sATsasDf0
>>108 ありがとう御座います。
SDKを使用するとなるとプログラミング言語の習得が必要になりそうですね。。。
道は遠いんですね。
uwsc のスクリプトも basic とほぼ同じ文法なので、似たようなもんかと おもっています。ということで、どんなことやってもさほど道は遠くないです。 一万件の中でリストアップを行わずにとりあえず外部から制御して 自動化なら UWSC で適当にスクリプトかけばよろしいような気がするのですけど 面倒なのでしょうか?
111 :
名無しさん@お腹いっぱい。 :2006/10/11(水) 05:24:23 ID:j5qhh2vO0
>>110 いや・・・。プログラミングなんてしたことが無くて。
面倒な作業の解決策を探しているうちにUWSCを知った口ですので。
貴君の仰るように、適当にスクリプトが書けません。でも、頑張ります。小林シンヤ氏の本も買いましたし。
できれば、ヒントでもいただけますとうれしいな・・・
Primary IDE Channel ALL Integer Float MemoryR MemoryW MemoryRW DirectDraw 15720 0 0 0 0 0 0 Rectangle Text Ellipse BitBlt Read Write RRead RWrite Drive 0 0 0 0 42917 44833 16808 21200 C:\50MB ALL Integer Float MemoryR MemoryW MemoryRW DirectDraw 15357 0 0 0 0 0 0 Rectangle Text Ellipse BitBlt Read Write RRead RWrite Drive 0 0 0 0 41524 44024 18927 18384 D:\50MB ALL Integer Float MemoryR MemoryW MemoryRW DirectDraw 8793 0 0 0 0 0 0 Rectangle Text Ellipse BitBlt Read Write RRead RWrite Drive 0 0 0 0 24450 25806 7710 12376 E:\50MB ALL Integer Float MemoryR MemoryW MemoryRW DirectDraw 12259 0 0 0 0 0 0 Rectangle Text Ellipse BitBlt Read Write RRead RWrite Drive 0 0 0 0 34065 34972 8088 20949 F:\50MB
113 :
111 :2006/10/11(水) 09:41:20 ID:j5qhh2vO0
>>112 ありがとう御座います。疑問が氷解しました。
UWSC でスクリプト書いてる人にお聞きしたいのですが、 速度がボトルネックになってる場合どうやって高速化してるんでしょうか? やっぱり、 COM-server つくるか、 DLL をつくるかでどうにかしてるんでしょうか? 上記のほうでもテキスト読み書きするのが doscmd より遅いとあったように 結構ここらへんのノウハウがしりたかったりします。 よろしければおしえてください。
>>114 やることによるんじゃね?
基本かもしれんが、すぐに思いつくのを列挙すると
* ループ文での条件判断を減らすように結果がキャッシュできるならする
* ログファイルへの出力はDOSCMDも手だけど、
ログファイルのローテーションや、そもそも出力する項目と量を絞る
* SLEEPだけで待機するのでなく、そもそもidleかを確認ループを作る
(余裕を持たせて0.5sec待機するより0.01secを5回程度回した方が速い)
とかかなぁ。俺もあんまりノウハウもってないや
でもDLLとかCOM作るくらいなら最初からC/C++とか使うさw
JavaスクリプトあるいはVisual BasicとUWSC両方を使用している方がいたら質問させてください
Photohop7のスクリプト機能
http://www.adobe.com/support/downloads/detail.jsp?ftpID=1536 のCOMコンポーネントをUWSCで動かそうとしているのですが、
マニュアルの例文(JavaとVISUAL BASIC)に、
textItemRef.Position = Array(0.75, 0.75) という具合にArrayを使用して数値を入れている箇所があるのです。
マニュアルでは、このposition というパラメータは、
position . . . . . . . . . . . Object[ Array of two Numbers(double) ])
position of origin (unit value)
UWSCではこのような場合、どうやってこの数値を入れたらいいのかご存知の方、知恵を貸して下さい
書いているスクリプトはこんな感じです(文字の位置を指定する以外の動作は確認)
ps= CreateOLEObj("photoshop.Application")
ps.Documents.Add(480, 590) //480*590の新規画像作成
ps.ActiveDocument.ArtLayers.Add //新規レイヤ
ps.ActiveDocument.ActiveLayer.Kind=2 // text //新規レイヤをテキストレイヤに
ps.ActiveDocument.ActiveLayer.TextItem.Contents = "wahaha"
// ps.ActiveDocument.ActiveLayer.TextItem.position=array(100,100) <−ここの書き方が分からない
ps.ActiveDocument.ActiveLayer.TextItem.Font = "Georgia"
ps.ActiveDocument.ActiveLayer.TextItem.size = 36
While 1 user= geti(お前) SendStr(id,"少しは働けタコ") Wend //自動スクリプト生成 (realworldsurf.uws)
118 :
117 :2006/10/11(水) 19:08:19 ID:3rPslZqQ0
まだユーザに真意が伝わらない。 バグがあるようだ。 (自動書込み realworldsurf.uws)
119 :
名無しさん@お腹いっぱい。 :2006/10/11(水) 19:17:04 ID:1UcTqtwR0
俺の良く使うスクリプト -- acw(getid(PARAM_STR[0]),0,0) -- BlueWindからつかう(アプリ登録は基本的にGetIdで引っかかる名前で入れてある) 皆様のよくつかう一行UWSCを教えてください
オンラインゲームと デイトレードと 競馬予測 こんなすくりぷとで一杯になりそうだな。 ウェブ検索するとそんなんばっか。 UWSCは人を幸せにしているね。
そうだね、プロテインだね
123 :
名無しさん@お腹いっぱい。 :2006/10/12(木) 07:49:23 ID:XysNT8v10
Javaより簡単だが、まだ難しいだよな
124 :
名無しさん@お腹いっぱい。 :2006/10/12(木) 09:23:54 ID:rDlBU4fJ0
125 :
116 :2006/10/14(土) 00:01:02 ID:tiD3tTjH0
自己解決 KAJIKAS TOWNにようこそ「UWSC/VBScriptの関数を使う」に答えがありました ps= CreateOLEObj("photoshop.Application") SC = CreateOleObj("ScriptControl") SC.Language = "VBScript" ps.Documents.Add(480, 590) //480*590の新規画像作成 ps.ActiveDocument.ArtLayers.Add //新規レイヤ ps.ActiveDocument.ActiveLayer.Kind=2 // text //新規レイヤをテキストレイヤに ps.ActiveDocument.ActiveLayer.TextItem.Contents = "wahaha" ps.ActiveDocument.ActiveLayer.TextItem.position= SC.Eval("Array(100,100)") // "Array(100,100)"をScriptControlに送り、返り値を使用 ps.ActiveDocument.ActiveLayer.TextItem.Font = "Georgia" ps.ActiveDocument.ActiveLayer.TextItem.size = 36
126 :
名無しさん@お腹いっぱい。 :2006/10/14(土) 08:02:02 ID:tIzDCsWZ0
難しい、中学生でもわかる程度のプログラムにならないと、広まらない
すみません。 別のユーザーとして アプリを実行したいのですが できますでしょうか? windowsのコマンドだとrunasに相当するものです。 今のユーザで起動するにはEXECでできたのですが・・・
128 :
名無しさん@お腹いっぱい。 :2006/10/14(土) 12:00:18 ID:FMuMUYs00
すれ違いでしたね ほか逝きます
>>126 分かり易いかどうかは何を扱うかによるんよ。
ユーザに一番近いのはシェルとアプリだろうから
その範囲で使っていれば問題ないし本来そういうもの。
Win32APIとかOLEとか妙に凝ったヤツを無理して勉強する必要はない。
まずやりたい事があればそれができるアプリ(フリーソフトなど)を
捜してからその操作を自動的にやるように勤めた方がいい。
特にUWSCにはインターネット関連を直接扱う関数がないので
IEを使ったスクリプトを使う事が多いが、残念ながら普段自分がIEを
使っているようにスクリプトを作る事は難しい。
だったら無理してそれを使う事はないと思う。まずウェブページを
取得したりHTTPを扱える簡単なツールをさがして使いなれたら
それを使えば良いと俺は思う。
誰かが作った便利なライブラリを使うのもひとつの手。だが、ライブラリは
アプリと違ってそれ単体で使い慣れる事が出来ないから面倒だよね。
誰もが欲しがるカッコイイプログラムなんてまず出来ないんだし
出来る範囲で使ってやればいいと思うよ。
>>127 UWSCへのショートカットのプロパティを参照
>127 DOSCMDでrunas
133 :
名無しさん@お腹いっぱい。 :2006/10/16(月) 09:02:26 ID:HYgbnD2O0
// WindowsXP/Windows2000 のデフラグの実行&シャットダウン dim disk[5] = "(C:)", "(D:)", "STOP_DFRG" // 調べるディスク名定義 exec(GET_SYS_DIR+"\mmc.exe dfrg.msc") // デフラグ起動 id = getid("ディスク デフラグ") dcnt = 0 While ClkItem(id, disk[dcnt], CLK_SHORT) ClkItem(id, "分析") ifb KINDOFOS() >= 13 // Windows XP Repeat; sleep(1); Until id<>getid("ディスク デフラグ ツール") bnsekiid = getid("ディスク デフラグ ツール") wks = GetStr(bnsekiid, 1) sai_msg = "最適化してください" else bnsekiid = GetID("分析が完了しました", , -1) // Windows2000 wks = GetStr(bnsekiid, 1, STR_STATIC) sai_msg = "最適化することを推奨" endif
134 :
続き :2006/10/16(月) 09:02:56 ID:HYgbnD2O0
ifb Pos(sai_msg, wks) > 0 // では最適化 ClkItem(bnsekiid, "最適化") While True Sleep(2) ifb KINDOFOS() >= 13 // Windows XP wks = GetStr(getid("ディスク デフラグ ツール"), 1) ifb Pos("最適化が完了しました", wks) > 0 ClkItem(getid("ディスク デフラグ ツール"), "閉じる") Break endif else wks = GetStr(id, 1, STR_STATIC) if Pos("一時停止", wks) > 0 then ClkItem(GetID("デフラグ ツール"), "はい") ifb Pos("最適化済", wks) > 0 ClkItem(GetID("最適化が完了"), "閉じる") Break endif endif Wend else ClkItem(bnsekiid, "閉じる") // 最適化必要なし endif dcnt = dcnt + 1 // 次のディスクへ Wend POFF(P_POWEROFF or P_FORCE) // 電源断
135 :
名無しさん@お腹いっぱい。 :2006/10/16(月) 09:03:58 ID:HYgbnD2O0
// マウスカーソル下のウィンドウのタイトルとクラス名を表示 While True id = GETID(GET_FROMPOINT_WIN) // マウスカーソル下のウィンドウ moji = STATUS(id, ST_TITLE) + " , " + STATUS(id, ST_CLASS) Fukidasi(moji, G_MOUSE_X+8, G_MOUSE_Y, 3) Sleep(0.2) Wend
136 :
むっずかしい :2006/10/16(月) 11:29:51 ID:jK9okWJi0
も少し簡単なプログラム製作ソフトないかな。
開いているsべてのウィンドウを 閉じるスクリプトを どなたが組んでましたら くださいませ〜
138 :
訂正 :2006/10/16(月) 15:25:35 ID:H0BBNBLi0
開いているすべてのウィンドウを 閉じるスクリプトを どなたが組んでましたら くださいませ〜
POFF(P_SHUTDOWN)
140 :
むっずかしい :2006/10/16(月) 21:04:20 ID:9pakctTK0
winKazu=GETALLWIN( ) for i=0 to winKazu-1 d=ALL_WIN_ID[i] CTRLWIN( id, CLOSE ) next
142 :
むっずかしい :2006/10/16(月) 21:55:12 ID:9pakctTK0
定義されていません、変数何たらのエラーばかりでる。 うーんどこがいかんのか
>>137 winKazu=GETALLWIN( )
for i=0 to winKazu-1
id=ALL_WIN_ID[i]
CTRLWIN( id, CLOSE )
next
uwscの多重起動の方法を教えて下さい
uwsc.exe baka.uws uwsc.exe aho.uws
146 :
名無しさん@お腹いっぱい。 :2006/10/17(火) 08:07:01 ID:05dtnnnT0
もっと日本語でプログラムをつくれんかな、
>>143 ありがとうございます。
sleepを挟んで使いたいと思います。
>>135 これってさぁ〜、もっといいツールがあるようなきがするのよね。。。
autoit の附属ツールとか、
halbow さんの windowtree とか、spy++ とか、自作してもいいしね...
でも、UWSC にもそういうツールほしいね orz
149 :
名無しさん@お腹いっぱい。 :2006/10/18(水) 21:44:36 ID:ckDcH2dv0
もっと簡単にならないかな。日本語で命令するとそのとうりにパソコンが動くようにするとか、 せっかくここまで簡単にしたのだし。
>>149 5W1H をきちんと入れた命令をしないと予期せぬ動作をするツールとかでそうだな。
GCC Frontend for Shakespeare Programming Language とかみたいなものをいってたりする? 英語ならともかく、日本語ってここらへんむづかしいよね...
予想、Basic みたいな構文になったのって、周知だとおもうけれど、 ScriptIt からきてるからだと考えてるんですけど。 Basic がきらいというのならともかく、日本語みたいのって ロケットマウスとか?
とりあえずなでしこから始めてみればいいのか
AutoHotkeyのとっつきにくい文法に較べれば実に分かりやすいよ
両方使ってますけど、常用してるのはUWSCで、フロントエンドっぽいのはAutoHotkeyでやってますね。 ウィンドウを作るようなGUI関数と、実行ファイル化がAutoHotkeyの長所かも。 いちいち変数を作らないといけないのと、配列が面倒なのが短所だと感じました。
156 :
名無しさん@お腹いっぱい。 :2006/10/20(金) 14:43:40 ID:nOjFv8sg0
KBD(キーボード)Mmv(マウス)の動きの命令だというのはわりと わかりやすいけど、 エラー表示がでても、じゃあどうすればいいのかが出てこないので素人にはまだ むずかしい、 変数、やら定義されていませんとか意味がわからん
157 :
名無しさん@お腹いっぱい。 :2006/10/20(金) 14:47:45 ID:nOjFv8sg0
自分がしたいのは、たとえば時間が来たらこのページをデスクトップに ファイル名に時刻をつけて保存 して一定の時間が来たら、 決まった文をその掲示板に書き込むというのだけど キーボードで作ろうとするとうまくいかない。
>>156 > 変数、やら定義されていませんとか意味がわからん
とりあえずこれだけ調べればあとは簡単に使えるようになるよ。
getを変数として定義したと仮定 get = GETID(GET_ACTIVE_WIN) CtrlWin(get, CLOSE2) と設定して、アクティブウィンドウを閉じようとしてたんですが、 なぜか電卓やエクスプローラやメモ帳は閉じれるのに インターネットエクスプローラ(IE)を閉じる事ができません。 どなたか解決する事ができるお方いらっしゃいますでしょうか?
160 :
名無しさん@お腹いっぱい。 :2006/10/22(日) 01:09:07 ID:GGzo9HXt0
windowsマクロの本を買って読んでみたのだけど、いきなり中級 レベルに飛んでる感じでわかりにくい。 もっと日本語に近い文法でプログラム組める方法ないかな
なぜ日本語に拘るのか不明。 識別番号にウィンドウ名が××でクラス名が□△のウィンドウ識別番号を取得して代入。 こんな感じだと判り易いわけ? 自分が理解できないとこが何なのかそこんとこよく考えてみよう。
>>161 触ってやるな
アルファベットアレルギーのジジイなんだろう
素直にひまわりに移行すればよい物をな
そゆこととぜんぜんちがうだろ。 普通じじぃのほうがプログラム中の日本語に違和感を持つ。
ぴゅう太でも引っ張り出してくればいいのか BASICがこれほどまでに懐かしいものになるとは
165 :
名無しさん@お腹いっぱい。 :2006/10/22(日) 20:59:24 ID:rkBVqnFx0
確かに簡単だけど 日本語の分からない人に電話で操作を指示したのと変わらないぐらい とんでもない動作をしそう。
中学も卒業してないおれには無理だ
日本語なんざ補完もろくにできないんだから
169 :
名無しさん@お腹いっぱい。 :2006/10/22(日) 21:38:24 ID:rkBVqnFx0
日本語を英語や中国語に変換するプログラムがあるんだからできそうだがなあ
>>169 >日本語を英語や中国語に変換するプログラム
未だまともな(ry
どうせ日本語が使えても "C:Program Files\hogehoge\hogera.exe" をきどう ほげらのはんどる に まどをさがせ "hogeraform" ""(ry ...うんざりだとおもうんだ 多少ましにするとしても 変数である"ほげらのはんどる" に "ウィンサンニーアプリケーションインターフェース"の "ファインドウィンドウ"関数を第一引数に"hogeraform" また 第二引数に"" を渡した結果を代入せよ はっきり言ってスパゲティ・ソースなんかではなくカオス・ソースができると思うんだ こんなのより今の方がよっぽど中学生に優しいと思うのは私だけかな? そもそも、日本語入力という最大の欠点を抱えているよ 漢字を対応させるべきか?ワイドスペースは空白類と見なすべきか? そもそも、クラス名とかはアルファベットしかあり得ないから 日本語入力/直接入力/日本(ry 日本語でプログラムなんて英語を習っていない小学生のため"だけ"にあると思うんだ
>>165 それを実行したら
「入力誤り」
と出たらどうするんだ?
173 :
名無しさん@お腹いっぱい。 :2006/10/23(月) 16:24:30 ID:grMbzbux0
174 :
名無しさん@お腹いっぱい。 :2006/10/23(月) 16:32:40 ID:grMbzbux0
人間に命令する場合は、簡単でいいのはわからないところ 人間が質問しかえしてくれるからだ。 ご飯作れ→何つくればいい? 玉子焼き→甘いのがいいか辛いのがいいか? 甘いのがいい→OK このソフトの欠点はパソコンがエラーだけだして俺 わからんで終わり。
175 :
名無しさん@お腹いっぱい。 :2006/10/23(月) 16:37:30 ID:grMbzbux0
ちょっと文字打ち間違えてもエラーと出るからめんどくさい、 googleの検索なら、もしかして機能があって、近 い言葉を表示してくれる
>>174 パソコンがってw
万人向けのソフトではないのだから、しょうがないじゃん。
177 :
名無しさん@お腹いっぱい。 :2006/10/23(月) 22:10:03 ID:f6X2ciKQ0
技術的には優れているとは思うが、日本人が難しい使えないといったらそれまで WindowsXpだって日本語キーボードが無ければこれほど広まらない。 一から言語憶えるんでは、んなひまねえよ、でおわり、
日本語になった途端使いやすくなると甘い夢抱いてるんだろうな。
179 :
名無しさん@お腹いっぱい。 :2006/10/24(火) 01:10:16 ID:f/S+mxkS0
>>177 一から覚えたほうが早いくらいの膨大な処理が必要な人が使うものなんでしょうね。
そりゃ、もっと簡単なほうがいいけど、他にないのだからしょうがない。
まさにないものねだりだね。
盛り上がってるところ悪いけど日本語うんぬんじゃなくて、 なんかやりたい場合はそれに関するしくみを知らなきゃ駄目って事に気付け。 あとUWSCで何ができるかとか。これは人が誰かに何かを仕事を頼む場合も一緒。 相手が出来る事と自分がやりたい事の対象の仕組みを知らないと人にも伝わらん。 まずは自分が知っている事とUWSCに出来る事をちょっとずつ知っていって その範囲でやればいいじゃないか。 人がPCを操作する事は画面表示や音を認識して判断してキーやマウスで 操作するだろ。これは結構高度な技だ。自分がいつもやっている事を曖昧さ 抜きの日本語の文章にしろといわれればそれを厳密に書くのはかなり難しい。 おっちゃんが書いた日本語じゃ正直誰にも判らんよ。しかもOfficeとかIEとかは UWSCの基本機能じゃ使えんのよ。COMっていう借り物機能を使わなきゃならん。 まずはIEとかOfficeとか面倒なソフトは使わん事を考える。 どうしても使いたい場合は画面の位置を常に固定して邪魔が入らないように ROCKHARD(邪魔禁止)して特定の位置をマウスクリックするだよ。 その場合は画面の判定とかは当面無しな。 判らん事があればここのにぃちゃん達が詳しく教えてくれるから 文句言う前に素直に質問することだべ。 じゃ、おっさん頑張れよ。
これダメだとMSOffice付属のVBAもダメな奴だろうな
VBAなどわからんのが普通。 それでも使えるヤツが多いのは給料もらうのに必死だから。 毎朝社屋の前の駐車場で長い社訓を大声で叫んでいるのも 給料もらうのに必死だからだろ。 しかも可愛そうに死ぬまで忘れられない。
>>182 本来業務そっちのけで VBA やって遊んでる俺は?
184 :
名無しさん@お腹いっぱい。 :2006/10/25(水) 01:06:09 ID:CQ3XmHN10
>>183 VBAを知ってから仕事が遅くなった俺も。
仕事にかかる前にVBAの教科書を2時間読んで実験しまくる。
この時間が楽しくって、本来の目的を忘れそうです。
それで給料もらえるんだから皆必死必死 UWSCも競馬やらクリックビジネスで必死必死
すまん今日から始めた超初心者で 練習代わりに「新着レスの表示」の所を三秒毎にクリックし続けるマクロ組んでるんだがどうにもうまくいかない。 新着レス〜の部分だけ切り取って2ch.bmpで保存してある。 GETID(" ■2ch BBS .. - Microsoft Internet Explorer","IEFrame") CHKIMG("2ch.bmp",0)//画像 BTN (LEFT,CLICK,G_IMG_X+10,G_IMG_Y+10)//カーソル調整+10,+10 Sleep(3.0)//三秒停止 どこが悪いのか教えてくれい
画像を使う必要があるのか?
OPTION EXPLICIT
DIM url, ieobj
url = "
http://pc7.2ch.net/test/read.cgi/software/1156416884/ "
ieobj = CREATEOLEOBJ("InternetExplorer.Application")
ieobj.Visible = True
ieobj.Navigate(url)
wait(ieobj)
WHILE 1
DIM i
FOR i=0 TO ieobj.document.links.length-1
IFB ieobj.document.links[i].innerText = "新着レスの表示" THEN
ieobj.document.location = ieobj.document.links[i].href
ENDIF
NEXT
SLEEP(3)
wait(ieobj)
WEND
PROCEDURE wait(obj)
REPEAT
SLEEP(0.1)
UNTIL !(obj.busy) AND (obj.readyState = 4)
FEND
俺は
>>186 の方法の方が自然だと思う。
ただ俺はCHKIMGは一度も浸かった事が無いし
実際やるなら
>>187 のような方法を使うだろうが…。
>>186 で気になるのはCHKIMGの戻り値を判断している部分が見当たらない事。
↓こんな感じでデバッグして結果を報告せよ。
While(GetkeyKeyState(VK_ESC)=FALSE
id= GetId(" ■2ch BBS .. - Microsoft Internet Explorer","IEFrame")
x1= Status(id,ST_X)
y1= Status(id,ST_Y)
x2= x1+Status(ST_WIDTH)-1
y2= x1+Status(ST_HEIGHT)-1
IfB ChkImg("新着レスの表示.bmp",0,x1,y1,x2,y2)=TRUE Then
Fukidasi("ここか? X=" + G_IMG_X + "Y=" + G_IMG_Y)
MMv(G_IMG_X, G_IMG_Y)
EndIf
WEend
> x2= x1+Status(id, ST_WIDTH)-1 > y2= x1+Status(id, ST_HEIGHT)-1 > WEnd
190 :
名無しさん@お腹いっぱい。 :2006/10/25(水) 21:02:17 ID:Mxv0KDZa0
ファイル名に日付つけるのわからん
>>190 GETTIME(0)
fname = G_TIME_YY + "-" + G_TIME_MM + "-" + G_TIME_DD + ".txt"
// 例)
fid = FOPEN(fname, F_READ or F_WRITE)
FPUT(fid, "ファイル名に今日の日付をつけますた。", 0)
FCLOSE(fid)
// ヘルプを好く呼んで下さい。
静止画でないものを認識したいのですが、 動画判定のような事は可能なのでしょうか。
防犯用の見張り番ソフトを使え。
195 :
名無しさん@お腹いっぱい。 :2006/10/27(金) 23:34:59 ID:QfuoOcqJ0
//windowpicker.uws //スクリプトここから while 1 fukidasi("Alt+Clickでウインドウの情報を取得します") ifb GETKEYSTATE(VK_ALT) and GETKEYSTATE(VK_LBUTTON) then fukidasi("情報を取得しています") id=GETID(GET_FROMPOINT_WIN) fname = GET_CUR_DIR+"\windowPicker-"+STATUS(id,ST_CLASS)+".txt" ifb STATUS(id,ST_CLASS)="#32770" fname = GET_CUR_DIR+"\windowPicker-"+STATUS(id,ST_TITLE)+".txt" endif fid = FOPEN(fname,F_WRITE) fput(fid, "st_title=" +STATUS(id,ST_TITLE)) fput(fid, "st_class=" +STATUS(id,ST_CLASS)) fput(fid, "st_parent=" +STATUS(id,ST_PARENT)) fput(fid, "st_path=" +STATUS(id,ST_PATH)) fput(fid,"")
196 :
名無しさん@お腹いっぱい。 :2006/10/27(金) 23:38:42 ID:OgJ80jiw0
貼り付けようとしたら>>が多すぎますが出て書き込めなかった。 確実にいえるのはこのソフト難しくて広まらないな。 道理で寂れるわけだ。
楽して金儲けする妄想にとりつかれているヤツがいる限り寂れない。
198 :
名無しさん@お腹いっぱい。 :2006/10/29(日) 06:44:07 ID:4hkXHmjc0
ウインドウのタイトル取るときは簡単で右クリックプロパティでわかる、 しかしクリックするボタンを知ろうと表示(V)ソースでクリックしても ごちゃごちゃ小難しい文字が並んでわからん
おっちゃんさぁ、ウィンドウズのウィンドウとIEのウィンドウがごっちゃになってるよ。 IEの中身はUWSCの基本機能じゃ基本的には直接いじれないって言ってるだろ。
200 :
名無しさん@お腹いっぱい。 :2006/10/30(月) 14:38:07 ID:/PcfHUDW0
vistaでも動く?
202 :
名無しさん@お腹いっぱい。 :2006/10/30(月) 22:31:54 ID:shlNE38y0
アクティブじゃないウインドウ・最小化してるウインドウを アクティブにしないまま命令を送るのって どうしたらいいんでしょうか?SendMessageを使うとできるかも?と聞いたんですが。 たとえば一回クリックするとしたらどんな感じの構文になりますか?
203 :
名無しさん@お腹いっぱい。 :2006/10/30(月) 23:42:39 ID:UiAP8X6Z0
>>200 必要ないと思えば勉強しなくていいじゃん。
いちいち他人にいうことじゃないな。
>>202 一回クリックって言っても、どんなメッセージとパラメータが送られてんのか分かんなきゃムリ。
例えば『タスク バーと [スタート] メニューのプロパティ』を表示さすには以下。
DEF_DLL SendMessageA(hwnd, uint, uint, long): long: user32.dll
SendMessageA(IDTOHND(GETID("", "Shell_TrayWnd")), 273, 413, 0)
第二引数がメッセージで、第三・第四引数がパラメータ。
206 :
名無しさん@お腹いっぱい。 :2006/10/31(火) 09:58:26 ID:T4LiwXDt0
>>206 > UWSC
> の知名度低ーいい。そりゃ勉強するものすくないわい、
いや、UWSC は勉強するほど難しくないだろw
Windows のメッセージとかを理解してればいいだけだし。
208 :
名無しさん@お腹いっぱい。 :2006/10/31(火) 16:04:50 ID:g8FIEyTL0
C言語=標準語 UWSC=アイヌ語 そりゃアイヌ人から見ればアイヌ語は簡単かもしれん。
209 :
名無しさん@お腹いっぱい。 :2006/10/31(火) 18:39:30 ID:nuallxxM0
便利ならアイヌ語でもスワヒリ語でも勉強しますよ。 言語なんて道具。
210 :
名無しさん@お腹いっぱい。 :2006/10/31(火) 19:36:44 ID:Khc4wo+K0
つーかこの程度で勉強とか言ってる奴って どんな低脳だよw 生きてる価値ないんじゃねw
windows上のautoexec.bat バッチファイルかなと思った。
もう触れてやるなって。。。
ロケットマウスと比べるとどんなメリットあるの?
ないから使わなくていいよ
違いが分からないレベルでは どのみちUWSCのアドバンテージは使いこなせない。 おとなしくロケットマウス使ってなさい。
216 :
名無しさん@お腹いっぱい。 :2006/11/03(金) 06:42:30 ID:GMiEkE1O0
ロケットマウスは有料ジャン。学生のバイトが作ったレベルの会社なのか。 じゃあ広まらないな。
EXEC("C:\Documents and Settings\おれの名前\デスクトップ\DE\GR208\GRAPP.exe") GR =GETID("G a m e r e s i s t a n c e 2 . 0 8 v") ifb GR <0 then MsgBox("GRが起動してません") Exit endif これでやってもGRAPPが起動しないんですけど、どこか間違ってますか? (起動していませんのメッセージは出ます。)
Pathに<#DBL>が足りんよ
>>219 ありがとうございます。
無事に起動することができました^^
どういたしまして
>221 誰よ?w
223 :
名無しさん@お腹いっぱい。 :2006/11/05(日) 16:26:49 ID:JKljbBg20
accessで記録しようとするとaccessが固まったり、暴走したりするんですけど、これっと既知の現象ですか? デスクトップとノートPCの両方でなりました。win2000SP4とaccess2002SP3とwinXPSP2とaccess2002SP3の構成です。 vba面倒だからuwscを憶えようと思ったのに・・・
現象は初耳だが、マイクロソフトはマイクロソフト製品をスクリプトで操作するためにVBAを用意してるんだから、動かしたい物がマイクロソフト製品だけならVBAを覚えた方が良くないか? 俺はマイクロソフト製品以外の(Comのない)いろんなアプリも操作したいからuwscを選んでいるが。
225 :
名無しさん@お腹いっぱい。 :2006/11/05(日) 17:15:13 ID:JKljbBg20
>>224 フォームがいろいろ出現するタイプだと難しいのですかね?
一人の顧客について作業をするためにボタンを8回押さないといけないのでうんざりしていたので。。顧客が何百人・・・
vbaもやっていますが、難しい。
keybatならうまくいくんだけど、修正が面倒なんですよね。。。コメントもかけないからどの操作が何に相当するか訳が分からなくなるし。。
他のマクロソフトを探しますか・・・
227 :
sage :2006/11/05(日) 22:41:16 ID:NwyqjV3A0
228 :
名無しさん@お腹いっぱい。 :2006/11/05(日) 22:49:15 ID:JKljbBg20
>>227 あれ!?さっきまで真っ白の画面だったのに。。
メンテ中だったのかな?
229 :
名無しさん@お腹いっぱい。 :2006/11/06(月) 07:59:50 ID:LcW+hZ8t0
sendstrがうまくいかない、
231 :
名無しさん@お腹いっぱい。 :2006/11/06(月) 13:03:18 ID:pTvgcTgu0
全角だとだめ?調べてみます
あ、いや、"sendstr"の方がね・・・ 単なる茶々だったんだ、スマン
exec("timedate.cpl") で 日付と時刻のプロパティが開くと思うんだけど 何故か開けない… コマンドプロンプトから timedate.cpl って打てば 起動するのに…??
あと一息だったのに! DOSCMD("timedate.cpl") または EXEC("rundll32.exe shell32.dll,Control_RunDLL timedate.cpl")
EXEC("control.exe timedate.cpl") でもおk
>>234 >>235 ありがとうございました.
…というわけで「ntpで時刻同期」の できあがり↓
doscmd("timedate.cpl", true)
id = getid("日付と時刻")
sleep(0.1)
clkitem(id, "インターネット時刻", CLK_TAB)
sleep(0.1)
sckey(id, VK_ALT, U)
REPEAT
sleep(0.1) // 処理待ち
UNTIL (pos("お待ち", getstr(id, 2, STR_STATIC))) < 1
clkitem(id, "OK") // 「OK」押して window閉じる
ところで↑の UNTIL の行の 条件を なぜ UNTIL (pos("お待ち", getstr(id, 2, STR_STATIC))) == 0 って書けないの? (書き方がわからなかったので < 1 としている) 「数値が等しい」は == では無いということかなぁ? 数値の比較の書式について マニュアルに載ってます?? スクリプト言語は Rubyしか知らないんで…一般的な 書き方がどんななのか よくわからない..
RecIE ブラウザ(IE)上の操作を記録 Ver 1.0 2006/10/09版 フリーソフト [機能] ブラウザ(IE)上の動作をUWSCのスクリプトとして記録します こんなの作ってたのか。しかもUWSCもややバージョンアップ。 UWSC Ver4.1b (uwsc41b.zip 794KB) ダウンロード ※IEはもういいよ。せめて記録したのをIE無しで実行できるようにして欲しい。
>>236 > clkitem(id, "インターネット時刻", CLK_TAB)
んなもんないんだが?
>>238 それはかなりムリぽ
Geckoでも載せれば出来るだろうけど、おそらくだがすごく重たくなるよ
まぁそれでも俺はやってほしいとは思うけど実装の手間を考えたらとても…
推測ばかりでごめん
>>239 この手のコードはかなり環境に依存するからなぁ…
OSは2k?こっちはXP Proだけどその名前のタブがあるよ
でも素直にntp倉使った方がフォーカス気にしないで済むし手っ取りばyゲフンケブン
>>240 素直に低レベルのHTTPアクセス関数載せればいいのに。
でもIE自動操作は圧倒的に要望が多いんだろうな。
もう実装されたんだから必要になれば俺も使うと思うが…。
それよかOSに依存しない簡単スクリプト欲しいけどな。
この条件だけで既に出来る事は限られるが、それでも
欲しい場面は有る。さがしてみてもちいさくて古典的で
しかも低レベルていうのはなかなか無い。
しかしUWSCもでかくなったもんだなぁ…。
もうフロッピーにスクリプトと一緒に入れて使うのは困難。
うちは2Kだからそんなタブは無いよ。
2Kのサービスは使わないでAutomachronを起動時に
一回だけ実行してる。
1つだけだと作業の効率が悪いので、UWSCの多重起動の方法を教えて下さい
スクリプトをパラメータとして渡せばいくらでも起動できる。
244 :
240 :2006/11/09(木) 01:43:37 ID:Z8zk+dGG0
>>241 >素直に低レベルのHTTPアクセス関数載せればいいのに。
ところが、CookieとかJavaScriptとか前提の操作もかなりあるから、
HTTPだけ喋れればよいというわけではないんよ。
で、JavaScriptのエンジンは相当モニョる。
>OSに依存しない簡単スクリプト
UWSCのスレでいうのも何だけど、Cygwin入れてbashとかどう?
シェルスクリプトはすごく古典的だし、wgetとかも使えるし、
書き方次第だけど、OSに依存しないコードもかけるよ。
>フロッピーにスクリプトと一緒に入れて使う
UPXとかどうだろう?4.0a1 2006/04/25でだけど、
1322496 -> 434176 32.83%
っていう結果がでたよ。これなら十分FDに収まるよ。
普通にlzhとかzipで圧縮しろって言われたらそれまでだけど…
>>237 keyword = "演算式"
uwschlp = "E:\Programs\UWSC\uwsc.chm" // !パス
id = GETID("uwsc","HH Parent", 0.1)
if id<0 then id = EXEC("hh.exe " + uwschlp)
ifb id>0 then
SCKEY(id, VK_ALT, N)
SENDSTR(id, keyword, 1, True)
SCKEY(id, VK_RETURN)
endif
246 :
名無しさん@お腹いっぱい。 :2006/11/10(金) 07:59:33 ID:FqCSfKXW0
配列の数を取得するのはどうやったらいいの? hoge.lengthとかでは取れないし それかforeachみたいなの希望
>>244 サンクス。
Cygwinは脚下だが…。
>>246 Dim hage= 1,2,3,4
For i= 0 to length(hage)-1
Print hage[i]
Next
だったような気がする。ヘルプ見れ。
chmhlp = "?:\?????\UWSC\uwsc.chm" //■uwsc.chm のパス wtitle = "uwsc" // タイトル keyword = TRIM(PARAM_STR[0]) if keyword = "" then keyword = TRIM(GETSTR(0)) id = GETID(wtitle, "HH Parent", 0.1) ifb id<0 then LockHard(True) id = EXEC("hh.exe " + chmhlp) LockHard(False) endif ifb id>0 then CTRLWIN(id, ACTIVATE) ifb !GETKEYSTATE(VK_SHIFT) then CLKITEM(id, "キーワード", CLK_TAB) i = 100 while GETSTR(id, 1, STR_EDIT)<>keyword and i>0 SLEEP(0.1) SENDSTR(id, keyword, 1, True) i = i-1 wend if i>0 then CLKITEM(id, "表示", CLK_BTN) endif endif
249 :
名無しさん@お腹いっぱい。 :2006/11/11(土) 13:09:53 ID:pCHTRHAl0
KBD(VK_WIN,CLICK,0) ACW(GETID("スタート メニュー","DV2ControlHost"),0,244,400,494,0) MMV(656,164,1021) KBD(VK_P,DOWN,932) MMV(656,164,350) KBD(VK_P,UP,0) MMV(656,164,180) KBD(VK_DOWN,CLICK,70) KBD(VK_DOWN,CLICK,29) KBD(VK_DOWN,CLICK,32) KBD(VK_RIGHT,DOWN,12) MMV(656,164,50) KBD(VK_RIGHT,UP,0) MMV(656,164,551) KBD(VK_DOWN,CLICK,0) KBD(VK_RIGHT,DOWN,2) MMV(656,164,3) KBD(VK_RIGHT,UP,0) MMV(656,164,53) KBD(VK_DOWN,DOWN,20) MMV(656,164,120) KBD(VK_DOWN,UP,40) MMV(656,164,36) KBD(VK_RETURN,DOWN,50) MMV(656,164,24) KBD(VK_RETURN,UP,0) MMV(608,211,901) ACW(GETID("システムの復元","PCHShell Window"),124,96,776,576,0) //システムの復元,パソコンの調子が悪いとき
250 :
名無しさん@お腹いっぱい。 :2006/11/11(土) 13:25:33 ID:Ragr+mkN0
>>248 もう分かったから照れないでちゃんと能書き書いとけよ。
そんなに金がホシイんか
>>251 ・クリップボードへキーワードをコピーして
>>248 を実行。
または
・コマンドラインでキーワードを渡す。
ありがとうございます。
「KAJIKAS TOWNSへようこそ」が消えてる! Webアーカイブでも見れねえ!ガーン!
>>102 // 強制電源断
POFF(P_POWEROFF or P_FORCE)
// 00秒後にシャットダウン
DOSCMD("shutdown.exe -s -t 00")
>>249 // システムの復元
EXEC("C:\WINDOWS\SYSTEM32\Restore\rstrui.exe")
*クラス名:"DV2ControlHost"って何の?
動作記録で得られたスクリプトを他の環境で試すときは要注意。
特に
>>103 の羅列は致命的な動作をする場合が有。
すごい初歩的な質問ですが >// 強制電源断 >9POFF(P_POWEROFF or P_FORCE) > >// 00秒後にシャットダウン >DOSCMD("shutdown.exe -s -t 00") とかはC言語ですか・・・? 差し支えなければ教えてください。
スポポポポポポーン!!! 。 。 。 。 。 。 ゚ 。 。゚。゜。 ゚。 。 / // / / ( Д ) Д)Д)) スパパパパパパーン!!!!!! + ,, * + +※ + ∴ * ※ * * * +※ ゙* ※ * + + ※ ∴ * + * ( Д ) Д)Д))
261 :
名無しさん@お腹いっぱい。 :2006/11/14(火) 08:06:47 ID:p4NCBUUJ0
工ラーがすぐでるのでめんどくせー エラーのどこ直せばよいか、教えてくれれば、よいソフトと言えるが
262 :
名無しさん@お腹いっぱい。 :2006/11/14(火) 09:30:27 ID:gziMcojK0
もう少し スレタイを長くしないと検索にかからず人が増えない
>>261 エラーは君が間違った場所を教えているんだよ。
つか、すなおに質問しろよ。
親切に教えてもらえるぞ。
264 :
名無しさん@お腹いっぱい。 :2006/11/15(水) 20:37:40 ID:nx6se5lf0
KBD(VK_WIN,CLICK,0) MMV(868,38,10) ACW(GETID("スタート メニュー","DV2ControlHost"),0,260,400,478,0) MMV(868,38,5) MMV(868,38,11) KBD(VK_R,DOWN,1) MMV(868,38,2) KBD(VK_R,UP,7) ACW(GETID("ファイル名を指定して実行","#32770"),3,562,403,168,0)
265 :
続き :2006/11/15(水) 20:39:21 ID:nx6se5lf0
MMV(868,38,7) MMV(868,38,5) KBD(VK_SHIFT,DOWN,3) KBD(VK_SHIFT,DOWN,4) KBD(VK_SHIFT,DOWN,4) KBD(VK_SHIFT,DOWN,3) KBD(VK_C,DOWN,10) MMV(868,38,5) MMV(868,38,0) KBD(VK_C,UP,10) KBD(VK_SHIFT,UP,1) KBD(VK_OEM_1,DOWN,2) MMV(868,38,20) KBD(VK_OEM_1,UP,11) MMV(868,38,280) KBD(VK_OEM_5,DOWN,1) MMV(868,38,20) KBD(VK_OEM_5,UP,10) MMV(868,38,12) MMV(868,38,2) KBD(VK_RETURN,CLICK,20) MMV(868,38,20) MMV(868,38,1) ACW(GETID("ローカル ディスク (C:)","CabinetWClass"),295,54,631,600,0) // ローカルデスクCを開く、 これをsendstrで開くにはどうすればいいですか? スタート⇒ファイル名を指定して実行でsendstr使いたいんだけどうまくいかない
OEMキーってなんだっけ? ボリュームとかIEランチャの所謂インターネットキー?
>>265 EXEC("explorer.exe C:")
↑これで C: は開けるけど駄目なんだろうね。
どうしても「ファイル名を指定して実行」を使いたいなら
shell = CreateOLEObj("Shell.Application")
shell.FileRun
id = GETID("ファイル名を指定して実行","#32770")
SENDSTR(id, "explorer.exe C:", 1, True)
//CLKITEM(id, "OK")
ところで、"DV2ControlHost"って何?
あと、自動取得スクリプトは貼らなくていいから…
>>265 mmvとkbdしかいらないツー事だな。
271 :
続き :2006/11/17(金) 07:54:02 ID:pu68rP8u0
shell = CreateOLEObj("Shell.Application")
shell.FileRun
id = GETID("ファイル名を指定して実行","#32770")
SENDSTR(id, "explorer.exe C:", 1, True)
//CLKITEM(id, "OK")
KBD(VK_RETURN,DOWN,0)
MMV(661,39,140)
KBD(VK_RETURN,UP,0)
>>267 開いたーTHX
>>271 おいおい!
//CLKITEM(id, "OK")
↑このコメントを外せばいいんだよ。
下の3行は不要。
ヘルプをよく読んだ方がいいと思うぞ。
KBD MMV から卒業しようよ。
いらねぇスクリプトばかりだった。 それが普通だけどな。
275 :
名無しさん@お腹いっぱい。 :2006/11/18(土) 09:29:28 ID:GJb2QK8r0
uwscがはやるには、よいスクリプトランキング付け.や、こんな命令をパソコンにやらせたいアンケートいるなあ、
276 :
名無しさん@お腹いっぱい。 :2006/11/18(土) 13:33:47 ID:40Sw6ctk0
パソコン1台しかもたんからKBD MMV で充分、
KBD MMV しか使えないとDQN
278 :
続き :2006/11/21(火) 11:49:43 ID:xXhUGEUE0
>>267 shell = CreateOLEObj("Shell.Application")
↑
この情報はどうやってとるのですか?
右クリックでプロパティでもだめだし
shell.FileRun
id = GETID("ファイル名を指定して実行","#32770")
SENDSTR(id, "explorer.exe C:", 1, True)
//CLKITEM(id, "OK")
>ところで、"DV2ControlHost"って何?
わかりません、マウスとキーボードで作ってるから
print文で出てくるちっこいウィンドウの位置って指定できないのかな? UWSC起動してからマクロ実行すればUWSCにくっついて表示されるけど 引数に指定してマクロ動かすとデスクトップの左上隅に表示されてしまう。 複数実行すると重なって見えないんだよね。
試さずに提案するが、GETIDでGET_LOGPRINT_WINのウインドウIDを取得して、それをACWで位置指定してみたら? やってみたら結果報告ヨロ
>>280 なるほど。いい手です。
試してみたらうまくいきました。ありがとうございました。
282 :
続き :2006/11/22(水) 21:12:36 ID:DUEoKZur0
test
283 :
続き :2006/11/22(水) 21:13:37 ID:DUEoKZur0
shell = CreateOLEObj("Shell.Application")
shell.FileRun
id = GETID("ファイル名を指定して実行","#32770")
SENDSTR(id, "
http://pc7.2ch.net/test/read.cgi/software/1156416884/281n- ", 1, True)
CLKITEM(id, "OK")
ACW(GETID("自動化ツールUWSC使いよ集まれ2 - MICROSOFT INTERNET EXPLORER","IEFrame"),0,0,1024,734,0)
sleep(8)
BTN(LEFT,DOWN,542,347,6)
MMV(542,347,30)
BTN(LEFT,UP,542,347,90)
MMV(542,347,1012)
KBD(VK_SHIFT,DOWN,6)
KBD(VK_TAB,CLICK,2)
KBD(VK_TAB,CLICK,5)
KBD(VK_SHIFT,UP,6)
KBD(VK_T,CLICK,9)
KBD(VK_E,CLICK,190)
KBD(VK_S,CLICK,1)
KBD(VK_T,CLICK,4)
KBD(VK_SHIFT,DOWN,4)
KBD(VK_TAB,CLICK,3)
KBD(VK_TAB,CLICK,4)
KBD(VK_TAB,CLICK,3)
KBD(VK_SHIFT,UP,1)
KBD(VK_RETURN,DOWN,1)
KBD(VK_NEXT,CLICK,1)
KBD(VK_RETURN,UP,0)
MMV(542,347,90)
284 :
続き :2006/11/22(水) 21:26:32 ID:DUEoKZur0
test
285 :
続き :2006/11/22(水) 21:32:35 ID:DUEoKZur0
test
286 :
続き :2006/11/22(水) 21:34:02 ID:DUEoKZur0
1分ごとのテスト
287 :
続き :2006/11/22(水) 21:35:38 ID:DUEoKZur0
test
288 :
続き :2006/11/22(水) 21:36:37 ID:DUEoKZur0
test
289 :
続き :2006/11/22(水) 21:37:37 ID:DUEoKZur0
test
290 :
名無しさん@お腹いっぱい。 :2006/11/22(水) 21:38:34 ID:DUEoKZur0
成功
291 :
続き :2006/11/22(水) 21:39:42 ID:DUEoKZur0
sendstrを使ってやれたらもっといい
292 :
続き :2006/11/22(水) 21:42:57 ID:DUEoKZur0
10時に一回だけtest
ありがとう
294 :
続き :2006/11/22(水) 22:02:57 ID:DUEoKZur0
失敗した
テストスレでやれよボケ
IDをNG指定したが、どうせならトリップぐらいつけて欲しい物だな
だからIEはCOMを使えとあれほど…
KBD SENDSTR SCKEY 以外のキー操作方法はある?
ない。 ちなみにSENDSTRはキー操作ではない。
300 :
続き :2006/11/23(木) 12:58:15 ID:QSlkSJJz0
礼あらざるは聞く無かれ(礼儀しらずの話は聞かなくとも 良い)
301 :
名無しさん@お腹いっぱい。 :2006/11/23(木) 13:03:16 ID:h+KEICCL0
礼儀知らずは人の話を聞かない
ゲームとかで、キャラクターとかの画像を判別するってことできるんですか? たとえば画面にそのキャラクターが出たら攻撃するとか。
スポポポポポポーン!!! 。 。 。 。 。 。 ゚ 。 。゚。゜。 ゚。 。 / // / / ( Д ) Д)Д)) スパパパパパパーン!!!!!! + ,, * + +※ + ∴ * ※ * * * +※ ゙* ※ * + + ※ ∴ * + * ( Д ) Д)Д))
>>302 ComputerVisionでぐぐればいいよ
305 :
続き :2006/11/25(土) 20:14:20 ID:Joh5GvcF0
ここの書き込むボタンをクリックするにはどうするんですか?
306 :
続き :2006/11/25(土) 20:23:09 ID:+KR2N9Va0
自己解決しました 録画ボタン 書き込むの上にカーソルを持ってきて左クリック 停止ボタン 再生ボタン
CMサイトのCMを全自動で見るスクリプトをオネガイします。
uwscってKey Batや joy to keyみたいに キーボードとマウスにドライバレベルで割り込むのは不可能?
不可能
>>310 何したいの?
入力内容のすげ替えだったら無理っぽいけど、
UWSCスクリプトを実行中にマウス・キーボードの
入力を禁止する関数ならあったと思った。
16進数にして表示するにはどうしたらいいのでしょう? a=32767 print $a としてもエラーが出てしまいます。
っ【FORMAT関数】
// DROPFILE サンプル "df.uws" - ファイル比較 DF 1.36 の場合(ファイラーのDFでは無い) app = "?:\?????\DF\DF.exe" //■DF.exe のパス wtitle = "DF" //■タイトル wclass = "Afx:400000:8:10011:0:" //■クラス //-------------------------------------------- fpath = PARAM_STR[0] id = GETID(wtitle, wclass, 0.1) if id<0 then id = EXEC(app) ifb id>0 then CTRLWIN(id, ACTIVATE) ifb fpath<>"" then fso = CreateOLEObj("Scripting.FileSystemObject") dir = fso.GetParentFolderName(fpath) fname = fso.GetFileName(fpath) DROPFILE(id, dir, fname) endif endif === Unknown File & Directory へ関連付け "reg.uws" === uws = GET_CUR_DIR + "\df.uws" //■↑df.uws のパス keyname = "DF" //■ caption = "DFで比較(&A)" //■ pth = "<#DBL>"+ GET_UWSC_DIR +"\UWSC.exe<#DBL> <#DBL>"+ uws +"<#DBL> <#DBL>%1<#DBL>" //-------------------------------------------- ws = CreateOleObj("Wscript.Shell") ws.RegWrite("HKCR\*\shell\"+ keyname +"\", caption ,"REG_SZ") ws.RegWrite("HKCR\*\shell\"+ keyname +"\command\", pth ,"REG_SZ") ws.RegWrite("HKCR\Directory\shell\"+ keyname +"\", caption ,"REG_SZ") ws.RegWrite("HKCR\Directory\shell\"+ keyname +"\command\", pth ,"REG_SZ") // DropHandler (本家サンプルで *.uws を関連付けた場合) ws.RegWrite("HKCR\UWSCscript\shellex\DropHandler\","{60254CA5-953B-11CF-8C96-00AA00B8708C}","REG_SZ")
>>316 補足
DropHandler @Aどちらでも可。
//@ Shell Extension For Windows Script Host - wshext.dll 使用
>>316 ws.RegWrite("HKCR\UWSCscript\shellex\DropHandler\","{60254CA5-953B-11CF-8C96-00AA00B8708C}","REG_SZ")
//A .exe drop target - shell32.dll 使用
ws.RegWrite("HKCR\UWSCscript\shellex\DropHandler\","{86C86720-42A0-1069-A2E8-08002B30309D}","REG_SZ")
tabキーやFキーの操作も記憶させたいのですが?
引っ越したばかりでネット環境が部屋にない。でも2chは見たい。 ネカフェで1個1個スレをクリックしてログを保存…面倒くさい。右手が吊る。 そんな時、UWSCを知りました。 openjane+UWSCでスクリプト再生。あら雑誌を読んでる内に板全部のスレが保存できる。 700スレくらいの板で3分くらい。USBメモリで持ち帰って、家でゆっくりROM。 なんて便利なんだろう、作者さんありがとう。 同時接続エラーが出ない程度のスピードにしてるんだけど2chの鯖に負担かかる? なんかもっと便利な使い方ありそうだ。過去スレ読んできます。
アクティブにしないで、その操作だけを送るって事できないですよね
残念ながら出来ないっすね
>>321 自動巡回できるちゃんぶら使えばいいのに。
>>323 ですよね。
自分でプログラム核しかないかぁ
//おみくじ.UWS DIM 運勢[3]="大吉","中吉","吉","末吉" R=RANDOM(4) FOR A=0 TO 3 IFB R=A MSGBOX(運勢[A]) EXIT ENDIF NEXT
//おみくじ.UWS DIM 運勢[3]="大吉","中吉","吉","末吉" MSGBOX(運勢[RANDOM(4)])
ああそうなのか、直接入れれば2行ですむのか。 どうもありがとう。
>>323 UWSCってWin32API呼べるんでしょ?
SendMessage とか PostMessage でやれるんじゃないの?
test test test むずい むずい むずい test こんなのみつけました
331 :
名無しさん@お腹いっぱい。 :2006/12/01(金) 06:45:36 ID:HqQsiF3P0
// Internet Explorer 上での文字設定、ボタンのクリック (COM利用)
// エディトボックス、ボタンはHTMLソースの'NAME='や'VALUE=' から確認
IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True
IE.Navigate("
http://prog-etc.bbs.thebbs.jp/1164265310/ ")// 掲示板
while True // 接続表示待ち
if (! IE.busy) and (IE.readyState=4) then Break
sleep(0.1)
wend
GETTIME()
timeb=g_time_yy2+"年"+g_time_mm2+"月"+g_time_dd2+"日"+g_time_hh2+"時"+g_time_nn2+"分"
IE.document.all["body"].value = timeb// タイトル書込み
IE.document.sm.click()
//IE.document.all["body"].value = "body"// タイトル書込み
IE.document.sm.click()
日付
書き込むところまでいくんだけど書き込みボタンクリックしない。
332 :
名無しさん@お腹いっぱい。 :2006/12/01(金) 07:12:38 ID:xAQgo5dN0
手軽に画像の更新をしたいなあと思って 画像をショートカット(実行ファイル)に放り込むと特定のアップローダーにpostする、ということをやりたいんですけど、 このツールで出来ますか?
>>332 まぁしこしこスクリプト書けばできるが、あまりUWSCが向いてるようには思わない。
PerlとかでHTTPしゃべらす方がスマートだと思う。
>>331 smは、documentの直下じゃないよ。
IE.document.Fm.sm.click()
とか
IE.document.all["sm"].click()
formsから辿る方法とか、いくらでもやり方ある
※ Fmは、FROMタグのname
335 :
名無しさん@お腹いっぱい。 :2006/12/01(金) 21:30:51 ID:Xs7RUjw90
CHKIMGをFPSゲームで使おうと思っているのですが、動的なところでどうしても画像判別ができません。 マウスがアクティブになるところ(メニュー画面など)では一応読み込めるようです。 フルスクリーンやウィンドウ両方で試しても読み込むことができませんでした。 CHKIMGなどでは判別することは不可能なのでしょうか? わかる方がいましたらお願いします。
if timeGetTime-Lasttiger > DWord(teletime.Value*1000) then if GetForeGroundWindow=TargetWnd then begin keybd_event(VK_F2+cbAutoSC.ItemIndex,0,0,0); keybd_event(VK_F2+cbAutoSC.ItemIndex,0,KEYEVENTF_KEYUP,0); LastAutoShortcut:=timeGetTime; end; end else LastAutoShortcut:=timeGetTime;
337 :
名無しさん@お腹いっぱい。 :2006/12/02(土) 00:03:58 ID:CWQeQlur0
338 :
名無しさん@お腹いっぱい。 :2006/12/02(土) 00:34:00 ID:lizCI7GG0
06年12月02日00時33分
339 :
名無しさん@お腹いっぱい。 :2006/12/02(土) 07:48:39 ID:43OZZphG0
しかしまだ難しい、ちょっとWを全角.半角間違えただけでエラーがでて、その理由までUWSCは教えてくれない、 10分もプログラムにらめっこ状態になった
エラーが出て教えてくれてるわけだが。
341 :
名無しさん@お腹いっぱい。 :2006/12/02(土) 19:33:04 ID:DDIOW/mZ0
// Internet Explorer 上での文字設定、ボタンのクリック (COM利用)
// エディトボックス、ボタンはHTMLソースの'NAME='や'VALUE=' から確認
IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True
IE.Navigate("
http://prog-etc.bbs.thebbs.jp/1164265310/ ")// 掲示板
while True // 接続表示待ち
if (! IE.busy) and (IE.readyState=4) then Break
sleep(0.1)
wend
GETTIME()
timeb=g_time_yy2+"年"+g_time_mm2+"月"+g_time_dd2+"日"+g_time_hh2+"時"+g_time_nn2+"分"
IE.document.all["body"].value = timeb// タイトル書込み
IE.document.all["sm"].click()
IE.document.all["sm"].click() //ここがうまくいかなくて書き込めないTHEBBS 書き込み
342 :
名無しさん@お腹いっぱい。 :2006/12/03(日) 08:13:53 ID:Zdl4S4Sj0
ソースにnameが無い場合、どうやってclickを設定するの?
343 :
名無しさん@お腹いっぱい。 :2006/12/03(日) 13:24:17 ID:snS6N3rq0
sleep(0.1)を入れるといいかも
>>341 せっかく新しい関数が追加されてるので
IESetData(IE,True,"TAG=input",4) とか
IESetData(IE,True,"sm")
IE.document.Fm.sm.click() でもいけると思うけど
>>342 IE.document.all.tags["input"].item[3].click() みたいな感じで
あと最近追加されたIE操作用の関数もあります
マウス動かしたりchkimgとか使わずにCOMの操作だけで済む場合は UWS使わずにVBスクリプトで書くほうがスマートだなと最近気付いた。 まだWebで調べながら試行錯誤しながら書くレベルだけど どこでも実行できるから便利だよね。
最近スレ伸びてるね もしかしてどこか厨雑誌で紹介された?
348 :
名無しさん@お腹いっぱい。 :2006/12/03(日) 21:25:23 ID:JOKqZmnZ0
// Internet Explorer 上での文字設定、ボタンのクリック (COM利用)
// エディトボックス、ボタンはHTMLソースの'NAME='や'VALUE=' から確認
IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True
IE.Navigate("
http://pc7.2ch.net/test/read.cgi/software/1156416884/200n- ")// 掲示板
while True // 接続表示待ち
if (! IE.busy) and (IE.readyState=4) then Break
sleep(0.1)
wend
GETTIME()
timeb=g_time_yy2+"年"+g_time_mm2+"月"+g_time_dd2+"日"+g_time_hh2+"時"+g_time_nn2+"分"
IE.document.all["MESSAGE"].value = timeb// タイトル書込み
IE.document.all["submit"].click()
//このスレに挑戦
349 :
名無しさん@お腹いっぱい。 :2006/12/03(日) 21:30:43 ID:JOKqZmnZ0
06年12月03日21時30分
350 :
名無しさん@お腹いっぱい。 :2006/12/03(日) 21:31:57 ID:JOKqZmnZ0
成功21時40分に自動書き込み設定
351 :
名無しさん@お腹いっぱい。 :2006/12/03(日) 21:40:40 ID:JOKqZmnZ0
06年12月03日21時40分
352 :
名無しさん@お腹いっぱい。 :2006/12/03(日) 21:41:16 ID:JOKqZmnZ0
よっしゃー
↑喜んでるところまで自動なら神
354 :
名無しさん@お腹いっぱい。 :2006/12/04(月) 03:25:18 ID:WHrXC3Jy0
ありがとうございます
テストはテストスレでやれよボケ
356 :
名無しさん@お腹いっぱい。 :2006/12/04(月) 09:02:00 ID:Qn4XOe5q0
type="file"のボックスのvlalueに入力する方法ってある? type="text"と同じように指定しても入らない
ファイル名入力フィールド(type="file")
ブラウザからWWWサーバーにファイルをアップロードする際に用います。
入力フィールドの横には参照ボタンが表示されます。
WWWサーバー側にはファイルを受け取るための特別なCGIスクリプトなどを設置しておく必要があります。
セキュリティのために、初期値を設定したり、スクリプトで値を操作することはできません。
http://www.tohoho-web.com/html/input.htm
クリップボードへ入力したいものを送っておいて フォーカスを移動して右クリック貼り付け SCKEY(getid("- Windows Internet Explorer"),VK_APPS,VK_DOWN,VK_DOWN,VK_DOWN,VK_DOWN,VK_RETURN)
359 :
名無しさん@お腹いっぱい。 :2006/12/05(火) 00:38:41 ID:TfVwWult0
IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True
IE.Navigate("
http://headline.2ch.net/bbynews/ ")// 掲示板
while True // 接続表示待ち
if (! IE.busy) and (IE.readyState=4) then Break
sleep(0.1)
wend
ACW(GETID("2ちゃんねる 電車男 ニュース ヘッドライン BBY (NEWS) - MICROSOFT INTERNET EXPLORER","IEFrame"),68,54,870,658,0)
KBD(VK_ALT,DOWN,40)
KBD(VK_F,DOWN,31)
KBD(VK_F,UP,0)
KBD(VK_ALT,UP,170)
KBD(VK_CTRL,DOWN,30)
KBD(VK_A,DOWN,10)
ACW(GETID("WEB ページの保存","#32770"),72,77,654,411,0)
BTN(LEFT,UP,)
//日付を入れて保存するにはどうすればいいの?
お前等2chにアクセスすんのにいちいちIE使うなボケ。
基本は wget と curl だよな。 寂しくなったりしたときは telnet で喋るのもいいが。
362 :
名無しさん@お腹いっぱい。 :2006/12/05(火) 10:31:03 ID:PMUEJKEi0
まだ難しいよな、数学で言えば、掛け算の九九をすっとばして、高等数学やるような気持ち
でも「UWSCは難しい、もっと簡単にせよ」というのはこのスレでは一人なんだよな
364 :
名無しさん@お腹いっぱい。 :2006/12/05(火) 16:39:26 ID:Xx8yar820
すれ違いかもしれないけど、 特定の時刻に決まった座標位置をダブルクリックしたい場合 このソフトうまく動かないんだけど、ネットゲームで使いたいんだけど
>>359 ie = CreateOLEObj("InternetExplorer.Application")
ie.Visible = True
ie.Navigate("about:blank")
while ie.Busy or ie.ReadyState<>4; SLEEP(0.1); wend
IEのウインドウID = GETID(" - Microsoft Internet Explorer","IEFrame")
DEF_DLL PostMessageA(HWND,Long,Long,DWORD):Bool:user32.DLL
PostMessageA(IDToHnd(IEのウインドウID), $111, $102, 0)
ページの保存ダイアログID = GETID("Web ページの保存","#32770")
日付 = "現在の日時を設定" // GETTIME(0)〜
SENDSTR(ページの保存ダイアログID, 日付 , 1, True)
CLKITEM(ページの保存ダイアログID, "保存")
// 敢えて変数に全角を使った。 このままで動くから…
366 :
名無しさん@お腹いっぱい。 :2006/12/05(火) 18:54:35 ID:PMUEJKEi0
うーんうまくいかない。自分はタイマー自動でファイル(F)⇒名前をつけて保存 ⇒ファイル名(N)でファイル名の後ろに日付をつけて保存したいんだけど、 マウスとカーソルだけでプログラム作れるようになればいいのになあ
367 :
名無しさん@お腹いっぱい。 :2006/12/05(火) 19:07:09 ID:PMUEJKEi0
>>365 あーできた
ありがとうただ
ファイルの種類をアーカイブで保存したかった。
368 :
名無しさん@お腹いっぱい。 :2006/12/05(火) 19:17:24 ID:PMUEJKEi0
// 文字の送信 SENDSTR( ID, 文字列, [番号, 送信モードフラグ, ACC指定] ) 引数 ID: Windowを識別するID (ID = 0 であれば クリップボードへ) 文字列: 送りたい文字列 番号: 左上から数えたエディトコントロールの順番 (1から指定) (デフォルトはフォーカスを持ったエディトコントロール) 送信モードフラグ: FALSE: 追加 (デフォルト) TRUE: 置き換え ACC指定: FALSE: APIによる (デフォルト) TRUE: アクセシビリティ用インターフェースを利用 番号の部分が難しい、ウインドウみたいにソースが使えない
369 :
名無しさん@お腹いっぱい。 :2006/12/05(火) 19:28:22 ID:PMUEJKEi0
なきゃないでかまわんがやはり フリーのソフトはつかわんほうがいいのかな。 なんか怪しいソフトでも困るしなあ。いくら便利でも社長がちゃんとした人物 でないと、ウィンドウズXP作ったビルゲイツはエイズの研究費出したり して悪人でないだろうと思って使っているが、社員全部を管理できるかといえば というきがする。
な フ な で し と
とりあえず難しいから使えない=>フリーソフトは怪しいから使わない、 っていう論法にワラタ。 バカは無理して使わなくてもいいお?
個人的には、uwscがオートメーションサーバー機能搭載してくれたら最高なんだが・・・ wshから簡単に利用できると使用者激増するだろうなー。 独自言語だと、どうしても習得に手間と時間かかるし
>>366 ,367
id = GETID("Web ページの保存","#32770")
GETTIME(0); 日付 = "_" + G_TIME_YY2 + "-" + G_TIME_MM2 + "-" + G_TIME_DD2
SENDSTR(id , 日付 , 1, False, True)
SCKEY(id, VK_ALT, T); SLEEP(0.1); SCKEY(id, VK_W, VK_RETURN)
//CLKITEM(id, "Web アーカイブ、単一のファイル (*.mht)", CLK_LIST) //←何故か失敗する
//CLKITEM(id, "保存")
>>362 ,368-369 ID:PMUEJKEi0
あんたの日記帳じゃないんだから、余計なレス&コピペは不要!
あっそ
>>372 要らん事言うな。
やり兼ねないだろ。VBS有るのに。
俺はもっと退化してほしい。
>>372 いきなりではとっつき難いけど、WSHが書けるんなら楽勝だと思うよ。
オレはVBS,JSから入ったんで目から鱗状態だった。
WSHで出来ることはWSHでやればいいし。
UWSCからWSH等を利用するのは割と簡単なんだけどなぁ…
>>373 id = GETID("Web ページの保存","#32770")
tt = COPY(GETSTR(id, 1), 1, 8) // ページタイトルの先頭から8文字をコピー
GETTIME(0); 日付 = "_" + G_TIME_YY2 + "-" + G_TIME_MM2 + "-" + G_TIME_DD2
SENDSTR(id, tt + 日付, 1, True)
SCKEY(id, VK_ALT, T); SLEEP(0.1); SCKEY(id, W, VK_RETURN) // *.mht で保存
377 :
名無しさん@お腹いっぱい。 :2006/12/06(水) 13:43:20 ID:BvKVwaQG0
エッフェル塔のライブカメラの画像を日付つけて保存、(スケジューラーで1時間ごとにするときれい)
IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True
IE.Navigate("
http://www.paris-live.com/paris_webcam/eiffeltowerwebcams.htm ")// 掲示板
while True // 接続表示待ち
if (! IE.busy) and (IE.readyState=4) then Break
sleep(0.1)
wend
ACW(GETID("PARIS-LIVE.COM - PARIS WEBCAM - EIFFEL TOWER - MICROSOFT INTERNET EXPLORER","IEFrame"),68,54,870,658,0)
BTN(LEFT,DOWN,800,67,140)
ACW(GETID("PARIS-LIVE.COM - PARIS WEBCAM - EIFFEL TOWER - MICROSOFT INTERNET EXPLORER","IEFrame"),68,54,870,658,0)
BTN(LEFT,UP,800,67,91)
KBD(VK_RALT,DOWN,340)
KBD(VK_F,DOWN,441)
KBD(VK_F,UP,60)
KBD(VK_RALT,UP,80)
KBD(VK_CTRL,DOWN,40)
KBD(VK_A,DOWN,0)
ACW(GETID("WEB ページの保存","#32770"),72,77,654,411,0)
378 :
続き :2006/12/06(水) 13:43:49 ID:BvKVwaQG0
KBD(VK_A,UP,0) KBD(VK_CTRL,UP,0) KBD(VK_RALT,DOWN,3465) KBD(VK_I,CLICK,311) KBD(VK_RALT,UP,170) KBD(VK_RALT,DOWN,40) KBD(VK_N,CLICK,40) KBD(VK_SPACE,CLICK,40) GETTIME() timeb=g_time_yy2+"年"+g_time_mm2+"月"+g_time_dd2+"日"+g_time_hh2+"時"+g_time_nn2+"分" SENDSTR(GETID("WEB ページの保存"),timeb+"EIFFEL TOWER") KBD(VK_RALT,UP,340) KBD(VK_RALT,DOWN,481) KBD(VK_T,CLICK,30) KBD(VK_RALT,UP,221) KBD(VK_DOWN,DOWN,10) KBD(VK_DOWN,UP,20) KBD(VK_DOWN,DOWN,641) KBD(VK_DOWN,UP,0) KBD(VK_RETURN,DOWN,321) KBD(VK_RETURN,UP,0) KBD(VK_RETURN,DOWN,145) ACW(GETID("WEB ページの保存","#32770"),322,283,379,168,0) KBD(VK_RETURN,UP,0)
NGWordに追加 KBD
SCKEYっていうとっても便利な命令があるんだけどなーwww
>>378 いいですね!
レスをまとめて参考にしたいのでコテにしてくれませんか
何この日記帳
>>377 わざわざIE起動せんでも、直接DLしたほうがいいんでないかい。
url = "
http://www.images2-abcparislive.com/eiffelcam1.jpg "
http = CreateOLEObj("MSXML2.XMLHTTP");
http.open("GET", url, false);
http.SetRequestHeader("If-Modified-Since", "Thu, 01 Jun 1970 00:00:00 GMT")
http.SetRequestHeader("Pragma", "no-cache");
http.SetRequestHeader("Cache-Control", "no-cache");
http.send("");
ifb http.status = 200 then
gettime()
s_time = g_time_yy2+"年"+g_time_mm2+"月"+g_time_dd2+"日"+g_time_hh2+"時"+g_time_nn2+"分"
ados = CreateOLEObj("ADODB.Stream");
ados.Open();
ados.Type = 1;
ados.Write(http.responseBody);
ados.SaveToFile(s_time+" EIFFEL TOWER"+".jpg", 2);
ados.Close();
ados = NULL
endif
http = NULL
近頃異様にレス伸びてんなあ。 どこかで紹介されたか? そういや、これでLotusNotesって操作出来るんかな?
できないものはない あえて言うとすればUWSCそれ自身
DirectInput にイベント放り込んだりできないじゃない。 DLL 呼び出せばできるが。
キーボード操作で KBD(VK_RALT,UP,100) KBD(VK_D,DOWN,100) とあるのですがUPとDOWNの違いは何なんでしょうか? 普通のクリックしかしていないつもりなんですが表記が違ってて…
DOWNがキー押下げ UPが押していたキーを離す
どういたしまして
KBDとMMV以外は廃止したほうがいい。
むしろKBDとMMVを廃止したほうがいい。
>>392 mmvとkbdだけなら他のOSでも動く。
mmvとkbdだけにしてそれを拡張したほうがいい。
>>369 >>378 かの有名な社長はきちんと偽善事業していますが
名前からして怪しい!そう思いませんか?
怪しいフリーソフトは使わない方が良いと思います。
KBDは便利ですが…手遅れになる前に…
あなたに感謝してます。
貴重な情報ありがとう。
395 :
名無しさん@お腹いっぱい。 :2006/12/07(木) 22:14:57 ID:7ZOeS0w50
>>394 桜田門の人?
個人情報取るときは、本人に教えてほしい、共和党が選挙で破れたのは
国民の盗聴しすぎたからでないのかな、
民主党になれば権力のトップが替わるので不正が発見しやすい。
Excelからマクロでスクリプトを出力してUWSCを起動させてる馬鹿は、俺以外にいるか?
漢だな 使ってるCADでショートカット割り振れないアイコン、しかも右下の辺鄙なとこにあるやつね、 そいつをクリックするのがめんどいんでロジの8つボタンマウスに割り振ってる、俺は。
連動させてファイルの圧縮も自動化させたいんだけどなにか相性いいやつある? できればコマンドラインで操作したい LHAはファイル名の制限きついし……
399 :
396 :2006/12/08(金) 00:37:07 ID:0g+qQw1G0
>>397 エンドユーザが作成したデータを元に、
コマンドプロンプトもどき(メインフレームと通信する奴)に
入力する作業を自動化したら、そうなってしまったんだよ。
ホント レガシーシステムは地獄だぜ! フゥハハハーハァー
>>398 引数につけたファイルがアーカイブでなければ圧縮する
その際の設定は事前に設定しておく
っていうアーカイバを使えばいいんじゃないか?
>>398 アイコンに D&D すると圧縮してくれる奴なら、
コマンドラインから渡せるんじゃないの?
と言うか別に DLL 叩けばいいんジャマイカ?
ずーっと前から気になってたんだけど○○叩くって何からきてんの? DLL叩く、Winsock叩くとか日本語として変じゃない?
403 :
名無しさん@お腹いっぱい。 :2006/12/08(金) 20:27:49 ID:dcPVzq7I0
IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True
IE.Navigate("
http://prog-etc.bbs.thebbs.jp/1164265310/ ")// 掲示板
while True // 接続表示待ち
if (! IE.busy) and (IE.readyState=4) then Break
sleep(0.1)
wend
select RANDOM(7)
case 0
moji="長すけ「ばかやろ!」"
case 1
moji="仲本「長さんのいうとうり」"
case 3
moji="加藤「すんずれいしました」"
case 4
moji="高木「ブー」"
case 5
404 :
続き :2006/12/08(金) 20:29:21 ID:dcPVzq7I0
moji="荒井「なんだばかやろ」" case 6 moji="志村「あいーん」" case 7 moji="また来週" selend select RANDOM(3) case 0 mo="志村" case 1 mo="また来週" case 2 mo="加藤" selend IE.document.all["crypt_moto"].value = moji// タイトル書込み IE.document.all["name"].value =mo // 名前書込み IE.document.all["body"].value =moji//テキスト書き込み IE.document.all["sm"].click() SLEEP(10) ACW(GETID("THEBBS 書き込み - MICROSOFT INTERNET EXPLORER","IEFrame"),69,8,870,658,0) IE.document.all["sm"].click()
そのURL覗いてみたら早速試されてる形跡があってワロタ
406 :
名無しさん@お腹いっぱい。 :2006/12/08(金) 21:33:55 ID:hZKfmjKg0
ありがとう!
>>406 無意味な文章を定期的に書き込むのは「迷惑」行為に当たるぞ。
良く考えて行動してくれ。
UWSCがとばっちりを受けて公開中止になったらどう責任取るんだ!
削除要請出しとけ!
>>402 英語の kick から来てるんだからおかしくても問題無いだろ。
410 :
名無しさん@お腹いっぱい。 :2006/12/09(土) 06:23:07 ID:MrCYpI9z0
どういたしまして
2チャンに自動書き込みするマクロの例プリーズ
sendstr(getid("OpenJane 【ソフトウェア】 - 自動化ツール"),"ウルセー馬鹿")
某競馬ゲームに自己開催レースを開始する際に4数字を入力しなければならず 当然その文字はサイズ及び位置が微妙に変化しキャプチャしたファイルを用意するには 膨大な量になるのですが、、、こういった方法以外で4つの数字を判別して自動的に 入力する様なスクリプトを組むには何か方法はありますでしょうか?
0−9999まで順番に入力。
その4つの数字ってテキストじゃなくて画像データなの?
最近いろんなフォームで、画像で数字を表示して「この数字を入力してください」って出るよな。 自動処理よけなんだろうな。 画像の領域さえ分かれば、それをBMPに保存して、OCRソフトに送り込んで… スゲー面倒くさそう。 こういう不正処理の仕方ばっかり話し合って不正ユーザー御用達ソフトのイメージがついちゃうのもちょっとアレだなあ。
既存のOCRソフトは印刷物とかのフォントが整った文字しか読めないんだよね。 結局自分でプログラム書かないと無理だった。 大学の図書館で画像認識の教科書借りてきたよ。
>>415 テキストのような綺麗な文字を大小の組み合わせ4文字にしている画像データですね。
>>416 不正というかこういったツールが無いお陰で過疎化が進んでいて金をがめたい企業が
課金アイテムを更に高額化させて(役所考え的)悪循環を生んでいる状態で
自主開催レースを行うと微々たるアイテムですが手に入るという条件から
一つの防衛手段であり、ハッキングを促すツールではないですしGAMEデータを直接改変
するものでは無いのでユーザーの同士の為なら企業の意思に反しても咎めません特には・・ね。
OCRか・・・
ていーうかーそれくらい手入力しろよ。
420 :
キタ━━━━━━m9( ゚∀゚)━━━━━━!! :2006/12/10(日) 19:50:22 ID:kdkSxCJw0
UWSC 自動化ソフト Ver 4.1c 2006/12/10版 フリーソフト [Ver4.1c] 例外処理構文 Try-Finally, Try-Except を付けた SENDSTR関数にてフォーカスが移動するようにした IESETDATA関数にて input type="file" タグに文字を送れるようにした MSGBOX, FUKIDASI, ログ等のフォントを変更可にした(INIファイルのDefaultFont) 一部のドロップダウン式のコンボボックスにて内容が変更できなかったのを修正 FGET, INPUT にて数字の時にゼロの小数点が消える、指数表記になるのを修正 RecIE ブラウザ(IE)上の操作を記録 Ver 1.0a 2006/12/10版 フリーソフト [Ver1.0a] IELINKにて複数行表示に対応していなかったのを修正
str = GetPnirText()
MSGBOX(str)
function GetPnirText()
// 選択文字列を取得(UWSC 4.1c, Sleipnir 1.67 で動作確認)
Dim doc, idx, pnir
try
pnir = CreateOLEObj("Sleipnir.API")
except
MSGBOX(TRY_ERRMSG + "<#CR><#CR>" +_
"<#TAB><#TAB>Sleipnirを起動してから実行して下さい。")
Result = -1
Exit // ExitExit
endtry
idx = pnir.GetDocumentID(pnir.ActiveIndex)
doc = pnir.GetDocumentObject(idx)
try
while POS("FRAME",doc.activeElement.tagName)
//msgbox(POS("FRAME",doc.activeElement.tagName)) // デバッグ用
doc = doc.activeElement.contentWindow.document
wend
Result = doc.selection.createRange().text // 選択文字列
except
Result = ""
endtry
fend
===========================
>>376 //SCKEY(id, VK_ALT, T); SLEEP(0.1); SCKEY(id, W, VK_RETURN) // *.mht で保存
CLKITEM(id, "Web アーカイブ、単一のファイル (*.mht)", CLK_LIST) //←何故か成功する 4.1c
CLKITEM(id, "保存")
トライって何?
423 :
名無しさん@お腹いっぱい。 :2006/12/12(火) 07:43:07 ID:hRXY00b50
<< ありがとうございます。
メモ帳が開いていれば以下の動作をする と言う文を作る場合、式の部分はどの様に書けばいいのでしょうか すみませんが教えてください。
while メモ帳が開いていれば() 以下の動作をする() Wend Function メモ帳が開いていれば() Result= getid("メモ帳")>=0 Fend Procedure 以下の動作をする() : Fend
//ヤター、ホットキーランチャーもどき出来たよ【CTRL+L】
//ホットキーランチャーもどき.UWS
WHILE 1
SLEEP(0.02)
IFB GETKEYSTATE(VK_ESC)
MSGBOX("ホットキーランチャーもどきを終了します。")
EXIT
ENDIF
IF GETKEYSTATE(VK_CTRL) and !GETKEYSTATE(VK_ALT) and !GETKEYSTATE(VK_SHIFT) _
and GETKEYSTATE(VK_L) THEN CALL MENU
WEND
//MENU.UWS
DIM PP[]="0. メモ帳","1. 電卓","UWSC"
X=POPUPMENU(PP)
IFB X<0
EXIT
ELSEIF X=0
EXEC("NOTEPAD")
ELSEIF X=1
EXEC("CALC")
ELSEIF X=2
EXEC(GET_UWSC_DIR+"\UWSC")
ENDIF
>>425 ヘルプの例の一番あたまにあったと思います。
誰かUWSCの基本関数(バージョン1.0からあったようなヤツ)を VBS用にしたのを公開してくれないか? 対応リストがあるとどっちのユーザにも便利だと思うんだが?
そんな便利なものがあったらUWSC必要なくなるな。
430 :
名無しさん@お腹いっぱい。 :2006/12/12(火) 21:08:13 ID:I4NEN3JE0
質問です。 FOpenで開いたファイルを別名で保存したいのですがFCloseすると上書きになってしまいます。 開いたファイル名+"処理済"として出力したいのですがこういった事は出来ないのでしょうか?
それでもやっぱりUCSWの法が便利だよ。 ただ、誰かに配る時はVBSにしておいた方が便利だから。
432 :
名無しさん@お腹いっぱい。 :2006/12/13(水) 00:29:48 ID:08giVOq70
>>430 俺も知りたい。
現状doscmdで処理ファイルを別フォルダにコピーしてdoscmdでリネーム、その後処理を行っている。
この方法だとコピー>読み込み>処理>書き出しになってしまう。
コピーする分時間的ロスになるので
読み込み>処理>書き出しで出来る方法があれば知りたい。
>>432 多分close時にファイルを別名保存は無理なような気がス…
というか、ファイルのOpen前に
doscmd("copy /y hoge.txt hoge,txt.bak") とかではダメなんか?
434 :
名無しさん@お腹いっぱい。 :2006/12/13(水) 01:52:17 ID:Ofnypsy40
FID1 = FOPEN(ファイル名) STR = FGET(FID1, F_ALLTEXT) FCLOSE(FID1) // 処理 FID2 = FOPEN(ファイル名+"処理済",F_WRITE) FPUT(FID2,STR) FCLOSE(FID2)
435 :
425 :2006/12/13(水) 01:52:34 ID:XdCi3l4y0
>>426 ID:xrHkevWY0
「Procedure 以下の動作をする()」 でメモ帳を閉じないと悲惨なことになるが…
ケアレスだと信じたい。
なんで while なの?
で?
>>433 >>434 ありがとうございます。
ファイルサイズが大きい&多いのでコピーはしたくなかったんです。
確かに
>>434 のやり方ならロス無いですね。
ありがとうございました。精進します。
439 :
名無しさん@お腹いっぱい。 :2006/12/14(木) 10:52:57 ID:b++jM5LY0
面白いプログラムだけどWinnyの作者が有罪判決されたしな プログラムこれから 作りにくい、悪用したやつがわるいと思うが、作った者を悪いとした判決
>>439 日本語でおk
あと、京都地裁は ny を作ったことが悪いとは言っていない。
判決ちゃんと読むべき。
UWSCだっていくらでも悪用できるし、たぶん作者だってそれを認識した上で公開してるでしょ? 他の様々なソフトとその作者もしかり・・・ 半ケツをチラっと見たうえで、俺も439と同じように感じた。
良くは知らないけど、
あれの場合は2chで認識してる旨の発言をしてるのが決め手なんでしょ?
少なくともそれすらないのに
>>441 みたいに「たぶん」なんて理由では裁けないでしょ
使い方を紹介しまくった、某雑誌も有罪にして欲しいです
444 :
名無しさん@お腹いっぱい。 :2006/12/14(木) 23:56:24 ID:3Kt7T7f60
Winnyのにたようなソフトが外国にあったと思うが、その場合どうなるんだろう. 外国人は罰せず日本人だけ罰したら日本のプログラム技術 がどんどん遅れるだろう、
ツール自体は白って明言されてるだろ。
446 :
名無しさん@お腹いっぱい。 :2006/12/15(金) 08:59:40 ID:Ez6AWitt0
ツール自体と、その開発行為が白でも、ツールが悪用されるのを認識したうえで、提供を続ければ、 幇助とみなされるってことじゃないの?判決の意味は。 色んなソフトの作者の掲示板に、 「このソフトは、悪用できる可能性がありますが、どうお考えですか?」 とか、 「このソフト悪用しようと思います」 みたいなことを書いてまわれば、次から次へと公開停止になるんじゃまいか?w
>>439 ,444,446
「UWSCの知名度を上げたい」という趣旨は充分承知してます。
しかし、既ユーザーのスレッドに幾ら数多く書き込んだとしても
「状況は何も変わらない」と思えるのは私だけでしょうか?
むしろ現状では逆効果のような気がして成りません。
やはり、ご自分でサイトを立ち上げてUWSCの優位性を
力説された方が最も効果的ではないかと考えています。
あなたはどのように思われますか?
ついでに、余り足跡を残し過ぎない方が安全です。
↑意味不明w 誤爆?
あ、バカには理解できないかもしれませんね。
>>445 > ツール自体は白って明言されてるだろ。
だったら有罪はおかしいだろ。お前もこじつけで逮捕されやがってみやがっれ
452 :
名無しさん@お腹いっぱい。 :2006/12/16(土) 17:35:17 ID:Qs/JjjiN0
さて、自作スクリプトを晒していきますよ。最近このツールに嵌ったからな
>>452 そういう需要はないのでお引取りください。
454 :
名無しさん@お腹いっぱい。 :2006/12/16(土) 18:01:52 ID:Qs/JjjiN0
あーあ萎えたわ
>>454 これは素晴らしいスクリプトですね。
目から鱗です。
// URLdecoder.uws
URLdecoder = "?:\?????\URLdecoder\urldecoder.exe" //■urldecoder.exe のパス
//--------------------------------------------------------------------
str = PARAM_STR[0]
select str
// case "/s"; str = GetPnirText() // Sleipnir から取得
>>421 を利用
// case "/c"; // クリップボードを使う(コマンドラインが不可の場合)
// SLEEP(0.2)
// id = GETID(GET_FROMPOINT_WIN) // タイトル, クラス名 を指定した方が安定
// SCKEY(id,VK_CTRL,C); SLEEP(0.1); str = GETSTR(0)
case ""; str = GETSTR(0) // パラメータが無ければクリップボードから取得
default; str = ""
for i=0 to RESIZE(PARAM_STR)-1 // スペースで分離した文字列を結合
str = str + PARAM_STR[i]; if PARAM_STR[i+1]<>"" then str = str + " "
next
selend
ifb POS("%u",str) then // Unicodeタイプならデコードする
sc = CreateOLEObj("ScriptControl"); sc.language = "JScript"
sc.AddCode("function decodeUni(s){return unescape(s)}")
str = sc.Run("decodeUni",str) // %u30E6%u30CB%u30B3%u30FC%u30C9 - テスト用
endif // %E8%87%AA%E5%8B%95%E5%8C%96%E3%83%84%E3%83%BC%E3%83%AB - テスト用
id = GETID("URLdecoder","TMainForm",0.1)
if id<0 then id = EXEC(URLdecoder)
ifb id>0 then
CTRLWIN(id,ACTIVATE)
ifb str<>"" then
SENDSTR(id,TRIM(str),1,True)
SCKEY(id,VK_CTRL,VK_RETURN)
endif
endif
>>456 URLdecoder.uws
■Jane 派生から実行する時は
実行するコマンド:
"UWSC.exeのパス" "URLdecoder.uwsのパス" "$TEXT$LINK"
としてコマンド登録。
■IEの右クリックメニューから
以下を "URLdecoder.htm" として保存。 IE MenuExt 等でレジストリへ登録。
<html><!-- URLdecoder.htm -->
<script language="JScript">
// パスの \ は \\ と2個続けて記述(後端にスペース1個有)
var UWSC = '"?:\\?????\\UWSC\\UWSC.exe "'; //■UWSC.exe のパス
var uwsf = '"?:\\???\\???\\URLdecoder.uws "'; //■URLdecoder.uws のパス
//----------------------------------------------
var doc = external.menuArguments.document;
var elm = doc.activeElement;
var str = doc.selection.createRange().text; // 選択文字列
str = str.replace(/^[\s ]+|[\s ]+$/g,""); // 前後の空白を削除
if ((str == "") && (elm.tagName == "A")){ // 選択文字列が無く、リンク上ならURLリンクを取得
str = elm.href;
if (str.match("%") == null){ // UTF8 のリンクはアンエスケープされる
str = escape(str).replace("%3A",":")
}
}
var ws = new ActiveXObject("WScript.Shell");
ws.Run(UWSC + uwsf + str);
</script>
</html>
decode(PARAM_STR[0], CODE_URL) で終了 逝ってよし
uwscからAPI利用でキー操作できないのか。。。。
>>459 メッセージ送るウィンドウのハンドルさえ分かればできるはずだよ
ttp://pc7.2ch.net/test/read.cgi/software/1156416884/67-69,71-73,77-79,82-84,86,101 ttp://pc7.2ch.net/test/read.cgi/software/1156416884/102,104,126,133-135,136,140,142 ttp://pc7.2ch.net/test/read.cgi/software/1156416884/146,156-157,160,165,169,173-175 ttp://pc7.2ch.net/test/read.cgi/software/1156416884/177,195-196,198,200,206,208,249 ttp://pc7.2ch.net/test/read.cgi/software/1156416884/264-265,275-276,278,282-292,294 ttp://pc7.2ch.net/test/read.cgi/software/1156416884/300,305-306,331,338,341,348-352 ttp://pc7.2ch.net/test/read.cgi/software/1156416884/359,362,366-369,377-378,395,410 ttp://pc7.2ch.net/test/read.cgi/software/1156416884/403-404,406,439,444,446,452,454 >87,408
>求人 > UWSCの会社ができました。 > スクリプトを書く人を求めています(企業からの自動化の案件を受けプログラムを作成) > 興味のある方、是非ご連絡下さい。 急にスレが伸びたのはこういうことだったのか
>>458 残念ですが逝けませ〜ん。
【URL】エンコードは、ほとんどが「EUC-JP」
>>29 か「UTF8」。
decode()の変換指定が拡張されると良いですね。
s1="%8E%A9%93%AE%89%BB%83%63%81%5B%83%8BUWSC" // Shift_JIS
s2="%BC%AB%C6%B0%B2%BD%A5%C4%A1%BC%A5%EBUWSC" // EUC-JP
s3="%E8%87%AA%E5%8B%95%E5%8C%96%E3%83%84%E3%83%BC%E3%83%ABUWSC" // UTF8
d1=decode(s1, CODE_URL)
d2=decode(s2, CODE_URL)
d3=decode(s3, CODE_URL)
d4=decode(s3, CODE_UTF8)
msgbox("SJIS="+ d1 +"<#CR>EUC="+ d2 + "<#CR>UTF8="+ d3 +"<#CR>UTF8="+ d4)
465 :
名無しさん@お腹いっぱい。 :2006/12/18(月) 10:05:51 ID:oWhwdrgm0
466 :
名無しさん@お腹いっぱい。 :2006/12/18(月) 10:14:10 ID:oWhwdrgm0
439と444が同一人物ということがわかるということはUWSCがパソコンの個人情報をぬけるソフトということ?
467 :
名無しさん@お腹いっぱい。 :2006/12/18(月) 10:25:15 ID:oWhwdrgm0
umiumiさんが善人なのか悪人なのかがわからんので広めるべきかどうかわからん、 ヨーロッパはLinuxをひろめようとしているし.中国もIBM買収したり しているからWindowsに 不信感あるんだろうな、民信無くばたたず.
468 :
名無しさん@お腹いっぱい。 :2006/12/18(月) 10:33:16 ID:oWhwdrgm0
汎く衆を愛して仁に親しむ(多くの人々の幸せを願い思いやる) が目的ならWindowsが広まることは止めないが、 そうでないなら 交通費かけてまで使うもんじゃないね
何この電波レスの嵐
470 :
名無しさん@お腹いっぱい。 :2006/12/18(月) 10:53:04 ID:oWhwdrgm0
マイクロソフトのー社独占体制というのがいかんよな.ソフトに不正 があってもわかりにくいから、どうも信用されない、平家が横暴なら対抗して源氏がでて、譜代に対抗して外様大名、自民党に対抗して民主党、イスラム教ならスンニ派に対抗してシーア派 キリスト教ならカトリックに対抗してプロテスタントというのが0Sにも欲しい、マイクロソフト独占体制だもんな、
471 :
名無しさん@お腹いっぱい。 :2006/12/18(月) 16:11:44 ID:OQogrX0O0
日本のことわざにただより高いもの無し,
俺もこの流れに異様なものを感じた。
474 :
名無しさん@お腹いっぱい。 :2006/12/19(火) 12:45:13 ID:KjI/0F620
マイクロソフト1社独占体制だと 不正があってもチェックが客はしにくい、 自動車会社が フォード1社だとブレーキが故障 する車を売って客に被害を与えても比較する別の自動車会社 がないため不正をチェックしずらいのと同じ
クンニ派?
NGEx タイプ: NG Addr 正規(含まない) キーワード: .←ピリオド1個だけ ぽっぷあっぷ推奨 とりあえず緊急避難的abn。
//ストップウォッチ(最初の0秒〜1秒の長さがランダムなのが課題) X = GETTIME() REPEAT Y = GETTIME()-X S = Y MOD 60 N = INT(Y/60) H = INT(Y/3600) IF S<10 THEN S = "0"+S IF N<10 THEN N = "0"+N IF N>59 THEN N = N MOD 60 FUKIDASI(H+":"+N+":"+S,0,0,0,12,"",$00F800,$000001) SLEEP(0.2) UNTIL GETKEYSTATE(VK_ESC) REPEAT FUKIDASI(H+":"+N+":"+S,0,0,0,12,"",$0FC80F,$000001) SLEEP(0.2) UNTIL GETKEYSTATE(VK_ESC)
>>477 分解能が秒単位だからどうしようもないでしょ。
0〜1秒をスキップさせたらストップウォッチにはならないし…
X = GETTIME()
while GETTIME()-X <> 1
SLEEP(0.1)
wend
X = X+1
>>463 一部訂正です。
UTF8のところをミスった。
UWSCでのURLデコードは、Shift_JISとUTF8が可能。
s1="%8E%A9%93%AE%89%BB%83%63%81%5B%83%8BUWSC" // Shift_JIS
s2="%BC%AB%C6%B0%B2%BD%A5%C4%A1%BC%A5%EBUWSC" // EUC-JP
s3="%E8%87%AA%E5%8B%95%E5%8C%96%E3%83%84%E3%83%BC%E3%83%ABUWSC" // UTF8
d1=decode(s1, CODE_URL)
d2=decode(s2, CODE_URL)
d3=decode(decode(s3, CODE_URL), CODE_UTF8) // * 修正 *
//d4=decode(s3, CODE_UTF8) // 全く意味がないので削除
msgbox("SJIS="+ d1 +"<#CR>EUC="+ d2 + "<#CR>UTF8="+ d3)
>>478 どうも。
なるほど…今度はふきだしの出現タイミングがランダムになるだけで
確かにストップウォッチにはなりませんね。
まあ自分が使う分にはそれでも良いのですけど。
自作スクリプト晒す奴ってなにがしたいんだ? 糞ほどにも役に立たないっていうのによ
俺には役立ってるよ。 うpされるたび毎日使ってる。
>>1 を見れ。ここが何のスレか。
たしかに他人が自分の必要に応じて作ったスクリプトが、そのまま自分の役に立つことは殆どない。
大勢の人間に需要がある機能なら、たいがいフリーの単機能ソフトを誰かが先に作っていて、ベクターなり窓の杜なりを探した方が早い。
欲しいけど自分にしか需要がないような特殊な用途を満たすためにUWSCはあるわけで。
他人のスクリプトが役立つ場合があるとすれば、そこに使われてる技術を理解して、自分がスクリプトを書くとき使う、という場合だけだろう。
そのスクリプト製作技術を学ぶ、という目的のためには、ここよりも、本家掲示板やそこに出入りしている常連の掲示板の方がはるかに役立つのは事実だがね。
484 :
まとめ :2006/12/22(金) 08:34:27 ID:Xwk1xWxI0
uwscがパソコンの個人情報を手に入れるソフトなんだから気味悪がって誰も使わないんではないかな 問題なのはOSがマイクロソフト1社しかいない独占体制のところ、 ビルゲイツが悪人でなくても、株主や社員に悪人がいない保証はない。 自動車産業にたとえてみれば、フォード1社しかいないと客に危害を加える 自動車を作っても知識の少ない、客は泣き寝入りする。 ここへパリダカールラリーで優勝したトヨタがいれば、欠陥を見抜ける、 ブレーキホースにゴムホースを使って経費削減していたと見抜ければ、 そういう欠陥商品を作ったフォードの責任を客は追及できる。
485 :
まとめ :2006/12/22(金) 08:38:36 ID:Xwk1xWxI0
RE:完全に処理が終わったかどうか判定するには? いりや これは Downstair を前提にした話 (つまり status(ID,ST_BUSY) の ID は downstair のウインドウ) でしょうか?? DATE:2006/12/21(Thu) 21:41 -------------------------------------------------------------------------------- はい。downstairのIDです。 mikeneco はい。その通りです。でもなぜソフトがdownstairと分ったんですか? ダウンローダーは色々あるのに。 DATE:2006/12/21(Thu) 23:44
486 :
まとめ :2006/12/22(金) 08:42:13 ID:Xwk1xWxI0
やはりUWSCは使用者のパソコンの情報が抜き取れるのかあ。 リモートコントロールかprintsc+Fnかな、隠しファイル機能使ってる?
487 :
まとめ :2006/12/22(金) 08:49:25 ID:Xwk1xWxI0
IGなんとかという相手のパソコンを操作できるソフトあったような、 それと関係者かな、 とにかくマイクロソフトの独占体制だと、広まるのに限界あるような気がする 、客は不良品を見抜く知識がない。 パソコンはIBM。シャープ、富士通といろいろあるんだけどOSは1社独占だからなあ
>>487 あなたノートPC使ってるね
ちょっと覗かせてもらいました
489 :
まとめ :2006/12/22(金) 09:45:09 ID:ZpaxbskV0
やはりウィニーの作者が有罪なのは仕方がないよ。 マイクロソフト独占体制では、利用する客がソフトの不正をわかりにくい
このスレも末期だな
久々に強い電波が
等質患者はメンヘル板へ逝け
>はい。その通りです。でもなぜソフトがdownstairと分ったんですか? >ダウンローダーは色々あるのに。 直前のスレで自分自身で書いてる。 >DLは「Downstair」というダウンローダーを使うことにしました。(以下略)
494 :
名無しさん@お腹いっぱい。 :2006/12/22(金) 14:03:04 ID:1GofhoYH0
ソフト の制作会社は.社長が誰だかはっきりしないとトラブルのときのこと考えて 使いにくい、 yahooは孫社長だったか、2ちゃんねるは、ひろゆき氏、マイクロソフトはビルゲイツ会長とはっきりしている.
>>484 >>486 は、uwscがスパイウェア/トロイだという意味ですか?
>>489 に、なんでいきなりnyの話がでてくるの? 日本語変だし、意味がいまいち理解できないし・・・
HNに「まとめ」を使うんだから、責任もってまとめてください。
出来れば、Q&A形式で、誰が読んでも理解できるようなのたのんます。
初心者ですが ウインドウを端に押し込んだ状態であっても 見えない部分でもいつもどうり処理させる方法ってありませんか? MouseOrgでも見える部分しかやってくれないみたいなので…
>>498 メッセージを送るってのを詳しく教えてください><
>>497 初心者ならsckeyの方が馴染みやすくないか?
画面の色を判別してるんですが 画面に写ってる部分でしか判別してくれなくて… 画面を端っこに追いやっても通常どおり動くようにしたいんです。 あとクリックもするんですけどそのたびにマウスが勝手に動くから マウスポインタを増やして裏でコンピュータが勝手にやってくれるとかはできないでしょうか?
>>501 俺はVirtualPC使ってる。
スペックがあるなら試してみては?
ホスト<->ゲスト間で全く干渉無く自動化できるし複数のマシンで同一環境を用意するのも簡単。
ブラウザに画面が表示されたのを知る方法はあるでしょうか? (UWSCでキーボード操作させて)自動巡回させてスクリーンショットを取りたいのですが…
>>501 マウスポインタの問題は↓で…
mx = G_MOUSE_X // 移動前のマウスポジションを取得
my = G_MOUSE_Y
MOUSEORG(ID)
// どこかをクリックしてマウスポインタ移動
MOUSEORG(0)
MMV(mx,my,0) // マウスポジションを元へ戻す
>>504 ブラウザ名が不明だけど、ヘルプで
GETID, STATUS, GETITEM 辺りを調べたらどうかな。
書いたスクリプトを晒してくれたほうが話は早いと思うが、
BTN,KBD,MMVの羅列はゴメンだよ!
>>505 の方法が適当かもね。
BTN(うるせー) KBD(タコ) MMV(うんこ) BTN(うるせー) KBD(タコ) MMV(うんこ) BTN(うるせー) KBD(タコ) MMV(うんこ) BTN(うるせー) KBD(タコ) MMV(うんこ) BTN(うるせー) KBD(タコ) MMV(うんこ) BTN(うるせー) KBD(タコ) MMV(うんこ) BTN(うるせー) KBD(タコ) MMV(うんこ) BTN(うるせー) KBD(タコ) MMV(うんこ) BTN(うるせー) KBD(タコ) MMV(うんこ) BTN(うるせー) KBD(タコ) MMV(うんこ)
>507 Syntax Error
509 :
名無しさん@お腹いっぱい。 :2006/12/29(金) 22:04:59 ID:3U4V39yi0
独自のスクリプトってのが面倒だよねぇ〜。 インタプリタ作っちゃう技術力はすごいと思うけどさ。 もっと一般的なスクリプト言語とか、API形式ならいいのに。
インタプリタはそれほど難しくない。 一般的なスクリプト言語とか別に無い。 このスレの最近の状況からするとUWSCはやや一般的になってきてる。 API形式とは何? 意味不明。
511 :
名無しさん@お腹いっぱい。 :2006/12/30(土) 12:34:47 ID:ANEL7PPk0
覚えちゃえば簡単でも最初の一歩が面倒だなぁ〜と。 PythonとかRubyとかWSHとか一般的なスクリプト言語なら、 元々使える人も多いだろうし覚えれば他でも役に立つから、 いっちょ勉強してみようかという気分になるんだけど、 UWSC専用のスクリプト言語だと勉強する気になれなかった。。 俺がヘタレなだけですね・・・すみません。 API形式って書いたのは、VBとかで作った他のアプリから、 UWSCの機能を直接利用できれば便利かなぁ〜と思いますた。
>>511 > PythonとかRubyとかWSHとか一般的なスクリプト言語なら、
> 元々使える人も多いだろうし覚えれば他でも役に立つから、
ならそれ使えよ。Win32API用のDLL使えば同じような事が出来る。
そんでもってスレ違いになるだけ。
そもそもUWSCのが簡単だからUWSCなんだろ。
駄目なところは一杯あるがご指摘の点は的外れだと思うね。
結局一般的なスクリプト言語で〜云々言ってる奴は、 一般的なスクリプト言語とやらで同じ物を実装できないから こんな事言ってるんだろうね。 まぁ、hook dll 書くのは面倒くさいが。
もしも、UWSCが、独自スクリプトだけでなくVBSにも対応したら、俺は迷うことなくVBSを選ぶけどなw
UWSCは独自スクリプトだからこそ、学習が早いと思うけどな。 Helpの量も少ないし分かり易いし。
ちゃんとしたリファレンスが整備されないと使う気になれん あとデバッカがほしい
>>514 VBSに対応って何?
VBSを迷わず使うって事はUWSCをWSHに対応って意味じゃないよな?
正直ぜんぜんスレ違い。WSHでWin32API呼び出すDLL使えよ。
最近のUWSCが妙に凝ってきてるからこういう考えが出て来るんだよな。
COM対応辺りからおかしくなってきた。
UWSCに対する意見や期待は、スレ違いなんかじゃないのでは? 君がプチキレて的外れな揚げ足取りしてる理由がわからない。
ごめん。俺もちょっと喧嘩腰だね。いろんな意見があってもいいんじゃないかなと言いたいだけ。年末に喧嘩(・A・)イクナイ
こちらも言い過ぎた、すまない。
年末も年始関係無い。 いろんな意見があっていいのは当然だが それが的外れかどうかはそれとはまた別。
s1 = "<#CR> <#CR> <#TAB> UWSC Uスクリプト <#CR><#TAB> <#CR>" s2 = TrimJS(s1); msgbox("使用前=("+ s1 +")<#CR><#CR>使用後=("+ s2 +")") function TrimJS(str) // 全角スペース対応TRIM (JScript) sc = CreateOLEObj("ScriptControl") sc.language = "JScript" sc.AddCode("function t(s){return s.replace(/^[\s ]+|[\s ]+$/g,'')}") Result = sc.Run("t", str) fend ----------------------------------------------------------------- // Uスクリプトだけの時は… function TrimU(str) // 全角スペース対応TRIM (UWSC 4.0〜) str = TRIM(str) while str<>"" ifb POS(" ",str)=1 then str = TRIM(COPY(str,2,LENGTH(str)-1)) elseif POS(" ",str,-1)=LENGTH(str) then str = TRIM(COPY(str,1,LENGTH(str)-1)) else Break endif wend Result = str fend ----------------------------------------------------------------- // …んで、いろいろ弄っているうちに、こんな事に… // CHGMOJ がグローバルな置換をするとは今の今まで全く気付かなかったorz // 文字列中の全角スペースを半角にしてしまうのでTRIM互換とは言えないけど。 s1 = "<#CR> <#CR> <#TAB> UWSC U スクリプト <#CR><#TAB> <#CR>" s2 = TRIM(CHGMOJ(s1," "," ")) //■全角スペース対応TRIM擬 msgbox("使用前=("+ s1 +")<#CR><#CR>使用後=("+ s2 +")")
524 :
名無しさん@お腹いっぱい。 :2006/12/31(日) 00:53:47 ID:JE6fLdkp0
喧嘩すんなよ。
525 :
名無しさん@お腹いっぱい。 :2006/12/31(日) 10:50:35 ID:QsbDX1sl0
>>517 これいいね。開発の助けになる。
あとはウインドウメッセージをモニターできれば最高なんだが。
みなさんは、UWSCでの開発の補助にどんなソフト使ってますか?
自分はWinspector使ってます。spy++みたいにウィンドウの構造を見たりメッセージをモニタできます。
ttp://www.windows-spy.com
今年もUWSCにはお世話んなりますわ。
// madocon.uws if GETID("窓コン","#32770",0.1)>0 then ExitExit MadoCon = "MadoCon.exe" //■MadoCon.exe のパス x = 365; y = 461 //■表示位置 idm = EXEC(MadoCon,False,x,y) CLKITEM(idm,"作成",CLK_BTN) idn = GETID("新規作成","#32770") CLKITEM(idn,"コマンド",CLK_LIST) CLKITEM(idn,"取込み",CLK_BTN) while GETID("取り込み","#32770",0.1)>0; SLEEP(0.1); wend while GETID("新規作成","#32770",0.1)>0 // wtitle = GETSTR(idn,1) // タイトル // wclass = GETSTR(idn,2) // クラス wparam = GETSTR(idn,3) // パラメータ (コマンドID) if wparam="" then Break SLEEP(0.1) wend if wparam<>"" and GETKEYSTATE(VK_CTRL) then SENDSTR(0,wparam) // クリップボード CTRLWIN(idm,CLOSE2) // ダイアログが出ていてもメインウインドウを閉じる
ウィンドウの情報はWinmapでメッセージはSPY++かな? あと窓コンも。 WinspectorとかSystree++とかも試した痕跡があるけど使って無いな。 たぶんなんか不都合があったのかSpy++があるからかだと思うが。 spy++ to MsgIDってのもあるけどこれ何だっけ? ※UWSCはやたら拡張するよりこの手のツールと統合化した方がいいと思うよ。
文字の数、色、太さで識別して指定した場所をクリックさせることは可能?
530 :
名無しさん@お腹いっぱい。 :2007/01/01(月) 10:59:06 ID:4ne/Fmdr0
これは、エスパー待ちだな。
>>529 その前にそれをやるとどこがどう気持良いのか書けよ。
>>529 俺なりにエスパーした結果、やって出来ないことはないかもしれないけど
自前でソフト作ったほうが早いという結論が出たぞ。
>>533 これは勘だが、第三引数は参照渡しするべきじゃないか?
id= getid("●×","▽□") Ver1.xの頃から思っていたがこれはやめたほうがいいよな? 見つけたウィンドウの寿命なんて保証が無いんだし。 俺は殆どのスクリプトでターゲットウィンドウに何かする時に いちいちgetidでさがしなおしている。つまりsenstr(id,xxx)とか idを引数に取っている関数は全てラッパをかけている。 autoitなんかもいちいち検索するようになってるみたいだが uwscのこの点は根本を直して欲しい。 例えばターゲットディスクリプタみたいのを用意して target= maketarget( ウィンドウタイトル、クラス名、その他もろもろ) とかでターゲットハンドルをつくってあとはそれでコントロールするとか そんな感じにすべき。
>idを引数に取っている関数は全てラッパをかけている。 すまんラッパーの意味が分からんので教えて頂けますか?
537 :
533 :2007/01/02(火) 14:13:57 ID:SqVYKNkF0
>>534 回答ありがとうございます。
解説サイト読んでみて一行目を
def_dll ReadMemory(string,int,var int,int):Memory.dll
この様に書き換えたのですが、やはり値が反映されません。
どこか間違えているのでしょうか?
>>536 ラップ流行ってるから知ってるだろ?
それともオッサンか?
539 :
533 :2007/01/02(火) 14:34:30 ID:SqVYKNkF0
すみません試行錯誤した結果、自己解決してしまいました。 三行目の adr= の後に$をつけるのを忘れていました。
x+y (x,yは任意の自然数) このような形で書かれた文字列があるとします この時、xだけを数値として取り出したいのですが、どうしたらよいのでしょうか? C言語で書くとするとこんな感じのことをやりたいのですが while(str[++i]!='+'); str[i]='\0'; atoi(str);
>>540 // 文字列に指定文字列があるか探す
戻値 = POS( 探す文字, 探される文字列, [n個目] )
// 文字列コピー
戻値 = COPY( 文字列, 開始位置, コピー文字数 )
// 文字型を数値に変える
戻値 = VAL( 文字列 )
これで適当にやってちょ
ありがとうございます
>>540 '+'が固定ならTOKENで良いのでは?
// トークンの切り出し (指定文字で区切ったものを返す) 戻値 = TOKEN( 区切文字, var 文字列, [ 区切方法, ダブルコーテイションフラグ ] ) で一発だったね
数字をJISとかのの数字の文字に直すにはどうしたらいいですか? 10だと31 30のようにしたいのですけれども
>>545 a = "10"
c = ""
for i=1 to length(a)
c = c + format(asc(strconv(copy(a,i,1),sc_halfwidth)),1,-1)
if i<length(a) then c = c + " "
next
msgbox(c)
リストボックスの値をCLKITEMを使って変更しようとしても変更されないことがあります というより「見かけ上は変化しているが、実際は変化していない」といった感じです 例えば下のようなリストボックス・ボタンがあったときに左を選択しようとすると、 見た目は左に変わるのですが、実行ボタンをクリックした時の動作は上のままなんです そのリストボックスはCLK_ACCを使わないと動かない、マウスを上に乗せないと見た目すら変わらない、 というようにいくらか不可解な動作をしています 関係ないのかもしれませんが、何かの参考になれば 上▼ | [実行] 上 | 下 | 左 | 右 | ――┘
全画面表示してるときに、スクリプトによっては必ず画面が切り分かるのとそうでないのがあるんですけど なぜですかね??
エスパー待ちだな
>>549 全画面表示してるときに、スクリプトによっては必ず
画面が切り分かるのとそうでないのがあるからだろ。
??
ローカルのIPをuwscで取得するにはどうすればいいですか?
ipconfig
554 :
sage :2007/01/12(金) 01:23:04 ID:ThZzr6Oc0
UWSC使ってみようと思いましたが エクセルで c:\tes.xls を開き方がわかりません どうやるの?
doscmd("c:\tes.xls")
>>557 > 「私なら出来ますよ」
で、いくらくれるの?
UWSCの会社が出来てます。
マウス左を下ろしているときに連打するってスクリプトを作りたいのですがうまくいきません。 while true ifb BTN(LEFT) = 1 then BTN(LEFT,click,1) BTN(LEFT,click,1) BTN(LEFT,click,1) BTN(LEFT,click,1) BTN(LEFT,click,1) BTN(LEFT,click,1) Exit endif wend これでやるとずっとクリックし続けます(左クリックしてなくても) アドバイスお願いします。
>>560 BTN(LEFT)の比較の際にクリックされてる
while true
BTN(LEFT)
wend
これを実行してみろ
で、そもそもBTN()はボタンを押す関数であって、ボタンの状態を知るための関数じゃない。
そのための関数はGetKeyState()、これを使えばうまくいく。
ifb GETKEYSTATE(BTN(LEFT,down)) 構文がミス・・・これでもダメなようです・・・ 勉強してきます;;
563 :
名無しさん@お腹いっぱい。 :2007/01/14(日) 18:15:09 ID:uoqeTuE50
>>562 ifb 使ってるんだから条件を書かなければいけないでしょ。
ifb GETKEYSTATE(BTN(LEFT,down))=1
とか。
getkeystateにはvk_で始まる仮想キーしか渡せないんじゃなかったっけ? 左クリックの仮想キーはヘルプの一覧には見当たらなかった。 諦めて if getkeystate(vk_alt) and getkeystate(vk_c) then btn(left,click,1) とかにするしかないかもしれない。
仮想キーって名前判ってるならググればすぐ判りそうなもんだけど… VK_LBUTTON ($1)
ゲームでイライラしている子供に熱心に教えるなんてエエハナシヤ( ´Д⊂
568 :
名無しさん@お腹いっぱい。 :2007/01/15(月) 02:43:47 ID:xk6goVHU0
[1]キーを1.0〜2.0秒(0.1秒単位のランダム)で押すのを繰り返す を作ってくれん?
このソフトはフルスクリーンのゲームも操作できるんでしょうか?
止め方教えてkづあさい
Alt + F2
ヘルプ見たけど スクランブルのかけ方がわかりませんでした よかったら教えてください
俺はスクランブルというコピーに引かれ スクランブルになるためにはどうすればよいのか考えた スクランブルなのだからどんなこともできる 手始めに全裸で姉の部屋にアンゲロ、アンゲロとつぶやきながら飛び込む タンスをこじ開けブラジャーを腰に巻きパンティーを頭にかぶる 姉が呆然としながら見てくるがスクランブルなので気にしない 姉のベッドに潜りこみ「幸せだから!幸せだから!」と絶叫 姉は無言で部屋から立ち去る だがまだ最強には不十分 次は妹の部屋にムッシュムッシュと叫びながら飛び込む 妹は着がえをしている最中だったがスクランブルなので無視 半裸で逆立ちをしながら 「俺に充電しろ!!俺に充電しろ!!」と絶叫 妹は大泣きで退散 確実にスクランブルに近づく 開脚後転でトイレに飛び込み便座を外し首に掛ける ゾンビの真似をしながら母の部屋に突撃 タンスを開けると一枚の写真発見 死んだ親父が俺を抱いている写真発見 俺は泣いた
ヒント・・コマンドプロンプトでパス指定 /a でスクランブルかけれる
577 :
名無しさん@お腹いっぱい。 :2007/01/20(土) 19:05:25 ID:uRMPRV7/0
ぜんぜんわからないんだけど、vbスクリプト(wsh?)とどっちがいいのかな。 どっちか勉強しようかとおもってるんだけど、、、 エクセルとIEを連携させていろいろしたいんだ。
>>577 初めて勉強するならWSHがおすすめ。何よりも資料が豊富。
UWSCの書式は(VBS+JS)/2+αって感じだから…
>>376 エクセル使いなら
>>578 が適当かも。
IE_SelectItem(1, "Tag='A',LinkText='文字列'")
IE_ItemProc(1, "CLICK", "")
IEとあるページで
<td width="30%"><a href="URL">文字列</a></td>
の「文字列」のところをクリックしたいんだけど
どうしてもできないので手助けお願いします。
エラー内容
IE_SelectItem の引数の形式が不適切です。
「'」が多すぎるか「,」が少なすぎます。
該当箇所: Tag='A',LinkText='現物買'
http://www.icnet.ne.jp/~supreme/IE_HowToUse.html ここの例が間違ってるの?
ついでにこのエラー // でコメントにしても 同じエラーになる
>>580 UWSC Ver4〜には対応してないらしい。
そのサブルーチンを使わなくても標準でできる。
ヘルプを見よう。
IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True
IE.Navigate("
http://????/????/ ") // ←アドレス
while IE.Busy or IE.ReadyState<>4; SLEEP(0.1); wend
IELink(IE,"現物買") // ←クリックするリンクの表示文字
ielink(IE,"文字列") じゃダメなの?
また行き詰ったorz 超速マクロテクの例では フォーム 要素名指定での入力は うまく入力できるんだけど Eトレサイトではなぜか フォームへの入力ができない IE.document.trg.price.value = "100" エラー Uスクリプト com_error IE.document.trg.price.value = "100" ここでは要素名では使えないってことなのかな?
特定ウインドウの文字列を取得したい場合、OCR機能を外部から取り入れて 入力欄にその取得文字列をインプットする様なコマンドってわかります?
日本語でおk
>>586 INPUT( 表示メッセージ, [デフォルト値])
デフォルト値に取得した文字列(もしくはその変数)
リストビューの項目を選択するのを自動化したいんですが ClkItem(id,"リストビュー項目",CLK_LSTVEW) で、できないんですけど間違ってるんですか?選択したいのはインターネットブラウザの項目なんですが、 ClkItem(id,"リストビュー項目",CLK_ACC)だとできるんです。 ただこの場合リストビュー上にマウスを持っていかないと変わらないんです。 インターネットブラウザのリストビュー項目を自動選択するにはどうしたら良いですか?
>お願いしたいのですが いくらぐらいで?
592 :
名無しさん@お腹いっぱい。 :2007/01/26(金) 13:41:53 ID:Pav5kCE90
c=peekColor(55,28) ifb G_赤(c)<127 print "OK" Else endif function G_赤(c) Result = c and $FF fend これのG_赤(c)<127 の部分が良く分からないのですが 何方か解説してくれませんか?
あまり赤くなければ ってこと
横からで申し訳ない。 Result = c and $FF の 'and' ってどういう計算だろ? 考えてたら訳わかんなくなった…
>594 ビット積やね。 論理積のandとは意味が違うので注意
peekcolorの返り値は、RGB、16進数でBBGGRRで入ってるから、c and $ff0000 で 青、 c and $00ff00 で緑、 c and $0000ffで赤の値が取り出せる ヘルプに書いてあるがな
>>595 おぉ 即レスさんくすです。 ひとつ賢くなった…
BGRなんだ。。なんで青とってるのに関数名が赤なのかと悩んだw
>>591 ただでお願いします。
無理言ってすいません。
いや、言うのは自由だから。
//基本的なことをやってみました id = status(getid("Microsoft Internet Explorer","IEFrame",0.02),st_title) ifb id = "";fukidasi("ページがありません");for x=1 to 5;sleep(0.2);next;exit;endif IE = GETACTIVEOLEOBJ("InternetExplorer.Application",id) Name = IE.LocationName URL = IE.LocationURL //IE.Quit WSH = CREATEOLEOBJ("Wscript.Shell") Path = WSH.SpecialFolders("Desktop") Link = WSH.CreateShortcut(Path+"\"+Name+".url") Link.TargetPath = URL Link.Save //fid=fopen(Link.FullName,f_read or f_write);fdelline(fid,3);fclose(fid)
ヘルプを参考に「最小化」ボタンをグレーにしてみようとしたのですが、上手くいきません。 DEF_DLL ModifyMenuA(HWND,Long,Long,Long,Long):Long:user32.DLL MF_GRAYED = $1 SC_MINISIZE = $F020 id = exec("notepad") hwnd = GetCtlHnd(id,GET_SYSMENU_HND) ModifyMenuA(hwnd,SC_MINISIZE,MF_GRAYED,0,0) どこがおかしいのでしょうか。。。
すみません、教えてほしいのですが MojiRetsu = "abcdefg" を一文字づつ取り出して、文字の処理をしたいのですがUWSCではどのようにすればいいのでしょうか? VBの場合 for i = 1 to Length(MojiRetsu) txt = mid(MojiRetsu, i, 1) もしくは txt = Right(Left(MojiRetsu, i),1) .... 処理.... Next でとりだせるはずですが、UWSCの場合の処理を教えていただけませんか? よろしくお願いします。
605 :
604 :2007/01/30(火) 19:28:38 ID:C9/gwCO90
すみません、自己解決です。 ヘルプをよく読んでませんでした。 COPY関数がMIDに相当するものだったんですね。 COPYですから、文字列の単純コピーだと思い込んでました。 すみません。
>>603 グレーにはならないけど、無効状態にはなってるね。
「SC_MAXIMIZE = $F030」も試してみたが同じだった。
「MF_DISABLED = $2」の挙動みたいだが?
API使いの光臨を待とう…
607 :
603 :2007/01/31(水) 00:09:22 ID:ylP9utd10
>>606 返答ありがとうございます。
そのような場合には最後に
acw(id,status(id,st_x),status(id,st_y))
を書き足してウィンドウの再描写をすれば解決しそうですが、
自分の環境では最小化ボタンの無効化が行われません。
左上のプログラムのアイコンをクリックする事によって出てくる
ポップアップメニューからは「最小化」が削除されているし、
ModifyMenuの戻値は1なのですが。。。
自分はXPなのですが、環境によって違うのでしょうか。
608 :
名無しさん@お腹いっぱい。 :2007/02/01(木) 04:05:02 ID:C4wyYcBXO
天才にご指導願いたい。 指定したウィンドウに画像で4桁の数字がランダムに何種類か表示される。 このウインドウの数字を解析し、テキストボックスにその答えを打ち込みたい。 こんなものはマクロで出来ますか? できるなら式を教えてください。
OCRでぐぐって少し考えてみろ
特定のフォントでいいならAUTOITのOCRスクリプトが公開されている。 特定フォントの数字だけならUWSCでも簡単だろ。
611 :
名無しさん@お腹いっぱい。 :2007/02/02(金) 02:12:12 ID:jlqlXg/70
UWSCでは指定ウィンドウに表示されている画像を解析し、その画像に表示されている数字を解析後にテキストボックスに打ち込むなんて事は可能でしょうか?
613 :
名無しさん@お腹いっぱい。 :2007/02/02(金) 02:35:07 ID:jlqlXg/70
>>590 であがっている
ネットゲームのレースキー入力ウィンドウなんです。
ウィンドウ内に画像が表示され、その表示されている数字を打ち込まないとレースが開始されない。
この面倒な作業を無人で行えないものかと思いまして。
以前はUWSCでマクロのみでレースが発走できたのですが、今はキーを打ち込むという作業が追加されてしまいまして、
その作業がみな面倒だというのでなんとか作れないものかと思い。
このようなスレを見つけ、詳しい皆様に教えを乞いたいです。
なんのためにそういう面倒な処理が追加されたと思う? マクロ蔓延への対策だよ このスレ読んでできないようならあきらめたほうがいい
つまり作る技術も知識も無い奴しかここには居ないってことさ
どこもタチの悪い質問が増えてるな
617 :
名無しさん@お腹いっぱい。 :2007/02/02(金) 22:03:28 ID:NWOMEjb/0
本日、クソッタレなWORDファイルの整形に大活躍しました。 特定の文字列を検索 →インデント指定 コレをループさせてずいぶん楽できた。 手の操作をエミュレートしてるだけだから、失敗してもCtrl+Zで気楽に戻せるのがいいな。
赤に近い色がある場所を取得したいのですが、どうやったら出来ますか? chkimgだと〜に近い色という設定が出来ず、peekcolorで1ドットずつ調べるのは重いので。。。 while true for i=0 to g_screen_w for j=0 to g_screen_h c=peekcolor(i,j) red=c and $FF green=(c and $FF00)/$100 blue=(c and $FF0000)/$10000 if red>$F0 and green<$10 and blue<$10 then print i+","+j next next sleep(0.1) wend peekcolorを使うとこんな感じですが、重すぎてまともに動きません。
対象物がどういう画像かにもよるけど まずはchkimgで色無視で探して 見つかったらその部分だけに範囲を絞ってpeekcolorで色判定するとか。 あと赤に近い色ならR成分だけの比較でよくね? 速度的には改善されると思う。 peekcolorでやるなら走査を1ドットずつじゃなくて例えば10ドット間隔にするとか。 美術品とかの防犯用赤外線センサーみたいなイメージ。 ただ対象物があまりに小さいと見逃すかも。
R成分だけだと白とかもヒットしてしまうから無理でしょう
>>620 速度求めるならCなりでDLL作って、画面キャプチャ→クリップボード内の画像を走査 が速そう。
623 :
620 :2007/02/05(月) 00:27:24 ID:R6II9j8F0
>>621 ,622
レスありがとうございます!
>>621 赤っぽい物体がランダムな形で表示されているので、色無視は無理です・・・
調べる間隔を離すのは試してみます!
>>622 やはりUWSCだけでは難しいですか・・・
コンパイラ形式の言語はまだよく分からないのですが、これから勉強してみます!
>622 おっと、確かにそうでした…<白とかもヒット とりあえずpeekcolorでやってみたけど うちの環境(1280*768)でループ一回まわすのにかかったのが「3分19秒78」 こりゃ確かに使い物にならん… 色判定部分を工夫して if (c and $f0f0f0) = $f0 then print i+","+j これで速度50%ほどアップして「2分2秒422」 あとは走査をxy両方10ドット間隔にして「1秒297」 これならまあなんとか使い物になるかも?
追記 c=peekcolor(i,j) //↓削除ここから //red=c and $FF //green=(c and $FF00)/$100 //blue=(c and $FF0000)/$10000 //if red>$F0 and green<$10 and blue<$10 then print i+","+j//→3分19秒78 //↑削除ここまで if (c and $f0f0f0) = $f0 then print i+","+j//→2分2秒422
626 :
620 :2007/02/05(月) 01:25:03 ID:R6II9j8F0
>>624 そういうやり方もありましたか。
参考になります。
このスレにはやさしい人が沢山いて助かります。
ありがとうございました。
口癖とかwwwwwwwwwwww
628 :
名無しさん@お腹いっぱい。 :2007/02/07(水) 23:40:57 ID:NIA0HC/g0
すみません、初心者なのですが、 ゲーム上で使う時は While True KBD(VK_XXX,DOWN,0) KBD(VK_XXX,UP,0) KBD(VK_YYY,DOWN,0) KBD(VK_YYY,UP,0) SLEEP(12) Wend (VK_XXX、VK_YYYは何かしらのボタンです) を記述したものを再生するのみでは繰り返さないのでしょうか? 試してみたところ、1回行った後ゲーム上では繰り返しませんでした。 ゲーム上でなければ問題なく繰り返しの動作を行っています。
ヒント:DirectInput
630 :
名無しさん@お腹いっぱい。 :2007/02/08(木) 07:42:37 ID:j0ePCC9y0
// While Wend 文 WHILE 式 // 式が True の間実行 処理 WEND WHILE 式 // 式が True の間実行 WHILE 式 // 式が True の間実行 WHILE 式 // 式が True の間実行
631 :
名無しさん@お腹いっぱい。 :2007/02/08(木) 10:08:02 ID:kgzJBX1p0
メッセージ投げてるわけでもないからDirectInputも関係ないし 構文もあってる ゲーム上の動作確認がおかしいだけじゃねーの
>>628 の
While True
ってのは「何が」Trueの間繰り返すという意味なんですか?
フォーカスがあってないんじゃ?
635 :
名無しさん@お腹いっぱい。 :2007/02/08(木) 22:25:03 ID:8w4lo9zN0
フォーカスを合わせる必要があるのですね… もしよろしければ、その記述についても教えていただけますか?
つヘルプファイル
ネトゲなんかでさ、GETIDはできるのは想像つくんだけど、 中のウインドウはGETITEMで操作できんの? 試せよって話なんだが、もう寝る時間なんだ
638 :
名無しさん@お腹いっぱい。 :2007/02/09(金) 04:15:57 ID:R85AHkSa0
バックグラウンドで使うのは難しいのでしょうか? 他の作業をしながら 特定のウインドウで単純にF1キーを押し続ける作業をさせたいのですが、 言語も何もわからないので困っています。
>>638 APIを使う。
Windowsアプリの仕組みを知らないのであれば難しい。
641 :
名無しさん@お腹いっぱい。 :2007/02/09(金) 10:42:08 ID:U7MLjCC+0
おねがいします。 UWSC.exe名を変更するにはどうしたら良いのでしょうか? エロイ人教えてください
>>641 低レベルな質問をする前に少しは勉強しなさい
>>641 exec("cmd /c ren uwsc.exe cswu.exe")
>>641 UWSC.exeをエロ胃人にに帰るには制てゃpぎおwn
// 時報 While !GetKeyState(vk_esc) sleep(0.2) GetTime() T = g_time_ww+":"+g_time_hh+":"+g_time_nn+":"+g_time_ss ifb g_time_nn = 0 and g_time_ss = 0 Fukidasi(g_time_hh+":"+g_time_nn2,0,0,0,72,"Arial","$ffff","",-2) for i = 1 to 25; sleep(0.2); next Fukidasi() endif //Timer(T = "0:12:34:56","メッセージ") Wend Fukidasi("時報を終了します。"); for i = 1 to 5; sleep(0.2); next // Procedure Timer(T,str) ifb T Fukidasi(str); for i = 1 to 25; sleep(0.2); next; Fukidasi() endif Fend
>646 なんだ?添削希望か?
おながいします。
とりあえず for i = 1 to 25; sleep(0.2); next は sleep(5) でいいかと あと、 Timerは何がしたいの?
>>sleep(5)
>でいいかと
ホントだ…。前に
>>115 を読んだときに
>0.5sec待機するより0.01secを5回程度回した方が〜
ってところを何を勘違いしたのか間違って解釈しちゃったようですorz
Timerは指定の時間にメッセージを出すだけです。
別に何でも、アプリ起動とかでも良かったんですけど…
指定の時間になったら何かするっていう、つまりタイマー
どっちにしろ一行で済むしそれだけなら別にわざわざサブルーチンにしなくても良かったようですがorz
652 :
名無しさん@お腹いっぱい。 :2007/02/14(水) 10:34:58 ID:g3LUNaLB0
現在のディレクトリを得る方法ってない? UWSCから、WSH利用するしかないのかな?
GET_CUR_DIR // 現在のカレントディレクトリ
654 :
名無しさん@お腹いっぱい。 :2007/02/15(木) 00:20:10 ID:nGU/ckMc0
サイズの一様(640×480)な中身が違うビットマップファイルが数百個あります。 そのBMPの中から、例えば、ある一定の区画 500, 200, 100 ,100を切り出した新しいBMPファイルを作りたいと思います。 数百もその作業をやるのはしんどうし、 切り出す区画は全ファイル同じ部分なので、uwscなどを用いて簡単に処理できないかと考えてみました。 充分なsleepを与えつつ、画像編集アプリケーションに取り込ませ実際操作する自動化は思いつきましたが、 それは非常にスマートではありません。 uwscのみで行うにはどういった手法があるでしょうか? WINAPIとかを導入しないとできないでしょうか?
psのアクション+パッチで十分な話だと思う uwscさえ必要ねえ
IRfanでもできるかな
ImageMagick でやるのが楽かと
>>654 と言うか、
> 充分なsleepを与えつつ、画像編集アプリケーションに取り込ませ実際操作する自動化は思いつきましたが、
> それは非常にスマートではありません。
こういうスマートじゃない処理をするためだけに uwsc があると思うんだが。
659 :
名無しさん@お腹いっぱい。 :2007/02/15(木) 02:16:43 ID:4zVU3Oy00
>>654 こういうのは、PhotoShopのアクションと自動処理のバッチを使えば一発なんだけどね('A`)
俺なら、ImageMagickでも使うかなあ。
> GET_CUR_DIR // 現在のカレントディレクトリ ちょっと前とちょっとあとのカレントディレクトリはどうやって取得すればいい?
>>661 ちょっと前に Get_Cur_Dir を使えばいい
>>661 同じく、ちょっと後に Get_Cur_Dir を使えばいい
>>661 確かに
>>662-664 以外の方法はないと思う
ちなみにちょっとあとのカレントディレクトリを取得するのは不可能
未来を予知できるなら別だが。
てか、UWSCでカレントディレクトリ変更できるの?
>654 皆が言うように、uwscよりも、内部マクロのようなものが使える画像処理アプリケーションを使う方がスマートだとは思う。 餅は餅屋ということで。 ただuwscを使ってという条件で(まあuwscのスレだし) よりスマートに改善するなら >充分なsleepを与えつつ ここを見直してみるべきでは? まあ自分ならあえてuwsc+ペイントでやるかなw
>>666 色んな方法があるでしょ
ヘルプ見れば。
君がどういう方法でカレントディレクトリを変更したいのかにもよる。
DOSCMD コマンドもあるし とにかくHELP嫁
いや、別に俺がしたいわけじゃないんだけど、できるのかなと疑問に思っただけ。 とりあえずDOSCMDではUWSC自体のカレントディレクトリは変更できない。
671 :
名無しさん@お腹いっぱい。 :2007/02/16(金) 08:18:53 ID:CMWBeYzi0
>>670 バロス
もっと見破られないようにしないとw
kbd(VK_LEFT, DOWN, 50) //左ナビ kbd(VK_LEFT, UP, 50) このへんのDOWN・UPコンボで 一目で厨ぶりがわかるな
ゲームによってはclickが正常に作動しないこともあるんだぜ?
674 :
名無しさん@お腹いっぱい。 :2007/02/17(土) 21:48:54 ID:RM+qUXCD0
その通り。 クリックの放す速度が速いと押したことにならないゲームもある
675 :
名無しさん@お腹いっぱい。 :2007/02/18(日) 12:32:49 ID:EOUmUz5k0
while True if (! IE.busy) and (IE.readyState=4) then Break sleep(0.1) wend IEの表示待ちはこれですけど 他のアプリケーションの表示待ちする場合の方法ってありますか?
>>675 ヘルプで『GETID』をキーワード検索しろ
>>670 のリンク先、延々uwscの話題をしていてワラタ
操作すんのが面倒ならデモ画面でも見てりゃいいのにな。
679 :
名無しさん@お腹いっぱい。 :2007/02/19(月) 22:52:16 ID:16dl77Y30
comでエクセルを呼び出して作業させているのですが、 呼び出したエクセルのモジュールに作成した「sub処理()」を実行できずに、悩んでいます。 EXCEL.RUN("処理")やEXCEL.RUN "処理"とかやったのですがダメでした。 どなたか、ご教示願います。
>>675 STATUS, GETSTR, POSACC, CHKBTN
CHKIMG
>>675 >>680 以外ではGETITEMとか
//例(Jane): ステータスバーの表示が "|0 |完了 " になるまで待つ
repeat
GETITEM(ID, ITM_STATUSBAR)
sleep(0.2)
until all_item_list[0] + all_item_list[1] = "0完了"
682 :
名無しさん@お腹いっぱい。 :2007/02/21(水) 01:04:00 ID:wkuVEwNm0
1.WEBサイトの特定の英語のテキスト箇所をコピー。 2.翻訳サイト(Excite翻訳など)のフォーム部分に先程コピーしたテキストをペースト。 こんな感じの流れはこのソフトで可能ですか?
可能ですけど、2. をするくらいなら直接 http で POST しちゃって、 結果をツールチップで表示とかのほうがいいんじゃ。 むしろ、そういうことをしてくれるソフトやアドオンはいっぱいあるんじゃ。
RECタブブラウザ作ってください、IEは操作途中に落っこちちゃうんだよね
>>682 GoogleもGooもExciteも全部uwsc(w
// 選択範囲をコピーするウインドウIDの取得
FUNCTION MUSI()
FOR I=0 TO GETALLWIN()-1
T=STATUS(ALL_WIN_ID[I],ST_TITLE)
C=STATUS(ALL_WIN_ID[I],ST_CLASS)
// 無視するウインドウ
IFB T=""_
or C="TApplication"_
or POS("#",C)>0
or POS("UnicodeClass",C)>0
// とか
CONTINUE
ELSEIF C="Progman"
MSGBOX("ERROR: ウインドウがない")
EXITEXIT
ELSE
BREAK
ENDIF
NEXT
RESULT=GETID(T,C)
FEND
夜分遅くにレスありがとうございます。 参考にして色々試してみます。
うあ、、、、これ便利すぎるw
質問です 複数の画像を指定して、その画像毎に違ったアクションをさせるにはどうすればいいですか? サンプルの /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ while True if GETKEYSTATE(VK_ESC) then exit MMV(G_SCREEN_W, G_SCREEN_H) ifb CHKIMG("test.bmp") 〜〜処理〜〜 break endif sleep(1) wend /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ のSleep後に /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ ifb CHKIMG("test.bmp") 〜〜処理〜〜 break endif /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ を処理する数だけ加えていけば可能ですが、 もう少しすっきりさせる為に皆さんの知恵をお貸しください。
689 :
名無しさん@お腹いっぱい。 :2007/02/22(木) 15:30:25 ID:XrP4EUKx0
UWSCの勉強に役立つ書籍はスレの最初の方にあった ”Windowsマクロテクニック”だけで問題ないですか?
>689 日本語でおk
例えば行の先頭から指定した文字列(句点、濁点等)までを選択して クリップボードにコピーするのってどうやるん?
キーボードのあるキーを押すと マウスの左クリックを0.5秒後に押すマクロってどうやってつくるんでしょうか? if KBD(VK_DIVIDE,CLICK) then BTN(LEFT,CLICK,500) とかやってみたんですけどできなくて…
>>691 line= "例えば行の先頭から指定した文字列(句点、濁点等)までを選択して"
sendstr(0,token("、",line))
>>692 getkeystate
UWSCおもすれー( ^ω^)
あるプログラムのメモリを書き換えるスクリプトは、
どういう記述をすればいいのでしょうか?
>>533 を見たのですが
APIやDLLは使い方がよくわかりません・・・
>>696 WriteProcessMemory 呼び出すだけだろ。
みんなこのソフトどういう時に使ってるの? なんか便利な使い道あったら教えて下さい。 このソフトプログラマーの人しか使わないのかな。
>>698 俺はnPOPで受信したメールがたまってきたら
テキストに保存して纏めて圧縮してるんだけど,
その操作をuwscにやらせてる。
自分が頻繁に行う定型の操作があって,
プログラムを組むほどでもないようなことをuwscで,,,みたいな
>>688 DIM x[] = "test1.bmp","test2.bmp", ・・・
for i=0 to LENGTH(x)-1
ifb CHKIMG(x[i]) then
select i+1
case 1
処理 1
case 2
処理 2
case ・・・
処理・・・
selend
endif
next
>>700 ありがとうございます、参考になりました。
それに加えて、複数個指定した画像以外に
指定した画像がなかった場合の処理を組み込む事は可能ですか?
この場合、配列をもう一つ別に指定した方が綺麗にまとまりますか?
702 :
696 :2007/02/24(土) 12:55:52 ID:NQZTMvMn0
>>697 回答ありがとうございます、呼び出し方の記述がよくわからないので
勉強して出直してきます
>>698 午前10時45分にシャットダウンしたい時。
GETITEM() の ITM_ACCTXTやITM_ACCCLKで文字列取るときに「&」を取っ払うのは仕様なのか? ショートカットキーを表現する「&」を消すのはまだ納得できるけど、URL内の「&」消されるのはつらいぞ。
アクセスエクスチェンジとかだろ
>>701 bmp = "test.bmp" //bmp = "test1.bmp" //bmp = "test2.bmp"
DIM x[] = "test1.bmp","test2.bmp"
DIM y[LENGTH(x)-1]
for i=0 to LENGTH(x)-1
ifb bmp = x[i] then
select i+1
case 1
msgbox(x[i]+"発見")
case 2
msgbox(x[i]+"発見")
selend
// break
else
y[i] = "無い"
// msgbox(x[i]+"が無い")
// break
endif
next
for i=0 to LENGTH(x)-1
ifb y[i]<>"" then
select i+1
case 1
msgbox(x[i]+"は無かった")
case 2
msgbox(x[i]+"は無かった")
selend
endif
next
失礼します。 最小化しているウィンドウに対して処理を行う事は可能ですか? 行おうとしている作業は、最小化しているメールソフトに対して、 一定時間毎に"送受信"ボタンを押す、というものなのですが、 while ifb chkimg(送受信.bmp) btn(left, click, g_img_x, g_img_y) break sleep(60) wend に何を加えればいいでしょうか? 後、疑問なのですが、最小化しているウィンドウに命令を行えるなら chkimgで指定した画像は、表示している画面をサーチするのか、 最小化しているウィンドウ内をサーチするのか、どちらなのでしょうか? 回答頂ければ幸いです。
chkimgは画面表示をチェックするんだろ? 最小化していて表示されるところだけちぇっくすればOK。 それが嫌ならchkimgなんか使うな。 ちなみに俺はchkimgなど1度も使った事は無い。
>>707 最小化したままだとchkimgでは無理ですね。
chkimg以外の方法で処理可能であるならば自分だったらこんな感じにするかな。
他の方法もあるかもしれないけど。
x = gettime()
while !getkeystate(vk_esc)//escキーで終了
y = gettime()-x
s = y mod 60
sleep(0.2)
ifb s = 0
//処理
endif
wend
MsgBox("終了")
>707 とりあえず MOUSEORG(id,2) あとは PostMessage使うとか
711 :
名無しさん@お腹いっぱい。 :2007/02/27(火) 02:14:15 ID:UsiWTpU40
♪ /妊_娠\ . |/-O-O-ヽ| 6| . : )'e'( : . |9 (( ( つ`‐-=-‐ 'ヽ、 )) ♪ ♪ 〉 と/ ))) ♪ (__/ ̄ ̄(_) ♪ / ̄ ̄ \ . | | ♪ (|\ /|) ♪ /  ̄ ̄ ) )) ♪ ♪ (( ( . : ( : . 〈 ♪ (_) ̄ ̄ヽ__) ♪ /妊_娠\ . |/-O-O-ヽ| 6| . : )'e'( : . |9 (( ( つ`‐-=-‐ 'ヽ、 )) ♪ ♪ 〉 と/ ))) ♪ (__/ ̄ ̄(_)
>>712 訂正
△最小化されているウインドウの
○不可視ウインドウの
714 :
名無しさん@お腹いっぱい。 :2007/02/27(火) 13:09:22 ID:dd7Gb3CU0
すっげー久しぶりに来た。3ヶ月は見てないかな。ここ。
>>547 >>589 SE = IE.document.getElementsByTagName("select").item(1)
Op = SE.options
for i = 0 to Op.length - 1
Itm = Op.item(i)
if Itm.text = "名前/ヨミガナ" then Itm.selected = true // 選択
next
SE.fireEvent("onChange") // onChange イベントを発生させる
715 :
714 :2007/02/27(火) 13:10:56 ID:dd7Gb3CU0
業務用の抜き出しなんで、適当に直してね。
IEでリンクの文字列をクリックしたいのですがHTMLが
<a href="h
ttp://...... ">リンク名</a>
上記のような場合
IELink(IE_br[1],"リンク名")
で問題なクリックしてくれるのですが
リンク名のあとに改行が入っている場合、改行コードを追加したりしたのですが
うまく動きません
<a href="h
ttp://...... ">リンク名
</a>
IELink(IE_br[1],"リンク名"+"<#CR>") // 改行追加
複数行になってしまう場合は無理なのでしょうか?
getElementsByTagName("a")とかで試してみては
>716 htmlに改行は関係ないはずだしそんなわけないやろ…と思って検証してみた。 うん、たしかに改行が入ってるとクリックできないわ。 RecIEで記録してみたら改行を含むリンクの方は改行じゃなくて "リンク名 "みたいに半角スペースが入ってるみたい。 これに習って半角スペース入れてやれば、 無事クリックすることはできたけど。 …これってバグだよね?
UWSCでDirectInputを扱うことはできるかな?
どういうのが扱うの定義なの?
ああ、ミジンコですいません・・・。 単純にKBDやBTNの代わりにDirectInputを使ってみたいな、と思いまして。だから キーやマウス操作で使いたいんです。 どうもUWSCでそういう事例がないっぽい感じなんで、聞いてみた次第です。
722 :
名無しさん@お腹いっぱい。 :2007/02/28(水) 04:11:01 ID:WxlpFZeq0
>>721 特定のアプリのみなら DLL Injection すればできるよ。
後はドライバ作ればなんでもできる。キーボードだけなら mayu.sys 使えばいい。
>>723 なるほど。そういう策があるんですね。Thx!
725 :
名無しさん@お腹いっぱい。 :2007/02/28(水) 22:59:46 ID:6bZJcGLF0
IESETDATAに対応するvbscriptってあります? これすげー便利なんだけどvbscriptで同じのがあれば教えてください。
726 :
716 :2007/03/01(木) 00:20:04 ID:dHFep3w80
vbsでIE操作関連のライブラリは聞いたことないなあ。 IESETDATAぐらいの機能なら自分で互換プロシージャ書いたほうが早いかも。 VBScriptにこだわらず、PerlやRubyやJavascript使えるならMechanize使うべし。
728 :
名無しさん@お腹いっぱい。 :2007/03/01(木) 03:11:08 ID:eWsgJP0Y0
>>727 やっぱそうですか。
vbscriptで実現しようとするとうまくいかないサイトがありまして、
RECIEでやると簡単にいったんです。
IESETDATAってのをたくさん使ってたのでvbでもできないかなあといろいろググってます。
でもないんですねえ。素人にはむつかしい。
Mechanizeってのをググっても???が頭に浮かぶばかりです。
やたらIT英単語が羅列される高度なサイトしかでてこない。
すみませんちょっと教えてほしいのですが CALL で呼び出した サブマクロをリリースすることは出来るのでしょうか? やりたいことは 一日中動かす制御系マクロで、条件にしたがって CALLするサブマクロを変えたいのです。 只、問題になるのではないかと懸念しているのは 例えば 条件にしたがって A.UWS をCALLして しばらくして、条件が変わり 今度はB.UWSをCALLした後 また、条件が元に戻って A.UWSをCALLすると、関数の重複エラーを起こすのではないかと思ってます。 CALLする際には、既にCALLしていればCALLしないような関数自体の制御はあるのでしょうか? よろしくお願いします。
CALLはスクリプトの始まりで全て読み込まれる仕様だったと思うが。
>>730 そうなんですか?
以前に
Select 条件
Case A
Call A.uws
Case B
Call B.uws
Case C
Call C.uws
Selend
みたいなので動かしてましたが、条件に関係なく Callされてしまうということでしょうか?
なので、CALLの中は関数のみにして条件式で関数を呼び出したほうが管理し易い。
> CALL文はスクリプトが走る前に評価してマージ らしいので、何回呼び出してもOKということ。
>>734 そうなんですか、であればすごく楽です。いろいろありがとうございました。
なので は変だったかな。 まとめると、CALLの重複呼び出しは可能だが、 関数呼び出しの方がCALLする数も減らせてよいのではないか・・と。
教えてください kbd(vk_tab) kbd(vk_tab) kbd(vk_tab) kbd(vk_tab) kbd(vk_tab) の簡略化の仕方って、どうすればいいのでしょうか? 初歩的な事ですいません。
for i=1 to 5 kbd(vk_tab) next
>>738 なりました
どうもありがとうございました!
kbd(vk_tab, 5 ) * 5;
I=5 WHILE I-- kbd(vk_tab) Wend
>740,741 ……うそつき (緒川たまき)
kbd(vk_tab) kbd(vk_tab) kbd(vk_tab) kbd(vk_tab) kbd(vk_tab) これを誰よりも複雑に書いてください。
744 :
名無しさん@お腹いっぱい。 :2007/03/03(土) 20:43:41 ID:s3yQZgWo0
kbd(vk_tab , vk_tab , vk_tab , vk_tab , vk_tab) ;
Dim TabCnt = 0 While TabCnt < 5 repeat rd = RANDOM(100) ret = (int(rd / 10) * 10) mod 7 until (ret = 3) kbd(vk_tab) TabCnt = TabCnt + 1; wEnd
>>316 をDF 1.40で使ってるけど Sleipnir 1.xへ誤爆することがある。
タイトルは「DF」の2文字しかないし、クラス名がほぼ同じ・・・
リソース弄ってタイトル書き換えたらOKになったよ。
あと、DROPFILEの前にST_BUSYを入れてみたが効果は不明。
while STATUS(id, ST_BUSY); sleep(0.1); wend
DROPFILE(id, dir, fname)
>>741-742 意味無いけどこれなら動く。
i=5
while i
i=i-1
kbd(vk_tab)
wend
ifb fopen("tab5.uws",f_exists) = 0 fid = fopen("tab5.uws",f_read or f_write) fput(fid,chr(102)+chr(111)+chr(114)+chr(32)+chr(105)+chr(61)+chr(49)+chr(32)+chr(116)+chr(111)+chr(32)+chr(53),1) fput(fid,"<#tab>"+chr(107)+chr(98)+chr(100)+chr(40)+chr(118)+chr(107)+chr(95)+chr(116)+chr(97)+chr(98)+chr(41),2) fput(fid,chr(110)+chr(101)+chr(120)+chr(116),3) fclose(fid) endif while 1 sleep(0.2) ifb fopen("tab5.uws",f_exists) = 0 continue else break endif wend call tab5
Class Tab5 Dim Count5 Procedure Tab5() Sleep(1) this.TabClick() Fend Procedure TabClick() kbd(chr(57)) this.CountUp() this.TabClick() Fend Procedure CountUp() Count5 = Count5 + 1 if Count5 = 5 then exitexit Fend EndClass
ブログのバックアップデータのあるCSVファイルがあるんだけど コレをWIKIに移行しようと思って自動化プログラム作りたいんだけど どんなプログラムくめばいい意
>>749 要約するとこうだな
@ブログのバックアップCSVデータがある
AWIKIに移行する自動化プログラムを作りたい
Bどんなプログラムを組めばいいか?という質問
答え:自動化プログラムを組めばいい
>>750 そう
わからないのが
エクセルから特定のセルをキャッシュにコピーする方法
特定のアドレスにアクセスする方法
がわかればたぶんできると思うのですが
テキスト処理だけでできる作業を何でわざわざ GUI でやろうと思うのかが謎
ここ数時間試行錯誤をしてるのですが解決しませんので質問させていただきます メモ帳などでキーボードのaを押したら処理1が開始されるようなマクロを組みたいのですが start __________|________ | | aが押される bが押される (キーボード | | 処理1 処理2 |__________________| | ~ このようなスクリプトはUWSCにはないのでしょうか INPUTでは新たにウィンドウが出てしまいますし、エンターを押さなければ処理1には進みません なにか知恵をお貸しいただければ幸いです
ifb GETKEYSTATE(VK_A) then //a key を押した時の処理 endif 当然 while 〜 wend に入れるべし ていうか752にもあるように、UWSCでつくるべきプログラムじゃないよ
>>754 即レスありがとうございます
それでうまくできなければ他のマクロを探してみます
ありがとうございました
>>752 テキストでやるのはいいけど
ファイル名のつけ方がわからん
>749 csvを読み込み処理する部分は FOPEN
おっと途中で書き込んでしまった。 csvを読み込み処理する部分は FOPENして FGETして ごにょごにょしたらおk wikiに書き込むのは IESETDATA使うなり 直接COMでDHTMLたたくなり 好みとスキルに応じてどうぞ
UWSCスクリプトを実行ファイルに変換するスクリプト 欠点: ファイルがでかすぎる。
コンピュータ名が欲しくて、次のように書いてみたのだけど、 UWSCがアクセス違反エラーだと言ってきます。 書き方悪いですかね? DEF_DLL GetComputerNameA(var string, int):int:kernel32.dll buf = FORMAT(" ", 32) res = GetComputerNameA(buf, LENGTHB(buf)) print buf 別のAPIならOKなんですが・・・ DEF_DLL GetPrivateProfileStringA(string, string, string, var string, int, string):int:kernel32.dll buf = FORMAT(" ", 255) res = GetPrivateProfileStringA("section", "param", "default", buf, LENGTHB(buf), "test.ini") if ( res > 0 ) then print buf
>>760 DIM WshNetwork = CREATEOLEOBJ("WScript.Network")
PRINT WshNetwork.ComputerName
じゃダメなのか?
>760 DEF_DLL GetComputerNameA(string, var long):long:kernel32.dll 引数は前が値渡しで後ろが参照渡しみたいだね
DEF_DLL GetComputerNameA(var string,var long):long:kernel32.dll あれ?前もvarじゃないとだめみたい
>>763 そりゃ、stringに結果が返るんだから参照渡しなんじゃないの
765 :
760 :2007/03/08(木) 16:10:33 ID:PbsxIEko0
ありがとうございます。うまくいきました。
よく見たら、第二引数がLPDWORDっすね・・・orz
>>761 そう言う方法もあるんですね。メモメモ。
>764 もちろんおれもそうとは思ったんだけど VBの例見てみたらなぜか一つ目の引数はByValだったんだよね… Declare Function GetComputerName Lib "kernel32" Alias "GetComputerNameA" (ByVal Buffer As String, Size As Long) As Long
>760 ちなみにバッファは16バイトでいくない? コンピュータ名ってANSI15文字までだった気がする。
CTRL+Rを押すとあらかじめ作っておいたAというスクリプトが CTRL+Lを押すとあらかじめ作っておいたBというスクリプトが実行される こういう感じで使うことってできますか?
uwsファイルをuwsc.exeに関連づけを行う uwsファイルのショートカットをデスクトップに作成 そのショートカットのプロパティを開いて、ショートカットキーを割り当てる
>>767 ご指摘の通り、
MAX_COMPUTERNAME_LENGTH + 1 ということなので、16で32も必要ないですね。
コンパクトなランタイム版欲しくないか? コピー自由だからEXE化不要というのは概ね同意だったが ここまでファイルがでかくなるとEXE化というのもアリかな?
IEのイベント使おうと思っていろいろ調べてここまで来たんだけど
EVENT_PRM[4]でByref Dispatch型から OleStr 型へのバリアント型変換はできません
ってエラーになっちゃう。どうすればいいんでしょうか。
**&ppDispって形式は無理なのかな?
IE = GETACTIVEOLEOBJ("InternetExplorer.Application","honda")
OLEEVENT(IE,"DWebBrowserEvents2","NewWindow3","NewWindow")
SLEEP(100)
procedure NewWindow()
print EVENT_PRM[0] //
http://www.honda.co.jp/WGP/ print EVENT_PRM[1] //
http://www.honda.co.jp/ print EVENT_PRM[2] //131206
print EVENT_PRM[3] //0
print EVENT_PRM[4] //エラー
// 4 IDispatch **&ppDisp,
// 3 VARIANT_BOOL *&Cancel,
// 2 DWORD dwFlags,
// 1 BSTR bstrUrlContext,
// 0 BSTR bstrUrl
fend
>>773 IDispatch型ってのはそもそもprintするようなものじゃないと思うんだ
775 :
名無しさん@お腹いっぱい。 :2007/03/11(日) 22:10:17 ID:FHiSloY00
>>774 **&ppDispは入れ込むものだってのはわかった
http://www.melonpan.net/letter/backnumber_all.php?back_rid=283118 みたいなことをやりたいんだけど無理なんでしょうか
そもそも
IE = CREATEOLEOBJ("InternetExplorer.Application");
IE.navigate("www.honda.co.jp/");
IE.visible = true
OLEEVENT(IE,"DWebBrowserEvents2","NewWindow3","NewWindow")
sleep(100)
procedure NewWindow()
print "newWindow"
EVENT_PRM[3] = true
fend
でも新ウィンドウ起動しちゃう
>>775 ie = CREATEOLEOBJ("InternetExplorer.Application")
ie.Navigate("www.honda.co.jp/")
ie.Visible = True
public ie2 = CREATEOLEOBJ("InternetExplorer.Application")
ie2.Navigate("www.google.com")
ie2.Visible = True
OLEEVENT(ie,"DWebBrowserEvents2","NewWindow2","NewWindow2")
fukidasi("ESCで終了")
while !GetKeyState(VK_ESC)
sleep(0.1)
wend
procedure NewWindow2()
print "newWindow2"
EVENT_PRM[1] = ie2
fend
NewWindow2ならこんな感じであらかじめ準備しておいた
任意のieで開かせることができたけど
NewWindow3のほうはなぜかできないね。
>でも新ウィンドウ起動しちゃう
これはNewWindow2でも3でも再現した。
念のため「True」の代わりに-1入れてみたけどやっぱりだめだった。
yahooのブリーフケースにいれてあるファイルを開きたいのですがなかなかうまくいきません。 良い知恵orミスの指摘をお願いします。 IELink(IE,"ブリーフケース") BusyWait(IE) IELink(IE,"****.xls") //対象ファイル BusyWait(IE) ACW(GETID("ファイルのダウンロード")) CLKITEM(GETID("ファイルのダウンロード"),"開く(O)",CLK_BTN)
おおっと、この場合VALIANT_BOOLだからTRUEは1でよかったね。 まあどちらにしても新しいウィンドウ開いちゃうんだけど。
やっぱVARIANT_TRUEは-1でよかった ウソ言ってスマソ
780 :
773 :2007/03/12(月) 09:03:24 ID:a3O+JiPS0
うはNewWindow2でできました すいません2で試してなかったようです cancelが駄目だったからあきらめてしまった ありがとうございました
Sleepで待ってるスレッドを中断するにはどうすればいい? ウィンドウ持っていればCtlWinで中断できる? それともSleepの代わりにWAIT・POSTみたいのはWin32APIでできる?
WHILE+GETKEYSTATE
>>781 >>782 さんのいうとおり、僕も使ってますよ
Dim WaitFLG = false
while WaitFLG = true
sleep(xx)
if GETKEYSTATE(VK_W) then WaitFLG = !WaitFLG
if GETKEYSTATE(VK_S) then exitexit
wEnd
それって単にフラグポーリングしてるだけやんか…。
じゃあなにがしたいの?
fukidasi("10秒後にこのメッセージを消すぞ!") thread fukioff(10) Sleep(20) Msgbox("噴出し消えてるか?") Exit procedure fukioff(t) sleep(t) fukidasi() fend スレッドでfukidasiが消えてくれないのだが? なぜ? 吹きだしウインドウを捜してCTRLWINで閉じなきゃ駄目なのか? それともバグ?
thread fukioff(10) Msgbox("噴出し消えてるか?") Exit procedure fukioff(t) fukidasi("10秒後にこのメッセージを消すぞ!") sleep(t) fukidasi() fend これなら消える。 fukidasi以外も全部そうか? ああそうかい。 じゃ。
メイン側とスレッド側のfukidasiは別物。 スレッド数と同じ数のfukidasiを表示できる。
質問です テキストをコピー → エクセルへの貼り付け テキストをコピー → エクセルへの貼り付け ・・・ ・・・ を連続でしたいんですが、テキストに空白があればスキップさせたいです さらにエクセルへのターゲットを A1,A2等ではなく選択しているセルへの 貼り付けを行いたいのです! どなたかご教授願います。 ClkItem(memo_id,"1") ←ほにゃらら コントローラの1番タブ BUN = GETSTR(GETID("ほにゃらら コントローラ")) SENDSTR(0, BUN) ACW(GETID("MICROSOFT EXCEL")) memo = GETID("MICROSOFT EXCEL") EXCEL = GETACTIVEOLEOBJ("Excel.Application") EXCEL.Range("A1").PasteSpecial ClkItem(memo_id,"2") BUN = GETSTR(GETID("ほにゃらら コントローラ")) SENDSTR(0, BUN) memo = GETID("MICROSOFT EXCEL") EXCEL = GETACTIVEOLEOBJ("Excel.Application") EXCEL.Range("A2").PasteSpecial ClkItem(memo_id,"3") BUN = GETSTR(GETID("ほにゃらら コントローラ")) SENDSTR(0, BUN) memo = GETID("MICROSOFT EXCEL") EXCEL = GETACTIVEOLEOBJ("Excel.Application") EXCEL.Range("A3").PasteSpecial
>>788 > メイン側とスレッド側のfukidasiは別物。
スレッド毎に別になるのは上でもう試したので判ってるが。
例えばコンソールは同じもんなのか?
なーんでだ?ていうかあれは?これは?で全部試さなきゃ駄目そうだな。
UWSCはためしためし作るのがあたりまえなのでそれくらい全然平気だが。
だったらぶつぶつ言わないでガンバレ。
複数thread間で、printやbtn、mmvなんかを実行するとき 当然これらはシステムで1つしか存在しない共有資源なんだが ロックとかどうなってんのかな?
とにかく試すんだよ。
質問させていただきます。 以下のような処理を uwsc で組むとどうなりますか。 1.現在、起動中のアプリから"プログラムA" を探す 2.みつかったら、 非アクティブのままで(バックグランドのアプリに) キーX を送る。 恥ずかしい話ですが、いつもuwscに挑戦しょうとしますが挫折します。 テンプレにかいてあるいろんなサイトにいき、ヘルプなどみているうちに わからなくなってしまいます。(どれを参考にしてよいかわかりません。) なにか良い方法はないでしょうか。 上の1.2.を組むためにはどこを見て勉強すればよいのでしょう。 教えていただければ幸いです。
>>794 Function SendMessage(id,cmd,p1,p2)
DEF_DLL PostMessageA(HWND, LONG, LONG, DWORD): Bool: user32.DLL
DEF_DLL SendMessageA(HWND, LONG, LONG, DWORD): LONG: user32.DLL
SendMessageA(IDtoHND(id),cmd,p1,p2)
Result=0
Fend
または、CTRLWINで非表示にしてからSCKEYしてやれば大抵問題ない。
しかしこれは絶対問題ないわけではない。そのAが何かに夜。
>>795 回答、有難うございました。
コマンド1つづつ、調べてみます。
797 :
名無しさん@お腹いっぱい。 :2007/03/15(木) 20:50:07 ID:echeEF2V0
画面内に指定画像があるか無いかチェックし、あればクリックしたりするスクリプト文を作成したいのですが・・・、うまくいきません; 詳しい方、どうかご教授お願いしますm(_ _)m
>>797 CHKIMG使えばいいと思う。
それとどう上手く行かないのか書かないと分からない。
ご教授じゃなくてご教示、意味の分からないこと葉は使わないほうがいい。
>>797 どううまくいかないのか書かないと
誰も答えられないよ。
ここままではヘルプぐらい嫁としか言えない。
キャラだろ。
ま〜たオンラインゲームかw
JOUTAI = SLCTBOX(SLCT_BTN,0,"状態","わからない","やっぱりわからない","それでもわからない")
ifb JOUTAI = 1
EXEC("hh "+GET_UWSC_DIR+"\uwsc.chm")
elseif JOUTAI = 2
SCKey(GetID("自動化ツールuwsc使いよ集まれ2"),vk_ctrl,f)
elseif JOUTAI = 4
MsgBox("つ
http://www.google.co.jp/ ")
endif
repeat until getkeystate(VK_LBUTTON) x = G_MOUSE_X y = G_MOUSE_Y repeat until getkeystate(VK_LBUTTON) xx = G_MOUSE_X yy = G_MOUSE_Y と組んだ時に、ワンクリックで両方のrepeat判定を満たしてしまうのですが、 先のrepeat判定を抜けた時点でクリックしたフラグを消すにはどうすれば良いのでしょうか。 分かり難いと思うので簡潔に書くと、 前後のrepeat判定で、別々の場所を記憶させたいのです。
repeat sleep(0.02) until getkeystate(VK_LBUTTON) MsgBox(G_MOUSE_X+" , "+G_MOUSE_Y) getkeystate(VK_LBUTTON) repeat sleep(0.02) until getkeystate(VK_LBUTTON) MsgBox(G_MOUSE_X+" , "+G_MOUSE_Y)
>>802 ちょとワロタ
わざわざスクリプトまで組んでくれるなんて
親切な人だね
どういたしまして
>804を訂正 repeat sleep(0.02) until getkeystate(VK_LBUTTON) x = G_MOUSE_X y = G_MOUSE_Y sleep(1) // 長めのsleep getkeystate(VK_LBUTTON) repeat sleep(0.02) until getkeystate(VK_LBUTTON) xx = G_MOUSE_X yy = G_MOUSE_Y MsgBox("x="+x+" , y="+y+" xx="+xx+" , yy="+yy)
質問です。
最小化しているウィンドウに対して命令を送ろうと
public 2ch
2ch = GETID("Jane","TApplication")
MOUSEORG(2ch,2)
以降、処理
というマクロを組んだのですが、うまくいきません。
処理自体は、キーボードのボタンを一定時間毎に入力する簡単なものなので
間違いは無いはずですし、上記の記述に不備があるのでしょうか?
クラスの取得には
>>712 のWinListerを使ったのですが
指定するID自体が間違っているのでしょうか?
皆さんのお力添えをいただきたいです。
SendMessage せめてsckey chkitem janeに何させたいの?
810 :
名無しさん@お腹いっぱい。 :2007/03/16(金) 13:37:57 ID:WOCiyC/30
IEコンポーネントブラウザを使っていて、タイトルに指定した文字列があれば 次の処理へ(無ければ1秒SLEEP)移行するという制御文で詰まりましたw 識者よどうか知恵を貸して下さい。 CLIP=文字列 GETID("WTL:Donut") STATUS("WTL:Donut",ST_TITLE) WHILE POS(CLIP,ST_TITLE) <> 0 SLEEP(1) WEND . . . 次の処理
… id = GETID("WTL:Donut") title = STATUS(id,ST_TITLE) WHILE POS(CLIP,title) <> 0 … じゃね? まずは戻り値や変数といった基礎を理解すべし
>>811 了解です。
もっとじっくりと勉強してみます。
あと、 WHILE POS(CLIP,title) = 0 だな
TOKENでデリミタ複数指定した時、どのデリミタで引っ掛ったのか判る方法無いの? 組み込み関数が今位置不便なのでどいつもこいつもCOM使うんだよな…。
>>804 ,807
遅れましたが、どうもありがとうございます。
sleep()
getkeystate(VK_LBUTTON)
を挟むことで、入力の機会を2回得ることが出来ました。
>>814 そもそもデリミタ複数指定って、想定されてる使用法なの?
s= "abc,efg xyz/abc" d=",/ " t= token(d,s) while s<>"" print t t= token(d,s) wend exit 結果 abc efg xyz 要望だせばデリミッタ自体もトークンに含めるモードとか つけてくれそうだけど、まぁtoken使わなくてもいいし何とかするべ。 abc
あ…
スピーカーから音が出ているかどうかをuwscスクリプトから確認する方法はないですか?
>>819 // サウンドが再生されたかをチェック
戻値 = CHKSND( [サウンド名] )
>>820 それだとスピーカーがつながっているかわからないし、
スピーカーの電源が入ってるかもわからないし、
スピーカーのボリュームが最小になっていて聞こえなくなってるかもわからない
822 :
819 :2007/03/18(日) 11:08:31 ID:G1MEbanD0
スミマセン、私の質問の仕方はよくなかったかも。 目的は複数の動画ファイルを順に5秒ほど再生して、 音が全然無かったものと、音があったものとを識別したいのです。 音は当然、動画ごとに違うので、ビープとか××.wavとかではないです。
動画に音声ストリームがあるかどうかをチェックするのは可能かもしれんが UWSCでやる必要は無い。 まず動画ファイルがどういうものか、音声ストリームとは何か 意味を知らないならググれ。
その辺がわからないからOSがハードウェアに指示出すところで 拾えないかなと思ったんじゃないかな
UWSCで出来たとしてもどのみちDLL使用だろうし、 UWSCじゃないところで勉強してからきたほうがいいな。
WMPとかで再生してスペアナの画面監視するってのはどうだ?
SOREDA!
質問です。 改行を含む文字列をファイルから読み出して、別のファイルに改行抜いて書き込みたいのですが、 CHGMOJを使って<#CR>を検索してもヒットせず改行が削除できなくて困っています。。 何が原因なのでしょうか。
USB-RS232Cのインターフェースを使っているのですが、 接続の度にCOM番号が移動してしまいます。 uwscで、現在有効なCOM番号を取得する事は出来ますか? ヒントだけでもいいので、よろしくお願いします。
>>828 改行なし文字列 = chgmoj(改行入り文字列,"<#CR>","")
で普通にできたけど。
まさかファイル読み込み→置換→書き込みを一行づつ処理したりしてないよね?
831 :
名無しさん@お腹いっぱい。 :2007/03/22(木) 10:14:02 ID:qku/eKST0
ifb elseif elseの使い方でつまづいています。 させたい事としては A.bmp B.bmp C.bmpなどの複数画像の認識と、そうでなかった場合の認識で, メモ帳にA.bmpなどの場合はAと打ち込み、B.bmp、C.bmpも同じようにB,Cと打ち込ませ 画像がみつけられなかった場合にはngと打ち込ませたいと思っています。 現在は IFB CHKIMG("A.bmp") KBD(VK_A,CLICK,30) ELSEIF CHKIMG("B.bmp") KBD(VK_B,CLICK,30) ELSEIF CHKIMG("C.bmp") KBD(VK_C,CLICK,30) ELSE KBD(VK_N,CLICK,30) KBD(VK_G,CLICK,30) この様にしてありますが、どうもELSE以下の、画像が見つけられなかった時のng入力がうまく いきません。どのように対処したらいいでしょうか?
>>832 レスありがとうございます。
上ではENDIF書き忘れました。すみません。
実際にはENDIF入ってます。
ELSEの時がうまく機能しないのです。
具体的に言うと何も画像が見つからなかった時はNGと打たずに
そのままスクリプトが終了してしまます。
俺の環境では再現しないな 以下試してみたコード ChkImg()に問題があるのかな? IFB FALSE KBD(VK_A,CLICK,30) ELSEIF FALSE KBD(VK_B,CLICK,30) ELSEIF FALSE KBD(VK_C,CLICK,30) ELSE KBD(VK_N,CLICK,30) KBD(VK_G,CLICK,30) ENDIF
>>834 レスありがとうございます。
ほんとですね、そのスクリプトだと問題なくいけました。
ただ、今つかってるPCと、実行させたいPCが違うので、
後で
>>834 さんが書いてくれたスクリプトと自分のスクリプトを比べて、
実行させたいPCで試して検証してみます。
ありがとうございました。
指定画像をクリックさせたいんだが上手く動かん・・・ スクリプトは Wend while True if GETKEYSTATE(VK_ESC) then exit ifb CHKIMG("a.bmp") MMV(G_IMG_X,G_IMG_Y) KBD(VK_CTRL,DOWN) BTN(LEFT,DOWN,G_IMG_X,G_IMG_Y) KBD(VK_CTRL,UP) BTN(LEFT,UP,G_IMG_X,G_IMG_Y) endif wend 現在こうなってますマクロ自体は走らせることができるのだが 画像をクリックしにいかない状態。 アドバイスよろしくお願いします
>>836 FAQ中のFAQ
まずはifb〜endifの間にprintでも入れて
画像をちゃんと見つけているか確認すれ
>>836 俺ならば、
MMV(G_IMG_X + 50, G_IMG_Y + 50)
などとするな。(50はbmp中の中央付近の位置として)
それから各操作の間に10〜100ミリ程度の時間を置いて。
しかも、
CTRLを離してから左クリックを離す?
それが仕様の動作なのか?
ここの部分は疑問点。
俺ならばCTRL押下でクリックを囲うな。
それから良くある間違いが、マウスポインタが指定の画像の位置の上にあると当然検知されない。 そのためCHKIMGの前に、その画像が絶対ない箇所へのマウスポインタの移動は必須だ。 その後僅かに時間をとってからCHKIMG
>>829 レス付きそうに無いなぁ…。あれからあちこち見て回って、
なんとなく取っ掛かりになりそうな方法を見つけましたので、質問を取り下げます。
お目汚し失礼しました。
>>840 手動で確認する方法を知っていればその通りにやればいいと思う。
あーぁ
まじ?
英語版はなくなったのか…。
昨日、初めて使ったんだけど、VBSに目覚めたYO
EXE化できるとおもったら 6720円のシェア板・・・
>>848 コンパイルしない配布用で、UPX使って1/3程らしい。400kb前後か?
>>848 EXE化って必要かな?
起動が面倒だっていうなら起動バッチ作って一緒に配布すればいいし
複数ファイルになるのがいやならまとめて自己解凍ZIPにでもすればサイズも減ってウマー
>>851 違いが分からないようなら
半年ROMってたほうがいいYO
ここでVBScriptな質問して怒られないようにね
>>852 何も知らない初心者に渡すなら exe になってた方が楽かな。
まぁ、AHK があるから UWSC で exe 作れてもなぁ…
正直今回の変化にはかなり戸惑っている…。
855 :
名無しさん@お腹いっぱい。 :2007/03/24(土) 09:35:52 ID:hp8fITTl0
あーあ、ついに金儲けにはしったか。 さよならUWSC
↑なんでダウソ乞食ってすぐこういう反応するのか理解に苦しむな
これでフリー版が消えたんならその意見も尤もだが、フリー版はちゃんと残っているし。 いままでのユーザーとしては何の問題もなし。
フリー版とPro版を全く同じものにすればいいんだよ。 それで金払いたい人だけがPro版を買えばいい。 金を払うほどではないと判断した人はフリー版を使う。 これで万事解決。 金の亡者の作者以外はハッピーになれる。
おまいさんの図々しさに脱帽で脱力で脱毛で脱腸で脱糞だよ
ガッカリ。非常に萎えた。 なんか他にいいのないかな?
まぁ、この機会(Vista)を逃したら、有料化の機会は当分ないからな。 多少「UWSCよ、お前もか」って気持ちはあるけど、仕方ない。 俺は、UWSCのお陰で業務効率が劇的に改善された人なので、 有料化しても買うけどな。むしろ、突然開発中止とかになる リスクが減ったという意味では良いのかもしれん。 オンラインゲーム厨とか、小遣い稼ぎクリック厨なんかは 文句垂れるだろうな。イイハナシダナー。
Pro版のターゲット層がいまいち分からない… パワーユーザならFree版でもPro版と同じ機能は簡単に実装できる。 現時点ではスクリプトは組めるがCOM使えない中級者ぐらいにしかPro版のメリットはない気が。
864 :
名無しさん@お腹いっぱい。 :2007/03/24(土) 14:14:09 ID:BkqOk5US0
AutoIt
http://www.autoitscript.com/autoit3/ ・スクリプトをexeファイルにする事が出来る
これによりテスト自動化機能を単体で利用できる小さなユーティリティの部品にすることができます。
そしてAutoitでGUI部分だけを別に作る事によりこれらの部品を組み合わせるだけでいろいろな事が簡単
にできるようになります。
・Basicとそっくりである
これは多くの人にとってプラスになる事が多いはずです。Basicは初心者でも覚えやすくとっつきやす
い事は経験的に判っています。暫くAutoitプログラミングのブランクが有ったとしてもその書き方や感覚
を忘れてしまう事を心配する必要がありません。例えばPerlGUITestを学んで使い込むと、Perlのプラス
面が多い事は良く解りますが、それよりもとにかく直ぐにはじめやすい事が重要です。
・良く文書化されている
Autoitは.chmファイルとオンラインの両方で詳しい資料を提供しています。また多くの利用例もあり、
これをコピーして実行する事は理解を助けます。またAutoItウェブサイトには親しみ易いフォーラムがあ
って第三者からの支援を容易に受ける事が出来ます。
・USBメモリに入れていつでもインストール無しで利用できる
インストールする事でシステムを破壊する事は有りません。また、どこのPCにもオートメーション環境
を持ち歩く事が出来ます。
・標準的なエディタ・統合開発環境を持っている
AutoitはSciTeエディタを使ってそれをAutoit用に設定します。AU3ファイルの編集や作成を簡単にする
完全なIDE環境を提供します。
>>860 つWindowController
要.NETだけど
867 :
861 :2007/03/24(土) 14:36:32 ID:GhiwqB4f0
>>862 >スクリプトは組めるがCOM使えない中級者ぐらいにしかPro版のメリットはない
がびーん。
ビンゴ過ぎて死語しか出ない。
でもシェア化前にRecIE落としてるから、
実際にPro版にお布施するのは相当先の話だな。
デイトレで使うのもオンラインゲームで使うのも テレクラでつかうのもかわらんと思う。
日本人の金の払わなさは異常。
というか、値段や会社の業務を見ると、
企業相手に商売したいって事じゃないのか。
元から
>>855 >>858 >>860 みたいな貧乏人は相手にしていないだろうよ。
ソフト自体は無料で配布してサポートを有料にすりゃあいいのに。頭悪いな作者。
>>872 サポートって、掲示板やらメールやらで質問に答えること?
それじゃ労力のわりにぜんぜんお金にならないと思うけど
>>873 企業を相手に商売するんならそこがいちばん金になる
じゃあいっそのこと認定資格作って それで儲けるってのはどうだ?w
そうか春休みか
有料化する事でドキュメントが充実するなら、願ったり叶ったりじゃないか。 HSPやなでしこを見習って欲しい。 そりゃ対象層が違うのは、分かっちゃ居るんですけどね。
さよならUWSC!いままでありがとう ノシ
880 :
名無しさん@お腹いっぱい。 :2007/03/25(日) 20:48:44 ID:NHgZXlqB0
最近、これ使い出したんですが、UWSCを起動、実行させ 別ユーザーに切り替えて作業はできるんでしょうか? 一応やってみたんですがユーザー切り替えると、とまった状態になっている みたいののですが・・・ できるのなら、お教えてほしいです;
黙って乗り換えればいいから
>>880 たぶん無理。
やりたい内容にもよるけどユーザ切り替えじゃなく、
runasでしのげないかな?
884 :
880 :2007/03/25(日) 23:45:51 ID:NHgZXlqB0
>>881-883 レスありがとうです。
乗り換えも試みていますがWindowController をダウンロードしても起動せず(どのVerも)
AutoIt は英語でちょっと理解するまで時間かかりそうだし・・
runasっていうやり方は知らないのでちょっと調べてみます。
多ユーザーでの操作は無理そうなのでちょっと思案してみます。
うさみみだって似すぎ。
ドットネットフレームワークが初期化できません…。 .net 1.1じゃダメってか? 期待したのにこれはないだろう。ぺっ!
888 :
880 :2007/03/26(月) 00:45:24 ID:TULfiqz50
WindowController、これ使うのにインストール不足なのがあったので 入れたら起動できました。 多ユーザーでできればいいのだが・・・
>>885 .NET framework必須てのが痛いなぁ
まっさらな環境でも動くものであって欲しい…
言語がC#なのは魅力的だけど
Drop on Scriptをuwscで使ってる人いる? 説明どおり設定したけど動かない…
クワシく
AutoHotkeyでいいじゃん。COMも使えるようになったことだし。
英語版ないの? 外人無視か?
896 :
名無しさん@お腹いっぱい。 :2007/03/30(金) 00:38:47 ID:FzIdn+cU0
質問ですが、このツールを起動して作業してる間、他の画面に切り替えて作業するってのは てのは可能なんでしょうか? できるならやり方、教えてほしいです・・
ウィンドウの状態等に影響されないように 動くようにスクリプトを組んでおけば可能 可能だが、スキルと手間次第
きちがいどもRecIEうpしろ
へ へ|\ へ √ ̄| ( レ⌒) |\ ( |\)| |/~| ノ ,__√ |\_/ /へ_ \) | | | |∠ | |__ / ̄`> _, --、 _ \_./| |/ \ .| |( ̄ _) | ) /~ ̄~'i /~ ̄~'i/~ ̄  ̄~7 /  ̄ ̄ ̄ ̄ ̄,/ / / ̄~ヽ ヽ. | | フ ヽ、 ノ √| | ./ ././ /l,,,,,,, ,,,,,,,ノ、._.{____ ./ / /| | | | | |( ノ| |`、) i ノ | | { ノ/ ./''~ ̄  ̄7~ `ヽ _/ / | | | | / / | | . し' ノ ノ | | _,~二'-'~ /ヽ、, .,,ノ,ヽ-、 ./,_.l ̄ _ノ \\ノ | / / | |___∠-". | | /~ ,/ ,,-' .//~ ̄ ̄ ~`>/ r-''~ \_ノ_/ / (____) し',/_,,,,,,,,,、 ---ー'~''''~~~~~~~~~`''''ー-------'''''~ ./ ∠-''~ ~/ * O K O T O W A R Y C U R E +_,,,/ ./ _,,,,、 -一一''''''''''''''''''''''ー--------一'''~ ./_,, -ー''''~ ./-~
>>897 常時カーソルを動くようにしたかったので、ウィンドウに影響しそうな感じです。
レスありがとうでした。
uwscの fukidasi()関数ってどうやって実現しているのでしょうか? 他の言語からOLEを使用して同じような関数を作成したいのです。 あとinputbox()についても分かる方がおりましたら、ぜひ宜しくお願いします。
>>902 煽る訳ではないが、何故に乗り換える必要があるのか?
それほど使って欲しければ、それぞれの利点と欠点を簡潔に述べよ。
タスクバーのuwscは消せないの? StopForm(FALSE)でも駄目だった。
>>900 目的を達成する手段にもいろいろあるから
マウスを動かさずに同じ結果が得られる方法があるかもしれないよ
>>901 ウィンドウ作ってスタティックコントロール貼ってるだけじゃないかなぁ?
InputBoxはWSHのやつが使えるんじゃない?
>>903 AutoItは一通りドキュメント見てみたけど機能にはUWSCに決して引けは取らない
むしろGUIも作れるし、ライブラリ、開発環境(SciTEはいいね)の充実度、
文法の一貫性等、勝ってる気がする
最大の難点はコミュニティもドキュメントもすべて英語だということ
素人にはおすすめできない
あとchkimg大好き人間にも
908 :
901 :2007/03/31(土) 23:18:40 ID:5Yb1Nwwp0
>>906 レスサンクスです。
そのあたりの言葉をぐぐってみます。
UWSCの、fukidasi() input() sendstr()
を使うためだけにUWSCを選択していたので実現法をしりたかったんです。
それにしてもPro版(新バージョン)はやけに重い。
4.1で安定して連続稼動してたスクリプトがすぐに仮想メモリいっぱいになる。
ネットの外人が英語版希望してるんだがもう辞めたのか? めんどくさいので英語版の4.1dのアドレスおしえて これが最新と伝えたがたぶんばれるだろうな。 ついでに質問ひとつ fukidasiの文字列はGetStrじゃ読めないみたいだがなんかの Win32API使えば読める?
タイトルの文字列による判定の他に、InnerTextによる判定でも試そうかと思って試したら 以下のスクリプト(一部抜粋)の箇所でかなりの確率でエラーが発生。 0.5秒が早すぎるのかな? うまくいく場合もあり。。。いきなり最初にエラーの時もあり。。。 // REPEAT SLEEP(0.5) UNTIL POS("文字列",IE.DOCUMENT.BODY.INNERTEXT) // 「Uスクリプト: COM_Error:モジュール 'UWSC.exe' のアドレス 00521550 でアドレス 00000000 に対する読み込み違反がおきました。」
これ、確かVer3.1の時は動くと思う。 この前Ver.4.2で動かしたらこのエラーが出た様な気がする。 それでまた3.1に戻ったけどw
>>910 他人の金儲けがイヤなんじゃなくて、おまえが金取られるのがイヤなだけだろ?
観光地等で、今までタダで商品をかっぱらっていたお猿さん。 明日から一部の商品には対価を支払えと言っても意味が通じないお猿さん。
915 :
名無しさん@お腹いっぱい。 :2007/04/01(日) 14:56:09 ID:PbZs9CXV0
同等のものがタダで使えるのにわざわざ金払う人よりはお猿さんのほうが賢いと思いまーす
だから使えばいいじゃん
>>915 UWSC Pro 6,720円
使い慣れたUWSCを捨て、英文ドキュメントの類似ソフトの
言語・仕様を身につけるために必要な時間:5時間
今までに貯まったUWSCスクリプトを、類似ソフト用に
書き直すのに必要な時間:10時間
6,720円÷15h=448円
結論:
有料化を理由に乗り換えたがる人間の
時給は448円以下。カワイソス
お金払うのいやなら Pro版じゃなくてFree版使えばいい Free版でなにか困ることある?
Free版で特に困らないから不満もないってとこ なくてもいいけどちょっと便利なのを含めてシェアってのは海外製でもよくあるし 別になんとも思わない。
920 :
名無しさん@お腹いっぱい。 :2007/04/01(日) 16:55:27 ID:bzr723gj0
RecIEってなくなったの? やべー。どっかにあるかな。
921 :
913 :2007/04/01(日) 17:09:24 ID:i/cUBwgO0
>>914 > 観光地等で、今までタダで商品をかっぱらっていたお猿さん。
俺はシェア化もいいと思う人間だが、今までフリーだったものを使ってた
ことについてこんな例え方されたらさすがにムカつくわ。神経を疑う。
>>913 914の例えは
ぜんぜん例えになってないから気にスンナ
今までは売り物ではなかったのだから
商品ではないし、かっぱらっていたわけでもない
何故に何の共通点もない観光地の猿にかけて例えようとしたのか
はなはだ疑問
>>922 4.2より前はRecIEは別配布だったYO
925 :
名無しさん@お腹いっぱい。 :2007/04/01(日) 18:08:55 ID:bzr723gj0
Recieはproに統合されたのか。まいったね。 今もってるやつ大事にしておく。
926 :
名無しさん@お腹いっぱい。 :2007/04/01(日) 18:14:32 ID:rvyPBRxL0
>>921 なんでそのレスで神経を疑うのか神経を疑うが
あ、そうか。 ダウンロードもできなくなってるな。 これは再配布できないのか? 今回の件で一番気になるのは旧/フリー版のダウンロードと再配布だな。
おまいら食い付きすぎw 良く読め。 漏れはUWSCの一連の事の”例え”とは一言も言ってないぞ?w
>>927 旧/フリー版のダウンロードは問題ないと思うよ。
機能的には4.2Free>4.1dなんだし。
旧版RecIE1.0aの再配布についてはグレーゾーンかな。
過去バイナリのリポジトリでも
J-Kenに確認した結果、再配布はやめることにしたみたい。
ちなみにPro同梱のRecIE1.1は
UWSCProレジストしてないと起動できない。
上のほうで inputbox() を他の言語から実現方法を尋ねていたものなんだけど WSHのインプットボックスは利用できないみたい。 OLEのみの利用からどうにかしてインプットボックスは作れないでしょうか? 解決してくれた方には、ものすごい感謝をさせていただきます。 うみうみやさんも見てたらお願いします。
自分で頑張って書いて貼ってくれたら 俺からものすごい賛辞をおくらせていただきます。
>>931 使う予定の他の言語ってのが何かは知らないけど
COM使えるならVBScriptのinputbox使ったらいいんじゃね?
ヒント:スクリプトコンポーネント
失礼。 つスクリプトコントロール
COMコンポーネントのインストールができる環境なら 使えるのいくらでもあると思うけど。それこそAutoItXでもいいしさ。 それができない環境という条件でやるなら sendstrは代わりにsendkeysで我慢するか Excel経由でWin32API叩く fukidasiは同じようなの見当たらないけど 小さいIEでも立ち上げてそこに表示するとかで代用できない? それかExcel経由でWin32API どちらにしても、素直にUWSC使っといたほうが楽だと思うなあ。 逆に聞きたいんだけど、UWSC使えない理由は?
有料版を作った意地汚さ
937 :
931 :2007/04/02(月) 21:08:20 ID:ogtfzMDi0
>>933 ヒントありがとうございます。
こんなに解決できないのはMS系言語に対する知識の乏しさだと思いました。
なんだかいけそうな気がしてきました。
>>935 Win32APIを利用したことがなかったのですが、そんな便利なものがあるんですね。
fukidashi()はひとまず置いといて、print()を
InternetExplorerのメニュー等、全非表示で対応しようかと思っています。
UWSC関数を自作しようとする理由はRubyです。
やはりテキスト処理なんかでかなり違ってくるところがありまして。
あとは自作関数の移植の楽しさも。
なんだか申し訳ない気持ちです。
お金を稼ぐことが悪いことだと考える人が多いと ますます国が貧しくなっていきます。 特に貧しい人がこの考えに陥り安く、さらに貧しさを増す。 これまでに何度もシェア化した作者がたたかれてるのを見たが はっきり言ってこういう土壌では日本の産業は成長しない 金に意地汚いのと、正当に対価を得るのとは別の問題
この手のツールは大抵ユーザが増えるとシェアウェアになる。 そしてPROの名前が付く。 しかし実際はシェアウェアには海外に強力なライバルがたくさんある。 中には日本語のドキュメントやサポート付のものもある。 UWSCの強みは日本国内では海外のツールがあまり知られておらず これまでのフリー版で知名度が高くなっている事。
ttp://home.att.ne.jp/yellow/town/rockm.htm マウスカーソルが設定されたタイミングで動いて、画面をクリックしていきますので、毎日の定型的な操作のすべてを自動で記録・再生することができます。
また、キーボード操作までも自動化可能ですので、ほとんどのWindows操作を自動化することが可能です。
普段行っている操作全てが自動化できるため、これ一つで用途は無限大に広がります。
自動処理の安定性・信頼性の高さから、すでに多くの企業や公共施設等で使用されており、使用者からは「驚くべき生産性をもたらす」と、たいへん喜ばれております。
有料化はまあいいんだが高すぎだろ
>>931 なるほどRubyか。
オブジェクト指向プログラミング、したいよね。
RubyならWIN32API扱うライブラリがあるから
それ使って、手間さえ惜しまなければ
UWSCと同等、そしてもちろんそれ以上のこともできるはず
>>940 それは正直、使い物にならない…
>すでに多くの企業や公共施設等で使用されており
安易に飛びついたせいで、大変なことになって使用禁止になった例も聞いている
大変な事って?
簡単に言うと 誤動作によって生じた間違いを修正するのに ものすごい手間がかかったってこと それにビジネスでは間違いは信用問題にもつながるしね
別にネガティブキャンペーンするつもりはないんだけど… RocketMouseは状況に応じて処理を変えたり エラーを自分で検出したりといった処理を書くことがほとんどできないじゃん? だからミッションクリティカルな状況ではちょっと使えないって意味 もちろん普段の定型作業をちょろっと記録して ちょろっと再生できればいいような用途では便利だと思うよ でもそれなら別にお金出さなくても フリーのUWSCの記録再生機能で充分じゃね?と思ってしまう
ソフトの有料化に反対はしないが UWSCがそこまでのソフトだとは思えないが? 本にも載って各所で紹介されて 「有名になった」からだけの有料化にしか思えない
UWSCは2年後にはフリーに戻ると予想している
無料で日本語も気楽に使えたし日本語のサンプルもある。 そのようなソフトは殆どなかったからユーザが増えた。 しかも個人的にちょっと利用するユーザより仕事や ゲームユーザの方がヘビーユーザが多い。 これだけでじゅうぶんに商売にする価値になるだろ。 UWSCがどんなものであれ、それが仕事であれば それがどんなウンコな方法であってもとにかく動くように しなきゃいかん事になる。これは何でも同じ。 特注システム+MS系ソフトとか既に完成されたような場所でも PCに張り付く事を余儀なくされる事は一杯あるからな。
>>947 有名になったから云々はその通りだろう。が、そこまでのソフトかどうかはユーザー次第だ。
フリー公開を止めての有料化ではないのだから、今のところは選択肢が増えただけだな。
今後のFREE版公開やバージョンアップが止まったりすると悲しいから、一応最新版は保管した。
>今のところは選択肢が増えただけだな。 にもかかわらずごねてる基地外は何がしたいんだろうな。 俺たちが育ててやった恩も忘れて金儲けに走って利益を独占するなんてけしからん。 なんてけしからんとかアホな事考えているんだろうか。
>>952 いいんだけどunicodeくらい普通ニ使えないと困る。
>>952 煽る訳ではないが、何故に乗り換える必要があるのか?
それほど使って欲しければ、それぞれの利点と欠点を簡潔に述べよ。
知ってる範囲では、流行らせるページの存在と、割と活発な日本語コミュニティは利点の様だな。
貼っている香具師はただの煽りだろうが、 AutoHotkeyにはuwscにはない機能はいくつかある ショートカットキー割当てが強力 (何のアプリケーションが動いている時だけ有効なショートカットキーもできる) 一定期間入力がなければスクリプト開始、という機能がある スクリプトファイルにファイルをドラッグ&ドロップできる しかしAutoHotKeyの文法は取っつきにくい
AHKは文法キモすぎ。
> ショートカットキー割当てが強力 > 一定期間入力がなければスクリプト開始、という機能がある これってマウス用の常駐ソフトと同じ類なんだろ? だとしたら俺には邪魔臭いだけだなぁ・・。
ホットキーを利用しないなら別に常駐させる必要はないけどな
常駐させればホットキーなんてUWSCでもなんでもできるだろ。 もし常駐させるならもっとサイズのちいさな別のソフト使うよ。
ドロップハンドラがうまく動かん…。 レジストリ設定はUWSCが出たての頃バッチファイルかなんかを真似て そのままやったものだったと思う。今はレジストリとかいじらなくなったので 全然覚えて居ないのだが…。レジストリ検索したらこんな感じだった。 HKCR\.uws uwsfile HKCR\PersitantHandler {5e941d80-bf96-11cd-b579-08002b30bfeb} HKCR\uwsfile\Shell\実行\command "C:\Program Files\Uwsc\Uwsc.exe" "%1" "%*" HKCR\uwsfile\shellexe\DropHandler {86C86720-42A0-1069-A2E8-08002B30309D} HKCR\Application\UWSC.exe\shell (標準)= "実行" FriendlyCache=UWSC FriendlyCacheCtime=xx xx xx xx xx xx xx xx HKCR\Application\UWSC.exe\shell\実行\command "C:\Program Files\Uwsc.exe" "%1" 以前はPARM_STRとか無かったかもしれんし、Win9xでためしてみたかどうかも記憶に無い。 Win2Kにしてからもレジストリ書き出したのをそのまま読み込んで特に変更して無いと思う。 HKCR\Application〜は全く覚えが無いので良くワカラン。 たまたま今回送るメニューに突っ込んでPARM_STR[]を拾うスクリプトを書いてみたら パラメータが全然もらえない…。もう頭が腐ってるので誰か間違いを訂正してほしい。
>>962 ちょっと間違えた
> HKCR\PersitantHandler
> {5e941d80-bf96-11cd-b579-08002b30bfeb}
↓
> HKCR\.uws\PersitantHandler
> {5e941d80-bf96-11cd-b579-08002b30bfeb}
>>962 もひとつ間違い
> HKCR\uwsfile\Shell\実行\command
> "C:\Program Files\Uwsc\Uwsc.exe" "%1" "%*"
↓
HKCR\uwsfile\Shell\実行\command
"C:\Program Files\Uwsc\Uwsc.exe" "%1" %*
なんどもすんません…。
>>962 ×shellexe
○shellex
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\uwsfile\shellex\DropHandler]
@="{86C86720-42A0-1069-A2E8-08002B30309D}"
>>965 すまん…。
最近めんどくさくて手でコピーしてしまうので。
そんでそのとおりになってるんですわ。
でもまぁ以前使えてたような記憶があるので自分で調べてみます。
public Obj_Shell = CreateOleObj("Shell.Application") ハンドル = Obj_Shell.Windows(ハンドル番号) こんな感じでCOMハンドルとってきたんだけど、 HNDTOIDでUWSC用のIDに変換しようとすると -1しか帰ってこない。 COMハンドルでIESETDATAとか使えているからハンドルとしては問題ないばすなんだけど、 COMハンドルからUWSC用ハンドルに変換する方法ってこれでいいでしょうか。
よくない。 COMハンドルとHNDTOIDで扱うハンドルはまったくの別物だよ
どこのサイトでスクリプト勉強すればいいですか?
情報が古かったり、更新が止まっていたり、 「ここで決まり」と言えるようなチュートリアル的ページはまだ無いのが現状。 公式ページのリンク集などからたどって いろんなところ見て回るしかないと思われ
ちょっと質問。 htmlにsubmit属性のボタン置いて、クリックしたときにcheckboxをすべてdisabledにする 関数つくったんだけど。 procedure dis(formName,objName,flg) objForm = ("document."+formName) ifb (objName = "all") then for i=0 to objForm.length objForm[i].disabled = flg next else for i=0 to objForm.length ifb (objForm[i].type = objName) then objForm[i].disabled = flg elseif (objform[i].name = objName) then objForm[i].disabled = flg endif next endif fend こんな関数で実装。
973 :
972 :2007/04/09(月) 20:36:28 ID:zG2z9OQC0
ifb GETFORMDATA("aaaa_btn") = TRUE then dis("form1","checkbox",true) endif こんな形で使いたい。 これだとfor i=0 to objForm.length ここでcomエラーに。 OleStr型からDispatch型へのバリアラント型変換はできないって。 ここら辺について詳しい人教えてください。。
objForm = ("document."+formName) これは無茶やろw
objForm = ("document."+formName) ここでobjFormに入っているのは「単なる文字列」であって「オブジェクト」ではないよ だからobjFormをオブジェクトとして扱った(=プロパティにアクセスしようとした)とたん、 「OleStr型からDispatch型へのバリアント型変換はできない」と言われてしまうってワケ もしやるんなら objForm = ie.document.getElementsByName(formName).item(0) とかじゃないのかな
977 :
名無しさん@お腹いっぱい。 :2007/04/12(木) 15:09:40 ID:ljN5gr/P0
ほんと貧乏人の僻みはキモイなw ゆとりなし世代かw
979 :
名無しさん@お腹いっぱい。 :2007/04/12(木) 20:44:26 ID:QpEmRYGy0
んー久しぶりにこのスレ来たんでよくわからん フリー版は今までのよりも機能が劣るのか? だったらそのままにしておくが
>>977 有料化に対する憎悪がスレ立ての目的というキモいスレだな。
皆さん、これ使いたいと思う? 俺はNO。
こんなシチュエーションの処理でつまずいてます。 forによるループ処理で、指定回数繰り返す処理です。 で、ループの初めで例えば変数(wks)を生成して、 2回目以降の処理にて、1つ前の処理で生成した値を参照する方法ってありますか? >【マクロ】 UWSC Part3 【シェアウェア化】 UWSCの場合は従来のフリー版が現在も存在して、機能が増えたPRO版が新たにシェアウェアとして 登場したのだから、シェアウェア化っていうのは間違いでは?w
むしろ次スレいらねんじゃね?
983 :
名無しさん@お腹いっぱい。 :2007/04/13(金) 10:11:20 ID:iTumlDMp0
>>983 いえ、その変数もループ回数毎に中身が入れ替わります。
>>981 一旦ループ(for)前に変数の基準値(?)を定義してやって
ループ最後でその変数を替えてやればよいのでは?
986 :
981 :2007/04/13(金) 15:56:36 ID:kTlLKoA60
皆さん、レスありがとです。参考になりました。 かなり近いところまでは逝きましたが変数の中が文字列だと厳しいですね。。 IF文で1回目のみを除外したり何通りか色々書いてみましたが。 最初にループ回数分を全て配列に代入して処理すれば逝けるかも。 取り敢えず代替え案として、変数を数字にする事で 望みの結果になったのでこれで妥協します。w
a
b
自動化ツール総合スレ立てればいいな
自動ドアマニヤとかきそうだな。
フリーでもシェアでもなんでもいいよ
児童化ツール (;´Д`)ハァハァ
>>989 これが落としどころだろうね
AHKは単独スレでも伸びてるからいいけど、他の自動化ツールで総合スレにまとめた方が
今後乱立しないで済むからいいと思う。テンプレに入れるのって何個あるかな?
uwsc、AutoIt、WindowController、
C++
995 :
名無しさん@お腹いっぱい。 :2007/04/15(日) 22:54:33 ID:vo7IRD9l0
埋め
埋め
埋め
999
1000
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。