• 締切済み

プログラムからコマンドプロンプトを操作

はじめまして。質問させていただきます WindowsXP Home Edition SP2 GCC 3.4.5 (MinGW) コマンドプロンプトをサポートするようなソフトをイメージしています。 AllocConsole()の後CreateProcessでcmd.exeの起動まではうまくいっています。 やりたいことは、 ■(1)外部のソフトからコマンドプロンプトに対してコマンドを送りたい 例:自作アプリのボタンを押すと"dir"が送られてファイル一覧が表示される ■(2)外部のソフトのキー入力をそのままコマンドプロンプトに送りたい 例:自作アプリ上でキーボードの[a]を押すとコマンドプロンプト上で「C:\>a(カーソル)」のように入力される ■(3)コマンドプロンプトを直接操作したい 例:コマンドプロンプト上でキーボードから[C][D][ ][.][.][Enter]と押してディレクトリを移動する (1)については名前なしパイプのサンプルを発見しとりあえず解決しています。 (2)についても自作アプリ側に発生したメッセージをそのままSendMessageすることでとりあえず乗り切りました。 (3)はコマンドプロンプトの一般的な使い方です。 しかし、(1)を実現すると、(2)、(3)が共にできなくなってしまいます。(コマンドプロンプトが反応しない) これらを全て同時に実現するか、あるいは切り替えて使用する方法を探しています。 パイプの代わりにWriteConsoleInput,SendInputなども考えましたがキーコードしか送れないようなので、全角のテキスト送信には無理かと思っています。(ESCキーの送信などには使えそうです) よろしくお願いします。 参考にしたサイト: ・http://capsulecorp.studio-web.net/tora12/c/api/Console.htmlhttp://www.fides.dti.ne.jp/~tokai/vc/vcpipe.html (現在のソースはここのサンプルから標準出力の部分を削除したようなものです)

みんなの回答

  • lv4u
  • ベストアンサー率27% (1862/6715)
回答No.1

>>これらを全て同時に実現するか、あるいは切り替えて使用する方法を探しています。 キーボードと回線や他のソフトからの入力を同時に処理する場合は、select命令を使うのが一般的です。使い方の例はネットを探すとあると思いますよ。

関連するQ&A

  • コマンドプロンプトからアプリを操作

    コマンドプロンプトの質問です。 コマンドプロンプトと別に、アプリが1つ立ち上がっています。 アプリにはテキストボックスと送信ボタンがあるウィンドウ、 送信したテキストを表示するエリアとログ消ボタンがあるウィンドウの2ウィンドウで構成されています。 (タスクマネージャでのプロセスは1つです) アプリはコマンドプロンプトから起動したものではなく、自作したものでもありません(中身の詳しいことは分かりません)。 この条件下で、コマンドプロンプトからアプリ側のテキストボックスに入力、送信ボタンを押す、ログ消ボタンを押す、といったことは可能でしょうか? 手順を教えて頂けると助かります。よろしくお願い致します。

  • コマンド プロンプト

    java初心者です。「やさしいjava」という本を買い、それで学ぼうとしているのですが、早速躓きました。 最初にコマンドプロンプトに打ち込むところで、本の通り「cd c:\YJSample\01」と打ち、「>javac Sample1.java」と打ち込んだのですが、「'javac'は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません。」と出るのですがどうすれば解決できるのでしょうか?

    • ベストアンサー
    • Java
  • コマンドプロンプトにて

    すみません、初質問で機械オンチなdoanです。 コマンドプロンプトでSSIDというのを表示させたいんですが、コマンドプロンプトを開いてipconfig ENTERキーと押しても「ipconfigは内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません」と表示されてしまいます。 ほかのコマンドもちゃんと動くものと動かないものがあります。治す方法はないでしょうか?

  • コマンドプロンプトで

    こんにちは。質問させてください。 いままでPHPをWEBブラウザの処理をMainに作成してきました。 簡単な文字列を整形するプログラムを作りました。 これは画面(ブラウザ)に表示するのではないので コマンドプロンプトで実行したいのですが、 単に c:\work>sample.php と実行すると、 エディタが開いてsample.phpの内容を表示するだけに なってしまい、特に処理が行われていません。 どのようにすればコマンドプロンプトから実行できるのでしょうか? C言語のように実行ファイルをコマンドプロンプトから 実行して処理させるようにしたいのですが・・・・ 質問自体が大きな間違いでしたらすみません。 どうかよろしくお願いいたします。

    • 締切済み
    • PHP
  • コマンドプロンプト

    PC: ThinkPad i Series 1800(2632-I1J) IBMのサイト(http://www-6.ibm.com/jp/domino05/pc/download/download.nsf/DownloadSearchView/834995F82542965849256C1E0053EB60)からPC-Doctor 用のディスケットを作ろうとしております。 上記サイトの手順に従ってコマンドプロンプトに”C:\WINDOWS>cd \DOWNLOAD”と入れて ”Enter”キーを押すと、「’C:\WINDOWS’は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません。」と出て先に進めません。 どうしたらコマンドプロンプトでディスケットを作ることができるでしょうか?ご存知の方いらっしゃいましたらご教示いただけますとありがたいです。よろしくお願いします。

  • コマンドプロンプトのエラー

    Windows10です コマンドプロンプトで、Java のサンプルプログラムをコンパイルしようとすると、以下のようになります。何が原因でしょうか? C:\Program Files\Java\jdk-15.0.1\src →ここにHello.java のサンプルプログラム(テキスト)は存在します。 C:\Program Files\Java\jdk-15.0.1\bin\→ここにjava.exeは存在します --------------------------------- (以下、コマンドプロンプトの画面) C:\Program Files\Java\jdk-15.0.1\src>C:\Program Files\Java\jdk-15.0.1\bin\javac Hello.java 'C:\Program' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。

  • コマンドプロンプト CDできない

    Win10です。 C:WINDOWS\system32> というのがコマンドプロンプト、またはPower shell で、最初に出てきます。 で、CD C: とか、CD C:Windows (\)とか、いれてみますと、 コマンドプロンプトでは、再度、C:WINDOWS\system32> になりますし、power shell では、>>が出ます。 CDを実現するにはどうすればよいのでしょうか。

  • コマンドプロンプトからftpコマンドを打つ

    お世話になります。 コマンドプロンプトからftpコマンドを使ってファイルをアップロードしようと思います。 ですが、ftpとコマンドをコマンドプロンプト内で打つと、 「’ftp’は、内部コマンドまたは外部コマンド、 操作可能なバッチファイルとして認識されていません。」 と表示されます。 打ったコマンド: C:\DocumentAndSetting>ftp IPアドレス 調べてみたのでですが、原因がわからず、質問させていただいた次第です。 どなたかアドバイスお願いします。

  • コマンドプロンプトでコマンドが使えません。

    はじめまして コマンドプロンプトに前々から興味があり最近勉強を始めたのですが、 他人のパソコンでできる事が自分のパソコンではできない事があり戸惑っています。 内容としては、自分のパソコン【WindowsXP】でコマンドプロンプトを立ち上げ【ipconfig】と入力してもコマンドを認識してくれないというものです。 他にも【help】などのコマンドも認識してくれません。 実際の画面としては C:\>ipconfig 'ipconfig' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 といった表示になっています。 色々なコマンドを試したいのですが勉強が進まないので困っています。 分かる方がいましたら是非教えてください、よろしくお願い致します。

  • コマンドプロンプトを使ったC言語

    こんにちは。 現在C言語を勉強している者です。 やりたいこととしては コマンドプロンプト上で、****.cファイルを実行して CドライブやDドライブ内のファイルを移動やコピーをしたいと考えております。 また、その際(移動やコピーの実行後)に コマンドプロンプト上で"Successful!!"等を表示させたいと考えております。 そこで質問なのですが 1. 上記内容を実現するに従って必要なソフト(コンパイラ)等ありましたら教えて下さい。 2. コマンドプロンプトを利用するにあたって、移動やコピー以外にも、もっと有効利用等ありましたらご教授下さい。 宜しくお願いします。

専門家に質問してみよう