Windows下创建自定义服务的正确姿势(Instrsrv&Srvany)

总览

Windows NT工具包(Windows NT Resource Kit)提供了两个小工具,可以让我们创建自定义服务(适合于NT应用和一些16进制应用,批处理除外)。两个工具包的下载地址:CSDN下载
Instrsrv.exe:从系统安装和移除服务

Srvany.exe:主要作用是将任何应用程序处理成为一个可以作运行的服务

明细步骤


按照以下步骤操作,来创建用户自定义服务:

(为了简化说明,以下示例假设我将两个工具放到了C:\Tools文件夹下面)

运行cmd,输入以下命令:

C:\Tools\INSTSRV.EXE MyService C:\Tools\SRVANY.EXE

在实际操作中,注意将C:\Tools替换成你自己的路径
MyService 是要创建的服务名称,可以根据需要自定义

示例:

C:\Tools\Instsrv.exe Notepad C:\Tools\Srvany.exe

 

注意: 操作完成后,为了验证是否安装成功,需要到注册表下面检查ImagePath 键:ImagePath 键的注册表路径:

 

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\servicename

 

如果ImagePath键的值是SRVANY.EXE的完整路径(C:\Tools\Srvany.exe),说明设置正确,否则会报 Event ID 7000 "The service name failed to start." 错误。

风险提示: 新手提前做好注册表备份。

 

 

  1. 运行注册表编辑器(Regedt、Regedt32.exe),然后找到以下路径:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<MyService>
  2. 选中<MyService>,右键选择新建-项,或者点击编辑菜单, 点击编辑-新建-项. 输入以下信息后确认:

    项名称: Parameters
  3. 选中刚才新建的Parameters.
  4. 在右侧空白处点击鼠标右键,新建-字符串值,输入以下信息后确认:

    名称: Application
    类型: REG_SZ
    数据: <path>\<application.ext>

    其中<path>\<application.ext>是到可执行程序的绝对路径。 (例如:C:\windows\Notepad.exe)
  5. 关闭注册表编辑器.

至此完成自定义服务的安装,默认情况下,新创建的服务被配置为自动启动. 如果需要更改,运行服务管理器(services.msc),找到创建的服务,在服务属性中更改为相应的启动类型.

启动服务的几种方法:

- 从服务管理器启动


- 在命令提示符下启动:

 

NET START <My Service>



- 使用 Sc.exe 命令(早期版本这个命令在windows工具包中存在,Windows7专业版下默认已安装):

 

<path>\Sc.exe start <My Service>

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
压缩包包含instsrv.exe srvany.exe两个文件 服务是一种应用程序类型,它在后台运行。要管理系统服务,请运行services.msc,打开“服务”对话窗口,这里可以看到当前系统中的所有服务。双击某一服务,在弹出的“属性”对话框的“常规”选项页中的“服务状态”栏可以看到此服务当前状态。单击“启动类型”下拉菜单,可以将该服务设置为自动启动、手动启动或禁用。     用instsrv.exe程序设置成服务启动   Windows的“服务”工具是不能添加/删除服务的,但可以利用Windows提供的资源工具包中的Instsrv.exeSrvany.exe来实现。其中,Instsrv.exe可以给系统安装和删除服务Srvany.exe可以让程序以服务的方式运行。   ★设置方法   第一步:报户口——注册服务名称   这里就以建立一个名为explorer的服务为例来说明,首先将Instsrv.exeSrvany.exe存放到一个比较方便的地方,建议放到系统安装目录中(笔者的Windows XP安装目录为D:\Windows)。运行cmd.exe,进入“命令提示符”窗口,执行命令:cd d:\Windows,进入系统安装目录。运行命令:   Instsrv explorer d:\Windows\srvany.exe   好了,这条命令的成功运行,已经在系统中注册了一个名叫explorer的服务,快到“服务”中看看一下检验检验吧!   小提示   ★注册服务:instsrv :这里的可任意取名,前面必须带上该文件的绝对路径,如:D:\Windows\srvany.exe。   ★删除服务:instsrv remove   第二步:找关联   要让explorer服务正常运行,还必须在注册表中指定该服务对应的应用程序。运行Regedit.exe,打开“注册表编辑器”,依次展开如下子键:[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services],在该子键下找到并右击explorer(对应前面建立的服务名),选择“新建”下的“项”,将其命名为Parameters。单击选定它,在右侧窗口中新建一个名为Application的字符串值,将其数值数据设置为explorer服务对应的应用程序绝对路径,比如:d:\Windows\gboor.exe。接着再新建两个字符串值:AppDirectory和AppParameters,AppDirectory指定程序所在的目录,AppParameters指明程序运行的参数(注意:可以不用设值),如图1所示,最后关闭注册表编辑器。   接下来打开“服务”窗口,找到刚添加的explorer服务,打开其属性对话框,单击切换到“登录”选项页,在“登录身份”中选中“本地系统账户”,如图2,如果不想让服务在运行的时候弹出状态窗口,请不要勾选“允许服务与桌面交互”复选项,单击“确定”返回。至此,explorer服务已经全部配置好了。   最后,右击该服务,选择“启动”,这样该程序就会启动,而且以后也会在系统启动时自动以服务形式运行!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值