Qt实现Windows服务程序

Qt 编写 Windows 服务程序

大体步骤就是:
1、下载qtservice源码;
2、在自己的工程中引入qtservice源码;
include(./windowservice/qtservice.pri)
3、编写自己的 service 类,并继承自 QtService。

#include "qtservice.h"

class MyService: public QtService<QCoreApplication>
{
public:
    MyService(int argc, char **argv)
        : QtService<QCoreApplication>(argc, argv, "MyServiceName")
    {
        setServiceDescription("A service implemented with Qt.");
        setServiceFlags(QtServiceBase::CanBeSuspended);
    }
protected:
    void start()
    {
        //……
    }

    void pause()
    {
        //……
    }

    void resume()
    {
        //……
    }
};

int main(int argc, char *argv[])
{
    MyService service(argc, argv);
    return service.exec();
}

4、服务操作指令可以写进batch脚本,然后以管理员身份运行
比如 你的 MyService.exe 在C盘根目录

1)启动服务 start.bat文件:
@echo.服务启动…
@echo off
@cd C:\
@sc create MyServiceName binPath= “C:\MyService.exe”
@sc config MyServiceName start= AUTO
@net start MyServiceName
@echo off
@echo.启动完毕!
@pause

2)卸载服务 stop.bat文件:
@echo.uninstall service…
@echo off
@net stop MyServiceName
@echo.delete service…
@sc delete MyServiceName
@echo off
@echo.delete success!
@pause

你可能感兴趣的:(Qt,Qt,Windows,Service,Qt编写Windows服务)