• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:telnetで接続先の操作方法について)

telnetで接続先の操作方法について

このQ&Aのポイント
  • telnetで接続先の操作方法について
  • visualC++でプログラムを作成し、バッチファイルを呼び出す方法を説明します
  • telnetで接続して(1)は成功するが、(2)と(3)が実行されない問題についてアドバイスを求めています

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

  • ベストアンサー
  • Wr5
  • ベストアンサー率53% (2173/4061)
回答No.1

>バッチファイルの内容は >(1)telnet 192.168.○○○ >(2)cd フォルダA >(3)test.exe >です。 >作って実行してみると(1)の接続はできました。ですがその次の(2)、(3)は実行されませんでした。 telnetコマンドが終了するまで、バッチファイルは次の処理に進みません。 サーバ側から切断させればtelnetコマンドが終了しますので、次の行のcdコマンド、およびtest.exeが『クライアントのローカル環境で』実行されます。 そういうバッチファイルになっています。 希望する動作は、telnetで接続して、サーバ側でディレクトリ移動とtest.exeを実行したいのではないですか? telnetコマンドの標準入力に流し込めば動くかと思われますが… # ただし、試したコトはありません。 バッチファイルではなく、CreateProcess()でプロセス起動して、標準入出力のパイプで操作する。 という方法もあります。 「CreateProcess パイプ」辺りで検索すると見つかるでしょう。 http://www.fpcu.jp/dosvcmd/bbs/log/cat1/4-0451.html こんなネタもあります。 他の方法としては…希望する処理を記述したTeraTermマクロを作成して、system()でそのマクロを実行する。 とかですかね。 たぶんこっちの方が簡単でしょう。

708wildcat
質問者

お礼

回答ありがとうございます。 telnetコマンドが終了するまで次の命令に移らないんですね。 勉強になりました。 アドバイスしてくださったのを試してみます。ありがとうございました

関連するQ&A