zoukankan      html  css  js  c++  java
  • Windows Server下把BAT批处理注册成服务在后台运行且注销后能正常运行

    批处理有如下特点:

    1、登录到当前窗口运行时,如果关闭控制台会连同启动的程序一起关闭。

    2、如果是以start /b的形式启动,那么同样也是在控制台关闭后者注销当前窗口也会一起关闭。

    3、如果以vbs的形式启动,注销当前用户也会一起关闭。

    有如下方式解决:

    1、使用【任务计划】去启动批处理,里面有很多个触发点,可以选择【计算机启动时】触发也能达到开机启动的效果,而不用登录桌面。

    2、有错误启动Windows Service方式,用【sc】命令注册服务,然后以cmd.exe的形式去启动(C:WindowsSystem32cmd.exe /C C:Python34Scriptsshadowsocksshadowsocks un.bat),但这种形式表面上是启动不成功服务,但是实质上在进程上已经有了python.exe这个进程存在,所以是成功启动的;而且这种形式是不能停止或重启这个服务。

    3、使用【Bat_To_Exe_Converter】这个软件将bat转换成exe程序,然后用【sc】或者【srvinstw.exe】把这个exe注册进服务,如果是python的程序同样会面临第2步的问题,但是如果你启动的是别的,很可能会成功;还有一个问题,这个转换的程序在执行转换后的exe时会在临时文件夹下产生一个【b2e.exe】的进程,我猜测这个是执行bat的基础,但是里面具体干了什么不得而知,如果想使用,请慎重!

    下载地址:http://www.jb51.net/article/20270.htm

    4、终极解决方法,使用nssm程序

    ssm install <servicename>

    然后在服务列表即可启动,这个程序对bat注册成服务非常不错,比上面三种方式靠谱。

    参考:

    http://stackoverflow.com/questions/415409/run-batch-file-as-a-windows-service

  • 相关阅读:
    window.open跨页面传输
    history对象
    类vr特效的360度全景
    移动端图片滑动
    图片拼图
    20180808 考试记录
    [jzoj 5770]【2018提高组模拟A组8.6】可爱精灵宝贝 (区间dp)
    20180806 考试记录
    [luogu2319 HNOI2006] 超级英雄 (匈牙利算法)
    [luogu2679] 子串 (多维dp)
  • 原文地址:https://www.cnblogs.com/EasonJim/p/7533301.html
Copyright © 2011-2022 走看看