ページ 1 / 1
MSのコマンドプロンプトに入力
Posted: 2008年6月30日(月) 13:33
by picko
始めまして
MSのコマンドプロンプトに要求されるデータ(文字列)にマッチファイルで自動入力できますか。
例えば、
> なまえを入力ください:
に対して、パイプ機能(?)等で "HNAKO"
パッチファイルの中なら自動的に入力してやるというやり方あるのでしょうか。
できるなら、具体的なやり方お願いいたします。
宜しくお願いします
Re:MSのコマンドプロンプトに入力
Posted: 2008年6月30日(月) 15:46
by toyo
リダイレクトでファイルの内容を標準入力にすることならできます。
name.txtに
HANAKO
と書いておいて
a.exe < name.txt
とします。
Re:MSのコマンドプロンプトに入力
Posted: 2008年6月30日(月) 16:17
by へろりくしょん
echo HNAKO | a.exe
ではダメですか。
Re:MSのコマンドプロンプトに入力
Posted: 2008年6月30日(月) 19:03
by picko
ご返答ありがとうございます
echo HNAKO | a.exe
は効かないですね。
Re:MSのコマンドプロンプトに入力
Posted: 2008年6月30日(月) 19:13
by picko
a.exe < name.txt
もだめですね。
a.exe XXYY < name.txt
a.exe < name.txt XXYY
全部だめ...
XXYYはmain()関数に要求される引数です。
Re:MSのコマンドプロンプトに入力
Posted: 2008年6月30日(月) 19:33
by toyo
入力要求が標準入力からの入力じゃないのかもしれませんね
元のプログラムのソースを見ないとわかりませんが
getch( )やgetche( )だと直接キーボード入力なのでだめでしょう
Re:MSのコマンドプロンプトに入力
Posted: 2008年7月01日(火) 11:14
by picko
toyo様
ご教授ありがとうございます
>getch( )やgetche( )だと直接キーボード入力なのでだめでしょう
おっしゃる通り、プログラムの中ではgetch( )やgetche( )を使っているそうです。
これなら、自動入力できなくなるのでしょうか。
もし、自動入力できるC言語の関数あれば、ソースを修正してもらいたいのです。
どうぞ、宜しくお願い致します
Re:MSのコマンドプロンプトに入力
Posted: 2008年7月01日(火) 13:09
by Mist
> プログラムの中ではgetch( )やgetche( )を使っているそうです。
「~そうです。」ということは、pickoさんはそのプログラムソースを見ることが出来る立場には無いということでしょうか?
> ソースを修正してもらいたいのです。
fgetc(stdin)を使えばうまくいくと思いますが、具体的にどう修正するのかはpickoさんが元のソースを提示しなんともいえません。
Re:MSのコマンドプロンプトに入力
Posted: 2008年7月01日(火) 20:03
by picko
Mist様
ご返答ありがとうございます。
プログラマは別の人で、
ch = _getche();
を使っていたそうです。
ch = fgetc(stdin);
に変えてもらったら、今度は入力してリターンを押さなければならないです。
ただ、ファイルを用意して、
a.exe < file.txt
にすればうまく出来ました。
file.txtがなくても、できる方法もあるのでしょうか。
もう一度ご教授いただければ幸いです。