如何将控制台程序发布为Windows服务

部署在线文档管理系统出现的问题

网上找了一个很好用的在线文档管理系统
https://www.iminho.me/

跟着文档部署时发现了一个小问题,就是这个服务程序运行之后会一直以控制台程序的形式运行在服务器中,如果后面有其他人登入系统,不小心关闭了这个程序,网站就无法正常访问了

于是想着怎么能变成一个Windows服务,以服务的形式管理这个程序

解决问题,如何将程序变成Windows服务?

以管理员身份运行cmd程序
运行命令如下:

sc create MinDoc binpath= C:\Nginx\mindoc_windows_amd64\mindoc_windows_amd64.exe type= own start= auto displayname= MinDoc
注意事项:
  1.其中 MinDoc 为服务名,可以在系统服务中找到,(通过在命令行运行services.msc打开系统服务)。binpath为你的应用程序所在的路径。 displayname为服务显示的名称,这个在注册表中可以找到

  2.通过在命令行中输入regedit打开注册表,在HKEY_LOCAL_MACHINE -- SYSTEM -- CurrentControlSet 下找到你的服务显示名

  3.在sc命令中,=号前面不能有空格,而=号后面必须有一个空格,切记。另外要以管理员的身份打开命令行。

  4.Asp core 默认自带的Kestrel服务器,如果用Asp core做的小微服务程序想要快速变成Windows服务程序也可以用这个方法
posted @ 2020-07-14 17:54  骇客HK  阅读(1613)  评论(2编辑  收藏  举报