【问题标题】:Debugging successful but service not working after installation调试成功但安装后服务不工作
【发布时间】:2009-02-03 16:40:07
【问题描述】:

我在服务中使用以下代码通过将服务作为控制台应用程序运行来成功调试服务并验证一切正常。但后来当我安装服务并将其作为 Windows 应用程序启动时,服务正在运行如服务控制台所示,但它没有做它必须做的工作。我想知道在这种情况下出了什么问题。谢谢。

静态无效 Main() { System.ServiceProcess.ServiceBase[] ServicesToRun;

        if (Environment.UserInteractive)
        {
            ListenerSVC service = new ListenerSVC();
            service.OnStart(null);
            Console.WriteLine("Press any key to stop program");
            Console.Read();
            service.OnStop();
        }
        else
        {

            ServicesToRun = new System.ServiceProcess.ServiceBase[] { new ListenerSVC() };
            ServiceBase.Run(ServicesToRun);


        }
    }

【问题讨论】:

    标签: .net service installation


    【解决方案1】:

    您是否尝试过捕获/记录任何异常?最可能的原因是安全性(即服务帐户无权访问某些资源)。定位服务的 .config 文件时也经常出现问题(如果您使用的是配置,请注意这一点)。最后,为简单起见,尝试使用命令 arg 以防UserInteractive 报告不正确 - 我倾向于使用“-c”作为控制台/调试模式。

    【讨论】:

    • 我正在将状态记录到数据库中,是的,它显示“拒绝访问消息队列系统”。我正在尝试使用侦听器服务从系统中的私有队列中读取消息。
    • 我已经关闭了 UAC,我还添加了应用程序清单来提升权限。我不知道特定于消息队列系统的安全需求。我检查了消息队列属性,发现安全选项卡没有显示在 WORKGROUP 模式下运行的任何设置。
    猜你喜欢
    • 1970-01-01
    • 2017-11-19
    • 2014-07-30
    • 2012-09-03
    • 1970-01-01
    • 2023-03-27
    • 1970-01-01
    • 2021-10-25
    • 1970-01-01
    相关资源
    最近更新 更多