コンソールアプリの入出力制御

このQ&Aのポイント
  • CUIのコンソールアプリケーションの入出力制御について知りたいです。
  • 現在、キーボードの入力を使用してメニューの制御を行っていますが、外部のソフトから制御する方法はありますか?
  • バッチファイルなどを使用してコンソールアプリケーションの入出力制御を行いたいです。
回答を見る
  • ベストアンサー

コンソールアプリの入出力制御

早速ですが、質問させていただきます。 現在、CUIのコンソールアプリケーションをキーボードの入力より、メニューの制御などを行っています。 コンソールアプリケーションは以下のようなメニュー・設定 などが表示され、それぞれ、キーボードより選択を行う形となっております。 ==== Menu ===== 1.test1 2.test2 3.test3 > テスト番号を入力してください: 上記のような入力がいたるところに存在し、大変手間となっております。 そこで、外部のソフトから、本コンソールアプリの入出力制御が出来ればと考えております。 この場合、バッチファイルなどでコンソールアプリへの制御が可能なのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • nise_pump
  • ベストアンサー率57% (34/59)
回答No.1

こんなのどうでしょう。 仮にtest.exeというプログラムの選択肢2を選択するとします。 以下のテキストファイルを二つ用意します。 test.batを実行すると自動的にtest.exeが起動されて2改行が入力されます。 ファイル名 test.bat test.exe<test.dat改行 ファイル名 test.dat 2改行 bat一個で対応したい場合は適当にecho 2>test.datとかでtest.datを出力してから test.exeを実行して、後でtest.datを消せば良いと思います。 いじょう

iwatobi7
質問者

お礼

文字の出力方法はなんとなくわかりましたが、文字の入力待ちがわかりませんでした。 かなり初歩的な知識しかなく、コマンドプロンプトからの実行はあきらめます。 ご回答ありがとうございました。

関連するQ&A

  • Cのコンソールアプリ

    Cを勉強し始めて1ヶ月ほどになります。 [a] メインメニュー (1)○○開始 (2)○○終了 (3)××× (4)△△△ (9)プログラムの終了 処理番号入力:_ [b] ○○開始 ESCでメインメニューへ戻る (1)○○開始 (2)キャンセル 処理番号入力:_ コンソールアプリで[a]のようなメインメニューがあり [b]のような画面でキャンセルの選択やESCを押した場合などに 「メインメニューに戻る」動作をさせたいのですが、 forやwhileを使えばいいのでしょうか? なかなかイメージが出来ていなくて教えていただけるとありがたいです。 環境はVisual C++ 6.0です。

  • Javaコンソールプログラム(CUI)について。

    Javaコンソールプログラム(CUI)について。 キーボードの入力ですが、ノンブロッキングな処理は出来ないのでしょうか? また、エコーもさせない(入力した文字を表示させない)方法はありますでしょうか? (例えばFrameアプリ、Appletで用いられるKeyListenerインターフェイスのような動作) ご回答の程、宜しくお願いいたします。

  • MFCをDLL化してコンソールアプリから起動

    MFCアプリケーション(プロジェクト作成でMFCアプリケーションを選択)をDLL化して、コンソールアプリケーションからこのMFCをマルチスレッドで起動する方法を教えてください。MFCが起動後、コンソールアプリケーションの処理は次に進行し、MFCは操作可能な状態(アイコンなどがクリック可能で、青丸クルクルにはならない)にしたいです。また、コンソールアプリケーションからもMFCが操作可能にしたいです(例えば、コンソールアプリからAと入力するとファイルのオープンダイアログが開く、、、とか)。

  • [BCC|CUI] コマンドプロンプトへ入出力

    こんにちは。 コマンドプロンプトを2つ起動して、一方のコマンドプロンプトから もう一方のコマンドプロンプトへ入出力したいのですが何か方法はあるのでしょうか? たとえば、サンプルとして xxx.exe ProcessID Hello! と実行したら、もう一方のコマンドプロンプトにHello!と表示されるようにしたり、逆に、一方のコマンドプロンプトに表示されたメッセージを受け取って表示するなどです。 また、こういうのはどういうキーワードで調べたらいいのでしょうか? 「プロセス間通信」となるのでしょうか? よろしくお願い致します。 アプリケーション形態:コンソールアプリケーション(CUI) コンパイラ:Borland C++ 5.5.1 for Win32 OS:Windows 2000

  • コンソールアプリケーションの終了方法

    コンソールアプリケーションをC言語(Visual-C++6.0)にて開発予定です。このアプリケーションは画面を使わないのでコンソールアプリケーションにする予定です。このプログラムは常駐プロセスにし、コマンドで起動停止を行うようにする予定です。プログラムの起動はバッチファイルを作成し、そこから実行しようと考えていますが、プログラムを停止させるバッチファイルのイメージがわきません。unixの場合は、当該プロセスにSIGTERMを送信する等の方法が考えられるのですが、windowsで常駐のコンソールアプリケーションを停止させるには、どのような方法があるのでしょうか。ご存じの方ありましたら、教えてください。停止させる方法は、外部から常駐プロセスに停止である旨の何らかの事象を送り、それを常駐プロセスがキャッチし、自ら停止することを想定しています。(有無をいわさず殺すことは考えていません) 実行環境:windows2003を想定 開発言語:VC++6.0でC言語

  • visual studio 2005 VB のコンソールアプリに関して

    やりたいこと: exeファイルを作成する。 そのexeファイルをダブルクリックすると、 コンソールが表示され、1,2,3,4,・・・・と表示を続ける。 キーボードの"q"が入力されると表示が停止する。 下記のソースコードで、コンソールが表示、1,2,3,4,・・・と表示、まではできたようです。 //////////////////// Module Module1 Sub Main() Dim number As Integer number = 1 Do Console.WriteLine(number) number = number + 1 Loop End Sub End Module //////////////////// できたというのは、VisualStudio上でF5キーを押してうまくいった、 ということです。 あとは、  ・キーボードの"q"の入力受付&停止処理  ・exeファイルを作成する ですが、コンソールアプリの情報がなかなかWEBから手に入りません。 有識者の方、ご教授いただけませんでしょうか。 プログラミング経験は、 PHPを半年ほどやっているだけです。 よろしくお願いします。 以上

  • iPhoneアプリを外部装置から制御する方法は?

    iPhoneアプリのスイッチのON/OFFを外部装置(たとえば、TTLシグナルを発生するタイミングジェネレーターみたいな装置)からのシグナルで制御する方法をご存じの方、ご教授願えないでしょうか。 具体的には、iPhoneアプリで3軸加速度装置のデータをbluetooth経由で収録しているのですが、収録のタイミング(ON/OFF)を、イヤフォンジャックから入力した外部装置のタイミング信号で制御したいと思っています。可能でしょうか?

  • コンソールアプリのFileIOフック

    環境はWin7ProfessionalとVC++2010Expressです。 市販のコンソールアプリ(A.exeとします)があります。ソースコードはありません。 実行させ,標準入力から使用する入力ファイル名の拡張子を除く部分を入力すると,その入力ファイルから必要な情報を読み取り,計算が行われます。 今は手持ちのC++プログラム(B.exeとします。ソースコードもあります。)の中でCreateProcessを用いて,A.exeを実行させています。 このときA.exeの中では,入力ファイルを開いて,ファイルの中身を読むといった作業が行われているはずですが,これをディスク上のファイルから読むのではなく,メモリから読ませたいと思っています。つまりB.exeの中でA.exeを起動される部分の前にいったんファイル出力をして,そのファイルをA.exeの入力ファイルとしているのを,何とかファイルの入出力を行わないでA.exeを実行させたいのです。 A.exeはループの中で実行させるため,FileIOにかかる時間がバカになりません。 このようなことは可能なのでしょうか? 参考になるWebSite等を紹介していただけたら幸いです。

  • ウェブページ上のプルダウンメニューをキーボード入力で制御するには

    ウェブページ上のプルダウンメニューをキーボード入力で制御するには どうすればいいのでしょうか。 プルダウンメニューとは <SELECT NAME="test"> <OPTION VALUE="">項目1</OPTION> <OPTION VALUE="">項目2</OPTION> .... </SELECT> のようなものです。 意味不明でしたら加筆修正しますのでよろしくお願いします。

    • ベストアンサー
    • HTML
  • QGISを外部Pythonで制御したい

    QGISのメニューのプラグインにあるPythonコンソールからは動作させる事ができますが、外部のPythonを立ち上げて同様なコードを入力してもNameエラーになってしまいます。PATHの問題かな?と思って変えてみたりはしたのですがうまくいきません。アドバイスをお願いします。1、2ヶ月の初心者です。

専門家に質問してみよう