Windows 服务应用程序介绍(仅供学习交流用).docVIP

Windows 服务应用程序介绍(仅供学习交流用).doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Windows 服务应用程序介绍.NET Framework 2.0 其他版本 Microsoft Windows 服务(即,以前的 NT 服务)使您能够创建在它们自己的 Windows 会话中可长时间运行的可执行应用程序。这些服务可以在计算机启动时自动启动,可以暂停和重新启动而且不显示任何用户界面。这些功能使服务非常适合在服务器上使用,每当需要使用不会影响在同一台计算机上工作的其他用户的功能时也适用。还可以在不同于登录用户的特定用户帐户或默认计算机帐户的安全上下文中运行服务。有关服务和 Windows 会话的更多信息,请参见 MSDN Library 的 Platform SDK 文档中的关于服务一节。 注意 Visual Studio 标准版中不提供 Windows 服务模板及相关功能。有关更多信息,请参见 Visual Studio 版本。 通过创建作为服务安装的应用程序,可以轻松地创建服务。例如,假设要监视性能计数器数据并对阈值做出反应。可以编写一个侦听性能计数器数据的 Windows 服务应用程序、部署该应用程序并开始收集和分析数据。 将服务创建为 Microsoft Visual Studio 项目,并在其中定义代码,以控制哪些命令可以发送到服务以及接收到这些命令时采取的操作。可以发送到服务的命令包括启动、暂停、继续和停止该服务;还可以执行自定义命令。 创建并生成了应用程序后,可以通过运行命令行实用工具 InstallUtil.exe 并将路径传递给服务的可执行文件,或通过使用 Visual Studio 的部署功能来安装该应用程序。然后可以使用“服务控制管理器”启动、停止、暂停、继续和配置服务。这些任务中的许多种也可以在“服务器资源管理器”的“服务”节点中或通过使用 ServiceController 类来完成。 服务应用程序与其他 Visual Studio 应用程序 服务应用程序与其他许多项目类型的功能在几个方面有所不同: 必须将服务应用程序项目创建的已编译可执行文件安装在服务器上,此项目才能以有意义的方式运行。不能通过按 F5 或 F11 来调试或运行服务应用程序;不能立即运行服务或进入其代码。相反,必须安装和启动服务,然后将一个调试器附加到服务的进程中。有关更多信息,请参见如何:调试 Windows 服务应用程序。 与一些类型的项目不同,对于服务应用程序,必须为其创建安装组件。安装组件在服务器上安装和注册服务,并用 Windows“服务控制管理器”为服务创建一个项。有关更多信息,请参见如何:将安装程序添加到服务应用程序。 服务应用程序的 Main 方法必须为项目包含的服务发出 Run 命令。Run 方法将服务加载到适当服务器上的“服务控制管理器”中。如果使用“Windows 服务”项目模板,系统将自动为您写入此方法。注意,加载服务与启动服务不同。有关更多信息,请参见下面的“服务生存期”。 Windows 服务应用程序在不同于登录用户的交互区域的窗口区域中运行。窗口区域是包含剪贴板、一组全局原子和一组桌面对象的安全对象。由于 Windows 服务的区域不是交互区域,因此 Windows 服务应用程序中引发的对话框将是不可见的,并且可能导致程序停止响应。同样,错误信息应记录在 Windows 事件日志中,而不是在用户界面中引发。 .NET Framework 支持的 Windows 服务类不支持与交互区域(即登录用户)进行交互。同时,.NET Framework 不包含表示区域和桌面的类。如果 Windows 服务必须与其他区域进行交互,则需要访问非托管的 Windows API。有关更多信息,请参见 Platform SDK 文档中的窗口区域和桌面。 设计 Windows 服务与用户或其他区域的交互时必须非常小心,应考虑某些情况,例如没有登录的用户或用户具有一组意外的桌面对象的情况。在某些情况下,编写一个在用户控制下运行的 Windows 应用程序可能更为妥当。 Windows 服务应用程序在各自的安全上下文中运行,并且在用户登录到安装有该程序的 Windows 计算机之前启动。应仔细计划在哪些用户帐户内运行服务;在系统帐户下运行的服务比在用户帐户下运行的服务具有更多的权限和特权。 服务生存期 服务在其生存期内要经历几个内部状态。首先,将服务安装在将要运行它的系统上。此过程执行服务项目的安装程序,并将服务加载到该计算机的“服务控制管理器”中。“服务控制管理器”是由 Windows 提供的管理服务的核心实用工具。 服务加载后,必须启动。启动服务使服务开始运行。可以从“服务控制管理器”、从“服务器资源管理器”或通过调用 Start 方法从代码启动服务。Start 方法将处理传递给

文档评论(0)

80092355km + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档