Я пытаюсь использовать QNetworkaccessmanager, который я получаю, но только когда я использую его базовый основной класс. Это не работает ни с одним другим классом, как mainwindow.QNetworkAccessManager работает только с основной функцией приложения
main.cpp
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
Updater up;
up.Update();
return a.exec();
}
updater.cpp
#include "Updater.h"
Updater::Updater(QObject *parent) :
QObject(parent)
{
manager = new QNetworkAccessManager(this);
connect(manager, SIGNAL(finished(QNetworkReply*)),
this, SLOT(replyFinished(QNetworkReply*)));
}
void Updater::Update()
{
manager->get(QNetworkRequest(QUrl(//url)));
}
void Updater::replyFinished (QNetworkReply *reply)
{
if(reply->error())
{
qDebug() << "ERROR!";
qDebug() << reply->errorString();
}
else
{
QString result = (QString)reply->readAll();
//foo(result)
}
reply->deleteLater();
}