zoukankan      html  css  js  c++  java
  • 用Windows服务运行任意程序

    昨天把mantis缺陷跟踪系统在办公室里搭了一套,批处理启动nginx+php+mysql。

    后来发现服务器必须登录才行,一注销就把nginx给关闭了,看来只能添加到系统服务里了。

    一开始用[sc create nginx binPath= c:/opt/start.bat],服务是添加进去了,但总是无法启动,后来分析一下,应该是服务程序要用SCxxxx等API函数与windows交互,所以启动失败(也有可能已经运行了,在任务管理器看不到,没给windows返回成功状态所以显示失败)。 后来在网上找到一个srvany.exe的程序,应该就是一个空壳服务程序,把服务添加成它: sc create nginx binPath= c:/opt/srvany.exe 然后在注册表里添加以下内容

    ====================================================

    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/nginx/Parameters]

    "Application"="c://opt//start.bat"

    "AppParameters"=""

    "AppDirectory"="c://opt//"

    ====================================================

    这样启动服务时srvany会去指定路径调用程序,也能和windows正常交互服务的状态了。

    不过后来发现一个问题,在控制台的服务管理中,停止该服务的话只能停止srvany.exe,不会停止它启动的程序,以后有空自己做一个srvany程序吧。

  • 相关阅读:
    vue封装axios请求
    搭建vue开发环境
    webpack搭建vue环境报错
    JS的执行顺序 setTimeout与Promise async/await
    position属性脱离文档流覆盖其他内容
    MVC和MVT
    HTTP常见请求方式(get,post,put,delete)
    三次握手四次挥手
    web工作流程,中间件,请求顺序
    Vue整理
  • 原文地址:https://www.cnblogs.com/chaos77/p/4066235.html
Copyright © 2011-2022 走看看