gpt4 book ai didi

c# - 为什么我的 Windows C# 服务崩溃?

转载 作者:可可西里 更新时间:2023-11-01 10:47:24 25 4
gpt4 key购买 nike

我正在编写一个 Windows 服务,除其他外,它需要启动一个具有管理权限的辅助程序。除了尝试加载辅助程序外,该服务工作完美。以下是代码。 “找到更新”被回显到日志中,但奇怪的是“Exception”或 exception.tostring() 不是。无需在下方粘贴此新代码即可启动、运行和停止该服务。现在我正在尝试从该服务启动另一个程序,该服务很快回显“找到更新”,我注意到该服务立即在 services.msc 中显示为“服务已停止”。

有人知道为什么我的 Windows C# 服务在启动第二个程序时崩溃了吗?

System.IO.File.AppendAllText(AppDomain.CurrentDomain.BaseDirectory + "log.txt", "Update Found\r\n");
try
{
System.Diagnostics.Process processss = new System.Diagnostics.Process();
System.Diagnostics.ProcessStartInfo startInfooo = new System.Diagnostics.ProcessStartInfo();
startInfooo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
startInfooo.FileName = "cmd.exe";
startInfooo.Arguments = "/C " + AppDomain.CurrentDomain.BaseDirectory + "Manager.exe";
processss.StartInfo = startInfooo;
processss.Start();
System.Threading.Thread.Sleep(10000);
}
catch (Exception ex)
{
System.IO.File.AppendAllText(AppDomain.CurrentDomain.BaseDirectory + "log.txt", "Exception");
System.IO.File.AppendAllText(AppDomain.CurrentDomain.BaseDirectory + "log.txt",ex.ToString());
}

最佳答案

如果您使用的是 Windows Vista 或更高版本,由于服务隔离,您将无法启动任何交互式应用程序。

以下是您问题的一些很好的答案:

How can I run an EXE program from a Windows Service using C#?

How to run console application from Windows Service?

关于c# - 为什么我的 Windows C# 服务崩溃?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17780450/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com