Windows下创建自定义服务的正确姿势(Instrsrv&Srvany)「建议收藏」

Windows下创建自定义服务的正确姿势(Instrsrv&Srvany)「建议收藏」总览WindowsNT工具包(WindowsNTResourceKit)提供了两个小工具,可以让我们创建自定义服务(适合于NT应用和一些16进制应用,批处理除外)。两个工具包的下载地址:CSDN下载Instrsrv.exe:从系统安装和移除服务Srvany.exe:主要作用是将任何应用程序处理成为一个可以作运行的服务明细步骤按照以下步骤操作,来创建用户自定义服务:(为…

大家好,又见面了,我是你们的朋友全栈君。

总览

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>

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/137863.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Android 带password输入界面的Dialog实现机制

    Android 带password输入界面的Dialog实现机制

    2022年1月26日
    34
  • 轻量级集群管理软件-ClusterShell「建议收藏」

    轻量级集群管理软件-ClusterShell「建议收藏」如果集群数量不多的话,选择一个轻量级的集群管理软件就显得非常有必要了。ClusterShell就是这样一种小的集群管理工具,原理是利用ssh,可以说是Linux系统下非常好用的运维工具cluster

    2022年8月5日
    4
  • Word 域代码:TOA(引文目录)域「建议收藏」

    Word 域代码:TOA(引文目录)域「建议收藏」 域代码:TOA(引文目录)域{TOC[Switches]}建立一个目录。TOC域根据标题级别、指定样式或由TC(目录项)域指定的项目来收集目录项。在使用“插入”菜单中“引用”子菜单中的“索引和目录”命令时,MicrosoftWord将插入TOC域。注释如果由TOC域创建的目录影响文档的分页,则可能需要再次更新域以得到正确的页码。开关/a标识符使

    2022年5月31日
    79
  • C# 连接SQL Sever 数据库与数据查询实例 数据仓库

    C# 连接SQL Sever 数据库与数据查询实例 数据仓库大数据时代在编程可能需要用到一些文本内容,不可能全部写到代码里,不好更改,用户也不方便使用所以需要用到我们的数据库来保存这些数据,直接更改数据SQL:下载地址:https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads1.现在后打开选择登录:Windows身份验证2.创建登录的账号和密码(右键创建)3.创建数据库表右键新建…

    2022年6月7日
    27
  • pycharm怎么换行_pycharm有几个版本

    pycharm怎么换行_pycharm有几个版本pycharm设置自动换行1.代码编辑区自动换行对所有文件有效:(1)File->Settings->Editor->General(2)找到SoftWraps,勾选Soft-wrapfiles(3)在输入框中添加;*.py,如下图所示2.控制台console自动换行File->Settings->Editor->G…

    2022年8月27日
    3
  • CGLIB介绍与原理「建议收藏」

    CGLIB介绍与原理「建议收藏」CGLIB介绍与原理(部分节选自网络)一、什么是CGLIB?CGLIB是一个功能强大,高性能的代码生成包。它为没有实现接口的类提供代理,为JDK的动态代理提供了很好的补充。通常可以使用Java的动态代理创建代理,但当要代理的类没有实现接口或者为了更好的性能,CGLIB是一个好的选择。二、CGLIB原理CGLIB原理:动态生成一个要代理类的子类,子类重写要代理的类的所有不是final

    2022年6月4日
    48

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号