服务(Service)的概念及常见问题
来源:互联网 发布:fuzor软件 baidu 编辑:程序博客网 时间:2024/05/22 09:57
概念:
1.只在Windows NT以上的版本中才有服务。
2.用服务管理器(SCM)来管理服务(启动、停止、禁用等)
3.服务的启动方式:
a)自动:当操作系统启动后自动启动,在登录前就已经启动
b)手动:必须手工启动。
4.服务所用的账号:SYSTEM(系统账号)
常见问题:
1.账号问题:在服务中直接调用GetUserName得到的账号是SYSTEM,如果想得到当前登录用户的账号,必须模拟用户。
2.服务启动的程序问题:在服务中直接调用CreateProcess或者ShellExec启动的进程还是服务,即该进程运行在SYSTEM账号下,如果想启动用户进程,需要使用CreateProcessAsUser。
3.注册表:在服务中访问HKEY_CURRENT_USER注册表键下的值,通过regedit一般看不到,如果想访问当前登录用户的注册表,必须模拟 用户,并且还要注意先关闭HKEY_CURRENT_USER键,即RegCloseKey(HKEY_CURRENT_USER)。
4.访问文件:在服务中访问文件最好是给出文件的全路径,因为服务是由系统启动的,所以当前的路径不是exe文件的路径。
5.UI显示:一般情况下,不在服务中显示UI,而应该由服务启动用户进程来显示UI。如果必须在服务中显示UI,则需要在安装服务时,把服务的属性加上SERVICE_INTERACTIVE_PROCESS。
6.删除服务:用API删除,不用命令行参数。
1.只在Windows NT以上的版本中才有服务。
2.用服务管理器(SCM)来管理服务(启动、停止、禁用等)
3.服务的启动方式:
a)自动:当操作系统启动后自动启动,在登录前就已经启动
b)手动:必须手工启动。
4.服务所用的账号:SYSTEM(系统账号)
常见问题:
1.账号问题:在服务中直接调用GetUserName得到的账号是SYSTEM,如果想得到当前登录用户的账号,必须模拟用户。
2.服务启动的程序问题:在服务中直接调用CreateProcess或者ShellExec启动的进程还是服务,即该进程运行在SYSTEM账号下,如果想启动用户进程,需要使用CreateProcessAsUser。
3.注册表:在服务中访问HKEY_CURRENT_USER注册表键下的值,通过regedit一般看不到,如果想访问当前登录用户的注册表,必须模拟 用户,并且还要注意先关闭HKEY_CURRENT_USER键,即RegCloseKey(HKEY_CURRENT_USER)。
4.访问文件:在服务中访问文件最好是给出文件的全路径,因为服务是由系统启动的,所以当前的路径不是exe文件的路径。
5.UI显示:一般情况下,不在服务中显示UI,而应该由服务启动用户进程来显示UI。如果必须在服务中显示UI,则需要在安装服务时,把服务的属性加上SERVICE_INTERACTIVE_PROCESS。
6.删除服务:用API删除,不用命令行参数。
- 服务(Service)的概念及常见问题
- Service(服务)-概念的整理
- Web服务(Web Service)相关概念
- web service的概念及应用场合(转载)
- 01.1android Service的概念及作用
- Service概念及用途:
- 服务降级的概念及应用手段
- android基础笔记:服务(Service):基础知识及本地服务的实现
- Windows Service服务程序的原理及实现(0)服务主函数 & 控制处理函数
- Android---服务(Service)的绑定服务
- 服务(Service)的使用方法
- VxWorks基本概念及常见问题及BSP 概念
- windows服务开启应用程序的常见问题及解决办法
- Web Service概念及用途
- web service概念及CXF服务端的开发
- web service 的概念
- android的服务进程Service的创建及启动
- Windows Service服务程序的原理及实现(1)实现对服务的控制和管理
- classpath详解
- FireFox必备插件(一)
- javascript通过className獲取文件元素
- 写一个GAMEBOY的模拟器
- Hibernate继承映射--每个子类一个数据表的实现案例
- 服务(Service)的概念及常见问题
- page,request,session,application的区别
- Lotus Domino R5 开发心得
- 怎样删除STL容器中的元素
- SQL2000存储过程的基础教程
- JSP连接数据库方法大全
- CygWin在windows下的安装步骤
- 呵呵
- Windows Mobile开发环境搭建指南