in src/Program.cs [28:54]
private static int RerunMainAs32BitProcess(string[] args)
{
var platformSpecificExecutable = "ClrStack32.exe";
var assemblyDirectory = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
var fullPath = assemblyDirectory != null
? Path.Combine(assemblyDirectory, platformSpecificExecutable)
: platformSpecificExecutable;
var process = new Process
{
StartInfo = new ProcessStartInfo(fullPath, string.Join(" ", args))
{
CreateNoWindow = true,
RedirectStandardOutput = true,
RedirectStandardError = true,
UseShellExecute = false
}
};
process.OutputDataReceived += (sender, eventArgs) => Console.WriteLine(eventArgs.Data);
process.ErrorDataReceived += (sender, eventArgs) => Console.Error.WriteLine(eventArgs.Data);
process.Start();
process.BeginOutputReadLine();
process.BeginErrorReadLine();
process.WaitForExit();
process.CancelOutputRead();
process.CancelErrorRead();
return process.ExitCode;
}