当前位置:首页 > 技术积累 > 正文内容

基于Windows实现应用程序以服务方式自动运行的几种方式

竹林之风2年前 (2021-11-19)技术积累3076

        在Windows平台上要让一个应用程序自动运行,有如下几种方式:①at命令、schtasks命令、计划任务或组策略等;②开始菜单的启动文件夹;③注册表项HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Run或HKEY_LOCAL_MACHINE\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run;④Windows服务;⑤其它方式。前三种方式都需要Windows登录后才会自动运行,Windows服务支持登录前就自动启动。本文仅讨论将应用程序注册为Windows服务的途径。

        1、各种语言或平台本身支持创建Windows服务项目,如.NET Framework支持创建Windows服务应用程序,通过.NET Framework自带的服务注册工具InstallUtil.exe来注册。

        2、通过sc create等组合命令来创建Windows服务:

            sc boot sc config sc continue sc control sc create sc delete sc descrīption sc enumdepend

            sc failure sc getdisplayname sc getkeyname sc interrogate sc lock sc pause sc qc

            sc qdescrīption sc qfailure sc query sc queryex sc querylock sc sdset sc sdshow

            sc start sc stop

        3、通过nssm第三方软件来实现Windows服务的创建、移除等操作:NSSM - the Non-Sucking Service Manager

        4、通过Topshelf第三方服务框架来实现Windows服务的创建、移除等操作:Topshelf (topshelf-project.com)

        5、利用instsrv和srvany安装Windows服务:instsrv.exe&srvany.exe

        (1)修改注册表,将真正要自动运行的应用程序文件名和目录设置号:

REGEDIT4

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NginX\Parameters]
"Application"="E:\\nginx-1.12.0\\nginx.exe"
"AppDirectory"="E:\\nginx-1.12.0\\"

        (2)使用instsrv将srvany注册为Windows服务:

E:\nginx-1.12.0\instsrv NginX E:\nginx-1.12.0\srvany.exe

       (3)srvany会通过第一步注册表设置启动真正要自动运行的应用程序。

       (4)卸载服务方式:

E:\nginx-1.12.0\instsrv NginX remove

        6、其它方式。


扫描二维码推送至手机访问。

版权声明:本文由久爱编程网发布,如需转载请注明出处。

本文链接:http://www.9icode.com/index.php/post/361.html

标签: Windows服务
分享给朋友:

相关文章

通用基础表逻辑设计(一)——配置、枚举和类别

通用基础表逻辑设计(一)——配置、枚举和类别

一、配置表        一个系统中往往有很多需要可自定义的参数,比如网站名称、联系地址等基础参数以及各种系统运行参数等等,这个时候就需要单独一个参数配置表来保...

实现网页原路返回:从哪个页面跳转过来就返回哪个页面

实现网页原路返回:从哪个页面跳转过来就返回哪个页面

一、需求        导航对于PC网站或WAP网站有着相当重要的作用,它有利于提升用户体验,不至于让用户迷路。而“返回”就是导航的功能之一,主要体现在WAP网...

HTTP长连接与短连接、长轮询与短轮询及长轮询的实现概述

HTTP长连接与短连接、长轮询与短轮询及长轮询的实现概述

        HTTP长连接(long connection)与短连接(short connection)本质上是TCP长连接和短连接:短连接是指在一次HTTP请求和响应之后立即关闭本次TCP连接,...

ASP.NET实现HTTP长轮询(三)——MVC

ASP.NET实现HTTP长轮询(三)——MVC

        本文主要描述如何在ASP.NET MVC中实现长轮询:(1)控制器继承AsyncController:using System.Threading; using ...

Java相关的一些名词

Java相关的一些名词

Java语言:一种程序设计语言,版本号从1.0到1.4,从1.5起版本号变更为5、6、……;JDK版本号、Java平台版本号类同。Java平台:1998年12月发布JDK 1.2后,Java从与平台无关的语言变成Java 2平台,分为三个版...

ASP.NET中报“无法在已发送HTTP标头之后进行重定向”异常问题解决

ASP.NET中报“无法在已发送HTTP标头之后进行重定向”异常问题解决

        ASP.NET中报“无法在已发送HTTP标头之后进行重定向”异常时,其中一个原因是:在已经重定向后又重定向。在ASP.NET中实现重定向有以下几...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。