将qt程序注册成服务
1、qt服务模块管理下载
2、QtService项目
2.1、将qtservice拷贝到项目代码路径

2.2、实现服务管理
PS:响应服务的启停
CustomService.h
#include <QCoreApplication>
#include "qtservice.h"
class CustomService : public QtService<QCoreApplication>
{
public:
CustomService(int argc, char **argv);
protected:
void start();
void pause();
void resume();
void stop();
};
CustomService.cpp
#include "CustomService.h"
#include "ServiceHandle.h"
CustomService::CustomService(int argc, char **argv)
: QtService<QCoreApplication>(argc, argv, "Custom Qt Server")
{
setServiceDescription("Custom Qt Server");
setServiceFlags(QtServiceBase::CanBeSuspended);
}
void CustomService::start()
{
QCoreApplication *app = application();
SERVER_CTRL_INST.start();
}
void CustomService::pause()
{
SERVER_CTRL_INST.pause();
}
void CustomService::resume()
{
SERVER_CTRL_INST.resume();
}
void CustomService::stop()
{
SERVER_CTRL_INST.stop();
}
2.3、服务内部程序实现
ServiceHandle.h
#pragma once
#include "ThreadObject.h"
#define SERVER_CTRL_INST ServiceHandle::Instance()
class ServiceHandle
{
const std::string kProcessName = "QtService.exe";
publ

最低0.47元/天 解锁文章
1349

被折叠的 条评论
为什么被折叠?



