cmdで2つのコマンドを実行する必要があります。私の研究にもかかわらず、私は自分の問題に対する実行可能な解決策を見つけられませんでした。まず、ディレクトリにcdしてから、そのディレクトリでexeを実行する必要があります。
using (Process process = new Process())
{
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.RedirectStandardError = true;
process.StartInfo.WorkingDirectory = @"C:\Program Files\Blacksmith\bin\apache\bin";
process.StartInfo.FileName = "cmd.exe";
process.StartInfo.Arguments = @" \c httpd.exe";
// Redirects the standard input so that commands can be sent to the shell.
process.StartInfo.RedirectStandardInput = true;
process.OutputDataReceived += ProcessOutputDataHandler;
process.ErrorDataReceived += ProcessErrorDataHandler;
process.Start();
process.BeginOutputReadLine();
process.BeginErrorReadLine();
process.WaitForExit();
}
cmd.exeを介してhttpd.exeを実行し、ApacheがWindowsサービスとして実行されないようにしようとしています。