« シフト君 | | 勤務シフトスケジューラー »
2023年10月19日
マウスレコーダー
マウスとキー操作を記録/再生/編集(プログラミング機能付) 「マウスレコーダー」は、マウスとキーボードによるウィンドウ操作を記録し再生します。定型処理の自動化、デモ、教材作成などに御利用下さい。
|
||
【機能と特徴】 ■記録 マウスとキーボード操作を記録(ファイルへの保存) 初期状態の設定(アプリ起動)、追加記録 ■再生 記録した操作をウィンドウズ画面上で再生 再生回数/再生速度の指定 停止、逐次実行(ステップ)、ブレークポイント設定 ■編集 記録した操作記録をフォーム上で編集可 各種イベント(コマンド)の設定/変更 日本語文章直接入力 アプリ制御(起動/入力/終了/未起動・起動中待機) IE制御(ツールバー設定/更新/自動入力/Web情報取得) エクセル制御(データ入力/マクロ実行) ファイル入出力(CSVファイル/通常テキストファイル) 入出力フォーム(インプット/リスト/メッセージ) 各種組込関数(文字列操作/デバイス制御) ■プログラミング機能 変数定義、変数値操作、サブルーチンコール 繰り返し機能(ループ)、条件待機(Wait)、条件分岐(Jump) 監視機能(表示文字/イメージ変化) スクリプト実行(Dosバッチ/VbScript) デバッグ(ブレークポイント設定/変数値参照・書き換え) ■その他 WAVファイル演奏、ファイルのダウンロード、キャプチャー シャットダウン/スタンバイ(復帰付き) ホットキー、タスクトレイ収納、コマンドラインスイッチ インストール不要 実行データを組み込んだExeファイルを作成可 記録データの暗号化 Exeファイルの実行環境限定 【動作条件】 |
コメント
>蛍丸様
■スカラー変数名との重複
なるほど、重複していますね。
ただ、実害は無さそうなので、次回のアップ時に、下記の様な対処を致したいと思います。
・Set,Dim コマンド入力時にエラーメッセージで入力不可にする
今後も、よろしくお願いいたします。 エムティ・ソフト
投稿者 エムティ・ソフト : 2019年12月26日 06:10
>エムティ・ソフト 様
改良していただきありがとうございました。より一層便利になりました。
ところで、改良していただいたマウスレコーダーVer 15.42は、昨日こちらのコメント欄へ私が掲載いたしましたプログラムの5行目のブレークポイントで表示される変数リストにあるように、思惑通り$1~$9のスカラー変数に値が代入されるのと同時に、思惑とは違ってスカラー変数と同一名の自作変数も作成されてしまう仕様になっているのですが、同一名変数がすでにある時はダブらないよう、自作変数が新たに作成されない仕様にすべき、と私は思うのですが、いかがでしょうか。
投稿者 蛍丸 : 2019年12月25日 03:36
>蛍丸様
>いかがでしょうか。
たいへん面白い使い方だと思います。
実際に、どのような場面(プログラム)で役立つのか、とても興味があります。
今後も、よろしくお願いいたします。
エムティ・ソフト
投稿者 エムティ・ソフト : 2019年12月25日 02:14
>エムティ・ソフト 様
ご対応いただきありがとうございます。ご参考までに下記プログラムを掲載いたします。いかがでしょうか。
Set 1 n
For 2 n;1;9;1
Set 3 1000 $%n% Cal(Second(Now()))
Next-For 4
5 ブレークポイントに設定し変数を確認
投稿者 蛍丸 : 2019年12月24日 06:01
>蛍丸様
変数名を確認したところ、自作した変数名は有りませんでした。
Setコマンドで定義した変数は一覧に反映されていませんでした。
バグです。修正しました。
再度、お試しください。
リリース版の(mrecorder.zip)ダウンロード
今後も、よろしくお願いいたします。 エムティ・ソフト
投稿者 エムティ・ソフト : 2019年12月24日 02:12
>エムティ・ソフト 様
ご対応いただきありがとうございます。ご参考までに下記プログラムを掲載いたします。私が追加いたしました6行目に、カーソルを合わせてキーボードのF1ボタンを押し編集フォームを開きドロップボタンを押して、マウスレコーダーに登録されている自作変数名をご確認いただけましたら幸いでございます。
Set 1 s2 222 Set 2 s3 333 Set 3 n 3 Set 4 %s%n%% 789 MSG_BOX 5 %s%n%% AddVar 6
投稿者 蛍丸 : 2019年12月21日 06:41
>蛍丸様
変数名を動的に作成して参照できるとは・・・
エクセルの INDIRECT関数 のような使い方に驚きました。
値の設定に関しては、1行変更するだけで済みそうですので、とりあえず暫定版をお試しください。
暫定版の(mrecorder_15.42.zip)ダウンロード
検証に使用したサンプル(同梱:動的変数名処理.dat)
4行目で変数名を動的に作成し(本例では %s3% が作成される)、値(789)をセット
5行目で変数(%s3%)を表示してみると、セットした値 789 が表示される。
Set 1 s2 222 Set 2 s3 333 Set 3 n 3 Set 4 %s%n%% 789 MSG_BOX 5 %s%n%%
影響調査完了後、リリースいたします。
予定:12月24日AM中 (←訂正:12月23日)
今後も、よろしくお願いいたします。 エムティ・ソフト
投稿者 エムティ・ソフト : 2019年12月21日 02:33
マウスレコーダー、ありがたく使わせていただいております。
下記のとおり、変数を含む変数の、参照は可能なので代入も可能になったらより一層うれしいのですが、いかがでしょうか。
Set n 1 AddVar %$1% 参照成功 MSG_BOX %$%n%%
投稿者 蛍丸 : 2019年12月19日 03:54
>蛍丸 様
AddReg は加算なので文字を指定すると予想外の結果になります。
AddReg には数値を指定してください。
REG1 に"(土)"を追加する場合は下記。
LoadReg %REG1% 4月6日
LoadReg %REG1% %REG1%(土)
MSG_BOX
なお、Reg関連コマンド(LoadReg,AddReg)は、(使用は出来ますが)廃止して、Setコマンドに替わりました。(2009/05/10頃)
投稿者 エムティ・ソフト : 2019年04月06日 10:08
マウスレコーダー、ありがたく使わせていただいております。
ちょっと気付きがありましたので下に記します。よろしくお願いいたします。
LoadReg %REG1% 4月6日 AddReg %REG1% ( AddReg %REG1% 土 AddReg %REG1% ) MSG_BOX %REG1%
投稿者 蛍丸 : 2019年04月06日 06:24
>蛍丸 さま
検討してみます。
--------------------------
2019/03/04 追記
下記にて対応いたしました。
15.40 2019/03/04
障害 WaitMove機能しない
追加 応答待ち全コマンドに「最長待ち時間」入力フィールド追加
WaitClick,WaitMove,WaitClipboard,WaitEvents,WaitEventsAll,WaitUserForm
改良 最長応答待ち時間指定に変数指定可:ApWait,IeWait
お試しください。
エムティ・ソフト
投稿者 エムティ・ソフト : 2019年02月19日 05:07
マウスレコーダー、ありがたく使わせていただいております。
条件により待機するコマンドの全てで、最長待ち時間の設定が出来るようになる事を希望しております。いかがでしょうか。
投稿者 蛍丸 : 2019年02月18日 05:42
>蛍丸 さま
キーイベントは、WaitEvents コマンド で拾うことができます。
コマンド一覧
WaitEvents
下記は簡単な例
マウス移動以外のイベントに反応してメッセージを表示します。
マウスレコーダー外でのイベントに反応します。
-------------------------------------------------------------------------
Set detail
Set info
WaitEvents %info% %detail%
MSG_BOX %info%[%NL%]%detail%[%NL%]GetKeyName(%detail%)
-------------------------------------------------------------------------
使用例は、同梱サンプル「sample58(簡易サウンドプレーヤー).dat」を参考
そのほか、関数により下記の取得が可
IsKeyPressed() 指定キーが押されたか?
IsKeyPress() 指定キーが押されているか? ( IsKeyModefyKey )
IsKeyState() 指定キー(CapsLock等)のOn/Off状態を取得
GetKeyName() キーコードを名称に変換
お試しください。
エムティ・ソフト
投稿者 エムティ・ソフト : 2019年02月11日 07:11
マウスレコーダー、ありがたく使わせていただいております。
「押されたキーのキーコードを返す関数」は、あったらうれしいのですが、作成可能でしょうか。よろしくお願いいたします。
投稿者 蛍丸 : 2019年02月10日 10:51
マウスレコーダーの改良工事をしていただきまして、ありがとうございました。マウスレコーダー、ありがたく使わせていただきます。
追伸:もしかしたらエムティ・ソフトさんに喜んでいただけるかしらと考えまして、下記プログラムを記します。
Set Time Now() + 10000 LoadReg %REG1% Now() + 10000 Set Time2 GetRegEx("%Time%","(^.*$)") MSG_BOX Timeは %Time%[%NL%]REG1は %REG1%[%NL%]Time2は%Time2%[%NL%]$1は %$1% Call %Time% Call先 ! Call先 MSG_BOX %user_arg1% QUIT
投稿者 蛍丸 : 2019年02月02日 01:20
>蛍丸様
お世話になっております。
Q1.入力待ちの残り秒数に関してなのですが、現在3桁→5桁
A1.3桁で約16分まで、5桁は2.7時間以上
2.7時間以上待つ状況というのは良くあることなのでしょうか?
5桁になると選択用のコンボボックスが異様に広くなりますので、
めったに無い状況でしたら、コンボボックスの幅は現状の3桁にしておきたいと思っています。
5桁までの動作(カウントダウン表示含)拡張は容易ですので対応します。
Q2.メッセージフォーム表示コマンド 残り秒数
A2.変数指定可能にします。 例: ・%waitTime%・1・0・0・0
Q3.インプットボックス表示コマンドのOKボタン・キャンセルボタンの入力待ちの残り秒数表示
A3.確かに、2桁までしか表示されていませんね。全桁表示されるよう改良。
----------------------------------------
後日追記 2019/01/30
投稿者 エムティ・ソフト : 2019年01月27日 18:45
マウスレコーダー、ありがたく使わせていただいております。マウスレコーダーのコマンド,メッセージフォーム表示・リストボックス表示・インプットボックス表示の機能改良の相談をさせて下さい。
入力待ちの残り秒数に関してなのですが、現在3桁までしか対応していないと思うのですが、5桁まで対応へと増強して欲しいのです。それと、メッセージフォーム表示コマンドは入力待ちの残り秒数を変数で指定出来ないような気がするのと、インプットボックス表示コマンドのOKボタン・キャンセルボタンは、入力待ちの残り秒数表示がキチンと見えるように、下にずらして欲しいのです。よろしくお願いいたします。
投稿者 蛍丸 : 2019年01月27日 05:42
お世話になっています。
15.36版で確認しました。
これで欲しいデータも取得することができます。
迅速な対応ありがとうございました。
投稿者 通りすがりの仮面ライダー : 2018年08月20日 09:23
>通りすがりの仮面ライダー 様
現在の仕様では、式(関数からの戻り値等)を変数に格納する時に計算してしまいます。
関数からの戻り値を直接使用したい場合は、変数 FuncRet を使用してください。
なお、変数への値格納時に計算しないようにした(暫定 15.36版)を作成してみました。(影響調査中)
式を強制的に計算する場合は、Cal 関数を使用します。
MouseRecorder_15.36.zipのダウンロード
下記は、サンプルプログラム
座標 500,200 (x,y)の文字を読み取り、変数 x に格納
変数 x を計算した結果を、変数 y に格納
変数 x y の値をメッセージボックスに表示
Set 関数の戻り値を変数 x にセット x GetAccValue(500,200) Set 計算結果を変数 y に格納 y Cal(%x%) MSG_BOX 元の値 x:%x%[%NL%]計算結果 Y:%y%お試しください。 エムティ・ソフト
------------------------------------------
3018/08/13 追加 15.36版リリースしました
投稿者 エムティ・ソフト : 2018年08月10日 08:10
久々にマウスレコーダーを使うことになりました。
VBのフォーム上に表示されているハイフン付き電話番号を、GetAccValueで取得。
すると文字列ではなく、計算結果の数値を取得しています。
計算結果ではなく、文字列で取得する方法はありませんか?
宜しくご教授ください。
投稿者 通りすがりの仮面ライダー : 2018年08月08日 16:05
お世話になっております。
GetChildWindowHandle関数の引数順序の件、関数リファレンス通りとすること承知いたしました。
また、Recursiveの件ですが、これは当方の誤解でした。
ウィンドウ解析ツールでの解析結果の見方を理解していなかったのが原因ですが、
下記コメント通りの見方となるのですね。これによると、対象のボタンは4階層下の玄孫(やしゃご)に
なると理解しました。したがって、Recursiveにはtrueを指定するで正解ということになります。
このたびは、いろいろとフォローいただきありがとうございました。
今後とも宜しくお願いします。
以上
投稿者 長谷川 : 2018年07月11日 23:30
>長谷川様
ご指摘ありがとうございます。
・関数の名称
GetCildWindowHandle
↓正しくは("h"が抜けている)
GetChildWindowHandle
ご指摘の通り。修正しました。
・引数の順番
①hWnd 親ウィンドウハンドル(必須)
②class クラス名 (省略可)
③title タイトル(省略可)
④Recursive 再帰検索(省略可)
申し訳ありません。
引数順序は、リファレンス通りとさせてください。
プログラムの方を修正しました。
必須項目が選択項目の後にあると、何かと不都合が生じそうですので・・・
・Rcarsive について
子ウィンドウの場合は、false で良いと思います。
一応、当方でも確認しました。
ご使用のアプリは、先日いただいた解析リストでは、
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
親ウィンドウ : top → bottom
hWnd ClassName (Location) Title
-----------------------------------------------------------------------
263902 WindowsForms10.Window.8.app.0.3e2f22e_r11_ad1 (65,139,775,508) トップ "CubePDF Page 2.0.1 (x64)"
132828 WindowsForms10.Window.8.app.0.3e2f22e_r11_ad1 (73,169,767,500) 子
132814 WindowsForms10.Window.8.app.0.3e2f22e_r11_ad1 (73,204,767,440) 孫
132812 WindowsForms10.Window.8.app.0.3e2f22e_r11_ad1 (643,204,767,440) 曾孫
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
となっていましたので、トップウィンドウから見た場合、4階層下の玄孫(やしゃご)になると思います。
なお、サンプルプログラムも変更しましたの、合わせてご覧ください。
関数リファレンス-GetChildWindowHandle
使用例 ボタン文字列からそのボタンのハンドル、位置/サイズを取得
今後も、よろしくお願いします。
エムティ・ソフト
投稿者 エムティ・ソフト : 2018年07月11日 07:33
お世話になっております。
子ウィンドウ検索関数機能入り版のリリース、ありがとうございます。
さっそく機能確認させていただきましたところ、当方のやりたかったことが実現できそうです。
ただ、気になったのは、引数Recursiveにはtrueを指定しないと正しく動作させることが
できなかった点です。当方の理解不足によるものかもしれませんが、
ウィンドウ解析ツールでの解析結果は、子(孫ではなく)になっているので、falseを指定し子ウィンドウのみ
検索対象としても動作すると思ったのですが、戻り値は、-1(0xFFFFFFFF)となってしまいます。
ですので、当方の理解が追いつくまでの間は、引数Recursiveにはtrueを指定して
使用しようと考えています。
最後ですが、今回追加いただきました関数のリファレンスに誤りがありましたので
ご連絡しておきます。
■関数リファレンス の誤り
関数の名称と引数の順番が誤っています。
・関数の名称
GetCildWindowHandle
↓正しくは("h"が抜けている)
GetChildWindowHandle
・引数の順番
①hWnd 親ウィンドウハンドル(必須)
②class クラス名 (省略可)
③title タイトル(省略可)
④Recursive 再帰検索(省略可)
↓正しくは
①class クラス名 (省略可)
②title タイトル(省略可)
③hWnd 親ウィンドウハンドル(必須)
④Recursive 再帰検索(省略可)
以上
投稿者 長谷川 : 2018年07月10日 21:38
>長谷川 様
子ウィンドウ検索関数(GetChildWindowHandle 15.31版)をリリースしました。
お試しください。
関数リファレンス-GetChildWindowHandle
使用例 ボタン文字列からそのボタンのハンドル、位置/サイズを取得
今後も、よろしくお願いします。
エムティ・ソフト
投稿者 エムティ・ソフト : 2018年07月09日 16:59
さっそくのご返信と丁寧なご説明ありがとうございました。
次回のリリースを楽しみに待たせていただきます。
今後も、どうぞよろしくお願いいたします。
投稿者 長谷川 : 2018年07月06日 22:11
>長谷川 様
お世話になります。
GetWindowHandle()はウィンドウハンドルを求める関数ですが、トップウィンドウに限ります。
ウィンドウは、子ウィンドウ、孫ウィンドウ・・・途方もない数(少なくとも数百~万・・)のウィンドウが存在します。
ピンポイントで探すことも不可能ではありませんが、
値が戻ってくるまで、相当な時間が掛かりそうです。しかも、所要時間不定。
■対処
関数パラメータ追加
GetWindowHandle(クラス名,ウィンドウタイトル[,親ウィンドウハンドル])
親ウィンドウハンドルの指定が無い場合(または0)、トップウィンドウを検索
指定がある場合は、指定ウィンドウの子ウィンドウを検索します。
以降、同関数を使って、孫、ひ孫・・・と順に検索
もしくは、新関数
GetChildWindowHandle(クラス名,ウィンドウタイトル,親ウィンドウハンドル)
になるかもしれません。
近日中(7月10日(火)AM)にはリリースできると思います。
しばらくお待ちください。
今後も、よろしくお願いします。
エムティ・ソフト
投稿者 エムティ・ソフト : 2018年07月06日 08:13
お世話になっております。
マウスレコーダーを便利に活用させてもらってます。
GetWindowHandle()という関数を使用して、あるウィンドウ内に配置されているボタン(【追加】というボタン)の
ウィンドウハンドルを取得したいと考えています。目的は、そのボタンが「利用不可」であるか否かを取得するためです。
(ボタンのウィンドウハンドルを取得 → GetWindowRect()でボタンの位置情報を取得 → GetAccState()でボタンの状態を取得 という流れで検討中。)
対象のボタンをツールのウィンドウ解析ツールで解析した結果を下記(”・・・”で囲んだ箇所)に示します。
この状況で、
GetWindowHandle("WindowsForms10.BUTTON.app.0.3e2f22e_r11_ad1","追加")
を実行しても、失敗(戻り値:0)してしまいます。
誤った使用方法をしているのでしょうか? 何か手立てがあればご回答いただきたく宜しくお願いします。
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
ウィンドウ解析ツールによる【追加】というボタンの解析結果
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
ウィンドウ情報
--------------------------------------
ハンドル :132810(x206CA)
クラス名 :WindowsForms10.BUTTON.app.0.3e2f22e_r11_ad1
タイトル :追加(&O) ...
位置(左上右下):(655,214,755,244)
オーナー :
親ウィンドウ : top → bottom
hWnd ClassName (Location) Title
-----------------------------------------------------------------------
263902 WindowsForms10.Window.8.app.0.3e2f22e_r11_ad1 (65,139,775,508) "CubePDF Page 2.0.1 (x64)"
132828 WindowsForms10.Window.8.app.0.3e2f22e_r11_ad1 (73,169,767,500)
132814 WindowsForms10.Window.8.app.0.3e2f22e_r11_ad1 (73,204,767,440)
132812 WindowsForms10.Window.8.app.0.3e2f22e_r11_ad1 (643,204,767,440)
子ウィンドウ
ハンドル クラス名 位置(左,上,右,下) 表示文字
-------------------------------------------------------------
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
投稿者 長谷川 : 2018年07月05日 21:40
>蛍丸 様
バージョン番号について
以下のような基準でバージョン番号は更新しています。
X.YZ
X:大掛かりな機能追加時に更新
Y:改良、小さな機能追加時に更新
Z:障害対応、微細変更、微細な機能追加/改良時に更新
今後もよろしくお願いします。 エムティ・ソフト
投稿者 エムティ・ソフト : 2018年05月04日 07:01
マウスレコーダー、ありがたく使わせていただいております。
細かい話で恐縮なのですが、マウスレコーダーのバージョンは、これまでは0.01刻みだったものが今回は0.1刻みへと変更になったのですが、今後は変更したバージョン刻みで行くという事でよろしいでしょうか。よろしくお願いいたします。
投稿者 蛍丸 : 2018年05月03日 06:34
>蛍丸 様
■ファイル個数関連のエラーについて
ファイル個数を取得する関数にて、エラー時は負数を返すように処理を追加してみました。
対象:GetFileCount(),GetCsvRecordCnt(),GetCsvFieldCnt()
返却値が負の場合(ネットワーク未接続時など)、一定時間後にリトライすることが可能になるのではないかと思われます。
お試しください。
コマンドについては、少々困難ですので、今回は見送らせていただきました
今後も、よろしくお願いいたします。
エムティ・ソフト
投稿者 エムティ・ソフト : 2017年06月26日 10:24
マウスレコーダー、ありがたく使わせていただいております。
マウスレコーダーがネットワークアドレスに対してGetFileコマンドを実行して失敗してしまった際の、マウスレコーダーの挙動の変更を相談させて下さい。まずそもそも何故、ネットワークアドレスに対してGetFileコマンドを実行して失敗してしまうのかといえばそれは、加GetFileコマンドPCか被GetFileコマンドPCのいずれかが、起動後間もないために寝ぼけているのでGetFileコマンドにキチンと応答できないからであり従って、一度目は失敗しても、PCは寝ぼけまなこを脱して完全覚醒しているであろう数分後を見計らってリトライすれば、今度はGetFileコマンドを成功させる事が出来ると思うのです。しかるに、現在のマウスレコーダーは一度GetFileコマンドに失敗したら止めてしまう仕様になっているのです。仕様を変えたらきっと、中途ストップしない、より良いマウスレコーダーになります。私は起動後十分に時間が経過し正常稼働状態の2台のホームグループで結ばれたPC間のネットワークアドレスに対して、マウスレコーダーのGetFileコマンドを百回以上実行させて来ましたが、ただの一度も失敗はした事がありません。よろしくお願いいたします。
投稿者 蛍丸 : 2017年06月25日 05:05
ご返信ありがとうございました。
IEでどうにか代替策ができそうでしたので、解決いたしました。
ご丁寧な返信、ありがとうございました。今後とも頑張ってください。
※お礼までに。ご多忙と存じますので、返信は不要です。ありがとうございました。m(_ _)m
投稿者 尋ね人 : 2017年06月19日 09:52
>尋ね人 様
申し訳ありません。
IE以外のブラウザでは、読み込み完了の判定や、入出力などのDOM操作は出来ないようです。
(FireFoxはIEと同じエンジンを使用しているため、原理的には可)
お手数ですが、ブラウザ操作が必要な場合は、IEを使用することをお願いします。
今後も、よろしくお願いいたします。
エムティ・ソフト
投稿者 エムティ・ソフト : 2017年06月14日 06:20
数年前からありがたく使わせていただいております。質問なのですが、
FireFox等IE以外のブラウザで、ページの読み込み(遷移)完了を判定するには、どんなコマンドを使えば良いでしょうか?
投稿者 尋ね人 : 2017年06月11日 14:05
>蛍丸 様
ネットワークアドレスではエラーが発生していました。
ご指摘ありがとうございます。
とりあえず、GetFileCount,GetFile,GetFileCount(),GetFileData() について対応いたしました。
今後も、よろしくお願いします。
エムティ・ソフト
投稿者 エムティ・ソフト : 2017年05月02日 07:02
マウスレコーダー、ありがたく使わせていただいております。
マウスレコーダーのGetFileやGetFileCntなどのコマンドは、ホームグループで共有されている別のPCのファイルパスを表す¥¥DESKTOP-xxxxxxx¥Users¥・・・・¥・・・・形式にも対応しておりますでしょうか。よろしくお願いいたします。
投稿者 蛍丸 : 2017年05月02日 07:01
>蛍丸 様
ご指摘ありがとうございました。
Loopコマンドは、存在すら忘れていました。
(一番最初に作成したコマンドです。)
Exit-Loopの対象にLoopコマンドも追加しました。
今後も、よろしくお願いします。
エムティ・ソフト
投稿者 エムティ・ソフト : 2017年03月18日 06:59
マウスレコーダー、ありがたく使わせていただいております。
Loopコマンドは、重要コマンドではないかもしれませんが、バグは修繕するに越した事は無いと私は思いますので、下記プログラムを掲載いたします。よろしくお願いいたします。
Loop AddReg %REG1% Between(9) If 9 < %REG1% Exit-Loop End-If MSG_BOX REG1の値 REG1の値は%REG1% Loop 5 Loop QUIT
投稿者 蛍丸 : 2017年03月16日 16:11
>蛍丸 様
ご意見ありがとうゴアいます。
・比較演算子 != について
既存のプログラムが動作しなくなってしまいますので、廃止はできませんが、
!= と <>(推奨) 共に使用できるようにすることは、検討してみます。
・半角の <> が使用できない件
この掲示板は、HTML形式で表示されています。
半角の <> はタグを表しますので、無効タブとして無視されます。
半角の<>は、それぞれ半角で、< > と入力すれば → <> となります。
今後も、よろしくお願いいたします。
エムティ・ソフト
投稿者 エムティ・ソフト : 2017年03月16日 08:58
マウスレコーダー、ありがたく使わせていただいております。
マウスレコーダーの取扱説明の演算子の項目には、不等号は!=と記述してとありますが、私はこの際!=は廃止にして<>に統一するべきではないかと思うのですが、いかがでしょうか。このトラブルに対するクレームは、昨2016年05月25日にも私が付けまして、今回再投稿という事になります。
(上記不等号<>は、全角で表記しています。本来の半角で不等号<>を表記したいのですが、原因は不明ですが、本欄においては半角の<は、書き込んでも表示されず消されてしまいますので、苦肉の策としての全角表記です。)
投稿者 蛍丸 : 2017年03月14日 15:37
素早い対応ありがとうございます。
変数使用によるランダムクリックができるようになりました。
投稿者 マウス45 : 2017年02月16日 18:10
>マウス45 様
ご指摘ありがとうございます。
確かに、IEimgClickでイメージパスの変数変換処理が抜けておりました。
15.12版にて改良しましたので、お試しください。
今後もよろしくお願いします。 エムティ・ソフト
投稿者 エムティ・ソフト : 2017年02月14日 07:57
マウスレコーダーをいつも便利に活用させてもらってます。
webページで、複数存在するボタンをランダム選んでにクリックするシステムを作りたいと考えています。
IEimgClickのSRC属性の記入部分にGetSplit()関数を使った変数を入れたいのですが、どうもこの部分は変数ではダメのようです。
変数でもOKのように試用を変えていただけないでしょうか?
投稿者 マウス45 : 2017年02月13日 16:23
>蛍丸様
ご指摘ありがとうございます。
具体的な不具合は分かりかねますが、いくつか不備はありました。
Do~Loop-Whileの二重ループ処理不正
同Exit-Loop不正
今後も、よろしくお願いします。
エムティ・ソフト
投稿者 エムティ・ソフト : 2016年12月01日 08:34
マウスレコーダー、ありがたく使わせていただいております。
Exit-Loopコマンドを点検されることをお勧めいたします。よろしくお願いいたします。
投稿者 蛍丸 : 2016年07月18日 14:07
> 蛍丸 様
ご報告ありがとうございます。(安心しました)
今後も、よろしくお願いいたします。 エムティ・ソフト
投稿者 エムティ・ソフト : 2016年05月26日 06:24
>エムティ・ソフト様
私の認識が間違っておりました。条件Jumpコマンドの【条件式の書式】の項目を改めて読み返して、その事に気付きました。本当に、本当に申し訳ありませんでした。
投稿者 蛍丸 : 2016年05月26日 04:46
マウスレコーダー、ありがたく使わせていただいております。
気付いた点が有りますので、ご報告申し上げます。下記プログラムを動かしてもうまくいきません。理由は、私の3月29日の本欄へのマウスレコーダーに関する障害報告を受けて、エムティ・ソフトさんが3月31日にマウスレコーダーに対して行った障害除去作業に不備があったためかと思われます。下記プログラム5行目の不等号演算子「!=」により、障害が発生いたします。不等号演算子を「>」(原因は不明ですが、本欄へはxxよりも小さいを表す不等号を書き込んでも表示されず消されてしまいます。ですから今、左半分が欠けた不等号演算子がここに表示されています。私が本当なら書き記したいのは、<>を半角で表記したものです。全角でなら<>のように左右が対になった件の不等号演算子が問題なく表示されますが、半角でだと左半分が上記のように表示されないのです。)へ置換して再実行すると今度はうまくいきます。今回のこの障害を引き起こしたその遠因に、もしも私が関与しているようでしたら、この場を借りて謝りたいと思います。申し訳ありませんでした。
Set Event Set Keycode AP_Activate メモ帳 ST WaitEvents %Event% %Keycode% Jump F12はキーコード123です。 %Keycode% != 123 ST QUIT
投稿者 蛍丸 : 2016年05月25日 06:15
>蛍丸 様
ご指摘ありがとうございます。
GetXlA1関数であれば納得しました。
たしかに、列文字は2ケタまでの対応となっています。
近日中に対応いたします。
今後も、よろしくお願いします。
-- 2016/04/07 追記
15.07版 エクセル関数 GetXLA1() を703列(AAA列)以上に対応しました。
投稿者 エムティ・ソフト : 2016年04月06日 06:39
>エムティ・ソフト様
クレームばかり付けて、本当に申し訳ありません。私はただエムティ・ソフト様に、マウスレコーダーの不具合をご報告して、マウスレコーダーを改善していただき、私の事務仕事を滞りなく進めたい一心でこのような事をいたしておりますので、その点をなにとぞご納得していただきますよう、お願い申し上げます。
問題発生箇所が判明しました。GetXlA1(Col,Row) EXCELのセル座標をA1形式に変換の箇所で問題が発生するのだと思います。下記プログラムの列番号数値を、702や703や704に変えて実行し、ブレークポイントにて変数リストをご確認ください。2桁のアルファベット列番号ZZまでは変換可能ですが、3桁のアルファベット列番号AAA以降は変換不可能という事なのだと思います。
Set Col GetXlA1( 703 ) MSG_BOX 列番号表示 %Col% ブレークポイント QUIT
投稿者 蛍丸 : 2016年04月05日 17:28
>蛍丸 様
お世話になります。
試してみましたが、エクセルへのデータセット、取得ともに最大列でも問題は無いように思われます。
下記は、
列 xfd = 16,384
行 999999
へのデータセットと取得、表示のプログラム。
正常に動作しました。
エクセルデータセット&取得 ! Set データ x で~た! Set セルアドレス adr xfd999999 XLSetCellData 値セット %adr% %x% MSG_BOX 値取得&表示 GetXlData(%adr%)
原因は他にあるのではないかと思われます。
よろしくお願いします。
-- 追記
本掲示板へプログラムを記述する場合、
<pre>~< /pre>
のように、pre タグで囲むと等幅イメージ(同じ文字幅)で表示されます。
エムティ・ソフト
投稿者 エムティ・ソフト : 2016年04月05日 04:14
マウスレコーダー、ありがたく使わせていただいております。
Excelにおいて、AAA列は703番目の列です。マウスレコーダーはそれ以上大きな列番号を取り扱うことが出来ない仕様なのかと思います。従って、マウスレコーダーは703列以上の大きなExcelデータを処理しようとすると、エラーを起こします。巨大Excelデータをさばけるように、改善していただきたいのですが、いかがでしょうか。
投稿者 蛍丸 : 2016年04月05日 00:43
>蛍丸 様
ご指摘の意味がわかりました。
Deleteキーの押下をイベントとして受けたい訳ですね。
問題は、実行中なのに編集コマンドのDeleteキーが有効になっていることありますね。
たしかに、問題がありそうです。
考慮不足でした。
実行中は、編集コマンドを受け付けないようにします。
ご指摘、ありがとうございました。
今後も、よろしくお願いします。
-- 追記 -- Ver 15.06 2016/03/31 にて対応しました。
エムティ・ソフト
投稿者 エムティ・ソフト : 2016年03月30日 00:20
>エムティ・ソフト様
説明の仕方が拙くて申し訳ありません。下記プログラムを実行してみて下さい。何度か実行していると、そのうち、タイトルが「行削除」、文言が「選択行を削除しますか?」のメッセージボックスが誤表示されると思います。
-----これよりそのプログラム-----
Set Event
Set Keycode
ST WaitEvents %Event% %Keycode%
Jump %Keycode% > 46 ST
QUIT
-----ここまでそのプログラム-----
投稿者 蛍丸 : 2016年03月29日 09:32
>蛍丸 様
いろいろ考えてみているのですが・・・
「【WaitEvents】の最中に、キーコード46のDeleteをセットしようとする」
の部分が、どのようなプログラム処理なのか見当がつきません。
(WitEventsコマンド自体にはキーコードをセットする処理は無いように思われますので・・)
お手数をおかけしますが、もう少し、詳しい説明をいただけると助かります。
エムティ・ソフト
投稿者 エムティ・ソフト : 2016年03月29日 06:20
マウスレコーダー、ありがたく使わせていただいております。
【WaitEvents】の最中に、キーコード46のDeleteをセットしようとすると、マウスレコーダーは行編集のDeleteと間違える、と思うのです。ご報告申し上げます。
投稿者 蛍丸 : 2016年03月26日 11:08
>蛍丸様
意味が分かりました。
確かに、ご指摘の通り、変数リスト上の値が1つずれています。
(ただし、変数とその内容自体は正しいようです-リスト表示が不正)
15.05版として修正しましたのでお試しください。
今後も、よろしくお願いします。
投稿者 エムティ・ソフト : 2016年03月15日 02:45
>エムティ・ソフト様
たびたびすいません。デバッグしてブレークポイントに達すると、画面左上に変数リストが出てきますが、そこに記されている%REG%群の表示が、私の環境においては異常、ということです。変数リストの%REG%群の表示のみが異常なのであって、変数の設定値そのものは異常ではないのかもしれません。
投稿者 蛍丸 : 2016年03月14日 10:37
>エムティ・ソフト様
ご回答いただきありがとうございます。では、具体的なそのプログラムを貼り付けてみます。
-----これよりそのプログラム-----
LoadReg %REG1% 1
LoadReg %REG2% 2
ブレークポイント
QUIT
-----ここまでそのプログラム-----
・・・なんだか私の勘違い臭がただよっておりますが、よろしくお願いいたします。
投稿者 蛍丸 : 2016年03月14日 08:17
>蛍丸様
お世話になります。
■変数の件について
具体的なプログラムをお示しいただくと助かります。
当ページに張り付けていただいて結構です。
当方にて試してみていますが、再現に至っていません。
たぶん、やり方が違うのでしょう。
よろしくお願いします。
追伸:
REG変数は、ごく初期のバージョンで使用していたものです。
現在は、SETコマンドで任意の名前の変数が使用できます。
投稿者 エムティ・ソフト : 2016年03月14日 05:13
追伸:当方の使用環境はWindows10です。
投稿者 蛍丸 : 2016年03月14日 00:52
マウスレコーダー、ありがたく使わせていただいております。
%REG1%~%REG10%のレジストリに値を設定しても、値がかく乱されてしまいます。具体的なかく乱のされ方は、言わば「ポジション1個分後ずれ病」とでも言うべきものです。%REG1%に1を%REG2%に2を設定しデバッグしてみると、%REG1%には空白%REG2%の方に%REG1%で設定したはずの1が誤設定されてしまうのです。
私はプログラミングの世界に疎い人間ですので、このトラブルの原因は私固有のものでしかなく、みなさんにはこのようなトラブルは起こるべくもない、という結論に至ったとしたら、ごめんなさい。
投稿者 蛍丸 : 2016年03月14日 00:39
>クドウ様
■ファイル座標を計算で求める方法
ファイルが縦方向(Y軸)に並んでいるとします。
1.先頭のファイルY0座標を調べる
2.ファイル名1行の高さ(dy)を調べる
3.プログラムで1からファイル個数分繰り返す
その時のファイル座標Yは、Y = Y0+(i-1)*dy となりますね。
i は、1からファイル個数まで
ただし、ファイル数が数十個以上では、ピクセル誤差が積み重なって、ずれてくると思われます。
たぶん、うまくいきません。
■ファイルをピンポイントで特定
・ファイルに規則性がある-連番など
・画面情報が読み取れる
IEブラウザ、MSAC対応アプリ -
マウスレコーダー付属の、MSACC解析ツールで確認可
上記を満たす場合、プログラムでピンポイントで位置を特定しクリックすることができるかもしれません。
ただし、表示画面構成が判りませんので、これ以上詳しいことは何とも言えません。
投稿者 エムティ・ソフト : 2016年03月11日 04:56
お尋ねいたします。多数のファイルのリストが表示されており、マウスで選択して解析して終了後に、また別のファイルを
マウスで選択して解析して終了後に、また別のファイルをマウスで選択して解析するという流れを自動化したいと思っています。
同じ内容を以下にも記載
ファイルのリストから特定のファイルをクリック → 解析 → ファイルのリストから別のファイルをクリック
→ 解析 → ファイルのリストから別のファイルをクリック → 解析 → ・・・同じ手順が続く
お尋ねしたいのは、ファイルの指定はマウスの位置情報のみでの指定しか不可でしょうか? ファイル名の指定はできませんでしょうか? もしマウスの位置情報のみでの指定でしたら、1回分の動作リストをコピペしてマウスの位置情報のみを変更してやれば良いのではないかと思っていますが間違い無いでしょうか?
間違いが無いようでしたらそれぞれのファイル名が表示されているXY数値情報はどのようにすれば解るのでしょうか?
二つのファイルをマウスで上記の手順でトライしたところ上手くいきましたので使用させていただきたいと思っています。
ご教授、どうぞよろしくお願いいたします。
投稿者 クドウ : 2016年03月10日 13:19
>atsuton様
フォーム(アプリ)が開くまで(または閉じるまで)の待機は、AP_Waitで行うことができます。
フォーム(アプリ)は、そのウィンドウのタイトルに含まれる文字の一部、または、クラス名、または両方で指定できます。
詳しくは、通常版サンプル の「アプリ制御」の項を参考にしてください。
今後も、よろしくお願いします。
投稿者 エムティ・ソフト : 2014年12月06日 09:19
エムティ・ソフト様
現在試用中です。
あるフォーム(フォームAとします)でデータを入力してデータを確定します。
その後処理が完了した後に、完了したことを表示するフォームBが表示され、
フォームBが表示されている時に[Enter]キーを押すとフォームBが閉じ、
フォームAでのデータ入力が可能になります。
その後フォームAに戻って、次のデータを入力します。
フォームBが表示されるまでの時間はまちまちで、
現在はフォームAでデータを確定した後、数秒間空けてから、
[Enter]を実行する
という対応にしています。
これを、フォームBが表示されたかどうかを判別し、表示されていれば
[Enter]を実行する、表示されていない場合は待機する
といったことは可能でしょうか?
投稿者 atsuton : 2014年12月04日 18:38
>徒然草 様
Q1.
マウスの最速感度は20msとなっていますが、実際には1ms単位の記録を20msごとに加算して座標数値に置き換えているのでしょうか?
A1.
1ms単位の記録というより、イベントの発生時刻が前回より指定時間以上経過した場合に記録しています。
Q2.
仮に1msごとで記録可能な場合、エキスパート版の購入 and 依頼で対応可能でしょうか?
A2.
指定時間を入力できるようにしました。
右をお試しください。 マウスレコーダー14.56
ただし、内部処理時間がありますので、1ms単位にはならないと思います。
(PCの性能にもよりますが、3,4ms以上?)
今後もよろしくお願いします。
投稿者 エムティ・ソフト : 2014年04月22日 12:07
エムティ・ソフト様
試用版を活用させて頂いている者です。2点ほど質問がありまして投稿しました。
Q.1.
マウスの最速感度は20msとなっていますが、実際には1ms単位の記録を20msごとに加算して座標数値に置き換えているのでしょうか?
Q2.
仮に1msごとで記録可能な場合、エキスパート版の購入 and 依頼で対応可能でしょうか?
以上、不躾な質問で恐縮ですが回答をお願い致します。
投稿者 徒然草 : 2014年04月21日 16:38
>ビーン様
戴いたご質問が、少々複雑な形でしたので、要点を絞れませんでした。
・問題の要点
初回のRnd(1)関数の値がいつも同じ値である。
EXEファイルの場合、常に初回
乱数系列を初期化することで対応しました。
今後も、よろしくお願いします。
投稿者 エムティ・ソフト : 2014年02月28日 10:31
>エムティ・ソフト様
対応ありがとうございました。
関数による乱数生成が可能になりました。
いただいたサンプルは自分には難解ですが何とか使いこなせるようになりたいですね。
投稿者 ビーン : 2014年02月27日 20:34
>ビーン様
いまいち理解できていないのですが・・・
■乱数について
いただいた乱数生成のロジックで、実行するたびに違う値が出ましたが・・
マウスレコーダーの数式処理においては、ステップ内の式を一括して変換しますので、
Int(10*Rnd(1))Int(10*Rnd(1)) とすると、99 のように同じ乱数になります。
それぞれの乱数の初期値を変えると
Int(10*Rnd(1))Int(10*Rnd(2)) とすると、90 のようにそれぞれの乱数は異なります。
(いただいた式は、このように初期値が全て異なっていたので、違う数字の列ができるはずですが。)
なお、いただいた式では、エクセルのセルを利用して乱数を生成されていましたが、もう少し簡単にできるような気がします。
下記リンクは、ランダムな文字列を生成する例です。14.52版以降
For~Next-For、Betw()関数を使用したランダム文字列生成
■IEが引っ込む件について
以下は多分、的外れと思いますので、読み流してください。
Wimdows7を使っていて、マウスのポインタが邪魔になる場合、画面の端っこに移動させると、突然画面が切り替わりることがあります。これは、Windows7の既定の設定で、ポイントしただけで、その直下のウィンドウに切り替わるようになっているからです。
マウスレコーダーのプログラムを動かしているとき、マウスの位置がIEの位置から外れて他のウィンドウを指すようになっていたら、そのウィンドウに突然切り替わります。
ご質問の回答としては的外れとは思いますが、プログラム中のマウスポインタの位置を確認していただくか、
ポイントしただけではウィンドウが切り替わらないようにしてみるか、お時間があるとき、試してみてください。
・設定解除方法
スタート>すべてのプログラム>アクセサリ>コンピュータの簡単操作>コンピュータの簡単操作センター
マウスを使いやすくします - マウスポインターをウィンドウ上に合わせたときにウインドウを選択します
チェックが入っていたら外す。
以上
投稿者 エムティ・ソフト : 2014年02月25日 09:04
>エムティ・ソフト様
ご指摘の関数による生成された乱数の間のタブはReplace関数で除去できるようです。
ただ、前述のルートでは相変わらずランダムにはなってくれないため、マウスレコーダー機能の乱数生成を使うことになりそうです。
IEが消えてしまう現象については、事前にNotepadなどを起動させておけば(囮?)、そちらが下部に引っ込んで、その後IE起動だと消失しないみたいです。
しばらくはこの方法でやってみることにします。
投稿者 ビーン : 2014年02月24日 20:22
>エムティ・ソフト様
問題となっているファイルを mtsoft3@yahoo.co.jp に送信してみます。
御検証よろしくお願いします。
投稿者 ビーン : 2014年02月24日 02:33
>ビーン様
ご質問の件について
質問1.下記のようなエクセルマクロをクリックして、
その場所からメールIDとパスワードを取得して、マウスレコーダーexeファイルを起動させる・・
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim rc As Long
rc = Shell("C:\Users\~\exeファイル)
再現したいのですが、
何度読んでも、どのように動作させたらよいのかが理解できませんでした。
もう少し、具体的に、できれば、作成したDATファイル(の概要)があれば、助かります。
下記はエクセルにおいて、セルのユーザー名とパスワードをEXEファイルに渡し、ログインさせる例です。
EXEファイルを利用したウェブログイン-EXE_SAMPLE.zip
ビーン様の方法は、この方式と、どのように異なるでしょうか?
この方式では問題なく動作するようです。
質問2.エクセルのX列にアルファベットY列に数字を並べて、
Replace(X Int(Rnd(1)*100)," " ,""),replace(X Int(Rnd(2)*100)," " ,""),replace(Y Int(Rnd(3)*10)
で乱数生成をしたかったのですが・・・
Rnd()関数が機能せず、いつも同じアルファベットと数字が並んで・・・
申し訳ないのですが、これも、どのようにして検証すればよいのかわかりません。
「同じアルファベットと数字」とは、具体的には?
よろしくお願いします。
投稿者 エムティ・ソフト : 2014年02月23日 18:05
>>エムティ・ソフト様
バージョンアップでメールクリックの件は改善したのですが、自動操作中にIEブラウザがパソコン画面下のウィンドウズエクスプローラーに引っ込んで消えてしまい、自動入力が進まない状態になってしまいます。
今やっていることは下記のようなエクセルマクロをクリックして、その場所からメールIDとパスワードを取得して、マウスレコーダーexeファイルを起動させるという方法です。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim rc As Long
rc = Shell("C:\Users\~\exeファイル)
exeファイルを使用せずに、マウスレコーダーの通常使用では、IEが消えることはないのですが、このシステムを使いたいので、改善可能なら対応よろしくお願いします。
なお、バージョン13.90に戻すと、IEが消えることはないので、それ以降のバージョン変更による影響かと思います。
もう一つ改善点希望は、エクセルのX列にアルファベットY列に数字を並べて、
replace(X Int(Rnd(1)*100)," " ,""),replace(X Int(Rnd(2)*100)," " ,""),replace(Y Int(Rnd(3)*10)
で乱数生成をしたかったのですが、これも上記のマクロ起動システムだと、Rnd()関数が機能せず、いつも同じアルファベットと数字が並んでしまいます。
マウスレコーダー通常使用で動かすと、これもランダムになってくれるのですが。
以上、よろしくお願いします。
投稿者 ビーン : 2014年02月23日 12:35
>エムティ・ソフト様
素早い対応ありがとうございました。
エキサイトメールのメッセージはなくなって、最後まで動いてくれました。
投稿者 ビーン : 2014年02月22日 14:49
>ビーン 様
たしかに、エキサイトメールでメッセージが表示されますね。
特に出す必要も無いので、メッセージ表示はスキップしました。
14.50版(2014/02/22)でお試し下さい。
今後も、よろしくお願いします。
投稿者 エムティ・ソフト : 2014年02月22日 10:08
いつもお世話になっています。
フリーメールにログインして特定のリンクをクリックするシステムをマウスレコーダーで作ってみました。
ヤフーメールではスムーズに動作するのですが、エキサイトメールではリンクをクリックする地点で
「マウスレコーダー
一部、アクセスが拒否されました!」
というメッセージが出て止まってしまいます。
メッセージ内の「OK」を押すとその後設定どおりクリックして、一応マウスレコーダーは止まらずに最後まで動作します。
このメッセージを表示させない方法はあるのでしょうか?
この症状は別のパソコンだと出なかったので、、IEの設定などの問題も調べてみたのですが、よくわかりませんでした。
windows7でIEバージョン8を使用しています。
投稿者 ビーン : 2014年02月21日 16:34
>y.m様
ご質問の意味がよく理解できていないのですが、
Q1.IE ダウンロードのところで【名前を付けて保存】が表示され、ファイル名を変更しcsv形式で保存をしたいのですが?
A1.保存先のフォルダを指定するには、ShowFolder
「名前を付けて保存」を表示するには、SveFile コマンドを呼び出します。
ただし、ZIPファイルをCSVファイルとして保存しても意味はありません。
(解凍する必要があります。)
Q2.例えば【名前を付けて保存】の表示されるまで自動で待機して、表示されてから次の動作に移るようにしたいのですが?
A2.Q1のように ShowFolder または SaveFile コマンドを呼び出してください。
ご質問の意味を取り違えていたら、すみません。
投稿者 エムティ・ソフト : 2014年02月06日 07:47
エムティ・ソフト様
先日、エキスパート版を購入し勉強がてら色々、会社で試しています。
① IE ダウンロードのところで【名前を付けて保存】が表示され
ファイル名を変更しcsv形式で保存をしたいのですが?
② 例えば【名前を付けて保存】の表示されるまで自動で待機して
表示されてから次の動作に移るようにしたいのですが?
お手数ですが、またお教え下さい。
投稿者:y.m
投稿者 y.m : 2014年02月05日 19:40
投稿者 エムティ・ソフト : 2014年01月30日 06:03
エムティ・ソフト様
ご回答有難うございました。
早速、試してみました。「あっ」という間にzipファイルがダウンロード出来ました。(感動)
またまた初心者的な質問ですが
ファイル名の後に本日の日付を付け保存したいのですがお教えいただけますでしょうか。
04miyagi(20140129) → で保存したい
ファイル名 + かっこ付きの本日日付
投稿者:y.m
投稿者 y.m : 2014年01月29日 23:30
>y.m様
ファイルのダウンロードを画面上のクリックで全て行うと、たいへん面倒です。
可能ではありますが、プログラムはかなり長くなります。
ダウンロードするだけなら、下記が参考になると思います。(新規作成)
対象となるページのURLとダウンロードするファイルのキーワード(miyagi,akitaなど)だけでダウンロードすることができます。
お試しください。
投稿者 エムティ・ソフト : 2014年01月29日 10:54
エムティ・ソフト様
はじめまして
14.36をダウンロードし、興味津々で色々使い方を見ておりますが素人で良くわかりません。
このソフトは使い方次第では大変便利だと思い仕事で使用してみたい次第です。
出来れば下記動作方法をお教え頂けると助かります。
(IEは郵便住所データの「住所jp」で試している)
・IEを座標0,0で開く → csvクリック → 適当な地域zipクリック → ファイルのダウンロード画面がでるま待機 → 保存クリック → [住所]というファイル名に変更 → デスクトップにダウンロード保存 → IEを閉じる
こんな事を質問してすみません。
エキスパート版の購入も検討しております。
投稿者:y.m
投稿者 Anonymous : 2014年01月28日 23:01
エムティ・ソフト様
回答ありがとうございました。
正直な話、関数はまだあまり使いこなせていないのですが
例を参考に作ってみたいと思います。
投稿者 ビーン : 2014年01月03日 13:39
>ビーン様
乱数入力は、あくまで「乱数」です。
数字が全く含まれない場合や、すべて数字の場合も発生します。
好みの乱数文字列を発生するためには、プログラムを組んだり、関数を使う必要があります。
下記の例は、6文字の任意の文字列(ASCIIコードで48-125)を発生します。
replace(chr(48+78*rnd(1)) chr(48+78*rnd(2)) chr(48+78*rnd(3)) chr(48+78*rnd(4)) chr(48+78*rnd(5)) chr(48+78*rnd(6)) ," ","")
生成文字列例: @J7^=x
ただし、上記も数字が全く含まれない場合が当然発生します。
下記の例は、任意の文字、数字、が交互に並んだ6文字の文字列を生成します。
replace(chr(48+78*rnd(1)) chr(48+10*rnd(2)) chr(48+78*rnd(3)) chr(48+10*rnd(4)) chr(48+78*rnd(5)) chr(48+10*rnd(6)) ," ","")
生成文字列例: e5L1g9
同じように追加していくと、もっと長い文字列も生成できます。
プログラムを組んで関数化すれば、もっとスマートに、ランダムな文字列が生成できるでしょう。
後日、プログラム例をサンプルに追加する予定です。
------------------------------------
2013/12/29 追加
投稿者 エムティ・ソフト : 2013年12月28日 07:28
先日乱数入力について質問させていただいた者です。
http://mt-soft.sakura.ne.jp/web_dl/petit_tool/mrecorder/frame/random.html
半角アルファベットと数字のまじったパスワードを生成したいので「sNssNsNs」でやってみたのですが、
p5ayol1w
pmhnzov5
cpa862qk
fytqjjmy
どうも設定のとおりにパスワードが反映されないようです。
たまに数字がまったく含まれない乱数が生成されることもあります。
ご教授よろしくお願いします。
投稿者 ビーン : 2013年12月23日 12:36
ごめんなさい、OSは Windows 7 SP1 64bitです。
それから、sample7などのIE表示された場合、
マウスレコーダー本体が最前面にあるため後ろの処理が見えなかったりします。
そこで思ったのですが、操作対象のウィンドウ領域以外にマウスレコーダー本体を自動移動
するように設定できたらデバッグ等容易になるかなって思いました。
それから、sampleについてですが、バッチファイルに引数を渡して処理させる
とかすれば意味はあるかなって感じました。
投稿者 RRX : 2013年12月17日 02:23
申し訳ありません。
すいません、Win7 64bit IE11.0.2(更新バージョン)です。
コアバージョンは11.0.9600.16476です。
サンプル1、メモ帳の操作
code 806
メモ帳を移動します。
の移動しをクリックしてしまうため、
---------------------
無題 - メモ帳
---------------------
メモ帳に入力します。
今日は雨だ。
明日は晴れだ!
メモ帳のサイズを変更してみます。
メモ帳を移動しメモ帳を閉じます。
変更は、保存しません。ます。
---------------------
となってしまいます。
また、EOF手前の974行目、自動応答も動作しません。
ウィンドウは倍率100%DPIでAero、
メモ帳のオプションは
メイリオフォントでレギュラースタイル、フォントサイズは9になっています。
サンプル7のIE操作は例外エラーが出ずにデータの取得待ちになってしまっているようです。
getboundingclientrectについて検索したところ、
http://msdn.microsoft.com/en-us/library/ie/ms536433
(2013/11/17日記述)
と
http://blogs.msdn.com/b/ie/archive/2012/02/17/sub-pixel-rendering-and-the-css-object-model.aspx
を見つけました。
IEについてはMSDNブログ、
http://blogs.msdn.com/b/ie_ja/archive/2013/02/06/modern-ie-a-new-set-of-tools-to-help-you-support-modern-and-older-versions-of-ie.aspx
で紹介されている
http://modern.ie/
からテスト出来ます。
以上です。
投稿者 RRX : 2013年12月17日 01:55
>RRX様
ご指摘ありがとうございます。
検証してみた結果です。
下記の検証結果から、IEはVer10ではないかと推測いたします。
ただし、sample1 に関しては問題無く動作しました。
ご使用のWindowsとIEの種類を知らせていただけると助かります。
■バッチファイルの件
ご指摘ありがとうございます。
ただ、バッチファイルはサンプルから外しました。
元々外しかけていた残骸で、そもそも、大した意味も無いサンプルでした。
■IE10
これは、IE10自体のバグではないかと推測しています。
とはいっても、そうは言っていられないので、何とか回避策を検討中。
以上です。
検証結果
---------------------------------------
Windows7 64bit,Explore9
---------------------------------------
○ sample1(メモ帳の操作):正常に動作
△ sample3-1(CSVからの連続入力)
ワイド画面の場合、確認メッセージが本体フォームの裏側に表示されてOKボタンが空振り。
対処:実行時に本体をタスクトレイに収納
△ sample3-2:同上
○ sample5(あっち向いてホイ):正常に動作
○ sample7-1(IE自動入力):正常に動作
○ sample7-2:正常に動作
○ sample7-4:正常に動作
× sample10(リンククリック&ダウンロード)
動作しない-応答の構成が異なるので、まったくの不発
サンプルから除去。
○ sample12(あっち向いてホイ)
正常に動作
○ sample14(Webニューストピック)
正常に動作
○ sample15(Web更新チェック)
正常に動作
---------------------------------------
Windows7 64bit,Explore10
---------------------------------------
○ sample1(メモ帳の操作):正常に動作
× sample7-1(IE自動入力)
9 インデックスが有効範囲にありません。
× sample7-2:同上
× sample7-4:同上
× sample12(あっち向いてホイ):同上
× sample14(Webニューストピック):同上
× sample15(Web更新チェック):同上
9 インデックス・・はプログラムミス
これを修正して続行してみると、submit でエラー発生。
getboundingclientrectで値が取得できない。
IE10の不具合?
-------------------------------------------------
後日追記 2013/12/11
上記IE10の不備に対し、14.00版にて全て対処しました。
-------------------------------------------------
投稿者 エムティ・ソフト : 2013年12月08日 17:29
>エムティ・ソフト
どうもありがとうございました。
乱数入力ができるようになりました。
マウスレコーダーは何でも自動でできて素晴らしいですね。
いつも便利に使わせていただいています。
投稿者 ビーン : 2013年12月07日 21:49
>ビーン様
乱数入力の設定例
アルファベット小文字、または英記号を3文字以上10文字未満 の場合
入力種別 : 文字
最小 最大 : 3 10 sC
のように入力します。
文字指定記号「NAsCMHK」は任意の順序で組みあわせ可
下記リンクを参考にして下さい。
http://mt-soft.sakura.ne.jp/web_dl/petit_tool/mrecorder/frame/random.html
投稿者 エムティ・ソフト : 2013年12月07日 13:00
乱数入力についての質問です。
http://mt-soft.sakura.ne.jp/web_dl/petit_tool/mrecorder/frame/random.html#random_input
文字種別を指定したい場合は「NAsCMHK」の各文字を組み合わせて指定する。
(N:数字 A:アルファベット大文字 s:アルファベット小文字 C:英記号
M:メールで使用できる英記号 H:全角ひらがな K:全角カタカナ )
上記のような説明があるのですが、うまく設定できません。
マウスレコーダーのどの欄に記号を入力すればよいのでしょうか?
投稿者 ビーン : 2013年12月07日 08:27
バグ報告です。
Windows 7 にて、サンプル1、3、IE系、バッチファイルが動作しません。
バッチファイルは、C:\Documents and SettingsではVista以降に存在しないため、
%USERPROFILE%という変数を指定してやります。
これにより現在使用中のユーザディレクトリトップが表示されます。
cmd.exeでcd %USERPROFILE% と打ち込んでみてください。
投稿者 RRX : 2013年12月06日 03:54
>村田 様
個人的な使用でしたら、PC2,3台でも、1ライセンスで構いません。
(2,3台に同じライセンスキーを設定しても問題はありません。)
今後も、よろしくお願いします。
追伸:メールには、返信しておきました。
投稿者 エムティ・ソフト : 2013年10月23日 07:12
以前エムティーソフトさんがメールアドレスを変更するもっと前にマウスレコーダー通常版ライセンスを購入して愛用していました。
その後現在はノートパソコン(外用)を購入して、デスクトップで便利だったマウスレコーダーをノートでも使いたいと思っています。
ですが、ライセンスキーは1人に付き1つと記載されている為、以前発行されて現在デスクトップで使っているマウスレコーダーのライセンスキーをそのままノートでも使えるのか分からずに困っています。
試す事も可能ですが、変な事になってデスクトップ側で使えなくなると非常に困るので、質問させて頂きました。
メールも送ってみたのですが、返答がないようでもしノート側等2台目3台目以降の場合は別個でライセンスキーが必要ならすぐにでも購入したいと考えております。
それか、1つのライセンスキーで2台目3台目以降の別のパソコンでもトラブル無く使えるのであれば、安心してライセンスキー入力ができます。
ご返答の程、よろしくお願い致します。
投稿者 村田 : 2013年10月22日 17:47
>shibu様
英語版OS環境にて、文字化けということですが、
具体的にはどの部分なのでしょうか?
当方、英語版の環境が無いため確認できませんので、画面(または出力結果)のどの部分が文字化けするのか教えていただければ助かります。
単に、英語版OSに標準搭載されている以外のフォントを使用しているのであれば、他のフォントに替えることで対応が可能かと思われます。
文章での説明が難しい場合は、HTMLメール(または添付)でお願いします。
投稿者 エムティ・ソフト : 2013年10月03日 07:49
エクスパート版のユーザーです。
英語OS環境で使用したところ、文字化けが発生していました。
一部分は表示されている箇所がありましたので、文字化けしている箇所を対応いただけないでしょうか?
投稿者 shibu : 2013年10月01日 15:13
Now()関数の返却値はシリアル値でした。
関数仕様を修正しました。
なお、日付形式にする場合は
format(now(),"yyyy/mm/dd")
のようにして下さい。
投稿者 エムティ・ソフト : 2013年09月19日 09:14
下記のコマンド共、小数形式のシリアル値が返されます。
MSG_BOX Now()
MSG_BOX CDate(Now())
投稿者 Anonymous : 2013年09月15日 13:40
>uhama様
ご指摘ありがとうございます。
13.91版にて、type=email 属性に対応しました。
お試し下さい。
今後も、よろしくお願いします。
投稿者 エムティ・ソフト : 2013年06月17日 08:54
エクスパート版のユーザーなのですが、お願いがあります。
IE入力においてHTML5の新しいタグ <input type="email" に対応したもの作って頂けないでしょうか?
従来、IE入力でidを読み込むパターンで <input type="email" にぶつかったものは全てエラーになるようで、全然使えなくなり。。。。非常に困ってます。。。
どうぞよろしくお願い致します。
投稿者 uhama : 2013年06月15日 16:47
>yabuki様
AP_OPENでの位置確定にて、キーを押しても停止しない不備がありました。
11.92版にて改修しましたので、お試し下さい。
今後も、よろしくお願いします。
投稿者 エムティ・ソフト : 2012年11月07日 10:26
まだ試用版の状態ですが。
「アプリ制御」に関しての質問です。
AP_Openでアプリを指定した後に、位置・サイズを決めたところで「PAUSE」ボタンを押下しても
表示情報が固定されません。
なにか対処方法はありませんか?
操作方法は間違ってないと思うんですが。
投稿者 yabuki : 2012年11月02日 19:06
>気分屋 様
ご提案、ありがとうございます。
・ドラッグ&ドロップでのDATファイル読み込み
・最近使ったファイル(MAX5個)の表示
を11.90版として追加しましたのでお試し下さい。
複数DATをタブで開くというのは検討してみます。
今後も、よろしくお願いします。
投稿者 エムティ・ソフト : 2012年06月28日 11:03
要望というほどではないですが、datファイルを開くときに
エクスプローラからドラッグ&ドロップを使えると便利かなと思いました。
ほかに、ファイルメニューの中に過去に開いたdatの履歴や
複数のdatをタブで開くなど。
テキストエディタと競合する部分なので
無い方が潔いでしょうか。
投稿者 気分屋 : 2012年06月27日 15:13
>ビーン様
まったく判らなくなりました。
Test2 でIEが起動して目的のページが開くのであれば、同じ処理方式のAP_OPENでも動作するはずなのですが・・
Test3 のIE_Navigator を使用しても Sleipnir が起動されるとは・・・
本件は、しばらく保留させて下さい。
申し訳ありません。
投稿者 エムティ・ソフト : 2012年02月28日 11:17
>エムティ・ソフト様
デスクトップにダウンロードしたtest2のダブルクリックでIEの入力フォーム画面が起動しました。
また、「test3」を読み込んだ時の動作ですが、Sleipnirが起動した後、
①マウスレコーダー
タイムアウト-20
IEFrameの特定失敗!
②マウスレコーダー
「IEのアクセスに失敗しました。特権レベルの確認
ファイルのプロパティ→互換性→特権レベル
で、「管理者としてのこのプログラムを実行する」がチェックされていたら、
チェックをオフにしてください。
というエラーが表示されます。
マウスレコーダーのプロパティからの管理者権限の設定については、
チェックがオンでもオフでも上記動作は同じ経過でした。
また、「test」の場合だと、Sleipnirが起動した後、①のエラー表示が出て、②は表示されませんでした。
投稿者 ビーン : 2012年02月27日 10:41
>ビーン様
「Sleipnir上でクリック」とは?
デスクトップなどにダウンロードしてからダブルクリックします。
なお、マウスレコーダーは、管理者権限で実行して下さい。下記参照
管理者権限で実行
常に管理者権限で実行
投稿者 エムティ・ソフト : 2012年02月26日 06:26
>エムティ・ソフト様
どうも失礼しました。
テスト用VBSの方はSleipnir上でクリックすると、IEは立ち上がらずプログラムの内容が表示されます。
テスト用IeNavigate版ですが、やはりSleipnirが起動してしまいました。
「IEのアクセスに失敗しました。特権レベルの確認」というメッセージが出ます。
パソコンは2台ありますが、どちらも上記の動作となっています。
投稿者 ビーン : 2012年02月25日 17:01
>ビーン様
VBSはマウスレコーダーで読み込むのではなく、直接、マウスでダブルクリックします。
AP_OPENと同じ方法をVBスクリプトで行ったものです。
ダブルクリックしてIEが起動されるかの確認です。
ともあれ、AP_OPENではなく、IeNavigateを使ったものに変更してみました。
今度は大丈夫ではないかと、少々の自信があります。下記をお試し下さい。
こちらは、マウスレコーダーで読み込みます。
テスト用IeNavigate版
投稿者 エムティ・ソフト : 2012年02月25日 15:46
>エムティ・ソフト様
テスト用VBSを読み込むと「エラー発生、実行データがありません」というメッセージがでてきますね。
瑣末なことでいろいろお手数をお掛けして申し訳ありませんでしたl。
マウスレコーダーを使うときは基本ブラウザを切り替えるということでやってみたいと思います。
投稿者 ビーン : 2012年02月25日 12:04
>ビーン様
IEが起動できないとなると、お手上げ状態です。
最後にひとつだけ、確認をお願いします。
下記リンクのVBスクリプトをダウンロードしてダブルクリックで起動してみていただけないでしょうか?
中身はテキストファイルなのでメモ帳で確認できます。
AP_OPENと同じようにIEにURLを渡して起動するVBスクリプトです。
テスト用VBS
投稿者 エムティ・ソフト : 2012年02月25日 09:59
>エムティ・ソフト様
ライブラリはwindows7の機能のことらしいです。
http://windows.microsoft.com/ja-JP/windows7/products/features/libraries
IEは起動せず、上記のライブラリ画面が表示されます。
テスト用DATを読み込んでみましたが、私のパソコンではやはりSleipnirのほうが起動してしまいます。
投稿者 ビーン : 2012年02月24日 17:03
>ビーン様
当方にて既定のブラウザをそれぞれ、Safari,Sleipnir,Firefox,Chrome にして試してみましたが、正常にIEが起動されて実行されています。
ひとつ気になる記述があるのですが、URLを指定しなかったら「ライブラリ」が表示されるとありますが、「ライブラリ」とは何でしょうか?IEは起動されなかったということでしょうか?
もしIEが起動されないのであれば、何が起動され表示されているのでしょう?
ちなみに、当方で確認してテスト用DATは下記です。ダウンロードできます。
テスト用DAT
投稿者 エムティ・ソフト : 2012年02月24日 15:51
>エムティ・ソフト様
AP_OPENで入力したのは下記のとおりです。
"C:\Program Files\Internet Explorer\iexplore.exe" http://mt-soft.sakura.ne.jp/web_dl/petit_tool/mrecorder/dummy_page.html
"C:\Program Files\Internet Explorer\iexplore.exe"
"C:\Program Files (x86)\Internet Explorer\iexplore.exe" http://mt-soft.sakura.ne.jp/web_dl/petit_tool/mrecorder/dummy_page.html
"C:\Program Files (x86)\Internet Explorer\iexplore.exe"
URLを指定したものはSleipnirが立ち上がり、URLを指定しないと「ライブラリ」が表示されます。
インターネットエクスプローラー8使用していますが、9にアップグレードしても結果は同じでした。
パソコンはwindows7、64ビットになります。
投稿者 ビーン : 2012年02月24日 13:58
>ビーン 様
IEを起動しようとしているのに、Sleipnirが起動されるとは奇妙ですね。
AP_OPENの行を、この掲示板に貼り付けて見せていただけないでしょうか?
なお、AP_OPENで、URLは指定せずに、IEのexeのパスだけを指定してみて下さい。
IEが起動され、ホームページが表示されるはずです。
投稿者 エムティ・ソフト : 2012年02月24日 09:02
>エムティ・ソフト様
迅速な回答ありがとうございます。
サンプル7-1をご指摘のとおりに書き直して読み込ませてみましたが、やはりSleipnirのほうが立ち上がり、「IE frameの特定失敗」のエラーとなります。
インターネットエクスプローラーの.exeの場所はこのパラメータで合っているはずなんですが。
標準ブラウザをエクスプローラーにすると問題なく動作してます。
投稿者 ビーン : 2012年02月23日 14:47
>ビーン様
「サンプル6」ではブラウザを使わないので、「サンプル7_1」として記述します。
ブラウザを指定すれば、ほかのブラウザが既定であっても動作します。
現在 URL指定
http://mt-soft.sakura.ne.jp/web_dl/petit_tool/mrecorder/dummy_page.html
これを、下記のようにIEを指定してパラメータで渡します。
"C:¥Program Files¥Internet Explorer¥iexplore.exe" http://mt-soft.sakura.ne.jp/web_dl/petit_tool/mrecorder/dummy_page.html
投稿者 エムティ・ソフト : 2012年02月23日 11:30
マウスレコーダーのサンプル6について質問させていただきます。
この動作はインターネットエクスプローラーを規定のブラウザにしないと動作しないのでしょうか?
通常はSlepnirを使用しているので、これを規定にしたままサンプルの動作を実行させる方法はあるでしょうか?
投稿者 ビーン : 2012年02月23日 10:40
エムティソフト様
昨日は失礼しました。
掲示板があるのを知らず、直接質問メールしてしまいました。
直ぐに返事を頂き感謝しています、ありがとうございました。
画像認証の件、何とか解決できました。
素晴らしいソフトです、今後ともよろしくお願い致します。
投稿者 syu : 2012年02月22日 16:42
>あずき 様
仕様です。
記録した座標位置をクリック/キー押下します。よって、記録時と再生時にウィンドウサイズや位置が異なると正常に動作できないので、再生時にウィンドウ位置とサイズに記録時の状態にします。
「正常に動いてくれません。」というのはクリックやキー押下が誤動作すると言うことでしょうか?
なお、画面状態が記録時と異なる場合(特にWEBページなどは刻々と変わります・・)は単純に記録/再生では正常に動作しません。
そのような場合はIE入力などのコマンドを用いたプログラミングが必要になります。
追記:単純なWEB操作(クリックやキー押下)であればIEレコーダーを使う方が便利で正確です。
投稿者 エムティ・ソフト : 2012年02月16日 08:15
初歩的な質問になると思うのですが、
ブラウザ上やメモ帳の上でで動作を記録して再生させるとブラウザやメモ帳の位置を勝手に動かしてしまって
正常に動いてくれません。
何か気をつけたほうが良いことがあるのでしょうか?
ブラウザはファイアーフォックスです。
投稿者 あずき : 2012年02月15日 14:13
>いしだ様
再生時にウィンドウをクリックする場合、ウィンドウタイトル文字を検索しています。
もし、ウィンドウタイトル文字が記録時と異なる場合にはウィンドウ検索に失敗して“ターゲットウィンドウを見失いました!”が表示されることになります。
(ウィンドウタイトルに日時や商品名のように毎回異なるデータが含まれる場合など)
対処方法を FAQ に、もう少し判り易く追記しましたので参考にして下さい。
投稿者 エムティ・ソフト : 2011年12月12日 08:14
マウスレコーダーを昨日購入させていただきました。
何通りか問題なく動いたのですがあるツールをクリックして作動させた
ときだけは下記のようなエラーがでます。
ターゲットウィンドウを見失いました!
WindowsForms10.Windows.8app.0.378734a
AmazonPrieChekerPro
再生を中止します。
よくある質問もみましたが当方プログラムに詳しくなく全くわかりません。
保存したファイルをテキストファイルに変更して中を確認してみましたが
よくわかりませんでした。
対処方法を教えてください。
宜しくお願いします。
投稿者 いしだ : 2011年12月12日 03:17
エムティソフト様
お世話になります。
早々のお返事ありがとうございました。
無事、“自動応答”で対応することができました。
また、この機会に色々と勉強することができ、今後の活用範囲が広がりそうです。
早速ライセンスを購入します。
投稿者 拓也 : 2011年11月19日 14:12
>拓也様
ウィンドウの表示される時間が一定していない場合は、「Wait」または「自動応答」のコマンドを使用して、表示されるまで待つ必要があります。
使用方法は下記サンプル集の「Wait命令」「自動応答」の項目を参考にして下さい。
投稿者 エムティ・ソフト : 2011年11月15日 07:03
お世話になります。
マウス操作によりある処理プログラムを繰り返し自動操作したいと考えています。
そこで、今回試用させていただいたのですが、処理完了ウインドウが現れる時間がまちまちなためにエラー(ターゲットウインドウが見つかりません)表示が出てしまいます。
処理ウインドウを認識して次の操作に移ることは可能でしょうか?
よろしくお願いします。
投稿者 拓也 : 2011年11月14日 19:48
エムティ・ソフト様
早々の回答ありがとうございました!
早速試してみたいと思います。 ぴか
投稿者 ぴか : 2011年10月11日 14:34
>ぴか様
ウィンドウズロック中にはタスクスケジューラーは無効になるようです。
(セキュリティの観点から当然のようにも思えます。)
ただ、アプリケーション自体はウィンドウズロック中にも動作できます(画面操作は不可)ので、時間指定で操作させれば可能です。
プログラムの先頭行に、Waitコマンドでミリ秒数指定の待ちを追加します。
日時を指定したい場合は、WaitIfコマンドを使用して下さい。
使用例は下記の「WaitIf・指定時刻まで待機」を参照。
http://mt-soft.sakura.ne.jp/web_dl/petit_tool/mrecorder/samplelist2/sample_list2.html
投稿者 エムティ・ソフト : 2011年10月09日 08:58
自動で画面操作、入力、出力を得たいと思い、貴殿のソフトを使わせていただこうと
思っております。
その状況の中で、他人にPCを操作されないために、ウィンドウズロックをかけた状態で、
タイマー起動で実行させたいと思っています。
EXEファイル化して、タスクスケジューラで実行させようとしたところ、ウィンドウズロックの
時には動作しないように見えます。
特にウィンドウズロックにこだわっているわけではないのですが、他人にPCを操作されないような仕組み(別ソフト等)はありますでしょうか。
また、ウィンドウズロックをかけた状態で動作させることはできますでしょうか。
ご回答いただけますでしょうか。よろしくお願いいたします。
投稿者 ぴか : 2011年10月07日 14:19
>DP様
Q1.ユーザーフォームの「閉じる」ボタンを表示しない、もしくは無効にすることは可能でしょうか?
A1.対処します。
Q2.ユーザーフォームからのイベントをWaitUserFormで待ち続ける以外に取得する方法はありますか?
A2.検討してみます。難しいようにも思えます。
Q3.リストボックスの Height
A3.リストボックスの高さは、文字の高さの整数倍+上下マージンに自動で合わせるようです。
MSPゴシック10ポイントの場合、リストボックスの高さは
1行、2行、3行、4行は、それぞれ、17,30,43,56 に合わせられます。
56を指定するとピッタリ56になりますが、55を指定すると1行分下の43に合わせられるようです。
投稿者 エムティ・ソフト : 2011年09月20日 08:38
はじめまして、
エキスパート版(ver11.40)を使用しています。
とてもよく出来たツールなので愛用しています。
さて、質問なのですが、
1.ユーザーフォームの「閉じる」ボタンを表示しない、もしくは無効にすることは可能でしょうか?
2.ユーザーフォームからのイベントをWaitUserFormで待ち続ける以外に取得する方法はありますか?
(別の処理をさせながらコマンドボタン押下の割り込みイベントを待つのが理想なのですが・・・)
また、不具合?の報告ですが、
1.ユーザーフォームにリストボックスを配置して「OK」ボタンを押下すると、設定したサイズより小さいサイズで配置されます。
(具体的にはリストボックスの Height が一行分ほど小さくなります。)
以上、ご確認とご回答をいただけたらと思います。
よろしくお願いいたします。
投稿者 DP : 2011年09月19日 20:48
>黒様
■キーの記録が出来ない件について
再現を試みていますが、現在のところ、キーの記録は正常に行われるようです。
引き続き、テストを続行します。
なお、確認ですが、
「記録」メニューの「キーボードイベント取得」がオフになっていないでしょうか?
もし、オフになっているとキー操作は記録されません。
投稿者 エムティ・ソフト : 2011年09月05日 12:57
11.40試用版を利用させて頂いています
キーの動作がしないためご報告
Acer Aspire5745DGを使用中キーマクロの記録ができません(他のノートを試していない為わかりませんがデスクで行っている同等の内容を行う際一切キーの記録ができない)
(マウスの移動のみ動作)
対処法等御座いましたらご教授頂ければと思います
投稿者 黒 : 2011年08月31日 18:11
>sulu様
waitはとても古いコマンドで、現在では単純待ち以外には、あまり使われていないようです。
ご指摘のとおり、Webページなどをwaitで監視すると、その構造(多重フレーム構成、FLASHなどが組み込まれたページ)により、処理にとても時間が掛かります。CPUへの負担も大きくで、時間内に検査が終わらない場合もあります。
廃止したいところですが、既存ユーザー様を考慮して、そのまま残してあります。
■Web監視
できれば、Webページ監視は、IE関連のコマンドを使用していただくことをお奨めします。
Waitでのページ全体監視は、大きなページの場合に少々無理があるようです。
■ウィンドウ内に含まれない文字列の指定
「^」を用いた「含まれない文字」の指定は、「point」(ポイント位置指定)の場合のみ有効でした。
条件式の書式では"監視対象が「point」の時のみ有効"としているのですが、例の方は更新せずそのままになっていました。
本件関連の説明ページを、再度、確認いたします。
ご指摘ありがとうございました。
投稿者 エムティ・ソフト : 2011年05月05日 09:37
11.11で試用中です
waitについて質問です。2点お願いします。
①waitが指定時間どうりに動いてくれません。
たとえば
event Wait /条件付の待ち
最長待ち時間 10000
条件式 実行中
で編集し再生回数9999で再生しヘルプページ
http://mt-soft.sakura.ne.jp/web_dl/petit_tool/mrecorder/frame/joken_syori.html#wait
を開くと実行中の文言があるのでページがアクティブな間は該当行で10秒間waitするはずですが3~4秒程度で抜けたり10秒以上waitしたり(フリーズ?)してしまいます。
上手くwaitできた場合や*を使った画面上という条件でもwait中はCPU使用率が跳ね上がりとても不安定になります。停止できない事もあります。メモ帳で実行中とだけ書いた場合は指定時間waitするのですがやはりCPU使用率は上がります
jump等では問題なしです。waitは文字量の影響を受け誤動作してしまうのでしょうか?
②wait記述例の
^完了しました 作業中のウィンドウに“完了しました”を含む文字が表示されていない時
とありますが表示されていない時にwaitしてくれません。
メモ帳を開き何も書かず
Wait /条件付の待ち
最長待ち時間 10000
条件式 ^完了しました
で何も書かれていないメモ帳がアクティブな間、該当行で10秒waitするはずでがしません
また、タイトルを限定する条件式
^完了しました 新規テキスト とし、メモ帳に 完了しました と書いてるにも関わらずwaitしてしまうなど思い通りになりません。
当方の理解不足なのかもしれませんがご回答いただければと思います。
投稿者 sulu : 2011年05月04日 03:09
エムティ・ソフト様へ
V11.11 選択行印刷等、問題なく使わせてもらってます。
やはり、編集時便利ですね。対応ありがとうございました。
今後も、またよろしくです。
投稿者 谷口 : 2011年04月18日 15:43
>谷口様
何回もメール等によるテストの御協力、ありがとうございます。
御協力により、印刷問題は解決したようですので、対応版(11.11)をアップロードしました。
今後もよろしくお願いします。
投稿者 エムティ・ソフト : 2011年04月15日 07:40
エムティ・ソフト様へ
すみません。メールもらえると思ってなかったので
Web でしか見ていませんでした。
選択行を印刷 確認しました。ありがとうございます。
昨日、漢字が化けて 印刷されるとの連絡しましたが、
どうも、PCの環境によるようです。
別のPCでは、ばっちり漢字で、印刷されました。
漢字が化けるPCでは、別途エディター(MauseRecoder以外)で、印刷すると
問題なく漢字で印刷されるのですが。
投稿者 谷口 : 2011年04月12日 16:17
>谷口様
■選択行印刷
印刷したい行を選択して、右クリック→「選択行を印刷」をクリックします。
■エクセル編集
編集後、シート全体を選択、コピー、マウスレコーダーのリスト上(新規作成状態にしておく)で貼り付けます。
メールは届いていないでしょうか?
投稿者 エムティ・ソフト : 2011年04月12日 14:34
エムティ・ソフト様へ
全て印刷 ですが、やはり別途 選択行印刷 のような仕様も欲しいです。
選択部分だけ印刷し使いたく、常時全体印刷は少々無駄が多いので。
かっていいますが、ご検討よろしくお願いします。
それと、EXCEL編集は、出力・印刷の為のコマンドなのでしょうか。
EXCEL編集し、MauseRecoderにもどす為ではないのですか。
チョッともどし方が解からなかったもので?
投稿者 谷口 : 2011年04月12日 10:07
エムティ・ソフト様へ
V11.10 少し確認してみました。
全て印刷で、私のPCでは漢字が化けてます。
よろしく願います。
投稿者 谷口 : 2011年04月11日 16:17
エムティ・ソフト様へ
早速のUP ありがとうございます。
ついついよくばりすぎまして、早速使わせてもらいます。
投稿者 谷口 : 2011年04月11日 11:27
>谷口様
11.10版を正式にアップしましたので、そちらからダウンロードして見て下さい。
投稿者 エムティ・ソフト : 2011年04月10日 08:19
すみません。こちらの環境がわるいのか、いまいちv11.10(ベータ)
DL できません。
投稿者 谷口 : 2011年04月09日 11:53
投稿者 エムティ・ソフト : 2011年04月08日 15:50
エムティ・ソフト様へ
PRINT コマンドの件
私も、簡単な、テキスト印刷ができればいいと思います。
よろしくお願いします。
それと、チョット応用してもらって、以前にもお願いした事がありますが
ファイル(F)機能の中に、印刷(P)にて、プログラムの印刷を追加を
再検討願いませんでしょうか。(A4横ぐらいで固定でもいいです)
開発中、行範囲指定し即ソースを印刷したい事がよくあります。
現行一旦登録し直し終了し、別エディターで開いて、印刷しています。
任意のエディター等設定できるようにしてもらい、ソースを引き渡しそちらで
印刷は御自由にでもいいです。印刷の為に開発作業を中断したくないです。
(範囲選択し、そのまま立ち上げた任意のエディターにドロップし、そこで印刷すればいい
だけのことなのかもしれませんが、その都度探して立ち上げ印刷するのもあちこち環境変わると結構わずらわしく )
余力があれば、こちらもご検討よろしく。
投稿者 谷口 : 2011年04月07日 11:20
>谷口様
○CallIf - 空欄の時は、何もしない仕様にして欲しい
なるほど、その通りですね。改良します。
○PRINT のコマンドが欲しい
了解しました。印刷機能を追加します。
追加:印刷/印刷プレビュー
検討:印刷設定(記憶項目が多いので抜粋、もしくは搭載無し)
画像の印刷機能(クリップボード、オブジェクト)
今後もよろしくお願いします。
-------------------------------------------------------------------
2011年4月7日追記
印刷プレビュー/印刷設定、画像印刷については、用途があまり考えられないので、
単純なテキスト印刷機能だけにしたいと思います。
-------------------------------------------------------------------
投稿者 エムティ・ソフト : 2011年04月06日 07:46
エムティ・ソフト様へ
MauseRecoder愛用させてもらってます。
2点要望があります。ご検討願いませんでしょうか。
○CallIf で SubA SubB の設定が、空欄だとエラーになりますが
空欄の時は、何もしない仕様にして欲しい。現行ダミーのサブルーチンを
わざわざ設定しています、条件の時だけ、作業をする使い方が結構多いので。
○PRINT のコマンドが欲しい。簡単な係数値を印刷したり、PDF出力等の設定テスト
時、欲しいなと思いました。DOS コマンド等でうまく代用できる方法等あれば
ご教授下さい。
投稿者 谷口 : 2011年04月05日 23:30
エムティ・ソフト様へ
kumakumaです。
早々に11.0版で確認させて頂きました。
■関数を文字列として表示
関数名の前に「¥」を付けて文字列としての表示が可能となりました。
ありがとうございます。
■自動表示の有効タイミング
快適に利用可能となりました。ありがとうございます。
投稿者 kumakuma : 2011年03月22日 17:09
>谷口様
10.60版で論理演算機能を強化しました。
その改修で出来るようになったと思われます。
投稿者 エムティ・ソフト : 2011年03月18日 08:35
>kumakuma様
Q1.関数を文字列として表示
A1.気にはしていましたが、やはり、そのような要求が存在しましたか。
下記のような仕様で解決したいと思います。
「文章中で "Int(12+3)" のような文字列を表示させたい場合は、"¥Int(12+3)" のように、関数命の前に「¥」を付けます。同じく、"¥Int(12+3)"と表示させたい場合は、"¥¥Int(12+3)" とします。」
Q2.自動表示の有効タイミング
A2.キースキャン間隔で漏れが生じるようです。
もっと確実な方法を考案しましたので、次版にて対処します。
投稿者 エムティ・ソフト : 2011年03月18日 08:34
先程の件
V8.61 にてやっていましたので、おかしいようです。
今最新版で、再度テストしたら、思うように動きました。
すみませんでした。現行のVerを、最新版にあげてみます。
今までのPRGが、変動しないかこわくて、最近あげていませんでした。
投稿者 谷口 : 2011年03月15日 17:49
先程の件ですが、数値化の前に、”:” をReplaceで消してからではと考え
((Val(Replace(Time(),":","")) > 160000) && (Val(Replace(Time(),":",""))
としてみましたが、効果ありませんでした。
16:00:00 - 17:00:00 の時間の時だけJump させたいのですが
どんな構文で書けばいいでしょうか。
お手数ですがご教授願いませんでしょうか。
投稿者 谷口 : 2011年03月15日 15:58
先程の件ですが、数値化されないとだめなのかと Val(Now()) を参考に
((Val(Time()) > Val(TimeSerial(15,00,00))) && (Val(Time())
としましたが、いまいちうまくいきません。
投稿者 谷口 : 2011年03月15日 15:06
if 文の判定欄に
((Time()>TimeSerial(12,00,00)) && (Time()
と定義したのですが、どうも思うように動きません。
どこがおかしいのでしょうか。よろしくお願いします。
投稿者 谷口 : 2011年03月15日 12:54
エムティ・ソフト様へ
kumakumaです。
現在も大変、重宝に利用させて頂いています。
2点ご質問がありますので、教えて頂けたら幸いです。
■1点目:文章欄に「int("tokyo")」とい文字を入力する方法について
event「文章入力」の文章欄に「int("tokyo")」という文字を入力させたいのですが、これを実行すると「0」という数値に変換されてしまいます。
おそらくint関数が実行された結果値に変換されているものと想像しますが、文字データとして入力させるにはどの様に記述したら宜しいのでしょうか?
■自動表示の有効タイミングについて
event「LeftClick」のマウス座標の設定では自動表示にチェックを入れて座標を取得しています。
しかし、Pause/Breakキーが1回で有効になる時と10回くらい連打して有効になる時と、状況によってまちまちなのですが、どの様に操作したらタイミング良く有効にすることができますでしょうか?
(ちなみに、再生時にPause/Breakキーで一時停止する際は1回で有効となるのでKeyBordが壊れている訳では無い様です。)
投稿者 kumakuma : 2011年03月10日 16:46
>通りすがりの仮面ライダー様
ご指摘ありがとうございます。
仕様に反した処理になっていました。
ファイル名が空白の場合は上書きするように修正します。
投稿者 エムティ・ソフト : 2010年11月06日 08:06
現在開いているExcelブックを、XLCloseにて上書き保存し、Excelを終了したいのですが、以下パラメータを指定しても保存せず終了します。
[XLClose]
ブック名 : 空白
保存 : yes
ファイル名 : 空白
指定に何か間違いがあるでしょうか?
投稿者 通りすがりの仮面ライダー : 2010年11月05日 15:46
>kumakuma様
AP_OpenでのExcel起動位置設定
仕様変更ではなく、単なる(重大な)ミスです。
10.61版で修正します。御指摘、ありがとうございました。
投稿者 エムティ・ソフト : 2010年10月14日 09:12
エムティ・ソフト様へ
kumakumaです。
早々に10.60を活用させて頂いています。
ところで、今までAP_Openでexcel起動時しておりましたが、今回のサポートで
フォーム座標が無効となりました。
今回よりXLOpenがサポートされた契機で、AP_Openでexcel起動時は未対応となったのでしょうか?
(これから新たにdatファイルを作成する場合は、XLOpeを使用して行こうと思いますが、個人的には位置指定機能があるのでAP_Openの方がうれしかったりもします。)
投稿者 kumakuma : 2010年10月13日 20:16
ありがとうございます。こっそりと直しておきました。
投稿者 エムティ・ソフト : 2010年10月13日 07:31
たいした事ではありませんが誤記がありましたので、こっそり報告します。
以下URL
http://mt-soft.sakura.ne.jp/mt/archives/2010/10/post_36.html
変更履歴欄の記載でテキストボックスで
11.60 2010/10/12
^^^^^^^
と、かなりバージョンアップされています。
投稿者 通りすがりの仮面ライダー : 2010年10月12日 17:31
エムティ・ソフト様へ
kumakumaです。
早々な対応頂き、とても助かりました。
>Q1.3個以上の論理式
うまく行きました。ありがとうございます。
>Q2.択一記述 [xxx,yyy]
了解しました。
case-ifの代替え案、ありがとうございます。
分岐した中に処理がたくさんあって、且つ、多くの分岐があるときに便利ですね。
活用させて頂きます。
投稿者 kumakuma : 2010年10月08日 11:30
>kumakuma様
ありがとうございます。
Q1.3個以上の論理式
A1.確かに、3個目以降が無効になっていました。
なんとか対処したいと思います。
当面、論理式を下記のように段階的に括弧で括ると正常に動作します。
((%Seido% == 20101010)||(%Seido% == 201110))||(%Seido% == 2012)
(((%Seido% == 20101010)||(%Seido% == 201110))||(%Seido% == 2012))||(%Seido% == 2013)
正式対応版は後日
Q2.択一記述 [xxx,yyy]
A2.申し訳ありません。Waitでのみ使用可。
Ifでは使用できません。
補足
多くの判定式がある場合は、Case-Callを使用できます。
(最大40個まで判定でき、構造が簡素になります。)
投稿者 エムティ・ソフト : 2010年10月08日 08:15
エムティ・ソフト様へ
kumakumaです。
何度もすみません。
質問したいことがあります。
たとえば、以下のIFを作成したのですが、3個目に記載した論理式が無効となっている模様です。
HPの説明例では、論理式が2個まででしたので、2個までしか利用出来ないのでしょうか?
If //年-指定 (%Seido% == YYYYMMDD)||(%Seido% == YYYYMM)||(%Seido% == YYYY)
あと、上記の様な式を5個使用して論理和の式を作成したいのですが、
簡略系として、式の右辺に以下の記述を行っても、うまく制御出来ませんでしたので、
利用方法が間違っているようならば、正しい記載方法を教えて頂けませんでしょうか?
if %Seido% == [YYYYMMDD,YYYYMM,YYYY,MMDD,MM]
申し訳けありませんが、ご教示願います。
投稿者 kumakuma : 2010年10月07日 21:55
エムティ・ソフト様へ
kumakumaです。
問い合わせに善処頂き、ありがとうございます。
10.51版のリリースをお待ちしています。
投稿者 kumakuma : 2010年10月07日 11:19
>kumakuma様
Q1.インクルード機能不具合の件
A1.確かにインクルードの保存先パスの扱いに不備がありました。
改修し、10.51版として10月8日にリリースします。
Q2.ご質問(相対パス指定)の件
A2.本来「..¥sub.dat」「..¥common¥sub.dat」「..¥..¥common¥sub.dat」
のように指定できるはずですが、Q1の絡みで有効に機能していませんでした。
Q1の改修で指定可能となります。
今後も、よろしくお願いします。
投稿者 エムティ・ソフト : 2010年10月07日 08:54
エムティ・ソフト様へ
kumakumaです。
先日は対応頂きありがとうございます。
■不具合のご報告
インクルード機能において
1点、おかしなところを見つけましたのでご報告させて頂きます。
既存のdatファイルから、ある行をInclude開始~終了で囲んで別ファイルに保存しましたが、
保存先が、MouseRecorder.exeと同じフォルダに作成されてしまいます。
デフォルトは、親と同じフォルダに保存して頂けるとうれしいです。
■質問です。
たくさんのdatファイルを、いくつかの種類別のフォルダに分けて利用しています。
個別の共通datは、各フォルダ内にincludeしており、全体共通のdatファイルは、includeイベントで「..¥common¥sub.dat」として利用したいのですが、どの様に操作したらよろしいのでしょうか?
ちなみに、
Include イベントで「..¥common¥sub.dat」と手入力し、その時点でアクセスに成功するのですが、保存後に再読込すると「sub.dat」」に戻ってしまいます。
Include イベントで「開く」でdatファイルを指定する際、「..¥」のパスの指定が出来るとうれしいのですが・・・
投稿者 kumakuma : 2010年10月05日 20:44
>通りすがりの仮面ライダー 様
InStr,InStrRevに検索開始位置を追加します。
ありがとうございます。
投稿者 エムティ・ソフト : 2010年09月23日 08:59
文字列検索関数 InStr に開始位置指定ができないでしょうか。
テキスト内に検索したい文字が複数存在しており、2個目以降の位置取得に頭を悩ましています。
投稿者 通りすがりの仮面ライダー : 2010年09月21日 10:03
>通りすがりの仮面ライダー様
致命的な不具合がありました。(10.41版 2010/09/15 15:30 で改修)
障害 「インクルード展開中」と「ファイルが見つかりません」が表示される
(新規作成かつ未保存で実行時)
投稿者 エムティ・ソフト : 2010年09月15日 15:38
10.40ダウンロードし、既存ファイルを実行しましたが・・・
Ap_Activate で「76 パスが見つかりません」MSGBOX表示されるようです。
Show_MSG「インクルードを展開中・・・」が表示されたままです。
ExcelでBook1を新規で開き、Book1をActive指定してみましたが、駄目っぽいです。
AP_Activate Book1
投稿者 通りすがりの仮面ライダー : 2010年09月15日 09:21
>kumakuma様
よろしくお願いします。
10.40版(インクルード対応、マウス座標自動入力、その他)は9/15(水)リリース予定です。
投稿者 エムティ・ソフト : 2010年09月14日 07:59
>kiyo様
初期状態設定で「再生速度」を2倍に設定してください。
詳しくは FAQ を参照
投稿者 エムティ・ソフト : 2010年09月14日 07:50
エムティ・ソフト様へ
kumakumaです。
Win7テストご協力の件、了解しました。
投稿者 kumakuma : 2010年09月13日 14:11
ある特定の記録した操作を、常に2倍速で再生するのには、どうすれば良いですか。
投稿者 kiyo : 2010年09月12日 14:37
>kumakuma様
・datからdatの呼び出し
マルチランセンス版用として、実装を予定します。
・Windows7への対応テスト
テスト自体は簡単(1回のテストは1分も掛からない)になる予定です。
実験プログラムを走らせて、表示される結果を送って頂き、何回か繰り返して、不具合箇所を絞り込んでいきます。
および、対応版の動作確認。
ぜひ、ご協力をお願いします。
投稿者 エムティ・ソフト : 2010年09月11日 07:10
エムティ・ソフト様へ
kumakumaです。
早々にご回答頂きありがとうございます。
■datからdatの呼び出し&マウス座標自動入力
今はソフトを開発した時の試験にマウスレコーダを活用させていただいています。
他(ロケットマウスなど)のものをいろいろ試してみましたが、マウスレコーダがとても
きめ細かい設定が出来て便利なので、前向きにご検討いただけると幸いです。
※datからdatの呼び出しは、マルチライセンス提供でも可
アップグレードして使います。
■Win7の対応
先日、マシンを発注しましたので、10月中旬頃にはマシンが来ると思います。
技術的に詳しいことは、あまりわからない私ですが、お役に立てるのであれば
対応させていただきます。
マシンが来たらご連絡いたします。
ちなみに、友人のWin7(64ビット)を借りて、試用版ソフトを利用して確認したところ、
付属のサンプルで実行したところ、電卓のウィンドウサイズを変更した辺りで停止しました。
投稿者 kumakuma : 2010年09月10日 13:34
>通りすがりの仮面ライダー様
エクセル関連での変数指定
XLRunMacro/XLCloseは変数指定が漏れていましたが、XLSetCellData、XLGetCellDataでは現状でも変数指定ができると思います。
いずれにしても、再度、精査して変数指定が可能になるように致します。
また、EXCEL関連で追加要望のコマンドが有りましたらお知らせください。
投稿者 エムティ・ソフト : 2010年09月10日 08:17
>kumakuma様
・datからdatの呼び出し
現状ではできませんが、たぶん可能です。
datからdat呼び出し自体は、読み込み時に展開という形式で容易に出来そうですが、、
・呼び出されるdatの中で再度dat呼び出しの入れ子
・読み込んだ後、変更/保存
が、かなり難しそうです。検討します。
・Windows7への対応
Windows7(32ビット版)は問題無いようですが、64ビット版はマウス/キー記録が出来ないとの報告を受けています。しかし、64ビット晩のPCが無いために、まだ対応は致しておりません。
もし、64ビット版のPCを使用してご協力頂ければ、対応できると思います。
たぶん、メール交換による5~10回のテストで済むと思われます。
・マウス座標自動入力について
すこぶる簡単です(既に変更は完了)。
「マウス座標入力」(新設)クリック→マウス座標が自動表示される
マウス移動→PAUSEキー押下→座標が固定される
の手順となります。
投稿者 エムティ・ソフト : 2010年09月10日 08:11
今回初めてExcelを操作してみました。
感想
・マクロ起動やセル値の設定、取得が簡単
要望
・XLSetCellData、XLGetCellDataのセル指定で、変数も可能になると便利かも。
(変数が可能であれば、ループできるので20ステップ程度で済むのですが、作成したら500ステップ弱まで膨らみました)
今気が付いたら、Excelでマクロ組んだ方が早かったかも(笑)。
投稿者 通りすがりの仮面ライダー : 2010年09月09日 17:36
エムティソフト様へ
kumakumaと申します。
今、使い始めてばかりですが、いろいろと重宝させて頂いています。
(現在 8.9.0を使用中)
ところで、あと数カ月するとマシンのリプレースとなり、OSがWindows7(64bit)となります。
マウスレコーダは、Windows7に対応して頂けないのでしょうか?
あと次いでに失礼ですが、もし要望を叶えて頂けるのであれば、
以下の事をご検討頂けるととても嬉しく思います。
たとえば、編集モードでLeftClickなどのマウス座標を直接入力して編集
する以外に、AP_Openイベントに様にマウスで移動→pauseで入力出来る様に
なると編集がとても楽になり生産性が高くなります。
(同様にLeftDownやLeftUpイベントも可能になるととてもうれしいです。)
何かの機会の次いでで良いですので、ご検討頂けると幸いです。
投稿者 kumakuma : 2010年09月07日 16:02
エムティ・ソフト様
はじめましてシングルライセンスを取得して、いろいろと利用範囲を検証させて頂いています。
(以下、操作が可能かどうかの質問になります)
datファイルから別のdatファイルを呼び出して継続再生することは可能でしょうか?
多くの操作パターンを記録するので、例えば同じ操作は共通のdatファイルを呼び出して、
効率的に記録を作成して再生したいと考えています。
投稿者 kumakuma : 2010年09月03日 13:55
>通りすがりの仮面ライダー様
■WaitImgChange,ユーザーフォームClose不具合
共に、10.30版の変更でレグレッション(退行)が在りました。詳細テストを継続しますが、とりあえず、上記2件の対処を10.31版としてリリースします。
ご指摘、ありがとうございました。
投稿者 エムティ・ソフト : 2010年07月10日 07:51
[ファイル]-[開く]でDATファイルを読み込んで、動作させています。
V10.20からV10.30にバージョンアップしたところ、WaitImgChange(画像変化の監視)で反応しなくなりました。
サンプルでも同様で、V10.20では問題ありませんね。
投稿者 通りすがりの仮面ライダー : 2010年07月09日 17:01
UserFormOpenでユーザーフォームを起動した際に右下に「閉じる」をクリックしても、WaitUserFormで実行のまま、止まってしまいます(ソース上は「停止」ボタンしかクリックできません)。
念のためsample59でも確認しましたが同様です。
「閉じる」ボタンで停止させる方法はありませんか。
%EventCtrlName%のCloseの判断が安定しない感じ・・・かな
投稿者 通りすがりの仮面ライダー : 2010年07月09日 16:12
>ken様
IE入力時の自動ポイントについて
マウス座標が指定されている場合は、その座標を優先するように変更します(Click指示以外)。ポインタが邪魔な場合は(0,0)などを入力しておくと良いでしょう。
ポインタは何処に置いても邪魔になる可能性があり、また、フィールド外にシフトさせるとポイント位置が違うと指摘されそうですし・・
投稿者 エムティ・ソフト : 2010年07月07日 07:29
便利に利用させて頂いております。
IEpointとかIE入力でid(name)指定をした場合カーソルは
指定のid場所にポイントされますが、
極端に左上隅に位置されるため、そこに表示された文字が
(画面上は表示されている)判定できない場合があります。
姉妹品?「ポイント位置の文字列取得」ソフトで改良された
ように、「目標位置をシフト」する機能を追加できませんでしょうか
ポイント位置から 座標 x10,y20 等シフトさせる
event . 計算式等の方法がありましたらお教え下さい。
投稿者 ken : 2010年07月04日 11:01
>通りすがりの仮面ライダー様
■ユーザーフォーム:ありがとうございます。
早速、多くの不具合があり、10.10版として修正しました。
■ChildCount:コンボボックスやリストボックスの項目はChildでは無いようです。
マイクロソフトのツール(inspect32.exe)で見ても、表示されないようです。項目数の取得は別の方法が必要と思われます。
なお、「ポイント位置の文字列取得」では値の表示が異なっていたので修正していたのでした。まだ、リリースはしていませんでしたが・・
投稿者 エムティ・ソフト : 2010年06月25日 07:38
>大野忠義様
・Wait遅延時間:条件が偽になってからWaitを抜けるまでの時間です。
・Waitの変数指定:10.10版にて対応します。
投稿者 エムティ・ソフト : 2010年06月25日 07:36
V10.0のユーザーフォーム対応は凄いですね。
早速使ってみます。
投稿者 通りすがりの仮面ライダー : 2010年06月24日 08:58
■質問
①waitの遅延時間は何を意味していますか?
②プログラム内の変数の時間だけwaitしたいのですが、方法ありますか?
投稿者 大野忠義 : 2010年06月23日 13:11
ComboBoxの右側の四角ボタンをクリックすると、ComboBoxに登録されているItemが表示されます。このItemの表示中、Item上にマウスカーソルを移動すると、GetStringでChildCount値で確認できませんか。
> ありがとうございます。
> GetStringでも、ListView,ListBox,ComboBoxなどでは、ChildCountは表示されていないと思います・・・
> (0と空白で表示の違いはありますが。)
> 引き続き、詳しく調査してみます。
投稿者 通りすがりの仮面ライダー様 : 2010年06月22日 15:52
>通りすがりの仮面ライダー様
ありがとうございます。
GetStringでも、ListView,ListBox,CombBoxなどでは、ChildCountは表示されていないと思います・・・
(0と空白で表示の違いはありますが。)
引き続き、詳しく調査してみます。
投稿者 エムティ・ソフト : 2010年06月21日 07:38
TreeViewでのGetAccChildCount関数の件、対応ありがとうございます。
ListView、ListBox,、ComboBoxのコントロールでGetAccChildCount関数を使用してみましたが、戻り値が0となっています。
提供中のGetString.exeを起動し確認していますが、結果が異なっているような感じです・・・(たぶん)。
投稿者 通りすがりの仮面ライダー : 2010年06月19日 17:45
>VIA様
ご指摘ありがとうございます。
編集フォームのループ監視間隔が短過ぎて、無駄にCPU使用率を上げていました。
現状でも実害はありませんが、使用率を0近くに下げるように次版にて対応します。
投稿者 エムティ・ソフト : 2010年06月17日 06:54
マウスレコーダー最新バージョン8.90を試用させていただいております
まだまだ手さぐりの状態ですが1つ質問おねがいします
行編集をする際、編集ウインドウを開いてる間、CPU使用率が100%になるのですが試用版の為でしょうか?当方所有のPC2台とも編集ウインドウを開いてる際100%になってしまいます
デスクトップPC(Pentium4 3GHz)ノートPC(Celeron1.7GHz)OS共にXPSP3で試用
ご回答よろしくお願いします
投稿者 VIA : 2010年06月17日 00:52
>大野忠義様
ライセンス規約を変えたことはありません。
マルチランセンス版は、5.60版(2009/09/12)で追加して以降、通常版と差別化を図っています。
使用人数やPC台数の把握は不可能ですので、実質的に、通常版とマルチライセンスは機能の相違(一般用と上級者用)となっています。
投稿者 エムティ・ソフト : 2010年06月14日 07:47
■質問:ライセンス規約がかわったのですか?
以前質問したマルチライセンスの回答と違うような気がするのですが・・・
(コメント消されてるので、うる覚えなのですが・・・)
①通常ライセンスと、マルチライセンスは同等だと回答あったような気がします
②複数のパソコンで使用の場合マルチライセンスが必要だと回答あったような気がします。
投稿者 大野忠義 : 2010年06月13日 11:56
>arai 様
Q1.通常ライセンスと、マルチライセンスの違いを教えてください。
A1.以下のように定義しています。
シングルライセンス:お一人様で御利用(開発)
マルチライセンス:10名様までご利用(開発)可
ただ、実質的には、マルチライセンス版はシングルライセンスの上位版の位置付けです。
マルチライセンス版用の限定コマンドが多数あり、今後も順次追加していく予定です。
Q2.1つの処理を作成し、複数のパソコンで実行する場合・・・・
A2.お一人様でプログラムを作成する場合はシングルライセンスで利用可とします。
また、Exeは再配布可としていますので、Exeで実行する場合には、実行するPCの台数に制限はありません。
投稿者 エムティ・ソフト : 2010年06月09日 07:24
エムティ・ソフト様
はじめまして。ライセンスについて質問があります。
1.通常ライセンスと、マルチライセンスの違いを教えてください。
2.ある一連の処理を自動実行させたいのですが、1つの処理を作成し、
複数のパソコンで実行する場合、実行するPCの台数分のライセンスが必要でしょうか?
(それぞれの画面サイズに合わせて調整したExeを作り、それぞれで実行させます)
よろしくお願いいたします。
投稿者 arai : 2010年06月08日 18:28
>大野忠義 様
■IENavigateの仕様
既にIEが起動していたら、そのIEのページを移動
IEが起動していなかったら新しくIEを起動してページ移動
もし、常に新しいIEでページを開きたい場合は、AP_OPENを使用して下さい。
URLを指定するだけでIEが新規に起動してページを開きます。
注:既存IEに新規タブを追加する機能はありません。
投稿者 エムティ・ソフト : 2010年06月06日 07:28
質問:IENavigateで
①新規のウィンドウで開く
②開いてあるウィンドウで開く
の設定はできますか?
投稿者 大野忠義 : 2010年06月06日 00:36
>大野忠義 様
ありがとうございます。
コンテキストメニュー・検索フォームに「ラベル検索ボタン」を追加します。
投稿者 エムティ・ソフト : 2010年06月05日 07:36
■要望:編集画面の行ラベル順次ジャンプ機能を検索画面にボタンを
要望度:低低 緊急度:低低
・初めて使う人でもすぐに機能があることがわかる
・片手で操作できる
★ここに置くことによりマニュアルに記載することさえなくなり、
マニュアルの簡素化につながるかも?
ps要望の出尽くし感がある・・・・快適に使用しています^^
投稿者 大野忠義 : 2010年06月04日 11:02
>大野忠義 様
ありがとうございます。以下に、実現済みの機能を記しておきます。
■ラベルジャンプ ←8.30版
・Ctrl+PgDown/PgUpでラベル順にジャンプ
■自作関数
・User-Function:ユーザー定義関数 ←7.00版
JavaScript/JScript/VBScriptでユーザー定義関数可
「サンプル集2」参照
・Call-Exe/Return-Exe:Exeコール ←7.30版
EXEファイル自体を関数として使用可
投稿者 エムティ・ソフト : 2010年06月03日 07:55
★保留中の要望について
以下の要望が保留中ですが、改めて要望又は要望撤回します
■要望:「コピーした行の挿入」にキー割り当てしてほしい
要望度:低 緊急度:低
→要望継続
alt+ins shift+insあたりに割り当てできないですか?
■要望:編集画面の行ラベル順次ジャンプ機能
要望度:中 緊急度:低
→要望継続
・検索機能の一部として検索画面にボタンを
・わりと簡易にできませんか?これがあれば一段と編集しやすいです。
■要望:音量調整機能を作ってほしい
要望度:低低 緊急度:低低
→要望撤回
簡単ならば実現してほしいが要望度自体が低いので
■要望:プログラム画面を格子状にしてそこで直接パラメーター変更もできるようにしてほしい
要望度:中高 緊急度:低
・これがあれば編集作業がすごく楽になりそう
・格子状の編集画面の中でもまた要望が出てくるかも?
・・ドラックにより範囲指定できるように等
→要望継続
なかなか作るのに時間・労力かかりますよね?
是非実現してもらいたいですが・・・半年後にでも実現できてたらいいですね
■ループ文に「最大繰り返し回数」をいれてほしい
要望度:低 緊急度:低
・jump命令の例のように、returnで抜けても繰り返し回数がクリアされないと使いずらい
・自分で変数使用で解決できる(若干行数が増えるが)
・マウスレコーダー自体のプログラムがたいへんそう?
→要望撤回
■自作の関数
・マウスレコーダーの関数強化により、自作の必要性がなくなった
→要望撤回(個人的には現状いらない、他のユーザーの要求度によるかも)
★いままで多くの要望にこたえていただいて、改めて感謝の意を示します。
かなり、快適な使い勝手になったとおもいます。
実際、要望とは限りないものでしょうし。それに答える姿勢に感服します。
★最近、ipadが発売されましたが、マニュアルが4行だけというのに驚きました。
それだけユーザーインターフェイスが簡易なのでしょうね?
そこも人気の高さの要因とも思います。
で、苦言ですが><
マウスレコーダーはプログラム作成という点からマニュアルは大きくなりがちですが、
マニュアル整備が商品価値向上の大きなとこかもしれません。
現状、みやすいマニュアルという状態ではないと思います。
・どこまで書くか?
・対象はどのレベル技術なのか?
・等々・・・・・
実にむずかしのがマニュアル作成です・・・私もかなり苦労しました
(プログラム作成以上に頭を使い工数がかかったような><)
まずはメニューから・・・表示範囲が狭いのがみずらい原因ですが(一覧性が低い)
広げるわけにもいかず工夫するしかないですよね。
・重複項目の削除
・大項目のみの表示(クリックしたとき中小項目が出るように・・・エクスプローラのような感じ)
このような工夫でなんとか一覧性を高めることができそうですが・・・・
中身については・・・・大事なとこですが時間もかかりそうですし、要望の多そうなとこからゆっくりと
投稿者 大野忠義 : 2010年06月02日 13:18
>通りすがりの仮面ライダー様
■キーボードフォーカス位置の取得
キーボードフォーカスを持つオブジェクト(ボタンや入力フィールドなど)がウィンドウを持つ場合は、その位置を下記のようにして取得できます。
1.GetWindowHandleFocus でキーボードフォーカスを持つウィンドウハンドルを取得
2.GetWindowRect でそのウィンドウ位置を取得
サンプルは キーボードフォーカスを持つウィンドウ位置取得 を参考にして下さい。
投稿者 エムティ・ソフト : 2010年05月30日 08:34
■数値をフォーマット 12→012
了解・・・・・できたらマニュアルに「エクセル/アクセスのヘルプを参照」と表記したらいいかも?
■素朴な疑問・・・・前面
「好みの問題」ではなく「デバック中の便利さ」の問題です
デバック中には、動作確認もしますので
また、常に前面のメリットを感じないです
大きな問題ではないので、要求としてあげなかったです。
■Err.logについて・・・せっかくのログですが現状では有効活用しずらいです
>>Err.logファイルが存在している場合は、エラーが起きたと考えて下さい。
毎回、フォルダの中を見るわけにはいかない
>>追記の場合、ファイルの存在有無で判定できないので、開始時に削除しています。
ファイルの中身で判断できます。
フォルダの中を見る手間とそう大差ないような?
>>また、デモなどへの用途を考えていますので、エラーを表示しっぱなしは出来るだけ避けるようにしています。
デモではそんな複雑なエラーの出るようなプログラムでは行わないのでは?(よくわかんないけど)
>>(表示時間を可変 4秒~無限 にする設定は検討します。至極容易)
現状、エラー表示中はマウスレコーダーの操作ができないみたいですが
とりあえず、設定できるようにしてもらえればありがたいです。
(むやみに設定項目を増やすよりmsgboxのほうがいいような気もしますが)
>>エラー発生頻度把握は別問題で、必要なら方法を考えますが、今のところ必要性は感じていません
私(ユーザー)が感じているのです。
しょぼいパソコンなので><
★現状、エラー発生自体気づきにくい仕様で、気づかない場合エラーがあったログさえなくなってしまう仕様です。
投稿者 大野忠義 : 2010年05月29日 09:40
キーボード使用時、TabやEnterキーでフォーカスを移動させています。
現在のフォーカス位置の取得は可能でしょうか。
投稿者 通りすがりの仮面ライダー : 2010年05月28日 17:46
■LEFT_DOWN→LeftClick変換
処理時間の問題は少し感じていました
実際はmvをあらかじめ削除しておいてからの処理でたいした問題ではないと思っていたので
そのまま投稿しちゃいました。
GetCsvData/SetCsvDataのロジックについては、マウスレコーダーは大量のデータ処理をすソフトではないので、優先度は非常に低いのではないでしょうか?
それより、「検討要帳面」の要望から実現していただければありがたいです。
投稿者 大野忠義 : 2010年05月28日 11:16
>通りすがりの仮面ライダー様
ChildCountに用途があるとは思いませんでした。
次版にて追加します。また、関数を精査して見て、不足があれば合わせて追加します。
それにしてもAccesibbleインタフェースをお使いとは、かなりの技量をお持ちとお見受けします。
今後もよろしくお願いします。
投稿者 エムティ・ソフト : 2010年05月28日 07:29
>大野忠義 様
■数値をフォーマット 12→012
Format(12,"000")とします。
書式文字の形式はエクセル/アクセス(というよりMSソフト全般)とほぼ同じです。
ただ、無数と言って良いほど多数の書式文字がありますので記述を省略しています。
そのうち、主なものを収集して掲載します。
(系統化された資料が無いので、多数の資料から収集する必要があるのです。
とりあえずはエクセル/アクセスのヘルプを参照して下さい。)
■素朴な疑問・・・・前面
好みの問題でしょう。
デバッグ中は前面にあったほうが便利、実際に実行する場合はタスクトレイに格納するので、前面表示は邪魔にならない、と考えています。
■Err.logについて
Err.logファイルが存在している場合は、エラーが起きたと考えて下さい。
追記の場合、ファイルの存在有無で判定できないので、開始時に削除しています。
また、デモなどへの用途を考えていますので、エラーを表示しっぱなしは出来るだけ避けるようにしています。(表示時間を可変 4秒~無限 にする設定は検討します。至極容易)
エラー発生頻度把握は別問題で、必要なら方法を考えますが、今のところ必要性は感じていません。
■LEFT_DOWN→LeftClick変換
ありがとうございます。
本コードを試用中、別の問題を発見してしまいました。
500行ほどでは、ほぼ、許容時間で処理が終了しますが、2000行ほどになるとフリーズと言って良いほど時間が掛かるようです。しかも、4倍では無く、級数か指数乗倍の所要時間。
これは、GetCsvData/SetCsvDataのロジックに問題があることを強く示しています。
精査/検討して見ます。
投稿者 エムティ・ソフト : 2010年05月28日 07:28
いつもお世話になっています。
要望ですが
TreeViewのChildCountが取得できれば、助かります。
投稿者 通りすがりの仮面ライダー : 2010年05月27日 17:01
■こんなの作っちゃいました
Dim 処理行 1
Dim レコード数
Dim コマンド名
Dim 座標1X
Dim 座標1Y
Dim 座標2X
Dim 座標2Y
GetCsvInfo 無題.dat
SetVariable 0 %レコード数% %CsvRecordCnt%
Do-While %レコード数% >= %処理行%
GetCsvData %コマンド名% %処理行% 2
If %コマンド名% = [%DQ%]LEFT_DOWN[%DQ%]
GetCsvData %座標1X% %処理行% 6
GetCsvData %座標1Y% %処理行% 7
GetCsvData %座標2X% %処理行% + 1 6
GetCsvData %座標2Y% %処理行% + 1 7
If クリック判定 (%座標1X% = [%NL%]%座標2X% ) && (%座標1Y% = [%NL%]%座標2Y% )
SetCsvData 無題.dat LeftClick %処理行% 2
SetCsvData 無題.dat %処理行% 4
SetCsvData 無題.dat MV %処理行% +1 2
End-If
End-If
AddVariable %処理行% 1
WLoop
★記録したデータの
・クリック部分(LEFT_DOWN)をLeftClickに置き換える
・クリック部分(LEFT_UP)をMVに置き換える
・置き換えたLeftClickのTIMEを空白に
・ドラック部分は放置
■記録をもとにプログラム作成するのにかなり便利です
簡単な動作確認はしましたが自己責任で><
投稿者 大野忠義 : 2010年05月27日 13:39
■Err.logについて
エラーで落ちたのか、正常終了かの判断がErr.logの存在でしか判断できないのはきついです。
(毎回、フォルダの中を見るわけにはいかない)
・画面にもなにかしらのメッセージがほしいです
・エラーの頻度も知りたいので、Err.logは追記方式がいいです。
(たいしたファイル容量にもならないでしょうし)
投稿者 Anonymous : 2010年05月27日 12:08
■素朴な疑問・・・・
マウスレコーダーが最前面ある理由がわかりません
影武者のように活躍するソフトのような感じがするのに・・・・
デバックしながら動かすときは最前面にあることで位置移動しながらになるので煩雑さを感じます。
一方、最前面にあるメリットは感じられないのですが・・・・
投稿者 大野忠義 : 2010年05月27日 10:02
■数値をフォーマットできませんか?
たとえば、12 を 012のように
format関数の説明には日時の変換しまなかったのですが・・・
投稿者 大野忠義 : 2010年05月27日 09:54
>大野忠義 様
作成場所:マウスレコーダー本体(mrecorder.exe)と同じフォルダ
なお、「開始」時に「Err.log」は削除されますので、エラー発生直後に参照して下さい。
投稿者 エムティ・ソフト : 2010年05月27日 07:07
■Err.logがみつかりません
「スタックオーバーフロー」のエラーが出たのですが err.logがみつかりません
マウスレコーダーは自分で作ったフォルダにいれています。
投稿者 大野忠義 : 2010年05月26日 10:53
>大野忠義 様
エラーメッセージは「Err.log」(マウスレコーダーと同じフォルダ内)に時系列で取得されますので、再確認は、そちらのファイルを参照してください。
投稿者 エムティ・ソフト : 2010年05月26日 07:12
要望:異常終了時のメッセージをmsgboxで出してほしい
要望度:中の高 緊急度:中
現状、メッセージがすぐ消えてしまうので、放置状態だとなにが原因で終了したかわからない。
投稿者 大野忠義 : 2010年05月25日 11:53
>大野忠義 様
■WM_SETTEXT
使用する言語は何でも構いません。C++でもVBでも。
SendMessageはウィンドウズの標準関数(API)です。
■サンプル作ってもらえれば理解しやすいかもですが・・・・
サンプルを提示したつもりでしたが??
なお、VBAもVBもほとんど同じなので、VBAができるなら、
Webページのサンプルコードをエクセル/アクセスにコピーして使用できます。
ほんのちょっと手直しは必要ですが・・
投稿者 エムティ・ソフト : 2010年05月22日 07:27
■こういう仕様だったのね><
Dim a 0
Call dd
Call dd
MSG_BOX %a%
QUIT
dd
AddVariable %a% 1
If %a% = 5
Return
End-If
Loop 10 dd
Return
%a%の結果は15になると思っていました。
条件つきでループを抜けても回数はクリアされないんですね。
投稿者 Anonymous : 2010年05月22日 04:33
■WM_SETTEXT
vbで外部呼出しってことですか?
vbやったことないです><・・・・vba(アクセス)ならあるけど
ちと難解ですがもうちょっと勉強してみます
サンプル作ってもらえれば理解しやすいかもですが・・・・
投稿者 大野忠義 : 2010年05月22日 04:20
>That's21様
■Unicode対応
検討します。多分、それほど難しくは無いと思います。
■コマンド英文字化
これは難儀です。メインコマンドはともかく、パラメータにも数多く日本語を使用していますので、全てに英文字も割り当てるのは困難です。
補足:
英語版 Windows7 Enterprize を入手して動作を試してみましたが、実行どころか、起動すら出来ませんでした。
多言語版を作成するのは、なかなか大変なようです。
引き続き、トライして見ます。
投稿者 エムティ・ソフト : 2010年05月21日 07:50
>大野忠義 様
■WM_SETTEXT:下記の例を参照して下さい
他アプリへの文字入力2
投稿者 エムティ・ソフト : 2010年05月21日 07:49
■WM_SETTEXT
理解できないので、簡単なサンプルを作っていただけないでしょうか?
投稿者 大野忠義 : 2010年05月21日 05:59
"CSV読込" コマンドについての要望
先月よりマルチライセンスで利用させて頂いてます。
日本語以外の OS (US, KOR など) 上でマウスレコーダーを実行すると、"CSV読込" コマンドで失敗してしまいます。
恐らくコマンド名の "読込" が OS 上で読めないためだと思われます。
dat ファイル、csv ファイルを Unicode 対応して頂くことは可能ですか?
また、Unicode 対応以外の回避策として、コマンド名に日本語を使わないように変更、または全く同機能で英語名のコマンドを追加するなどの対応をして頂けると嬉しいです。
ご検討のほどよろしくお願いします。
投稿者 That's21 : 2010年05月20日 12:53
投稿者 エムティ・ソフト : 2010年05月20日 07:30
■メニューの下記の表示が違う表示になっています
CSV関連
GetCsvInfo
GetCsvData
投稿者 大野忠義 : 2010年05月19日 15:43
■WM_SETTEXT
時間できたので、もう一度勉強しようと思ったが・・・・コメントの返答が消されてる><
いま、一番困ってるとこなので・・・・どこを参考にしたらいいですか?
投稿者 大野忠義 : 2010年05月19日 14:46
>谷口様
■INPUT_MSG MSG_BOX でのフォント指定
検討項目に入れて置きます。
(変更/処理が面倒な割にニーズが少ないような気もします。)
■INPUT_BOX表示ずれ
フォントのサイズは変更していませんが、フォントの種類をプロポーショナルフォント(MS Pゴシック)から等幅フォント(MS ゴシック)にしました。これで幅が広がってずれたのでしょう。この件は責任を感じますので、MS Pゴシック⇔MS ゴシックの切替スイッチを設置します。
投稿者 エムティ・ソフト : 2010年05月19日 07:06
>大野忠義 様
■制限時間
「制限時間」は強制終了するまでの時間です。
既定値(空白)は無限。
■タスクトレイ収納
ありがとうございます。再現に努力してみます。
投稿者 エムティ・ソフト : 2010年05月19日 07:05
INPUT_MSG MSG_BOX での、表示文字の大きさを、変更したいのですが
何か方法はあるのでしょうか。どこかのVerUp以降、文字大きさがかわり、表示ずれし
表示が大きくなり、少し小さくしたいのですが。
SHOW_MSG は、文字の大きさの設定ができるので、同様に、表示文字の大きさを
設定変更できないかとぜいたく、考えております。
投稿者 谷口 : 2010年05月18日 15:23
障害報告 8.10
タスクトレーの収納のチェックをはずしても収納されてしまう。
再起動しても同じ
投稿者 大野忠義 : 2010年05月18日 11:51
質問 ①記録→初期状態を設定 の制限時間はプログラムを強制終了する時間ですか?
②既定値設定してありますか?してあるとしたら何分ですか?
投稿者 大野忠義 : 2010年05月18日 10:17
>通りすがりの仮面ライダー様
ウィンドウサイズの取得方法
GetWindowRect(%hWnd%,L,T,W,H)
のように関数を使用します。hWnd,L,T,W,Hは変数名。
変数L,T,W,Hにそれぞれ、左位置、上位置、幅、高さのピクセル値が格納。
詳しくは、マルチライセンス用各種関数を参考にして下さい。
なお、アクティブウィンドウ、およびキーボードフォーカスを持つウィンドウハンドル取得関数
GetWindowHandleActive,GetWindowHandleFocus を 8.50(2010/05/13)版で追加しました。
使用方法の具体例は、サンプル集2を参考にして下さい。
投稿者 エムティ・ソフト : 2010年05月13日 07:03
>大野忠義 様
「プログラム内で、マウスレコーダー自身の位置移動」は出来ません。
替わりに、「記録→初期状態設定」にて、開始時の位置やサイズ、ウィンドウ状態の指定は出来ます。
投稿者 エムティ・ソフト : 2010年05月13日 07:00
購入してから日が浅く、まだまだ学ぶべきことが多いのですが...
アクティブウィンドウの座標(Left,Top,Width,Height)の取得するには、どのようにすればいいでしょうか
投稿者 通りすがりの仮面ライダー : 2010年05月12日 12:51
■質問
プログラム内で、マウスレコーダー自身の位置移動はできませんか?
投稿者 大野忠義 : 2010年05月12日 11:09
>ken様
■Windows7での動作について
→ 「3.たぶん動作すると思うが検証してない。」です。(Vistaでの動作は確認)
Windows7はOS構造がVistaとほぼ同じなで、アプリの動作には問題は無いかと思われます。
なお、他のユーザーの方のWindows7での検証結果(64ビットマシン)が下記に報告されています。
VECTOR:Windows 7動作報告>マウスレコーダー
投稿者 エムティ・ソフト : 2010年05月12日 07:06
Windows(R) 7対応について
便利に使わさせていただいております。
XPを使用してますが、買い替えを考えております。
Windows(R) 7での動作について、たぶんのレベルで結構ですので教えてください
1.まつたく動作しない
2.一部支障がある
3.たぶん動作すると思うが検証してない。
投稿者 ken : 2010年05月11日 20:04
>大野忠義様
■Else障害
再現に鋭意努力していますが、まだ、成功していません。
しばらくお待ち下さい。再現テストを継続します。
投稿者 エムティ・ソフト : 2010年05月10日 08:24
■障害 8.10
以前報告したELSEの障害が出ます。
CALL された場合、ネストされた場合等、貴社で再テストしていただけないでしょうか?
こちらで、たまたま出た現象だけでは網羅されないでしょうし
PS・なにかコマンドすべてを網羅したテストプログラムを作成して大幅改造したときとかは、1度それで簡易テストをおこなえばどうでしょうか?1度テストプログラムを作成したら以後のテストにも使えるでしょうし。
投稿者 大野忠義 : 2010年05月09日 10:23
■パクるならこっちを^^
以前のは終了機能がありませんでした。
終了機能を考えました。
msgboxで何を選択したかの判断のしかたがわかりませんでした。
ちょい改造してサンプルにでもしてください。
Do-While 1=1
SHOW_MSG 0 15 45 2835 3705 0[%CM%]13155435[%CM%]1[%CM%]0[%CM%]-2147483640[%CM%]12[%CM%]MS Pゴシック[%CM%]False[%CM%]False[%CM%]False[%CM%]False[%CM%] GetPixelPoint()[%NL%]赤要素=GetRValue(GetPixelPoint())[%NL%]青要素=GetBValue(GetPixelPoint())[%NL%]緑要素=GetGValue(GetPixelPoint())[%NL%][%NL%]終了はマウスをここ[%NL%]000
If GetPixelPoint() = 13155435
MSG_BOX 4 色検索終了しますか?
If <<<?msgboxで「はい」を選んだら>>
QUIT
End-If
End-If
WLoop
投稿者 大野忠義 : 2010年05月09日 00:12
>大野忠義様
■障害
なるほど!助かりました。
■IE表示完了待ち
IENavigete URL を使用してWebページを開くと自動的に表示完了を待ちます。
クリックなどでページ移動する場合は、IEWaitで表示完了を待つことが出来ます。
どうしても色で判定する場合は、お奨めできませんが、Do-Whileを使用して下さい。
001 Do-While getpixel(978,154) <> 16698454
002 WLoop
Waitは条件が真の場合の待ちですが、単純待ち/画面上の文字判定用なので、この場合は使用できません。
■いっきに全部変換
下記をダウンロードして参考にして下さい。
Orgシートにプログラムを貼り付けるとEditシートに変換結果が表示されます。
-EXCELでのLEFT_DOWN/LEFT_UP→LeftClick変換例(ファイル容量大の為掲載継続中止)- 特定コマンドのtime変更 も、数式や並べ替えなどを利用して簡単にできます。
Accessの更新クエリなどを利用するより簡単だと思いますよ。
投稿者 エムティ・ソフト : 2010年05月08日 08:52
ネットの画面を開いて、操作をしようと思うのですが、
開ききっているかを画面の色判定で行おうと思っています。
waitの機能がいまいち理解できていません。
・条件に合致したらwait状態になるのか?不一致の時wait?
・条件を満たしているかループしてwaitをかけているのか?
Wait 10000 GetPixel(772[%CM%]425) = 16698454
投稿者 大野忠義 : 2010年05月08日 01:28
■いっきに全部変換
csvファイル機能はまだ使ってないのですが
自作ででできそうですか?
できそうならば、自作します。
accessではできるのはわかっていますが、マウスレコーダーで作ってみてもいいかなって気でいます。
投稿者 大野忠義 : 2010年05月08日 01:20
障害報告:再再生したらマウスレコーダーが落ちる
以前報告した件ですが、現象がわかりました。
1回目の再生
escキー等での停止
再再生(再生を押しても再生のボタンはまだ押せる状態、再再生は通常)
・・・ここで、再生していることに気づかない(waitの時間等は止まっるかと思ってしまう)時に
再度ボタンを押した時にマウスレコーダーが落ちる
再再生が動いてる時、再生ボタンを押せなくしてもらえれば落ちることはなくなると思います。
投稿者 大野忠義 : 2010年05月07日 14:22
了解しました。ありがとうございました。
投稿者 うみおよ : 2010年05月07日 14:08
>うみおよ様
改行などの特殊なキーは、{CrLf}のようにカッコ付きで記述して下さい。
例: あいう改行 → あいう{CrLf}
右記リンク参照 特殊キーの入力
また、キーコードを文字に変換する関数Chrを用いて
あいうChr(13)Chr(10)とも記述できます。 Chr(13)=Cr Chr(10)=Lf
投稿者 エムティ・ソフト : 2010年05月07日 10:33
すいません。
本プログラムで動作しなかったので、この部分だけ抜き出してみたんですが、試した文字列が
?>
でして、?がきっと予約語か正規表現かわからないですが、ひっかかるんですよね、きっと。
実際に比較するのは普通の2バイトも含む文字列で、そちらを何種類か試したんですが、すべて一致が出ました。
ifの条件文で、改行を含む文字列の比較ができないと思っての投稿でした。
きちんと確認せずに大変失礼しました。
参考までに教えていただきたいのですが、
改行コードを含む「789CrLf」
と書かれていますが、例えば変数に「abc(改行)」といれたい場合は「abc789CrLf」と入れればいいんでしょうか。
よろしくお願い致します。
投稿者 うみおよ : 2010年05月07日 09:15
>大野忠義様
■変数一覧
選択範囲が自由に出来ること、コントロールの使い回し(用途)幅が広いこと、がテキストボックスを採用している理由です。
■いっきに全部変換
→現状却下。RightClick,MiddleClick、各種キー、その他についても要望が出るのが容易に想像出来ます。将来的には面白いかもしれません(暇死しそうな時に考えます)
time や LeftClickだけなら、Excelの数式だけでも簡単に編集できそうですね。LEFT_DOWNの次がLEFT_UPならLEFT_DOWNの行をLeftClick仕様に書き換えてLEFT_UP行を空白にする-という数式。
■「コピーした行の挿入」にキー割り当て
→検討要帳面に付けて置きます。
投稿者 エムティ・ソフト : 2010年05月07日 07:13
要望:「コピーした行の挿入」にキー割り当てしてほしい
要望度:低 緊急度:低
超頻繁にこの機能を使用しています。
キー割り当てしてもらえれば編集が楽になりそうです。
投稿者 大野忠義 : 2010年05月07日 02:57
○記録をもとにプログラムを作成するとき
・time を全行削除(あとで適正な時間をいれる)
・KEY_DOWN / KEY_DOWNの2行 を LeftClickの1行に書き換え
の編集をしています。
いっきに全部変換できたら、便利だと思っています
投稿者 大野忠義 : 2010年05月07日 02:53
変数一覧・関数一覧・・・すごく便利です
現状で98%満足です
あえて改造するならば・・・・・・・
・多くの場合は、一覧からコピーしてプログラムにペーストして使用しています
一覧をリストボックスにしてもらって、クリックするとコピーできたらいいかなと思います。
ps:現状で満足しているので、要望としてはあげません
投稿者 大野忠義 : 2010年05月06日 18:36
>うみおよ様
■不一致の件
戴いたコードをメモ帳とワードパッドで試したのですが、共に、「一致」と表示されます。試したデータは
123
456
789
最後は改行のみの空行
もしかしたら比較データによって動作が異なるのかもしれません。
差し支えなかったら不一致となるデータも教えて戴くと助かります。
また、エディタによっても異なるかもしれませんので、メモ帳をエディタとして上記データを試してみて頂けないでしょうか?
なお、上記の場合、最終文字は改行なので、%CLIPBORD% および %mozi% の中身は最後に改行コードを含む「789CrLf」となることに御注意下さい。
投稿者 エムティ・ソフト : 2010年05月06日 15:12
しつこくすいません。
以下のコードをご確認いただけますでしょうか。
Dim mozi
テキストエディタをクリック LeftClick 309 883 565 1 -2 145 1303 985
Ctrl+End 11 789 883 565
↑ 26 78 883 565
Shift+End 10 465 883 565
Copy 11 179 883 565
SetVariable 0 %mozi% %CLIPBOARD%
If %mozi% == %CLIPBOARD%
AP_Open 1000 0 300 350 \NOTEPAD.EXE
文章入力 一致
Else
AP_Open 1000 0 300 350 \NOTEPAD.EXE
文章入力 不一致
End-If
テキストの一番下の行をコピーして変数にいれ、変数とクリップボードの中身をifで比較すると不一致になります。
どこか記述が間違っているでしょうか。
よろしくお願いいたします。
投稿者 うみおよ : 2010年05月06日 09:59
>大野忠義様
■「コピーした行の挿入」等のメニュー操作をできるようにしてほしい。
→ 了解
■編集画面の行ラベル順次ジャンプ機能
→ ありがとうございます。検討要帳面に付けて置きます。
■比較演算子は下記のようにしてください。
%変数% >= 1
%変数% <= 1
演算子を参考にして下さい(追記しました)
投稿者 エムティ・ソフト : 2010年05月06日 08:08
■質問
いまさらですが・・・・
比較演算子の以上、以下の表現を教えてください
%変数% => 1
%変数% <= 1
の表現でいいですか?
投稿者 大野忠義 : 2010年05月05日 15:08
要望:編集画面の行ラベル順次ジャンプ機能
要望度:中 緊急度:低
通常プログラムを作る場合、ラベル(サブルーチン)毎に機能ブロック化して作成しています。
ボタンを押下することにより次のラベル位置まで移動したら便利です。
投稿者 大野忠義 : 2010年05月05日 13:23
要望:検索中に「コピーした行の挿入」等のメニュー操作をできるようにしてほしい。
要望度:高 緊急度:高
左上の検索画面を移動してもらうことにより、すでに「検索は常に隠さないようにしてほしい」
の要望は満たされています。ごくまれに隠れたとしても「検索フォームを横にずらすだけで済むこと」なので問題ないです。(以前は毎回だったので、煩雑さを感じていました)
前面にやることにより、メモリーも多少多く食うことでしょうし、すでに前面にする意味がないばかりか、デメリットだけが残ります。
ps・新コマンド機能等を提供していただいたので、プログラムの適正化をすすめていってますので、検索機能を使いながら編集機能を使えたら能率が非常にあがりる点、以前の機能の戻すだけという点から 緊急度:高 にしました。よろしくおねがいします。
投稿者 大野忠義 : 2010年05月05日 10:27
すいません。ご回答ありがとうございました。
無事解決いたしました。
またよろしくお願い致します。
投稿者 うみおよ : 2010年05月04日 16:09
>うみおよ様
■[ ]内の文字取り出し
[ ]は特殊文字ですので、半角の"¥"記号でエスケープする必要があります。
具体的には ¥[(.+?)¥] の形式 ?は最短マッチ
具体例は、下記のリンクを参照してみてください。
正規表現FAQ
■( )付加
SetVariable 変数 (%MatchData%) とすれば括弧付きでセットされます。
が、ここで問題点がひとつ浮上。()自体が当ツールでも特殊記号なのです。
現状、( )内が数値の場合は( )内を演算してしまい、(1234)→1234 となってしまいます。
SetVariable 変数 郵便番号:(%MatchData%) のように数値以外の文字列が含まれている場合や
SetVariable 変数 (%MatchData%) のように全角の( )だと演算しないのですが・・
正式の対応策は検討します。とりあえずは上記で。
投稿者 エムティ・ソフト : 2010年05月04日 08:11
先日はいろいろありがとうございました。
拡張していたのですが、また不明点がありまして質問させていただきます。
正規表現で文字列を抽出して変数に代入することは可能でしょうか。
具体的には
[123]ここの文字を変数に(abcdef)
という形で、]と(に囲まれた部分を変数に入れたいと考えています。
よろしくお願い致します。
投稿者 うみおよ : 2010年05月04日 01:31
>大野忠義様
■If~ELse~End-If もう少し複雑な式?
If~ELse~End-Ifのネスト(入れ子構造)の場合に発生しませんか?
よくよく調べてみると、その場合に問題がありました。8.10版で修正
そうで無い場合は、別件。再調査要
■LeftClick:元に戻しましょう。
既定値を元の10msに戻し、LeftClickの連続がダブルクリックとなり不都合なユーザー様には、大きな値を入力して頂くようにしましょう。
不都合なダブルクリックが生じた場合、ユーザー様は、原因と対処方法を、すぐに気付かれるように思われます。
(その方が良さそうです。)
投稿者 エムティ・ソフト : 2010年05月03日 07:20
★障害報告 ver 7.90
IF文で真の場合でもELSEの処理を実行してしまう場合がある
IF %A% = 1
処理A
ELSE
処理B
ENDIF
上記の場合
%A%=1・・・・・処理A 処理Bを実行
%A%=0・・・・・処理Bを実行
プログラムの数箇所で同じような現象がおこっています。
RETURN等、思い当たるところを見てみましたがわかりませんでした。
尚、以下のように書き換えてみたら、正常に動きました。
IF %A% = 1
処理A
ENDIF
IF %A% = 0
処理B
ENDIF
ELSEになにか原因がある可能性はないでしょうか?
投稿者 大野忠義 : 2010年05月02日 13:46
■WM_SETTEXT
当方のスキル不足で理解できませんでした><
簡単なサンプルを作ってもらえればありがたいのですが・・・
投稿者 大野忠義 : 2010年05月01日 10:23
WM_SETTEXT
のやりかた、教えてください。
投稿者 大野忠義 : 2010年04月30日 06:32
>大野忠義様
■他アプリへの文字入力について
クリップボードデータの「貼り付け」は、あまり信頼性のある方法ではありません。
何が原因でどのようにしたら防げるかは判りません。詳しいことは、Microsoft社の方へお尋ね下さい。
また、当然の事ながら、どこかのアプリがコピーからペーストまでの間にクリップボードを使用したら、内容は全くアテには出来ません。他アプリ動作中のクリップボード使用は控えた方がよろしいですね。
●マウスレコーダーでは、他アプリへ入力する必要がある場合複数のインタフェースを採用しています。
コマンドと内部実現方法 ・・・ 信頼性 ◎:高 ○:中 △:低
Ctrl+V、Paste ・・これは通常の貼り付け △
文章入力
・1文字単位
半角英数 ◎ WM_IME_CHAR
全角混在 △ 貼り付け
・一括入力
半角英数 ◎ キーストロークエミュレート
全角混在 ◎ WM_SETTEXT
・継続一括 ○ 貼り付け
よって、「文章入力」の「一括入力」をお奨めします。
投稿者 エムティ・ソフト : 2010年04月29日 06:46
★障害報告:ペーストに失敗します
数百回に1回ですが、ペーストしても何もでてきません。
コピーのほうは、プログラムで変数をいれており、
ペーストはアプリにおこなっています。
アプリの貼り付け位置を取得できていない可能性があるのかと思い、
アプリの貼り付け位置は2度にわたって、取得しなおしても失敗の頻度はかわら
りません。
何か考えられる問題があるなら教えてください。
投稿者 大野忠義 : 2010年04月28日 09:58
><またやっちまった><
2重立ち上げ・・・・・また電源ボタン長押しかぁ・・・・・
せめて、5秒でいいからマウス制御返してくれーーー
デバック中は3つくらいマウスレコーダー立ち上げています
サブルーチンごとに、別プログラムでテストして作り上げているからです。
こんなになってしまった時の対処策、なにかうかびませんか?
しかたないから、自己責任で電源長押し・・・・・クゥ・・
投稿者 大野忠義 : 2010年04月26日 14:20
要望:音量調整機能を作ってほしい
要望度:低低 緊急度:低低
playsound のときだけ音を出したいのですが、使ってるアプリの音を切ることができません。
また音源によって音の大きさが違うので音量調整ができたらなぁ・・・・
投稿者 大野忠義 : 2010年04月26日 14:03
>うみおよ様
紛らわしい書き方をしました。
サンプルコードでは、「検索文字列」という変数を定義して、その内容を比較しているので (.*%検索文字列%.*) となっています。%xx% は変数内容参照の意味。
直接に"横浜"のような文字を検索する場合は、(.*横浜.*) のように記述します。
投稿者 エムティ・ソフト : 2010年04月26日 06:59
要望:プログラム画面を格子状にしてそこで直接パラメーター変更もできるようにしてほしい
要望度:中高 緊急度:低
・「格子状の画面」と「現行の画面」は切り替えで表示
・文字列パラメーターは文言編集ができるように
・文字列パラメーターは見切れてもかまわない(下手に横幅伸ばすよりいいかも)
(エクセルのように横幅変更できればなお良い)
要望理由:
数字のパラメーターは複数列に及んで編集することが多いので、現行では操作が煩雑
ps:ここまでしたら、エクセルや他のエディターに頼らないで、胸をはってマウスレコーダーのエディターを使用してくださいと言えるでしょう^^
投稿者 大野忠義 : 2010年04月26日 05:54
やりました!
うまくいきました~
結果的には
CheckData %CLIPBOARD% (.*%検索文字列%.*)ではなく
CheckData %CLIPBOARD% (.*検索文字列.*)で抜けました。
%の違いがよくわかりませんが、とりあえずここから拡張していこうと思います。
お忙しいところこまごまとご対応いただきまして感謝感激です。
また、なんか毎日大変みたいですが(^^;
頑張ってください~きっと将来いいことがあります!
投稿者 うみおよ : 2010年04月25日 13:48
■マウスレコーダーの2重立ち上げについて
同時に2つ動かしてしまうと(片方は一時停止中)、キー中断できなくなってしまう場合があります
多分、終了キーの制御が一時停止中のほうにいっちゃってるのでしょうね
技術的にどうしようもありませんよね?
(2重立ち上げは自己責任での回答が返ってきそうな気がします^^)
マウスは動き回ってるので、もうどうしようもない状態におちいります><
しかたなく、電源長押しで強制パソコン終了><
わかっちゃいるけど、数度やらかしてしまいました^^
(なぜかうちのパソコンは長押し終了したらネット接続ができなくなる・・・
なぜか、なんにもしないのに半日くらいしたら復旧してしまう・・・謎)
ps:誰かここ数ヶ月、投稿しまくってる人がいるのでここもいっぱいになってきましたね。
そろそろ最近のログはのこして過去ログとして別頁にしたらかと・・・・
投稿者 大野忠義 : 2010年04月25日 09:33
>うみおよ様
CheckDataの次に%MatchData%をJump内で参照した場合に、不備がありました。
(Jump処理先頭で%MatchData%を初期化していたため、不一致)
再挑戦。下記をお試し下さい。→ 7.51版にて
正規表現を利用した監視
投稿者 エムティ・ソフト : 2010年04月25日 07:06
■プログラム終了後のクリップボードの内容を選択
プログラムにはいる前のクリップボードの内容は、
プログラム内でも使用できるようにしてください。、
変数に格納しておいて、またプログラム内で復元して終了できるからいいのではないかと思います。
プログラム内で変更しない場合は、そのままクリップボードの内容が残るってことですね。
投稿者 Anonymous : 2010年04月24日 01:31
ご丁寧にサンプルソースと、また新しいキーマクロ対応版までありがとうございます。
対応の早さにびっくりです。
ところで頂いたサンプルで試してみても動作せず、いろいろ試してみて気づいたのですが、Waitの説明のところで
クリップボードの内容に「大阪」の文字が含まれている時
とあったので勘違いしてしまったのですが、「大阪 %Clipboard%」というのは、「文字が含まれていればいい」というわけではなくて「完全一致じゃなきゃダメ」なんですよね^^;
それと、もう一点、今回の場合、Waitである必要がないのですが、(逆に時間をおかずにループチェックを速くしたい)Jumpの中に条件式を設定できるようですが、こちらを使用してもいいんですよね?
JumpにもTimeを設定できるし、今回はWaitではなくJumpやIfでいいのかなと思いました。
それで、以下のように変えたのですがやはりループを抜けてくれません(汗
CBWait
EmEditor LEFT_DOWN 16 393 912 1 -4 801 1256 1016
LEFT_UP 12 393 912
Ctrl+End
↑
Shift+End
Copy
CheckData %CLIPBOARD% (.*調査文字列.*)
Jump * %MatchData% HIT
Jump CBWait
HIT LEFT_DOWN 63 760 62 1 0 0 1030 795
~
再度お手数ですが、ご指摘いただけると幸いです。
よろしくお願い致します。
投稿者 うみおよ : 2010年04月23日 10:43
>うみおよ様
プログラムに問題は無さそうです。
(詳しいことは実際のアプリを使用してみないことには判定できませんが・・)
そこで、頂いたプログラムをメモ帳最終行を監視するように改造したものを下に記します。
下記をダウンロード/保存後、マウスレコーダーで読み込んで試して見て下さい。
最終2行は、新版(7.50)で追加したキーマクロを利用しています。
メモ帳最終行監視
ほとんどそのまま 頂いたプログラムとほぼ同じで、対象と監視文字を変更
追加したキーマクロを使用(7.50版以降)
キーマクロ使用(Wait) Waitコマンドを使用
キーマクロ使用(InStr関数) 文字列関数(InStr)を使用
投稿者 エムティ・ソフト : 2010年04月23日 07:05
>大野忠義様
ご要望の件について
以下のように変更します。
■プログラム終了後のクリップボードの内容を選択
→選択は複雑になるので、コマンドでの変更時は復元しないように変更
(SetClipboard/AssClipboard/MulClipboard発行時)
■検索結果の表示位置を真ん中
→リスト中央に選択行(検索結果)を表示
■ウィンドウの位置指定
→AP_SetPosを追加。位置/サイズを指定
投稿者 エムティ・ソフト : 2010年04月23日 07:04
質問:
ウィンドウの位置指定に下記を使用していますが コマンド抜き、で設定できませんか?
LEFT_DOWN 234 1035 295 1 147 280 1228 956 IEFrame http://XXXXXXXXMicrosoft Internet Explorer
コマンドの悪影響を考慮しないで、ウィンドウの定位置移動を行いたいのです。
投稿者 大野忠義 : 2010年04月22日 17:20
要望:プログラム終了後のクリップボードの内容を選択できるようにする
要望度:中 緊急度:低
①プログラム前の内容のままの内容をクリップボードに残す
②プログラムで変更した内容でクリップボードを更新する
なにかしらの方法(設定、別コマンド、コマンドパラメーター等)でクリップボードの内容を
保持or更新の選択をプログラム内からできるようにしてほしい
過去のバージョンでは、更新されていましたが誰か(私でしったっけ?^^)の提案で現仕様になった経緯があります。
両方ともにメリットがあり、使い分けたい場合が私もあります。
私的には現仕様のほうが使いやすいですが、できたら選択できたほうが使い勝手がよいと思います。
投稿者 大野忠義 : 2010年04月22日 11:45
ご回答ありがとうございました。
途中でエディタに書き出ししてみたところ、ご指摘のとおりきちんとコピーされていました。
そうするとやはりjumpの部分かと思うのですが、大変申し訳ないのですが見ていただけますでしょうか。
概要をお話しますと、ログがどんどん溜まるので、最新の行にある文字列が含まれているときだけ、別な操作をさせたいのです。なのでずっとループしてクリップボードの中身をコピーして監視していますが、その文字列が出てきてもスルーしてしまいます。
CBbefore Wait 2000 検索する文字 %Clipboard% dsp
Jump * %Wait% HIT
EmEditor LEFT_DOWN 1607 393 912 1 -4 801 1256 1016 EmEditorMainFrame3 data.txt - EmEditor
LEFT_UP 125 393 912
KEY_DOWN 11 1 407 898 Ctrl
KEY_DOWN 23 1 407 898 End
KEY_UP 23 1 407 898 End
KEY_UP 11 1 407 898 Ctrl
KEY_DOWN 26 1 407 898 ↑
KEY_UP 26 1 407 898 ↑
KEY_DOWN 24 1 407 898 Home
KEY_UP 24 1 407 898 Home
KEY_DOWN 10 1 407 898 Shift
KEY_DOWN 11 1 407 898 Ctrl
KEY_DOWN 23 1 407 898 End
KEY_UP 23 1 407 898 End
KEY_UP 10 1 407 898 Shift
KEY_UP 11 1 407 898 Ctrl
KEY_DOWN 11 1 785 923 Ctrl
KEY_DOWN 43 1 785 923 C
KEY_UP 43 1 785 923 C
KEY_UP 11 1 785 923 Ctrl
Jump Jump CBbefore
HIT LEFT_DOWN 63 760 62 1 0 0
大変お手数ですがよろしくお願い致します。
投稿者 うみおよ : 2010年04月22日 10:06
>うみおよ様
マウスレコーダーを御利用いただきありがとうございます。
■ご質問の件:クリップボードにコピーされない
マウスレコーダーでは、プログラム開始前のクリップボード内容を保証しています。
(プログラム終了時点で、開始前の内容を復元 - 掲示板回答 2010年03月19日 07:04)
よって、終了後にクリップボードを見た場合には、コピーされていないように見えます。
プログラム終了後では無く、プログラム中でのみクリップボードの内容の確認可。
(MsgBoxに%Clipboard%を表示するか、メモ帳などにPaste)
ただし、ご質問の文中では、
「この後クリップボードの中身を判別してjumpなどさせているのですが・・」
とあるので、Jump判定の方に問題があるのかもしれません。
どうしてもうまく行かない場合は、この掲示板に該当プログラムを貼り付けて下さい。
当方にて解析します。
クリップボード内容保証については、ヘルプに判り易い注意書きの説明を追加します。
■追加 ご質問により、キー操作用のマクロに不足を感じました。
次版にて Shift+Home,Shift+End,Ctrl+Shift+Home,Ctrl+Shift+End を追加します。
上記追加により、ご質問のキー操作手順は
Ctrl+End
↑
Shift+End
Copy
の4行で記述できるようになります。
投稿者 エムティ・ソフト : 2010年04月22日 08:14
>大野忠義様
変更点について
7.41:ユーザに殆ど関係しない微細改良(作者用記録)です。
表示条件:記録「開始」時の"既存のデータは破棄されます。"のメッセージ
関数パラメータ:123,abc を "123","abc" としての記述も可とする
7.40:検索
リストを右クリックで表示されるショートカットメニューの2段目に表示。 フォーム構成を参照。
関数一覧:編集フォーム左下
投稿者 エムティ・ソフト : 2010年04月22日 08:12
すばらしいソフトをありがとうございます。
いくつかキーボード/マウス自動化ソフトを試したのですが、こちらのアプリがダントツに自由度が高く、すばらしいです。
ところで1点質問なのですが、テキストエディタを使って最終行をクリップボードにコピーさせようとしているのですが、コピーしてくれません。
テキストエディタのEmEditor,Windowsのメモ帳を使って試しましたが、
1.マウスクリックでアプリ選択
2.Ctrl+ENDキーで最終行へ
3.↑で1行上へ
4.Shift+Ctrl+Endキーで最終行を選択
5.Ctrl+Cでコピー
というながれで、この後クリップボードの中身を判別してjumpなどさせているのですが、1-4までは問題なくできるのに、5のCtrl+Cだけ実行したあとクリップボードの中身を見てみると選択した文字列がコピーされていません。
EmEditorというテキストエディタは、マクロ機能をもっているので、マクロを登録してショートカット(F4)の押下を試してみましたが、EmEditor単体で実行するとコピーされるのに、マウスレコーダーから実行するとコピーされません。
これは何かコツかなにかあるのでしょうか。
考えられる原因等ございましたらご教授頂ければと思います。
記録の機能を使っての実行なので記述ミスなどはないかと思います。
お忙しいところ恐縮ですが、よろしくお願い致します。
投稿者 うみおよ : 2010年04月21日 22:03
■7.41版 2010/04/21
改良 記録開始時の既存データ破棄メッセージ表示条件
関数パラメータ「"」対応
RunTime エラー の件の対応処置なのですか?
改造後の仕様が文面だけではわかりません、どこかに記述がありますか?
■7.40版 2010/04/19
追加 検索機能追加
編集フォームに関数一覧表示スイッチ
上記2つとも7.41版にみあたりません><
投稿者 大野忠義 : 2010年04月21日 12:35
>大野忠義様 ウィンドウの有無判定について
IsApExist関数を利用して下さい。
投稿者 エムティ・ソフト : 2010年04月20日 06:46
質問:下記でウィンドウが無い場合、エラーで終了するのですが、事前にウィンドウの有無を知る事はできませんか?
LEFT_DOWN 94 0 0 1 -2 69 1010 746 IEFrame http://xxxxxxxxxxxxxxMicrosoft Internet Explorer
投稿者 大野忠義 : 2010年04月19日 12:15
要望度:低 緊急度:低
■ループ文に「最大繰り返し回数」をいれてほしい
要望理由:①プログラムの簡素化・・・プログラムで変数設定・変数値増加の文が不要になる
②プログラムのバグによる無限ループ回避
投稿者 大野忠義 : 2010年04月17日 12:30
サブルーチンを別プログラム化することを考えていました。
投稿者 大野忠義 : 2010年04月15日 05:23
>大野忠義様
■プログラムから別のプログラムの呼び出し
ご質問が漠然としているため、推測で記述します。
A.EXEファイル → 既存可
処理単位にEXEファイルを作成してAP_Openで複数連続実行可。
EXEファイルはCloseで自動終了、同期はAP_Waitで可
B.複数のDATを実行 → 検討?
分割作成したDATを連続実行
さほど有益では無いかもしれません。A.で代替可
C.EXEを関数として → 検討
個別EXEが返却値を返して、メインプログラムで判定
可能性が広がりそうな機能です。
が、無理すれば既存機能でも可(返却値はファイルなどを利用して実現可)
D.実行プログラム用パラメータ → 検討
コマンドラインパラメータの一部(実行プログラム向け)を実行プログラムが受け取る。
これによりEXEファイルの処理を動的に変化させて実行可。
例:パラメータ -user_args x1 x2 x3
参照は共有変数 %user_arg1% %user_arg2% ・・・
投稿者 エムティ・ソフト : 2010年04月13日 08:48
プログラムから別のプログラムを呼び出すことできますか?
簡易にできそうならば、要望としして機能追加お願いします。
投稿者 大野忠義 : 2010年04月12日 15:54
■行編集画面を閉じた時もカーソルなくなっちゃいます
はい、選択行の選択状態のことです。
マウスレコーダーと同種のアプリがいくつかあるみたいですが、プログラムできるのは他にみあたらないみたいです。是非ともここの強みを発揮できるようにエディター機能も強化をお願いします。
■クリップボード
そうだった!!仕様変更だった><
普段よく使用する、文字列をSetClipboardの1行だけのプログラムでディスクトップに置いています。そのような使用方法の場合は6.3版以前のを使用します。
以前の仕様もそれなりにメリットあったっことですね^^
現行の仕様のほうが、他に影響をあたえないので現行のほうがいいとはおもいます。
投稿者 Anonymous : 2010年03月19日 22:10
>ハジメ様
指定時刻に自動実行する方法は、いくつかあります。
1.ウィンドウズのタスク機能
記録した内容を自動実行するショートカット(またはExeファイル)を作成して、ウィンドウズのタスクスケジューラーに時間を指定して登録
2.PCの見張り番
「PCの見張り番」を用いて、指定時間後に指定のアプリを起動します。
3.指定時間後にシャットダウン
「指定時間後にシャットダウン」を用いて、スタンバイ(または休止)、指定時刻に復帰、指定のアプリを起動、が可能です。
4.指定時刻までWait
マウスレコーダーのWait機能を利用して指定時刻まで待ちます。
下記のサンプルコードをダウンロードしてマウスレコーダーで実行して見て下さい。
サンプルコード
投稿者 エムティ・ソフト : 2010年03月19日 07:35
>大野忠義様
■行編集画面を閉じた時もカーソルなくなっちゃいます
「カーソルが無くなる」というのは、マウスカーソルの事では無く、「編集前に選択していた行の選択状態が解除される」という意味でしたら、対処します。
■クリップボード
変数でも即値でも、SetClipboadは機能しているようですが。。
下記が検証コード。ダウンロード後に実行して見て下さい。
検証コード
なお、プログラム終了時に、クリップボードの内容は開始前の状態に戻ります。
(ユーザー様からの依頼により改良 6.30版 2010/01/19)
投稿者 エムティ・ソフト : 2010年03月19日 07:04
記録した作業を、指定した時間に実行させる事は出来るでしょうか。
投稿者 ハジメ : 2010年03月19日 02:39
障害報告:クリップボードに直接(変数でなく)入力できない
SetClipboard abc
以前はクリップボードに直接に文字を代入できたのですが、変数じゃないと代入できなくなっています
投稿者 大野忠義 : 2010年03月18日 15:59
【GetPixel使用法】・・・了解
GetPixelは、コマンドではなく関数だったんですね><
それで、編集のeventになかったんですね^^
理解しました。
投稿者 大野忠義 : 2010年03月18日 09:32
>大野忠義様
■変数の変数指定
できません。
■組込関数 GetPixel
値は%FuncRet% または %GotData% に格納されます。下記のように使用して下さい。
Dim //色10進 Color
組込関数 GetPixel 1230 620
SetVariable %Color% %FuncRet%
MSG_BOX %Color%
ただし、以前にも書きましたが、組込関数は「御蔵入り」予定です。
Dim //色10進 Color
SetVariable %Color% GetPixel(1230,620)
MSG_BOX %Color%
のように、関数を使用することをお奨めします。
補足:上記のコードは下記よりダウンロード可。
驚くことに、そのまんま選択、マウスレコーダーに直接貼り付け、で、利用できます。
サンプルコード
投稿者 エムティ・ソフト : 2010年03月18日 07:05
GetPixelの使い方がわかりません
Dim //色10進 Color
組込関数 GetPixel 1253 620 %Color%
MSG_BOX %Color%
msgボックスは空白になってしまいます
投稿者 大野忠義 : 2010年03月17日 12:50
変数名を変数で指定できますか?
例えば、%宛先%で変数名指定して次の行の変数名を指定する
①
SetVariable 0 %宛先% 東京
SetVariable 0 %%宛先%% 4
②
SetVariable 0 %東京% 4
で、①② ともに同じ結果になるような
できなかったら、特に要望としてはあげませんが^^
投稿者 大野忠義 : 2010年03月17日 12:08
>大野忠義様
エクセル制御の利点
・他のアプリを共に利用できる可能性がある。
・外部から操作するので、エクセル自体の操作をしなくて済む。
・エクセル自体にプログラム(VBA)を組み込まなくて良い。
(純粋に数式とデータだけのブックで済ますことも出来る)
ただし、機能的には、エクセルのVBA(WindowsAPIを駆使した場合)以上のことは出来ません。
また、現在のところ、マウスレコーダーのエクセル関連コマンドは少な過ぎて、あまり役には立たないでしょう。
投稿者 エムティ・ソフト : 2010年03月10日 08:48
エクセルではまだマウスレコーダー使用していないのですが
現在、エクセルのプロシージャーのみでプログラムを作っています。
・マウスレコーダーでしか実現できないこと
・マウスレコーダーを使用したほうがプロシージャより便利なこととかあったら教えてください。
投稿者 大野忠義 : 2010年03月09日 12:39
御要望の件
■色要素分解関数追加
下記を追加しました。6.60版
分解関数 GetRValue(color) GetGValue(color) GetBValue(color)
合成関数 RGB(r,g,b)
参考 サンプルリスト(GetPixelPoint)
■自作の関数
なかなか難しいですが、出来そうではあります。
次版、もしくは次々版にご期待下さい。
■メモリーが開放されていない件
GetPixelに不備がありました。6.60版でお試し下さい。
投稿者 エムティ・ソフト : 2010年03月07日 07:15
>大野忠義 様
■マウス移動による停止の解除
「手動マウス操作による停止」をオフにしてからExeファイルを作成して下さい。
[ツール]→[設定]→[動作] [手動マウス操作による停止]
基本的に、現在の設定状態がExeファイルにも引き継がれます。
注意:「conf.txt」が同じパスに在ると、そちらを優先します。
Exeを実行するパスには、基本的に「conf.txt」を置かない様に!
(Exeの動作を変えたい時は「conf.txt」が役に立ちます。)
投稿者 エムティ・ソフト : 2010年02月19日 07:43
exeファイル実行中、マウスを動かしたら中断してしまいます、中断しない方法を教えてください
投稿者 大野忠義 : 2010年02月18日 15:23
■Exeファイル
ほんあとだーーねぼけて書いていたので勘違いしてました、すいませんでした
■色抽出コマンド
やったーーー これでまた、プログラム組みやすくなります^^
関数追加でなく、GetPixelPointの機能アップですね^^
xyの位置書き込まないといままでのといっしょの機能ってことですね・・・・意外とxyなしの場合でてくるかもしれませんしね(超レアケースとは思いますが)
たとえば以下みたいに
(10秒後にうごかした位置の色を変数に組み込むプログラム)
wait 10000
組込関数 //色取得 GetPixelPoint
SetVariable //色コード→%Color% %Color% %FuncRet%
SetVariable %ランク% 6
投稿者 Anonymous : 2010年02月18日 11:50
>大野忠義 様
■Exeファイル
Exeファイル実行中はタスクトレイに収納され、邪魔にはならない筈なのですが・・・
邪魔になる位置に表示されるのでしょうか?
■色抽出コマンド
了解。関数としても追加します。
なお、ポインタの移動(MV)は不要です。
組み込み関数(GetPixelPoint)の mouse-x,y に位置を記述(変数可)すれば自動的にポインタは移動します。
投稿者 エムティ・ソフト : 2010年02月18日 08:42
要望:色抽出コマンド追加
MV //ポインタ移動 %4RANK区分位置X% %4RANK区分位置Y%
組込関数 //色取得 GetPixelPoint
SetVariable //色コード→%Color% %Color% %FuncRet%
SetVariable %ランク% 6
と4行つかってるのですがどうせ変数にしちゃうのだから
***********************************
SETPixelPoint %X軸% %Y軸% %対象変数%
***********************************
のようなコマンドほしいです
投稿者 大野忠義 : 2010年02月18日 07:14
要望・・・・exeファイル実行のときマウスレコーダー自体が大きすぎで少しじゃま、小さくすると再生ボタンがみえなくなってしまうし・・・・
exeじゃないときはデバックしながらやるので現状がいいです
投稿者 大野忠義 : 2010年02月18日 01:37
>大野忠義 様
Q1.exeファイルで中断した場合、プログラム内容が見えてしまうのですが。
プログラム内容を見えなくする方法とかありませんか?
A1.暗号化して下さい。
「設定」→「その他」「記録データの暗号化」をオンにした状態でEXE作成
Q2.マウスレコーダー本体がなくても動きますか?
A2.動作します。
Q3.exeファイルの配布をしていいですか?
A3.EXEファイルの配布は自由です。
(その為に、EXEファイルでの記録は出来ないようになっています。)
投稿者 エムティ・ソフト : 2010年02月08日 15:48
exeファイルについて
・マウスレコーダー本体がなくても動きますか?
・exeファイルの配布をしていいですか?
投稿者 大野忠義 : 2010年02月08日 13:44
exeファイルで中断した場合
プログラム内容が見えてしまうのですが。
プログラム内容を見えなくする方法とかありませんか?
投稿者 大野忠義 : 2010年02月08日 13:37
EXEファイルだけ別のフォルダに移動していました・・・・絶対位置に修正したら正常に動きました
障害でなくプログラムミスでした><
投稿者 大野忠義 : 2010年02月08日 13:31
>大野忠義 様
PlaySoundに関して色々と検証してみたのですが、同エラー現象を確認できませんでした。
EXEファイルを作成した時の、本体とWAVファイルの相対位置関係が、EXEファイルとWAVファイルとの間でも保たれていれば、正常動作を確認しました。
もちろん、EXEファイルだけ別のフォルダに移動するとエラーとなりますが・・
(絶対パスで指定している場合は、EXEファイルの位置には関係しません)
EXEファイルとWAVファイルの位置関係、および、PlaySoundで指定したファイル名の記述を教えて頂けないでしょうか?
お手数をお掛けしますが、よろしくお願いします。
投稿者 エムティ・ソフト : 2010年02月06日 08:24
障害報告・・・・緊急度:低
PlaySoundでマウスレコーダーのフォルダ上の音源の場合
・マウスレコーダー本体での再生>>正常に鳴る
・EXEファイルからの再生>>WAVファイルがないと判断してエラーで終了してしまう
投稿者 大野忠義 : 2010年02月05日 07:58
補足:マウス/キー関連マクロについて
マウス、キー操作を短く記述する為に以下のようなマクロ(命令の組み合わせ)を用意しています。
マウスマクロ: LeftClick,MiddleClick,RightClick(ダブルクリックはそれぞれを2回発行するだけなので省略)
キーマクロ: Tab,Enter,←,↑,→,↓,Copy,Cut,Paste,その他のよく使うキーの組み合わせ(回数指定)
投稿者 エムティ・ソフト : 2010年02月04日 05:40
>大野忠義 様
■exeファイル実行中
wait命令中にプログラムの実行自体を解除する方法
方法1:タスクトレイのアイコンをダブルクリック → 処理終了
方法2:停止のホットキー(既定はPause)を押す → 表示状態 →「停止」クリック
投稿者 エムティ・ソフト : 2010年02月03日 12:09
exeファイル実行中
wait命令中にプログラムの実行自体を解除する方法はありませんか?
**** 1時間後に電源落とすプログラム
wait 3600000
poweroff
****
のような時マウス動かしてもだめです><
ps>1ライセンス版を購入させてもらいました
他2台のパソコンの処理は10分以内なのでお試しで使わせてもらっています。
投稿者 大野忠義 : 2010年02月03日 11:38
>大野忠義 様
■マウスポインタの変化について
質問は、文脈からポインタ位置の変化では無く、その形状変化についてだと推察します。
申し訳ありません。現在のところ、マウスポインタの形状を(簡単に)判定する方法は判りません。
ポインタイメージは別のレイヤにあり、そこが、マウスポインタをキャプチャーする場合に、皆が苦労する点でもあります。
そもそも、どのような用途があるのでしょうか? (・・それにより調査への熱の入れ方が・・(*^.^*)・・)
投稿者 エムティ・ソフト : 2010年01月25日 08:06
マウスポインタが変化したことを検知しる方法はありませんか?
GetPixel マウスポインタの変化を検知できないかと試したところ。
GetPixelはMV してGetPixelPointしているみたいなので、マウスポインタ自体変化してしまうので使用できませんでした。
投稿者 大野忠義 : 2010年01月24日 16:26
>早川津富 様
PC起動時に自動実行するコマンドラインパラメータの例を下記に示します。
これは、「xxxx.dat」を自動実行、および自動終了します。
-a xxxx.dat -close
-a :自動実行
-close:自動終了(マウスレコーダーを終了する)
\ は円記号(¥)
ショートカットに上記のコマンドラインパラメータを設定して、
「スタート」→「全てのプログラム」「スタートアップ」にコピーすれば、PC起動(実際にはログイン)時に自動実行されます。
または「タスク」に登録・・この方法は少しややこしいので、ここでは説明省略
なお、ショートカットでのコマンドラインパラメータの使用方法は下記(シャットダウンツール)を参考にしてください。
0 コマンドラインパラメータの使用法がわかりません
投稿者 エムティ・ソフト : 2009年10月21日 15:34
pc起動時にマウスレコダ-立ち上がり自動的
に記録ファイルが動作して(アプリを立ち上げて仕事をして終了)そしてマウスレコダ-画面から消す。 カッコの部分はこちらが記録
マウスレコダ-立ち上がり自動的に記録ファイルが動作して-----マウスレコダ-が画面から消えるプログラムを作成してもらえませんか、作成していただけるなら作成金額もお知らせ願いませんか、よろしくお願いします。
投稿者 早川 津富 : 2009年10月21日 09:23
エムティ・ソフト様
連日のご対応ありがとうございました。
希望通りの処理ができるようになりました。
大変助かります。
今後ともよろしくお願いいたします。
投稿者 ヒデヤン : 2009年10月16日 09:47
>ヒデヤン様
HTMLにおいて、Idは重複してはいけません。 要素識別子: id属性とclass属性
とは言うものの、Idをクラス代わりに使って重複させているWebページが存在するのも事実。
そこで、下記のような仕様とします。
Id¥value (valueはalt、titleでも可)
¥記号でIdとvalueを区切る。
5.90版としてアップしました。お試し下さい。
右がテストページ 「Id,vlalue組み合わせ」テストページ
投稿者 エムティ・ソフト : 2009年10月15日 07:16
エムティ・ソフト様
早速のご対応ありがとうございます。
修正版で一部解決できたところもありますが、元々のWebサイトの作りが良くないため、希望通りに対応できない部分もあります。
■対応できない部分
複数の設問でラジオボタンを使っているのですが、valueがどの設問も1~5のように数字を使っています。
そのため、value指定でラジオボタン選択をすると、最初にそのvalueを持つラジオボタンを選択してしまいます。
たとえば、設問5の選択肢5を選択したい場合でも、設問1の選択肢5を選択してしまいます。
とりあえず最初に作った通り、設問5の最初の選択肢をクリック後、valueの数字の回数だけ[→]キーを入力することで、現時点では対応しておきます。
他に対応策があるようなら教えていただけると助かります。
よろしくお願いします。
投稿者 ヒデヤン : 2009年10月14日 13:35
>ヒデヤン様
IE入力でのValue指定の件
これは、不具合です。
5.81版として対処しました。お試し下さい。
仕様としては、Id,name,value,alt,title の優先順位で検索します。
今後も、よろしくお願いいます。
投稿者 エムティ・ソフト : 2009年10月14日 07:51
エムティ・ソフト様
お世話になっております。ヒデヤンです。
先日は、ご対応ありがとうございました。
1点、新たなご相談なのですが、IE入力でRadioやCheckboxにチェックを入れたい時に困っています。
マウスレコーダーの仕様では、
コントロール名に対して"1"(選択)/"0"(解除)と指定します。
ただ、自動入力させたいWebでは、下記コードのように選択肢の数だけ同じコントロール名があり、VALUEで区別するようになっています。
(例)
<input type=radio name="SEI" value="MAN" checked>男性
<input type=radio name="SEI" value="FEMALE">女性
この場合、IE入力を使っても最初の選択肢しか
選択ができません。
仕方なく、最初の選択肢を選択後、[→]キー入力で対応する選択肢を選択させています。
※IEの読込状況によるのか→で動かずに次の処理に行ってしまうことも少なくありません。
希望する仕様としては、
IE入力で指定したコントロール名に対して、指定したVALUEを持つ選択肢を選択できるようにしていただきたいと思っています。
上のコード例で言えば、
IE入力 SEI FEMALE
のように指定すれば、女性にチェックが入るようにしていただきたいです。
お手数おかけしますが、ご検討いただけないでしょうか?
よろしくお願いいたします。
投稿者 ヒデヤン : 2009年10月13日 15:13
エムティソフト様
ご多忙の中、ありがとうございました。
マウス操作、キー操作、
REGとCSVの関係などもよく分かりました。
まだ設定は完成してはいませんが
随分見通しが明るくなりました。
またよろしくお願いします。
(先ほど名前なしで投稿しました、再投稿です、すみません・・・)
投稿者 takahashi : 2009年09月30日 07:18
>takahashi様
返事が遅くなったことをお詫びします。ご質問への回答
Q1.マウス操作とキー操作の2種類ありますが、どう違いますか?
A1.マウス操作の場合、画面のフィールド位置や形状が変化する場合は誤動作します。
(Webページや、自動で画面サイズ/フィールド形状を自動設定するアプリなど)
キー操作の場合は、基点さえ決まればフィールドを特定することが出来ます。
Q2.LoadRegは REG1=3 のREG1は具体的にはどこを指しますか?
3という数字の意味は何ですか?
A2.Sample3 では REG1 をレコード番号の初期値として使用しています。
6行目の 「LoadReg REG1 3」は、レコード開始番号を3とする処理です。
レコード番号:CSVをExcelで開いた時の行番号と考えて下さい。
フィールド番号:同、列番号
Q3.エラー表示されてしまいます。
A3.指定のレコード/フィールド番号が存在しない時は、エラーとなります。
2行しかない場合、レコード番号に3以上を指定するとエラー
2列しかない場合、フィール祖番号に3以上を指定するとエラー
Q4.REG1% %CsvRecordCnt% ST
A4.レコード番号がレコード数以下の場合に繰り返す(STにジャンプ)場合は、
Jump >=%REG1% %CsvRecordCnt% または
Jump %REG1%
今後も、よろしくお願いします。
投稿者 エムティ・ソフト : 2009年09月26日 10:03
お世話になります。
画期的なツールありがとうございました!
早速自分の作業で使用しようと
サンプルのスプリクトを参照して
やってみましたがうまくいきませんでした。
大変初歩的な質問で非常に恐縮ですが、
よろしくお願いします。
やりたいこと。
CSVファイルまたはエクセルファイルの
A,B列に書かれた文字を
別のアプリケーションの2ヶ所に
A1,B1
A2,B2
A3,B3
と言う風に記入していきたい。
*具体的にはsample3のような作業です。
sample3は
マウス操作とキー操作の2種類ありますが
どう違いますか?
それから
LoadRegは REG1=3
とはじめに指定されていますが、
同じように指定して
GetCsvData %REG1% 1
文章入力 %GotData%
!
GetCsvData%REG1% 2
文章入力 %GotData%
と入力してもエラー表示されてしまいます。
LoadRegは REG1=3
のREG1は具体的にはどこを指しますか?
3という数字の意味は何ですか?
また、
CSVまたはエクセルデーターの
1行目が終わったら
OKボタンの後に
2行目に進みたいのですが
サンプルのように、
AddReg --レコード番号アップ REG1 1
Jump --総レコード数以下 → ST >=%REG1% %CsvRecordCnt% ST
とやっても2行目が始まりません。。
そもそも、REGの意味が分かっておらず、
指定がおかしいのかもしれません。
大変お手数ですが
よろしくご回答お願いします。
投稿者 takahashi : 2009年09月18日 12:46
10倍速の方が、速く動作します。
投稿者 エムティ・ソフト : 2009年08月26日 06:07
再生速度は10倍速と1/2倍速ではどちらが速いのですか?
投稿者 NEO : 2009年08月25日 21:38
>ヒデヤン様
ありがとうございます。
ご指摘の件に付き、いろいろ試しているのですが、まだ「実行時エラー'9'」を発生させることが出来ません。
代わりに、恥ずかしながら、別のエラーを見つけることは出来ましたが・・
(実行時エラー'381' - MVのみ表示後、全てのMVを削除して実行すると発生 - 対処)
申し訳ありませんが、「実行時エラー'9'」の発生手順を、もう少し詳しく教えていただけないでしょうか?
ややこしいようでしたら、メールにて使用DATファイル含めて教えていただけると助かります。
お手数をお掛けしますが、なにとぞ、よろしくお願いします。
投稿者 エムティ・ソフト : 2009年08月14日 05:27
はじめまして。IEの自動入力等でマウスレコーダーを活用させていただいております。
1つご報告ですが、編集画面で選択行を削除した後に実行すると、よく次のエラーが発生してマウスレコーダーが終了してしまいます。
----------------------------
実行時エラー '9':
インデックスが有効範囲にありません。
----------------------------
最新バージョンを入れなおしても同様でした。
今後の修正をご検討いただけないでしょうか?
よろしくお願いいたします。
投稿者 ヒデヤン : 2009年08月13日 13:50
>新太郎 様
以下のような感じで、画像変化を検知時に音を鳴らすことが出来ます。
-----------------------------------
WaitImgChange6 !画像変化を待つ
Jump %GotData% = "time out" ED !タイムアウト
AP_Open 1000 xxx.mp3 !音楽演奏
ED
-----------------------------------
実際のコード例は下記を参照
なお、OS組込機能で音楽演奏する機能を追加します(5.30版)
名前:PlaySound
パラメータ:
サウンドファイル名(WAV形式のみ)
繰り返し回数
の形式
これにより、簡単に演奏でき、使用するプレーヤーの後始末も不要になります。
今後もよろしくお願いします。
投稿者 エムティ・ソフト : 2009年08月05日 15:42
はじめまして、現在試用版を使わせていただいています。
このマクロソフトですが私はネットゲームに利用しようと考えています。
単純なクリックのみのブラウザーゲームなんですがマクロ確認というチート対策班がいて通常のマクロだと机の前に居続けて定期的に監視する必要がございます。
そこでマクロ確認があった場合(画像変化するのですが)メディアプレイヤーを開くなどして音を鳴らして知らせるなどのプログラミングは可能でしょうか?
投稿者 新太郎 : 2009年08月05日 09:38
>souta様
監視間隔を1000ミリ秒(1秒)としています。よって、その整数倍または整数分の1の周期での点滅では監視を潜り抜けてしまいます。これはマズイですね。
そこで、監視間隔を300ミリ秒~1000ミリ秒の間のランダムな数値になるように改良いたします。
早ければ28日、遅くとも29日に、当サイトにてリリース致します。
お待ち下さい。
投稿者 エムティ・ソフト : 2009年06月26日 08:18
>エムティ・ソフト様
ご丁寧にありがとうございます
上げていただいた項目の中に
まさに合致する項目がありました
・変化が点滅-監視と点滅の周期が一致する場合
まさにこれで、監視対象は赤と青の点滅を繰り返しています
時報と合わせた所、その周期はちょうど1秒であると思われます
(0.5秒毎に色が入れ替わる)
解決にはどのようにすればいいでしょうか・・・聞いてばかりで申し訳ないですが
マウスポインタの座標の件は了解しました
丁寧なご説明感謝いたします
投稿者 souta : 2009年06月26日 07:43
>sonta様
・画像変化を検知できない件
可能性は以下が考えられます
・変化部分が監視枠の外
・変化が点滅-監視と点滅の周期が一致する場合
・変化が微小-色圧縮していますので変化色が微小の場合は不可
想定動作が出来ない場合、監視開始と変化後の画像(スクリーンショット)およびDATファイルをメール添付で送って頂ければ助かります。(mt-soft@jcom.home.ne.jp)
・マウスポインタ座標
左上隅を(0,0)とした絶対座標です。
ピクセル単位なので、解像度やモニターの設定には依存しないはずです。
よって、常に全画面サイズで表示される場合は、問題無いと思われます。
ただし、内部のコントロール位置を、画面サイズに応じて自動配置する場合は異なります-Webブラウザのような動作)
なお、監視対象アプリ自身が「画面中央」などのように相対的に位置指定している場合は、監視位置が異なってきます。この場合、記録操作において、対象アプリの表示完了後に、タイトルバーをクリックします。これにより、表示位置(サイズ)を記憶し、解像度が変わっても強制的に一定の絶対座標位置に移動(リサイズ)します。
投稿者 エムティ・ソフト : 2009年06月26日 06:24
>エムティ・ソフト様
早速のご返信ありがとうございます
二重投稿、ご迷惑をおかけしました
早速ご教授いただいた通りに組み込んだ所
ある程度想定通りの動作を確認出来ました
ありがとうございます
ある程度、というのは、時折画像が変わっているのにも関わらず
変化なしとしてスルーされる事があるからなのですが・・・
指定範囲を拡大してみたりポイントの位置を変えたり試行錯誤してみています
ところでこのマウスポインタの座標なのですが
これは画面の左上を0.0とした絶対座標として取得しているのでしょうか
というのも、複数のPCで同じソフト/マクロの使用を想定しており
解像度やモニターの設定が異なっても同じファイルで
同じ動きを再現出来るなら非常に助かるからなのですが・・・
なお対象ソフトはその特性上
左右幅は必ず画面いっぱい、上下のサイズは固定
そして表示位置も画面最上部or最下部と決まっています
ともあれ想定通りに動かせそうなので、明日明後日にでもライセンスの購入をさせていただきます
これからもよろしくお願いいたします
投稿者 souta : 2009年06月25日 21:57
>souta様
WaitImgChange後の判定について
下記の %GotData% = "time out" ジャンプ先
のように記述して下さい。
(比較文言中に半角スペースが在る時は、必ずダブルクォートで括る)
下記の例では、"time out"の時は、Nにジャンプします。
001 WaitImgChange 3000 243 443
002 Jump //変化無し? %GotData% = "time out" N
003 CHG MSG_BOX 変化しました。
004 Jump END
005 N MSG_BOX 変化無し!
006 END
空白で無いという意味で %GotData% <> ""
でも結構です。
追伸:再送コメントは削除させていただきます。
投稿者 エムティ・ソフト : 2009年06月25日 14:13
はじめまして
5.24をダウンロードし、現在試用させていただいております
今想定しているマクロが組めれば、ライセンスキーの
購入を予定しております
そこでお尋ねしたいのですが、画像変化による条件分岐はどのように処理を組めば可能でしょうか?
画像監視だけでは画像変化の待機しか出来なかったようなので・・・
時間内に画像の変化があった場合となかった場合で分岐したいのですが
あった場合はそのまま処理実行でいいとして、なかった場合
WaitImgChangeメニューだけで出来るのかどうか・・・
%GotData% に格納された引数time outを使って通常のJumpで出来るかとも思ったのですが
条件式の書き方がわからずお手上げになってしまいました
もしかしたらもの凄く初歩的な事なのかもしれませんが(汗
ご教授いただければ幸いです
投稿者 souta : 2009年06月25日 12:39
>maetel様
ありがとうございます。
今後も、よろしくお願い致します。
投稿者 エムティ・ソフト : 2009年06月20日 06:09
申し訳ありません。
自己解決しました。
投稿者 maetel : 2009年06月20日 00:24
本日MouseRecorderを購入させて頂きました。
ありがとう御座います。
お尋ねですがアプリ立上げとかの「Event」って何処にあるんでしょうか?
投稿者 maetel : 2009年06月20日 00:01
>moddy様
確かに、Firefoxで表示させてみたところ、まともには表示されませんね。試しに、他のブラウザ(Google Chrome , Opera , Safari)で表示してみると正常でした。Firefoxの仕様に合っていないのか、未対応なのか、この方面の知識にも疎いので、当ページを変更することは出来そうにありません。申し訳ありません。
投稿者 エムティ・ソフト : 2009年05月13日 15:53
※マウスレコーダ機能に関する質問ではないので恐縮なのですが、 ここの URL を指定して Firefox(3.0.8) で読もうとすると全く別のページ内容が表示されてしまいます。
Firefox は使えないのでしょうか。
投稿者 moddy : 2009年05月13日 11:43
エムティ・ソフト様 V4.90 ありがとうございます。バッチ等いろいろ幅広く活用できそうです。モジュ-ル化もそろそろ欲しくなってきた機能で、いいですね。サンプル集も充実してきて、私でも解かりやすくなってきました。勉強、活用挑戦させてもらいます。今後ともよろしくです。
投稿者 谷口 : 2009年04月25日 09:48
>yuumaru様
・CSVからのIE入力
→ imageボタンの場合も、定義されているIdと"click"を記述します。Idが定義されていない場合は、valueの値でも可。(alt、titleでも指定できるよう改良予定)
・ファイルからの入力文言、のダイアログボックスの最下部にある、5~の数字
→ すっかり忘れていました。これは、各列の表示幅の指定です(半角文字数換算)実際の文字には影響しません。マウスを乗せると、ヒントがポップアップ表示されます。ただ数値が多い場合に異常終了するので修正します。
投稿者 エムティ・ソフト : 2009年03月22日 09:12
エムティ・ソフト様
度々のご回答をいただきありがとうございました。
セキュリティ面では、心配が残るので保護は外さないようにしようと思いました。
そこで、サイトにあらかじめアクセスし、開いているフォームに対し、EXCELのCSVのデータを入力できればと思い今いろいろと試させていただいております。
そこで、質問なのですが、画像でできている送信ボタンを押すようにCSVで指定するにはどのようにすれば良いのでしょうか?
また、ファイルからの入力文言、のダイアログボックスの最下部にある、5~の数字が出るリストボックス(?)がありますが、それは何を意味しているのでしょうか?
この数字を触ると、CSVファイルから読み込まれた文字列が短くなり切れてしまったり、また切れているものが表示されるようになったりします。
10以上は指定できませんが、それは試用版だからでしょうか?
ヘルプを参照しても探しきれず、申し訳ありません。
よろしくお願いいたします。
投稿者 yuumaru : 2009年03月21日 22:55
>yuumaru様 IE起動の件:ありがとうございます。保護モードをオフにするのは、さすがに一般的にはお奨めできないので、何らかの方法を検討中です。 URLをリストから読み込む件:既存の複数のWebページを巡回チェックするような時には必要な機能ですね。さっそく検討してみます。既存機能だけでは出来ませんので新しい追加機能となります。
投稿者 エムティ・ソフト : 2009年03月18日 04:38
エムティ・ソフト様
ご回答ありがとうございました。
こちらで色々調べた結果、
IEの[ツール]-[インターネットオプション]-[セキュリティ]の、『保護モードを有効にする』というチェックを外すと、VistaでもIEが立ち上がるようになりました。
セキュリティが弱くなるようですが、信頼できるサイトを開くのなら大丈夫かなと思っています。
一つ質問があるのですが、EXCELでURLの一覧を作ってあり、それを順にIEで開いて、ある一定時間操作を待つようにして、また閉じる、というのを一覧にあるURLに対して行うような場合は、どのように記述すればよろしいのでしょうか?
サンプルの解説を拝見したところ、URLを固定で指定する方法は分かったのですが、そのURL自体をEXCELから読み込んでくることはできるのでしょうか?
お手数をお掛けいたしますが、よろしくお願いいたします。
投稿者 yuumaru : 2009年03月17日 16:29
>右往左往様 (1)表示文字列によるボタンクリック:まさしく、次の版で追加する予定の機能でした。ClickByNameの名のコマンドとします。3/18リリース予定
(2)ウィンドウ内の相対位置指定について:現在、考慮中です。ただ現在でも、ウィンドウ位置は、起動時だけでなく、ウィンドウをクリックした時(タイトルやフォーム内)にも情報(ウィンドウの上下左右座標、クラス名、タイトル名)として記録されます。再生すると、ウィンドウがクリックされた時点で強制的にウィンドウ位置とサイズは記録時の状態にリセットされます。
投稿者 エムティ・ソフト : 2009年03月17日 08:00
GetCheck関数 等の実装ありがとうございました。動作確認いたしました。すみませんが以下のようなことはどうやれば実現できるのでしょうか?(1)あるソフト上にボタンがいくつかあり、そのボタンを押したい。XY位置で指定ではなく、OKや再試行等のボタン表記名で指定したい。ウィンドウタイトルとコントロールの表示文字はあると思います。(2)すでに開かれたアプリの左上位置を指定位置(XY)に移動させる。起動時には指定できるようですが、起動後の移動がわかりませんでした。
投稿者 右往左往 : 2009年03月16日 14:55
>yuumaru様 ご迷惑をお掛けします。IEでのアクセス拒否は、Vistaの強化されたセキュリティ機能によるものと推測します。たぶん、IEを直接起動することを許していないのかも知れません。対処したいところですが、恥ずかしながら、Vistaでの開発環境が無いため、現在できません。申し訳ありません。近日中に、開発環境を整備したいと思います。
投稿者 エムティ・ソフト : 2009年03月15日 07:27
マウスレコーダをダウンロードさせていただきました。
まずサンプルからと思い、IE関連の自動処理について再生を行いましたが、アクセス拒否と表示され、止まってしまいます。
使用環境がVistaであることが原因なのでしょうか?
Vistaでは未検証とおっしゃってるのに、このような質問をさせていただくのも申し訳ないのですが、よろしくお願いいたします。
投稿者 yuumaru : 2009年03月15日 01:23
>吉田様 たしかに、スクリーンセーバーパスワード解除画面で、マウスのみ空しく動きますね。キー入力は受け付けないようです。引き続き調査をして見ますが、セキュリティの観点から考えると当然の仕様にも思えます。
投稿者 エムティ・ソフト : 2009年02月21日 06:53
マウスレコーダーでスクリーンセーバのパスワードロックを解除することは可能なのでしょうか?
exeをタスクで自動起動させたのですが、スクリーンセーバ上をマウスが空しく動いております。。
投稿者 吉田 : 2009年02月20日 18:41
>わんこずき様 EXCELで置換や数式を用いて編集できます。
1.マウスレコーダーのデータをすべてコピー(リスト上で右クリック→全て選択→コピー)
2.Excelに貼り付け(シート先頭のセルA1)
3.置換や数式を使って編集
4.シート全体をコピー
5.マウスレコーダーに新規状態で貼り付け
具体的には、右記URLを参照 http://mt-soft.sakura.ne.jp/web_dl/petit_tool/mrecorder/faq/edit.htm
投稿者 エムティ・ソフト : 2009年02月18日 10:46
記録後にtimeを10に一括変更することはできますか?
投稿者 わんこずき : 2009年02月17日 21:03
>ばいのん様 ご利用いただきありがとうございます。「ブレークポイント」の設定:停止したい行を選択し、「再生」ボタンの右下にあるチェックボックスをオンにします。再実行は「再生」ボタンをクリックするか「F5」キーを押します。「F8」で1ステップずつ実行。詳しくは右記リンク
http://mt-soft.sakura.ne.jp/web_dl/petit_tool/mrecorder/frame/other.html
投稿者 mt-soft : 2008年11月06日 06:33
初めまして。便利に使用させていただいております。
ところで、昨日紹介にブレークポイントの設定が出来る旨の記述がありますが、具体的にどうやって設定するのでしょうか?
こちらの想定&希望は、希望の場所で途中で処理が止まり、人間が画面の変化を確認した後に何かキーを押すと続きから処理が進むという感じがいいのですが…
投稿者 ぱいのん : 2008年11月06日 00:24
【試用期間中の制限事項】
試用期間の日数制限はありませんが、機能が少し制限されます。
・連続再生時間・・ 10分
・記録ステップ数・・ 3000ステップ
・CSVフィールド数 ・・ 10フィールド、10レコード
・記録データの暗号化・・試用版は不可
・Exeファイルの実行環境限定 ・試用版は不可
ライセンスキーの入力で、下記に機能拡張
・連続再生時間・・ 無制限
・記録ステップ数・・ 99999ステップ
・CSVフィールド数 ・・ 255フィールド、99999レコード
本件は、同梱の「読んでね.txt」またはヘルプ/
Webページの「試用・ライセンスキー」に記載されています。
投稿者 mt-soft : 2008年10月23日 16:32
すいません。マウスレコーダーのフリー版とシェアウェア版の違いは、全般的に(機能など)どのような違いがあるのでしょうか?
投稿者 Anonymous : 2008年10月23日 09:55
>G様 可能です。ライセンス版は実際の再生時間制限はありません(100時間は単なる目安)。理論的には24,855日を超えた時、オーバーフローすると思います。
投稿者 mt-soft : 2008年10月20日 04:09
数ヶ月単位で連続稼働したいのですが、100時間以上連続稼働できないのでしょうか?
投稿者 G : 2008年10月20日 01:11
>トラスさま Vistaでもダウンロードは出来ます。動作も問題無いと思います。
投稿者 エムティ・ソフト : 2008年09月20日 07:09
ビスタではダウンロードできませんか?
投稿者 トラス : 2008年09月19日 21:07
マウスレコーダーを大変便利に使わしてもらってます。
マウスの軌道画面(例:00001MV 31 11 973 373)が表示されている画面で複数選択はできないでしょうか?
それと複数選択した状態で一括編集はできないでしょうか?
必要ないところを削除して
速度アップがしたいのです。
よろしくお願いします。
投稿者 とよかわ : 2008年04月16日 11:02