将beego添加到windows 服务中开机自动启动

用golang实现 注册服务,安装服务,删除服务

package main

import (
    "github.com/astaxie/beego"
    "github.com/kardianos/service"
    "os"
)
var logger = service.ConsoleLogger

type program struct{}

func (p *program) Start(s service.Service) error {
    go p.run()
    return nil
}

func (p *program) run() {
    beego.Run()
    // 运行逻辑
}

func (p *program) Stop(s service.Service) error {
    return nil
}

func main() {
    svcConfig := &service.Config{
        Name:        "Trim",                 //服务显示名称
        DisplayName: "Trim Service", //服务名称
        Description: "微服务",      //服务描述
    }

    prg := &program{}
    s, err := service.New(prg, svcConfig)
    if err != nil {
        logger.Error(err)
    }

    if err != nil {
        logger.Error(err)
    }

    if len(os.Args) > 1 {
        switch os.Args[1] {
        case "install":
            s.Install()
            logger.Info("服务安装成功!")
            s.Start()
            logger.Info("服务启动成功!")
            break
        case "start":
            s.Start()
            logger.Info("服务启动成功!")
            break
        case "stop":
            s.Stop()
            logger.Info("服务关闭成功!")
            break
        case "restart":
            s.Stop()
            logger.Info("服务关闭成功!")
            s.Start()
            logger.Info("服务启动成功!")
            break
        case "remove":
            s.Stop()
            logger.Info("服务关闭成功!")
            s.Uninstall()
            logger.Info("服务卸载成功!")
            break
        }
        return
    }
    err = s.Run()
    if err != nil {
        logger.Error(err)
    }
}

编译运行

如果编译提示找不到  golang.org\x\sys\windows\registry  库的话,就是 墙的问题了......

就去 https://gitee.com/bandung/golang.org  下载库的压缩包放到src目录下

 

 

服务的属性默认是自动的,就是开机自动启动
!!!

转载于:https://www.cnblogs.com/wlphp/p/10887173.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值