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



我正在编写一个Windows服务,它需要启动一个具有管理权限的辅助程序。除了尝试加载辅助程序外,该服务运行良好。以下是代码。日志中会回显"Update-Found",但奇怪的是"Exception"或Exception.tostring()没有。该服务可以在不粘贴以下新代码的情况下启动、运行和停止。现在我正试图从该服务启动另一个程序,该服务很快响应"找到更新",我注意到该服务在services.msc中立即显示"服务已停止"。

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

System.IO.File.AppendAllText(AppDomain.CurrentDomain.BaseDirectory + "log.txt", "Update Foundrn");
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或更高版本,由于服务隔离,您将无法启动任何交互式应用程序。

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

如何使用C#从Windows服务运行EXE程序?

如何从Windows服务运行控制台应用程序?

相关内容

  • 没有找到相关文章

最新更新