HomeC#技術項目 外部ファイルコンソール実行

外部ファイルコンソール実行

private ProcessStartInfo ExecuteCMD(string dir, string arg)
{
    // ProcessStartInfo の新しいインスタンスを生成する
    ProcessStartInfo hPsInfo = new ProcessStartInfo();

    // 起動するアプリケーションを設定する
    hPsInfo.FileName = "cmd";
    // コマンドライン引数を設定する
    hPsInfo.Arguments = arg;

    // 新しいウィンドウを作成するかどうかを設定する (初期値 false)
    hPsInfo.CreateNoWindow = true;

    // シェルを使用するかどうか設定する (初期値 true)
    hPsInfo.UseShellExecute = false;

    // 起動できなかった時にエラーダイアログを表示するかどうかを設定する (初期値 false)
    hPsInfo.ErrorDialog = true;

    // エラーダイアログを表示するのに必要な親ハンドルを設定する
    hPsInfo.ErrorDialogParentHandle = this.Handle;

    // アプリケーションを起動する時の動詞を設定する
    hPsInfo.Verb = "Open";

    // 起動ディレクトリを設定する
    hPsInfo.WorkingDirectory = dir;

    // 起動時のウィンドウの状態を設定する
    //hPsInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal;     //通常
    hPsInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;       //非表示
    //hPsInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Minimized;  //最小化
    //hPsInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Maximized;  //最大化

    return hPsInfo;
}
// ProcessStartInfo を指定して起動する
Process hProcess = Process.Start(ExecuteCMD("c:\TMP","notepad"));

// 終了するまで待機する
hProcess.WaitForExit();

// 不要になった時点で破棄する (正しくは オブジェクトの破棄を保証する を参照)
hProcess.Close();
hProcess.Dispose();



ページトップへ

データベース

サーバ

Copyright (C) MadCap. All Rights Reserved.