如何将exe注册为windows服务,直接从后台运行

摘抄自百度知道,我自己验证过了(使用文中的第二种方法)在这里记录一下,原文地址:http://zhidao.baidu.com/link?url=jPVuUv4lh3ego_pcvizJl7CrWNlyYt8CzljP5tTshvKmCV8pxap_6x6cmfD4PtK6Akvt2v6dJ-u9Vy0Lp45dh_

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

方法一:使用windows自带的命令sc
使用sc create 方法创建。
如:sc create CaptureScreen binpath= F:\zwmei-project\decklink-learning\OutputBitmap\Debug\OutputBitmap.exe type= own start= auto displayname= Screen_Capture
其中 CaptureScreen为服务名,可以在系统服务中找到,(通过在命令行运行services.msc打开系统服务)。binpath为你的应用程序所在的路径。 displayname为服务显示的名称,这个在注册表中可以找到,(通过在命令行中输入regedit打开注册表,在HKEY_LOCAL_MACHINE -- SYSTEM -- CurrentControlSet 下找到你的服务显示名)
注意:在sc命令中,=号前面不能有空格,而=号后面必须有一个空格,切记。另外要以管理员的身份打开命令行。
这种方法不一定能成功,如果你的exe不符合服务的规范,可能会启动失败。下面我们讨论第二种方法
方法二:在第一种方法失败的情况下,我们可以使用instsrv.exe和srvany.exe两个小工具为我们分忧解难
我们可以在官网下载instsrv.exe 和 srvany.exe 然后放到自己的文件夹中,可以将文件夹放入C盘。下面我们开始注册服务。
已管理员的身份运行命令行,首先进入工具所在的文件夹,如:c:\tools。
执行c:\toolsinstsrv.exe ServerName srvany.exe
这样我们就创建了一个名为ServerName的srvany的服务,那么我们自己的exe该放在哪呢。下面我们打开注册表
找到ServiceName这个服务,然后右键 新建 项,名称为Parameters。单击该项,然后在右边新建两个字符串值。第一个名为Application,值为:应用程序路径,如:c:\myApp.exe。第二个名为AppDirectory,值为:应用程序所在目录,如:c:\。
接下来我们进入系统服务,找到ServiceName这个服务,双击进入它的属性。设置允许与桌面交互。然后启动服务。
至此我们完成了将exe注册为服务的过程。
下面我们分析一下:
instsrv.exe可以创建和删除服务,然而如果没有srvany.exe的参与,创建的服务可能无法启动。那么srvany.exe做了些什么呢,启动服务后我们可以在任务管理器中找到我们的服务,然后右击服务,选择转到进程,(如果进程中没有任何项被选中,则点击下面的显示所有用户进程,然后重新选择转至进程),我们看到的是srvany.exe,而不是我们自己的exe。原来我们的exe成为了它的一个子项,由srvany.exe帮助启动。
时间: 2024-08-07 10:06:42

如何将exe注册为windows服务,直接从后台运行的相关文章

把应用程序exe 注册成为windows 服务的方法

由于在Windows 服务器上必须要启动一个软件,提供外网访问内网的客户端软件,但是由于每次远程服务器之后会注销当前用户,所以客户端软件就会自动退出,那么我在外网的系统就不能支持访问了. 解决方案:将 客户端程序注册成为windows 服务 1. 要实现这个功能要用到微软提供的两个小工具“instsrv.exe”和“srvany.exe”.先下载这两个程序然后放在同一个目录,我是直接放在D盘的,然后进入到DOS命令行下面输入如下命令注册服务: d:\instsrv.exe tjserver d:

Postgresql数据库部署之:Postgresql本机启动和Postgresql注册成windows 服务

1.初始化并创建数据库(一次即可)  initdb -D C:\Soft\PostgreSQL\10\data -E UTF-8 --locale=chs -U postgres -W  You can now start the database server using(启动数据库命令): pg_ctl -D ^"C^:^\Soft^\PostgreSQL^\10^\data^" -l logfile start --家里电脑pg 启动路径 C:/Users/computer/sc

将bat批处理文件注册成windows服务

C:\Users\lenovo>sc create MyService binPath= "C:\Program Files\restartOracle.bat"  type= share start= auto displayname= "AutoStartOracle Services"[SC] CreateService 成功 C:\Users\lenovo>services.msc C:\Users\lenovo>sc help sc qu

Elasticsearch 注册为Windows服务

首先 cd 到es文件夹中的bin: 然后注册为windows服务,注意 elasticsearch-service  即为上图中标注elasticsearch-service.bat 大功告成

把Tomcat注册为windows服务

windows安装java及配置环境 http://www.cnblogs.com/17shiqi/p/7397939.html Tomcat注册为windows服务 本人是win7环境下, 进入tomcat目录,,再进入bin目录 shift+鼠标右键     点击在此处打开命令窗口 服务启停(两种方式) 1.命令行方式 以管理员权限打开cmd窗口(http://jingyan.baidu.com/article/e73e26c0f87c2424adb6a7f1.html) 看完链接里经验,,

把NodeJS注册成Windows服务

为了让NodeJS开发的网站能在服务器端正常运行,最好把NodeJS需要运行的代码注册成Windows服务,服务器如果重启也不需要重新去启动NodeJS. 1.编写一个执行NodeJS脚本的bat文件(run.bat),如下: @echo off d: cd D:\[目录] node [需要执行的文件名].js pause & exit 2.创建windows服务去启动run.bat文件,本人使用的是nssm工具来生成的windows service.下载地址:http://nssm.cc/ 这

tomcat注册成windows服务 (截图说明一目了然)

tomcat注册成windows服务: 打开cmd命令行,进入tomcat目标下的bin目录里,执行service.bat install tomcat_juziku(服务名),如下所示: 如果想删除windows服务,可以进入cmd命令行,执行sc delete tomcat_juziku(其中,tomcat_juziku为服务名,如果服务名中间有空格,就需要前后加引号) 如下图所示: tomcat注册成windows服务 (截图说明一目了然)

将bat文件或exe程序注册成windows服务

命令行使用sc命令.关于sc命令的详解,请自行查看帮助(sc /?),在此只简单提及如何加入系统服务功能.加入服务:sc create ServiceName binPath= 路径 start= auto(等号后面的空格必须)删除服务:sc delete ServiceName例一:将Tomcat加入到系统服务中:sc create Tomcat binPath= F:/apache-tomcat/bin/startup.bat start= auto将Tomcat服务删除:sc delete

将exe程序注册为windows服务方法总结

直接上图:参考地址:https://zhuanlan.zhihu.com/p/93808282 1.在services服务目录中添加自己需要的服务名: 先将工具:instsrv.exe和srvany.exe放到C:\Windows\SysWOW64 目录下,工具链接地址:https://pan.baidu.com/s/1gKu_WwVo-TeWXmrGAr9qjw 提取码:s1vm 2.在注册表完成应用程序配置 原文地址:https://www.cnblogs.com/newcapecjmc/p