C#, ロジック
- DOSコマンド
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();
}
}