Macos process.WaitForExit()未在Mac OS X-ASP.NET Core 2.2中等待
我有一个ASP.NET Core 2.2应用程序。当我调用下面的测试方法(从Chrome浏览器)时,基于操作系统类型,将打开Chrome浏览器的一个新的Incognito实例 在Windows和Linux(在虚拟机中运行)中,Macos process.WaitForExit()未在Mac OS X-ASP.NET Core 2.2中等待,macos,asp.net-core-2.2,Macos,Asp.net Core 2.2,我有一个ASP.NET Core 2.2应用程序。当我调用下面的测试方法(从Chrome浏览器)时,基于操作系统类型,将打开Chrome浏览器的一个新的Incognito实例 在Windows和Linux(在虚拟机中运行)中,进程.WaitForExit()正在等待Incognito浏览器关闭 但是,在Mac OS X(在虚拟机中运行)中,进程.WaitForExit()没有等待。它在process.Start()之后立即调用 如何确保流程等待浏览器关闭 public IActionResult
进程.WaitForExit()
正在等待Incognito浏览器关闭
但是,在Mac OS X(在虚拟机中运行)中,进程.WaitForExit()
没有等待。它在process.Start()之后立即调用
如何确保流程等待浏览器关闭
public IActionResult Test()
{
string fileName = "";
string arguments = "";
if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
{
fileName = @"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe";
arguments = @"-incognito --user-data-dir=""C:\Users\bala_sakthis\AppData\Local\Temp\ChromeData"" data:,";
}
else if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
{
fileName = "google-chrome";
arguments = @"-incognito --user-data-dir=""/home/osboxes/ChromeData"" data:,";
}
else if (RuntimeInformation.IsOSPlatform(OSPlatform.OSX))
{
fileName = "open";
arguments = @"-a ""Google Chrome"" -n --args --incognito --user-data-dir=""/Users/bala/ChromeData"" data:,";
}
var process = new Process();
process.StartInfo.UseShellExecute = false;
process.StartInfo.FileName = fileName;
process.StartInfo.Arguments = arguments;
using (process)
{
try
{
process.Start();
process.WaitForExit();
Console.WriteLine("Process exited...");
Console.WriteLine(process.HasExited);
}
catch (Exception exp)
{
Console.WriteLine(exp);
}
}
return new OkResult();
}