2012-02-27 57 views

回答

3

Windows服务是一个Windows概念,通常与.NET本身没有任何关系,除了这些可以用.NET语言编写。

服务和普通的Windows应用程序之间的主要区别

  • 服务始终运行(通常是启动时计算机启动;根据 设计,可以手动停止或启动这些)
  • 的服务没有UI (如果要显示服务中的UI,则需要通过单独的过程执行此操作),并且大多数情况下不直接与用户交互
  • 服务在单独的Windows会话(主要是会话0)中运行,因此,(总是)的计算机
  • 服务可以提供恢复操作的所有用户之间共享(做什么对第一,第二和 后来失败)
  • 服务是有点难写,尤其是调试。因此,如果 思维写服务,请考虑控制台应用程序+ 计划任务第一 windows service vs scheduled task
1

这里有一个good article有关Windows Services:

微软的Windows服务,前身为NT服务,使您 创建运行在长期运行的可执行应用他们自己的 Windows会话。这些服务可以在计算机启动时自动启动,可以暂停和重新启动,并且不会显示任何用户的界面。 界面。这些功能使得服务非常适合在服务器上使用,或者只要需要长时间运行的功能,而不会影响与同一台计算机上的其他用户进行操作的 。

在文章的底部,您还有其他链接指向有关如何在.NET中创建Windows服务的示例。

+0

有什么区别? – 2012-02-27 07:59:35

+1

不同之处在于,您不是手动调用一些可执行文件来启动它们,但它们是在Windows中注册的,然后使用管理控制台启动,顶层并恢复它们。同样如文档中所解释的,它们不与主叫用户的Windows会话绑定。他们在自己的Windows会话中运行。 – 2012-02-27 08:00:52

+0

我没有找到所有这些细节,而搜索这就是为什么我不得不发布这个问题 – 2012-02-27 08:03:50

1

真的,windows服务只是一种特殊的程序,其目标是在System.ServiceProcess名称空间中定义的API。如果您查看reference page,那么有关创建服务的一些很好的文档。

除此之外,你只是写一个普通的旧的.Net程序。

1

在Windows NT操作系统,Windows服务是在后台运行的计算机程序。 只要Windows正在运行,Windows服务就可以配置为在操作系统启动并在后台运行时启动。或者,他们可以手动启动或通过事件启动。

相关问题