windows 服务注册

[原创]如何将应用程序注册为系统服务
2007-07-12 18:22
一、应用程序具有服务功能(能响应服务控制台的查询请求)

第一种方法:使用instsrv.exe(windows 2003资源工具包带有),指令格式:instsrv 服务显示名 应用程序路径

第二种方法:在注册表中手工添加,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\下新建一个项,项名为欲显示的服务名(也可以为任意字符,仅供识别),在这个项下新建如下键值:

"DisplayName"=(字符串值)服务显示名
"Description"=(字符串值)服务描述
"ImagePath"=(可扩充字符串值)应用程序路径
"ObjectName"=(字符串值)"LocalSystem"
"Type"=(dword值)10(16进制)
"Start"=(dword值)2(16进制)
"ErrorControl"=(dword值)1(16进制)

二、应用程序不具有服务功能(不能响应服务控制台的查询请求)

大多数应用程序都不具有服务功能,这样按照上述方法加进去的应用程序在服务刚启动时能够启动,但一当服务控制台无法接收到应用程序的反馈信息,便会终止程序,因此要使用srvany.exe(同样,在win2003资源工具包中)

1、instsrv.exe 服务显示名 srvany.exe

2、在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\下,找到刚添加的服务名,在其下新建项Parameters,再在其下新建字符串值,名Application,值为应用程序路径。

3、在服务中,找到刚添加的服务,在属性-登录中,勾选“允许服务与桌面交互”。

猜你喜欢

转载自waitgod.iteye.com/blog/982012