ウインドウにデータを入力するプログラムは不可能なのでしょうか?
私は今までコマンドラインから使う市販の科学系ソフトに大量のケースのパラメータを入力するため、
Perlで一度に入力し、結果もまとめて一つのファイルにするプログラムを作成して使っていました。
しかし、この度、ソフトがWindows用にバージョンアップしたため入力もウインドウに書き込み、
結果も一つずつ新しいウインドウに出力されます。
このようなソフトの場合は以前のようなプログラムは作成できないのでしょうか?
Perlでは難しいと思いますのでどなたか可能な言語を知っておられたら回答お願いします。
No.4
- 回答日時:
#3さんお書きの方針がよいと思います。
PerlでもActivePerlだと、Win32::GUITest::SendkeysやSendMouse でGUI操作ができるようです。あと下記のようなソフトもあります。
お金がかけられるなら、#3さん紹介のような、「GUIアプリの開発時に使うテストツール」を買うと楽だと思います。
参考URL:http://www.vector.co.jp/soft/winnt/util/se332987 …
No.3ベストアンサー
- 回答日時:
キーボードの操作を記録・再生できるソフトのうち、記録ファイルがテキスト形式で直接編集できるようなものを利用すると良いと思います。
キーボードマクロ&マウスマクロ KMmacro
http://www.vector.co.jp/soft/win95/util/se211440 …
> 結果もまとめて
結果がどういう出方をするか?ですね。
テキストフィールドに出るのなら、そこからコピペとか。
画面に表示されるんなら、画像として保存していくとか。再利用がしにくいですが。
過去に使った事のある製品版のものですと、VisualTestが使いやすかったです。
作成したアプリケーションを自動で試験するためのツールですので、値の取得や比較、自動処理なんかまで。
--
他の方法としては、入力値をExcelにまとめておいて、VBAのSendKeyコマンドなどを使って自動で動作させる方法とか。
サンプルが見当たらないので書籍の紹介ですが、
C&R研究所のホームページ - アッと驚く達人のExcel VBA実践技&上級大全
http://www.c-r.com/mo_tevb03.htm
| ●Excelからメモ帳を起動してデータを書き出す・・・・・・237
| ■「SendKeys」でアプリケーションを操作するには事前にアプリケーションをアクティブにせよ!
なんかに書かれているハズ。
参考URL:http://www.vector.co.jp/soft/win95/util/se211440 … http://www.c-r.com/mo_tevb03.htm
お礼が遅れてすいませんですた。大変役に立ちました。
色んな人に聞いたのですがキーボードやマウスの動きを記憶できるソフトは知りませんでした。
ループや条件までプログラムできて大変役立ちました。
時間があれば自分でVBAからでも作ってみようと思います。ありがとうございました。
No.2
- 回答日時:
以前はコマンドラインからのみ動作するアプリだったのが、Windowsコンソールがついたものに変わったということで、そちらでの入力作業もマクロ化したいということなんでしょうかね。
で回答としては
そちらのアプリの仕様次第となってしまします。
Windowアプリでもコマンドライン対応をするものは多々あり、特に基がコマンドアプリだったものがバージョンUPしただけのものであるなら以前のコマンドはそのまま受け付けるタイプのものが多いです(アーカイバ系アプリは殆どがそうです)。
それでしたらおそらく以前の方法でそのまま使えるかと思います。
全く別アプリということであれば、その仕様書なりヘルプを確認して下さい。コマンドラインからの起動や引数などについての言及があればその仕様に従えば同様の処理ができると思います。
また設定ファイルなどで起動オプションをつけたりすることが出来るものもありますので、その手の場合でしたらiniファイルを直接編集してそれからアプリを起動させたりでマクロ化することも可能でしょう。
で全くそういうのがないアプリの場合でしたら、ご希望のことはほぼ不可能です。
ある程度の仕様等が公開されているアプリでしたらそれなりのことが出来ますが、おそらくされていないでしょうから、例えばキーイベントを発生させて所定の項目を選択させてそこに文字列を流し込むというようなことぐらいは可能ですが、キーイベントによる操作はPCの処理状況などによっては期待通りの動作はしませんから難しくあります。
この手のことならプログラム言語は簡単なVBとかでも出来ます。そのアプリ自体を乗っ取るのならC系の方がお勧めです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBSで2バイト文字の送り方の質...
-
VB.NETでMessageBoxを表示した...
-
VBSでのSendKeysでの画面の最小化
-
コンソールアプリケーションの...
-
WSH(VBScript)でアプリケーショ...
-
outlookが強制終了してしまう
-
他アプリケーションの終了
-
外部アプリケーションの起動に...
-
Vba アプリケーションが立ち上...
-
Accessフォームからの外部アプ...
-
初回接続の遅い原因について
-
必須コンポーネントと起動条件...
-
Macターミナルで実行中のプログ...
-
バックグラウンドのプロセスの...
-
VBAの配列サイズとメモリに関して
-
VBAで外部プログラムを非表示で...
-
アセンブラのタイマー割り込み
-
C++でシェルを起動
-
プロセスIDの取得方法について
-
sendkeysにてALT+CTRL+INSERTを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBSでのSendKeysでの画面の最小化
-
Vba アプリケーションが立ち上...
-
コンソールアプリケーションの...
-
Accessフォームからの外部アプ...
-
pccNTmon.exeとntrtscan.exeの違い
-
Windowsプログラムのビジー状態...
-
自分自身を更新するプログラム
-
フレームワーク「4.8.1」で、[S...
-
VB.NETでMessageBoxを表示した...
-
C#でGUI・CUIの判断する仕方を...
-
現在起動中のアプリケーション...
-
実行時のコマンドプロンプトを...
-
VB6での二重起動(複数起動)の制...
-
VB.NETでフォームアクティブの...
-
Console Applicationをタスクト...
-
コマンドライン版ソフトの意義
-
イラストレーターCS4のシリアル...
-
MFCアプリケーションでの終了コ...
-
vb6で異なるのプロジェクト間で...
-
OSによるWinExecの動...
おすすめ情報