たとえば、私はこのコードを持っています:
Process proc = new Process();
proc.EnableRaisingEvents = true;
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.FileName = "dxdiag.bat";
proc.StartInfo.CreateNoWindow = true;
proc.Start();
proc.WaitForExit();
proc.Close();
プロジェクト \debug ディレクトリからファイル dxdiag.bat を削除すると、次の行で例外が発生するかどうかをテストしました。
proc.Start();
ファイルが見つからないこと。ファイルが \debug ディレクトリにあると、機能します。
dxdiag.bat ファイルを自分のプロジェクトに追加したいので、自分のプログラムを他の人に送信すると、その人は自分のプログラムを実行でき、プロセスはプログラム自体から dxdiag.bat を実行するので、プログラムを送信したファイルは実行されません。自分のハードディスクにbatファイルが必要です。