у меня ещё вопрос. В документации к QtService написано, что службой можно управлять с помощью класса QtServiceController из gui приложения. Написала свою службу, запустила, она работает. Пытаюсь с другого приложения поуправлять ей, но ничего не выходит...
Объясните, пожалуйста почему? Что я не так делаю?
Код службы:
C++ (Qt)
#include <QDebug>
#include "service.hpp"
Service::Service(int argc, char **argv)
: QtService<QCoreApplication>(argc, argv, "tania")
{
}
Service::~Service()
{
}
void Service::start()
{
qDebug()<<"!!!!start!!!!";
}
void Service::restartService(){
qDebug()<<"restart pora";
}
void Service::stop()
{
qDebug()<<"stop!";
}
void Service::pause()
{
Q_ASSERT(!"not impl");
}
void Service::resume()
{
Q_ASSERT(!"not impl");
}
void Service::processCommand(int code)
{
Q_ASSERT(!"not impl");
qDebug()<<"comand geted!";
}
Код при клике по кнопке в gui приложении:
C++ (Qt)
void Widget::on_pushButton_2_clicked()
{
QtServiceController *controller = new QtServiceController("tania");
if (controller->isRunning()){
QMessageBox::information(this, tr("Service Status"),
tr("The %1 service is started").arg(controller->serviceName()));
controller->sendCommand(3);
controller->stop();
}
}