守护应用时,设置UseShellExecute为false
This commit is contained in:
parent
d055d9a997
commit
0a66f62af5
|
@ -208,7 +208,7 @@ public class ZipDeploy
|
|||
|
||||
// 如果带有 NewLife.Core.dll ,重定向基础目录
|
||||
//Arguments = $"{Arguments} --BasePath={rundir}".Trim();
|
||||
Environment.SetEnvironmentVariable("BasePath", rundir.FullName);
|
||||
//Environment.SetEnvironmentVariable("BasePath", rundir.FullName);
|
||||
ExecuteFile = runfile.FullName;
|
||||
|
||||
WriteLog("运行文件 {0}", runfile);
|
||||
|
@ -221,7 +221,7 @@ public class ZipDeploy
|
|||
|
||||
// false时目前控制台合并到当前控制台,一起退出;
|
||||
// true时目标控制台独立窗口,不会一起退出;
|
||||
UseShellExecute = true,
|
||||
UseShellExecute = false,
|
||||
};
|
||||
if (runfile.Extension.EqualIgnoreCase(".dll"))
|
||||
{
|
||||
|
@ -257,6 +257,12 @@ public class ZipDeploy
|
|||
si.RedirectStandardError = true;
|
||||
}
|
||||
|
||||
// 在环境变量中设置BasePath
|
||||
if (si.UseShellExecute)
|
||||
Environment.SetEnvironmentVariable("BasePath", si.WorkingDirectory);
|
||||
else
|
||||
si.EnvironmentVariables.Add("BasePath", si.WorkingDirectory);
|
||||
|
||||
WriteLog("工作目录: {0}", si.WorkingDirectory);
|
||||
WriteLog("启动文件: {0}", si.FileName);
|
||||
WriteLog("启动参数: {0}", si.Arguments);
|
||||
|
|
|
@ -267,7 +267,7 @@ public class LocalStarClient
|
|||
var si = new ProcessStartInfo(fileName, "-run")
|
||||
{
|
||||
WorkingDirectory = Path.GetDirectoryName(fileName),
|
||||
UseShellExecute = true
|
||||
//UseShellExecute = true
|
||||
};
|
||||
var p = Process.Start(si);
|
||||
|
||||
|
@ -300,7 +300,7 @@ public class LocalStarClient
|
|||
var si = new ProcessStartInfo(fileName, "-run")
|
||||
{
|
||||
WorkingDirectory = Path.GetDirectoryName(fileName),
|
||||
UseShellExecute = true
|
||||
//UseShellExecute = true
|
||||
};
|
||||
var p = Process.Start(si);
|
||||
|
||||
|
@ -329,7 +329,7 @@ public class LocalStarClient
|
|||
var si = new ProcessStartInfo("dotnet", $"{fileName} -run")
|
||||
{
|
||||
WorkingDirectory = Path.GetDirectoryName(fileName),
|
||||
UseShellExecute = true
|
||||
//UseShellExecute = true
|
||||
};
|
||||
var p = Process.Start(si);
|
||||
|
||||
|
|
|
@ -200,7 +200,7 @@ internal class ServiceController : DisposeBase
|
|||
|
||||
// false时目前控制台合并到当前控制台,一起退出;
|
||||
// true时目标控制台独立窗口,不会一起退出;
|
||||
UseShellExecute = true,
|
||||
UseShellExecute = false,
|
||||
};
|
||||
|
||||
// 指定用户时,以特定用户启动进程
|
||||
|
@ -227,6 +227,12 @@ internal class ServiceController : DisposeBase
|
|||
si.RedirectStandardOutput = true;
|
||||
}
|
||||
|
||||
// 在环境变量中设置BasePath
|
||||
if (si.UseShellExecute)
|
||||
Environment.SetEnvironmentVariable("BasePath", si.WorkingDirectory);
|
||||
else
|
||||
si.EnvironmentVariables.Add("BasePath", si.WorkingDirectory);
|
||||
|
||||
WriteLog("工作目录: {0}", si.WorkingDirectory);
|
||||
WriteLog("启动文件: {0}", si.FileName);
|
||||
WriteLog("启动参数: {0}", si.Arguments);
|
||||
|
|
Loading…
Reference in New Issue