软件自定义服务方法

 目的:由于某些软件由于种种原因没有做成系统服务形式启动,必须以登录用户手动启动方式启动,用户注销软件关闭,以下方法将软件安装成系统服务,并用“允许服务与桌面交互”显示软件界面,便于操作

环境工具:

Windows Server 2003 Resource Kit Tools中的instsrv.exe和srvany.exe

Instsrv.exe可以给系统安装和删除服务, Srvany.exe可以让程序以服务的方式运行

下载地址

http://www.microsoft.com/en-us/download/details.aspx?id=17657

步骤

1.nstsrv.exe和srvany.exe拷贝c:\WINDOWS\System32\下

2.在dos下运行如下命令,在系统服务添加服务

c:\WINDOWS\System32\instsrv.exe Notetest c:\WINDOWS\System32\srvany.exe

clip_image002

3.打开注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\自定义服务名称,Enum可以还不会显示(不用管它),Parameters是下一步添加的,这里可加入服务器描述Description的描述

clip_image004

4.添加Parameters项,有软件程序的位置,可以用以下存为.reg,导入,先备份注册表

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Notetest\Parameters]

"Application"="C:\\WINDOWS\\system32\\notepad.exe"

"AppDirectory"="C:\\WINDOWS\\system32\\"

"AppParameters"=""

"Application"="值为你要作为服务运行的程序地址"

"AppDirectory"="值为你要作为服务运行的程序所在文件夹路径"

"AppParameters"="值为你要作为服务运行的程序启动所需要的参数"

clip_image006

5.此时你启动服务,可以看到notepad的(system)进程和一个srvany的进程

clip_image007

6. “允许服务与桌面交互”设置

服务à右击自定义服务à登录标签à勾选“允许服务与桌面交互”

clip_image008

此时重启服务,你会发现会自动弹出一个记事本窗口

clip_image010

问题与解决

1. 启动服务弹出1053错误?

我这里遇到了,因为把注册表“ImagePath”设置成我的软件的位置,这里应是srvany的位置

clip_image012

2.允许服务与桌面交互设置不生效,不弹出软件的界面?

因为win2003必须以控制台console登陆

参考http://q.cnblogs.com/q/10111/

如果还是不能显示,请参如下我是没用到如下方法http://wenku.baidu.com/view/b0cb59b265ce0508763213b2.html

参考:

http://wenku.baidu.com/view/afe0e0e29b89680203d8257b.html

http://wangye.org/blog/archives/42/

你可能感兴趣的:(windows,允许服务与桌面交互,serices,Instsrv.exe,Srvany.exe)