为什么我的自定义Windows服务无法正常工作?

时间:2011-04-29 14:55:46

标签: c# .net service windows-services

我创建了一个服务,它会在启动时显示“Hello World”消息。 该服务的OnStart方法包含以下代码:

protected override void OnStart(string[] args)
{
    System.Windows.Forms.MessageBox.Show("Hello World");
}

服务安装完美,但是当我启动服务时,我收到以下错误。

  

本地计算机上的RucService已启动,然后停止。如果某些服务无需执行任何工作,则会自动停止,例如,性能日志和警报服务。

Error Message

所以它没有显示消息Hello World。为什么会这样?

2 个答案:

答案 0 :(得分:4)

不要尝试使用服务中的UI元素(Windows窗体)。服务不应包含UI组件。如果需要有用户界面进行配置等,请让服务从数据库中提取其设置,并创建一个单独的应用程序来管理配置。

答案 1 :(得分:1)

保持服务& UI分开。尝试&的不良做法在服务中使用Windows窗体。如果需要集成这两者,可以尝试使用套接字或其他一些IPC机制。