私のアプリケーションは、ドメインコンピュータを制御するために "C:\ Windows \ System32 \ Msra.Exe"を起動します。このmsra.Exeが示すエラーメッセージをキャプチャする方法はありますか? (つまり、私のアプリケーションからのものではなく、msra.exeからの内部エラーメッセージ) アプリケーション自体はWindowsフォームアプリケーションです。C# - Windowsアプリケーション出力のキャプチャ
何か助けていただければ幸いです。
MSRAを開始するコードは以下の通りです。これは、完全なアプリケーションの単なるスニペットです。 http://msdn.microsoft.com/en-us/library/system.diagnostics.process.standardoutput.aspx
にあなたが必要
string msra = "C:\\Windows\\System32\\runas.exe";
string domainname = "**********";
string domaincontroller = "*************";
if (File.Exists(msra) == false)
{
System.Windows.Forms.MessageBox.Show("Runas.exe not found.\n\rPlease contact your internal IT support.", "Fatal Error", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error);
}
else
{
try
{
Process p = new Process();
p.StartInfo.UseShellExecute = true;
p.StartInfo.WindowStyle = ProcessWindowStyle.Normal;
p.StartInfo.ErrorDialog = true;
p.StartInfo.FileName = msra;
p.StartInfo.Arguments = "/noprofile /netonly /user:" + domainname + "\\" + username + " \"cmd /server:" + domaincontroller + " /C msra.exe /offerra " + computerip + "\"";
p.Start();
p.Dispose();
Thread.Sleep(1700);
SendKeys.SendWait(password);
SendKeys.SendWait("{ENTER}");
}
catch
{
System.Windows.Forms.MessageBox.Show("MSRA could not be started for an unknown reason");
}
}
可能重複[別のプログラムをC#でテキストボックスにコンソール出力をリダイレクト](のhttp:// stackoverflowの.com/questions/415620/redirect-console-output-to-textbox-in-separate-program-c-sharp) – tenfour