概览
服务是整合在Microsoft Windows操作系统中的结构。服务与用户的应用程序 不同,因为你可以对他们进行配置,不需要一个激活的用户登录,就可以使这些服务在系统 启动的时候运行,直到系统关闭。Windows中的服务,负责所有种类的后台活动,但不包括从 远程过程调用(RPC)服务到网络位置服务的用户。
一些服务可能会试图显示一些用户界面对话框,或者与用户的应用程序进行通信。这些服 务都将面临与Windows 7 的兼容性问题。如果不去讨论与你的应用程序进行通信的必要的安 全准备,那么,你的服务将不能在Windows 7上工作。
目标
在本实验中,你将学会如何:
• 重新设计和修复一个试图显示 UI界面的服务
• 对服务和应用程序间共享的kernel对象,设置适当的安全和访 问级别
系统需求
完成本实验,你必须包含以下组件:
• Microsoft Visual Studio 2008
• Windows 7
• Windows Sysinternals进程浏览器
练习 #1: 简洁的服务UI 界面
在这个 练习中,你将安装并且运行一个直接向用户展示UI用户界面的服务。你将看到对用户体验十 分有效的Windows内置的自动简洁窗口(交互的服务侦测对话框),还有可以修改服务,使其 不会直接的展示UI用户界面。
你还可以修改服务,使其在当前的活动用户下,在一个独立的进程中,使用简洁的UI用户 界面。
任务 1 –安装和运行服务
作为这个任务的一部分,你需要通过 使用sc命令行安装服务,并且首先运行它。这个服务将试图展示一个会触发简洁UI用户界面 服务的用户对话框。
1.使用Visual Studio,打开Session0_Starter解决方案。
2.生成当前解决方案(请注意你使用的生成配置- Debug/Release,x86/x64)
3.打开管理员命令窗口:
4.点击 Start.
5.指向所有程序。
6. 指向 Accessories.
7.右击 Command Prompt.
8.点击以管理员身份运行。
9.使用cd命令,导向包含应用程序的输出目录。例如,如果输出目录是 C:\Session0_Starter\Debug,那么就是用下面的目录,导向到相应目录:
CMD
C:
cd C:\Session0_Starter\Debug