C#, ロジック


DOSコマンド発行クラス

		
/// <summary>DOSコマンド発行クラス</summary>
/// <example>
/// <code>
/// DosCommand dos = new DosCommand();
/// dos.Command( "cd.." );
/// dos.Command( "cd.." );
/// dos.Command( "dir" );
/// textBox1.Text = dos.WaitExit();
/// </code>
/// </example> 
public class DosCommand
{
  /// <summary>DOSコマンドプロセスの取得</summary>
  public Process DosProcess
  {
    get
    {
      return _process;
    }
  }
  private Process _process;

  /// <summary>コンストラクタ</summary>
  public DosCommand()
  {
    _process = new Process();
    _process.StartInfo.FileName = "cmd.exe";
    _process.StartInfo.UseShellExecute = false;
    _process.StartInfo.RedirectStandardInput = true;
    _process.StartInfo.RedirectStandardOutput = true;
    _process.StartInfo.CreateNoWindow = true;
    _process.Start();

  }
  /// <summary>コマンド発行</summary>
  /// <param name="szCommand">コマンド</param>
  public void Command( string szCommand )
  {
    _process.StandardInput.WriteLine( szCommand );
  }
  /// <summary>終了</summary>
  public void Exit()
  {
    _process.StandardInput.WriteLine( "EXIT" );
  }
  /// <summary>終了</summary>
  /// <returns>処理結果文字列</returns>
  public string WaitExit()
  {
    _process.StandardInput.WriteLine( "EXIT" );
    _process.WaitForExit();

    return _process.StandardOutput.ReadToEnd();
  }
}

		
	


inserted by FC2 system