目的:由于某些软件由于种种原因没有做成系统服务形式启动,必须以登录用户手动启动方式启动,用户注销软件关闭,以下方法将软件安装成系统服务,并用“允许服务与桌面交互”显示软件界面,便于操作
环境工具:
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
3.打开注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\自定义服务名称,Enum可以还不会显示(不用管它),Parameters是下一步添加的,这里可加入服务器描述Description的描述
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"="值为你要作为服务运行的程序启动所需要的参数"
5.此时你启动服务,可以看到notepad的(system)进程和一个srvany的进程
6. “允许服务与桌面交互”设置
服务à右击自定义服务à登录标签à勾选“允许服务与桌面交互”
此时重启服务,你会发现会自动弹出一个记事本窗口
问题与解决
1. 启动服务弹出1053错误?
我这里遇到了,因为把注册表“ImagePath”设置成我的软件的位置,这里应是srvany的位置
2.允许服务与桌面交互设置不生效,不弹出软件的界面?
因为win2003必须以控制台console登陆
参考http://q.cnblogs.com/q/10111/
如果还是不能显示,请参如下我是没用到如下方法http://wenku.baidu.com/view/b0cb59b265ce0508763213b2.html
参考:
转载于:https://blog.51cto.com/wonitazansa/1047028








被折叠的 条评论
为什么被折叠?



