• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VB.NETでDOSコマンドの複数実行)

VB.NETでDOSコマンドの複数実行方法とCドライブ移動できない問題

このQ&Aのポイント
  • VB.NETでバッチファイルを使わずにDOSコマンドの複数実行をする方法を探しています。試しにプログラムを作成しましたが、Cドライブに移動できない問題が発生しています。
  • 作成したVB.NETプログラムでは、ComSpecのパスを取得し、指定したコマンドを実行して結果を表示するようにしています。しかし、DIRコマンドは実行されるものの、Cドライブに移動ができません。
  • 以上の問題を解決するために、VB.NETでDOSコマンドの複数実行方法やCドライブに移動する方法について知識やアドバイスがある方に教えていただきたいです。

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

  • ベストアンサー
  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

原因は最初に起動したプロセスが CD C:\ を実行して終了してしまうためです 2度目のに起動された cmd.exe(またはcommand.com)は初期状態で起動されてしまいます したがってDIRコマンドは意図したフォルダーで実行されません DOSコマンドを複数実行したいなら &&でつなぎましょう psi.Arguments = "/c " & "CD C:\" & " && dir /w" といった具合です デバッグ段階では psi.CreateNoWindow = False のようにドス窓を表示するようにしていた方がいいように思います

KOKORO80
質問者

お礼

回答ありがとうございます。&&でつなげれば出力されるようになりました。