一懒到底——轻松注册Exe程序为Windows系统服务
当前位置:点晴教程→知识管理交流
→『 技术文档交流 』
一步实现停止->删除->注册->启动的功能,包括生成注册表文件并导入。 [ul] [li]脚本内容如下:[/li][/ul] @echo off [ul] [li]使用方法:[/li][/ul] 修改脚本中service_name、service_description、prog_path、strt这4个变量的内容,分别设置为服务名、功能描述、程序路径、启动方式,保存后运行脚本,弹出是否导入注册表,选是,大功告成,已在winxp及win2k下测试通过。 下载: 一键服务 (32.2 kib, 206 hits) 包括了instsrv.exe、srvany.exe、sc.exe三个程序,是脚本运行的基础。 [upload=rar]2010429210916-2.rar[/upload] 手工添加的方法介绍: 要把应用程序添加为服务,你需要两个小软件:Instsrv.exe和Srvany.exe。Instsrv.exe可以给系统安装和删除服务,Srvany.exe可以让程序以服务的方式运行。这两个软件都包含在Windows NT Resource Kit里. 把这两个程序保存在一个方便的位置,例如C盘根目录下。我们举例来说明,把OE作为一个服务添加进Windows XP Professional操作系统中,并把这个服务命名为“Mail”。在运行中输入“CMD”,回车,打开命令行窗口,在提示符后面直接输入:“c:\instsrv.exe Mail c:\srvany.exe”然后回车,其中的“c:\instsrv.exe”和“c:\srvany.exe”表示这两个程序保存的位置,而Mail则是你想添加的服务名称。 运行Regedit打开注册表编辑器,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services下,找到刚才添加的Mail,点击右键,新建一个键,命名为“Parameters”,点击新建的Parameters,并再次新建一个名称为“Application”的子键,数据类型为“REG_SZ”,数值为希望作为服务运行的程序的所在位置,如果你的Windows系统安装在C盘下,那么OE的程序位置就是C:\Program Files\Outlook Express\msimn.exe ,把这个路径添入数值中。到现在,这个服务已经成功的添加并且设置好了。如果你希望做的更加专业,可以在Mail服务下建立一个名为Description的子键,数据类型同样为REG_SZ,数值可以写一些你对这个服务的描述,这个我们在后面可以看到。 接下来需要对服务做一些额外的设置,在运行中输入“Services.msc”并回车,在列表中找到我们刚添加的Mail服务,双击打开,来做详细的设置。在“General”选项卡上,我们需要设置这个服务的运行方式,在图二中可以看见,作为一个服务,有“自动(Automatic)”,“手动(Manual)”和“禁止(Disabled)”三种启动类型,按照需要,我们一般设置成自动就可以了。而在“Logon”选项卡下可以设置以什么身份运行这个服务,一般可以不用理会,按照默认的设置。“Recovery”选项卡下则是进行恢复设置的,你可以指定,在服务第一次,第二次和第三次出错之后分别采取什么措施。“Dependencies”则显示了服务之间的依存关系,可以让你察看这个服务的运行依赖哪些其它服务,以及还有什么服务依赖于这个服务。这后面几个对我们一般用户没有什么意义。经过这些设置,你的服务已经完全可以正常工作了。 注销一下看看。为了让你看清除,我们先打开OE,这时在任务管理器里,有两个msimn进程,用户名为“.com.cn”的是我们打开的OE,而用户名为“SYSTEM”的就是我们添加的服务 如果你玩够了,不想再运行这个服务,可以直接禁止它在启动的时候运行,或者使用Instsrv.exe程序删除。方法是在命令行下输入“c:\instsrv.exe Mail remove”,然后回车就可以了。需要注意的是Instsrv.exe这个程序也可以删除某些系统服务,所以使用的时候一定要小心,对于系统服务,安全起见千万不要删除,哪怕你觉得它对你没有用。 如何将应用程序注册为系统服务默认分类 2009-09-24 21:47:03 阅读63 评论0 字号:大中小 . 转至:----下一站在哪 如何将应用程序注册为系统服务 我的电脑坏了 2007-10-24 15:46 阅读18 评论0 字号: 大大 中中 小小 一、应用程序具有服务功能(能响应服务控制台的查询请求) 第一种方法:使用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、在服务中,找到刚添加的服务,在属性-登录中,勾选“允许服务与桌面交互”。 该文章在 2010/4/29 21:31:22 编辑过 |
关键字查询
相关文章
正在查询... |