在Windows平台下实现应用程序服务自启动
2024-06-07
来源:榕意旅游网
第18卷第2期 河南机电高等专科学校学报 VoI.18№.2 2010年o3月 Journal of Henan Mechanical and Electircal Engineering College Mar.2010 在Windows平台下实现应用程序服务自启动 苏强林 (河南机电高等专科学校实验管理中心,河南新乡453002) 摘要:介绍了几个在Windows操作系统下常用的应用程序自启动的方法,比较了自启动方法I'- ̄1的差别及优缺点, 并详细介绍了服务自启动的方法及简单应用。 关键词:系统服务;自启动;应用程序 中图分类号:TP316.7 文献标识码:A 文章编号:1008—2093(2010)02—0031—02 在服务器的使用过程中,我们希望服务器不间断 表1不同启动方法间的比较 地运行,但是有时会出现突然停电、软件故障、正常维 比较名称 “启动”文件火 注删表 系统服务项 护等原因导致的服务器重启,其结果往往会造成服务 器内正在运行的提供服务的程序开机后不再运行,此 时就需要系统管理员重新配置。应用程序提供的服 务没有实时性、可靠性保障,对网络会造成很大影响, 2注册系统服务,实现服务自启动 大多数系统管理员对此都深有体会。因此,在编程或 者使用其他软件的过程中,经常需要用到自动启动, 在Windows操作系统下实现服务自启动,用到的 以减少人手动操作的繁琐。 是:Instsrv.exe和Srvany.exe——Windows NT Resource Kit提供的两个实用程序,可以创建Windows NT用户 1 自启动介绍 定义的有关Windows NT应用程序和某些的l6位应 在系统的启动过程中,能够使应用程序自动启动 用程序(不是批处理文件)的服务。 的方法很多 。 1)Instsrv.exe 第一种,“启动”文件夹。这种方法比较简单,只 Instrsrv.exe从Windows NT中安装和删除系统服 要我们将做好的应用程序或者快捷方式放到此文件 务,使用Srvany.exe允许任何Windows NT应用程序 夹下,在系统启动的过程中会自动运行此可执行文 作为服务运行。 件。 格式:instsrv<service name‘> <srvany path> 第二种,添加到注册表。运行REGEDIT打开注 service name是自定义的服务名称,在Windows 册表编辑器,依次打开HK—LOCAL—MAC HIO\soKr- 系统中可以管理到的服务名称。 WARE\MICROSOFT\WINDOWS\CURRENTVERSION srvany path包括工具Srvany.exe的存放路径和文 \RUN\,点右键新建一个字符串,名字随便取,内容为 件名。 文件的全称和参数。 2)Srvany.exe 第三种,注册为系统服务。把需要自启动的可执 微软推出的用于将一个程序注册为一个服务的 行程序注册为系统服务项,设置服务为自动启动。 小程序,配合Instsvr.exe使用,它可以实现将任何可 如表1,相比其他两种方法,注册为系统服务的启 执行程序设置成服务启动。 动方法可以使程序在不登录用户的情况下进行加载, 可以实现在服务器掉电后自动启动的过程中,不用人 3应用举例 为地参与系统启动过程,而直接把需要运行的服务加 3.1 将流量监控程序(MRTG)制作为服务自启动 载成功。同时可以避免其他用户在使用服务器的过 1)将Instsrv.exe和Srvany.exe复制到c:\tools\ 程中,因误操作停掉前台的程序。 目录。 2)perl的安装路径:C:\perl\bin\per1.exe,要启动 十收稿日期:2009—10—21 作者简介:苏强林(1980一)。男,河南新乡人,讲师,硕士,主要从事汁算机网络技术研究。 31 河南机电高等专科学校学报 2010年2期 rameters”的MRTG配置文件路径:c:\mrtg ̄bin\。 ,在”Parameters”的子项里,添加: 3)在命令提示符下,进入c:\tools\目录下执行: instsrv mrtg”e.-\tools\Srvany.exe” ”Application”,字符串的值: ”d:\Ylnware\vmware.exe”一x“d:、vmare\Win— dows2003.VUlX” 安装mrtg为系统服务。 4)配置Srvany (1)方法一修改注册表 在注册表hkey—local—machine\system\currenteon— trolct\sservices、mrtg中添加一个parameters项,再在 如果要开机加载两个虚拟机系统,只需要在其后 再添加一个虚拟机配罨文件粥径即可。 5)在服务中将虚拟机服务设置为自动启动。 在“服务”中,设置VHlal'e为自动,开机就会自动 parameters子键中添加以下项目: 执行。 ”Application”的字串值,内容为C:\perl\bin\per1. 说明:在服务的Parameters(参数)中设置的三项 exe 分别是:“Application”设置可执行的应用程序,这里应 ”Appdireetory“的字串值,内容为c:\mrtg\bin\ 用程序必须指定完整的路径;“AppParameters”应用程 ”AppParameters”的字串值,内容为mrtg mrtg.cfg 序的执行参数;“Appdireetory”应用程序执行的目录。 (2)方法二创建一个注册表文件mrtg.reg 内容如下: Windows Registry Editor Version 5.00 HKEYLOCAL——其中后两项可以省略,在“Application”中直接设置可 执行程序的执行参数即可,但是一定要清楚可执行程 序在执行过程中的具体设置,否则会导致服务不能正 MACHINE|SYSTEM|CurrentCon— 常使用。 如果投有正确设置5rvany.exe,服务将停止它的启 trolSet\Services\mrtg\Parameters l ”Apphcation”=”C:\\perl\\bin\\wped.exe” 动并返回一个事件ID 7000“service name无法启动”。 ”AppParameters”:”c:\\mrtg\\bin\\mrtg C:\\ 错误地使用注册表编辑器可以导致严重问题,可 mrtg\\bin\\mrtg.cfg” ”AppDirectory”=”C:、\mrtg\\bin\\'- 能需要重新安装操作系统,使用注册表编辑器需要慎 重,应该在编辑之前备份注册表。 将这个注册表文件导人注册表即可。 5)在服务中将MRTG服务设置为自动启动。 至此配置完成,可以实现流量监控程序的自动启 动 。 3.2 Vmware Workstation实现服务自启动 4结束语 在实际的操作过程中,操作系统的服务自启动确 实给我们提供了很大的便捷,相对于其他的自启动方 式,可以减少服务器重启对服务器端程序的影响,只 1)将Instsrv.exe和Srvany.exe放在d:\tools中。 要服务器可以正常启动,那么就可以保证服务的正常 2)vmwa ̄.cxe的安装路径:d:\vmware\vmware. 使用,同时也可以避免其他用户的误操作。但是程序 exe,要启动的虚拟机配置文件Windows2003.vmx的 启动后,需要前台进行管理,或者说需要用户可见的 路径:d:\vmare\Windows2003.vmx。 程序,还需要使用其他的自启动方式实现。 (责任编辑参考文献: [1]天成.管好Windows系统的自动启动程序[J】.网络与信息,2005, (12):67—68. 3)在命令提示符下,进入c:\tols\目录下执行: instsrv vmare d:\tools\Srvany.exe 吕春红) 注册vmare为系统服务。 4)配置Srvany 在注册表中,定位到HKEY—LOCAL—MACHINE\ SYSTEM\CurrentControlSet\Services\vmare新建项”Pa_ [2]苏强林.基于MR3’G软件的校园网流量检测系统的实现f J].河南 机电高等专科学校学报,2008,(16):112—114. Implementation Methods of Application System Service Auto——startup on Windows OS SU Qiang—.1in (Henan Mechanical and Electrical Engineering College,Xinxiang 453002,China) Abstract:This paper describes a few implementation methods of application auto——start on Windows operating system.It compares the diferences and the merits and drawbacks.It introduces the methods of system ̄rvice to launch the application,and gives two examples. Key words:System Service;auto—startup;application 32