В библиотеке есть функции:
int read(void* h, unsigned int b, unsigned int r, unsigned int* v)
{
QString q = QString("read %1 %2 %3").arg(b).arg(r).arg(*v);
QString r = query(q);
qDebug() << " * (hex)" << hex << r << dec;
*value = r.toUInt();
return 0;
}
int write(void* h, unsigned int b, unsigned int r, unsigned int v)
{
QString q = QString("write %1 %2 %3").arg(b).arg(r).arg(v, 8, 16, QChar('0'));
QString r = query(q);
qDebug() << " * (hex)" << hex << r << dec;
return 0;
}
QString query(QString _q)
{
qDebug() << "[query]";
QString host = "127.0.0.1";
ushort port = 7777;
QString reply;
if (!_connectToHost(host, port))
{
reply = "[ERROR] Connecting to host failed";
}
else
{
if (QAbstractSocket::ConnectedState == sock.state())
{
QByteArray ar = _q.toLatin1();
sock.write(ar);
if (sock.waitForBytesWritten())
{
qDebug() << "Data were written";
}
else
{
reply = "[ERROR] Writing data failed";
}
if (sock.waitForReadyRead(1000))
{
reply = sock.read(1024);
}
}
}
sock.disconnectFromHost();
return reply;
}
bool _connectToHost(const QString& _host, const ushort _port)
{
qDebug() << "[_connectToHost]";
qDebug() << " * connecting...";
sock.connectToHost(_host, _port);
qDebug() << " * Waiting for connection...";
return sock.waitForConnected();
}
После вызова query получаю сообщение:
* connecting...
Cannot create children for a parent that is in a different thread.
(Parent is QTcpSocket(0x55555576e3e0), parent's thread is QThread(0x5555557872b0), current thread is QThread(0x7fffffffe450)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is QTcpSocket(0x55555576e3e0), parent's thread is QThread(0x5555557872b0), current thread is QThread(0x7fffffffe450)
Из программы вызываются функции read и write.
Сервер получает строку и даже отвечает, но хотелось бы устранить сообщения. Объясните, пожалуйста, как лечить. Заранее благодарен.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Работаю над проектом(состоящий из нескольких подпроектов) Cmake с использование библиотеки wxWidgets, некоторые проекты не могут собраться по причине:
уважаемые форумчанеПишу программу по заданию(Даны 2 числа
В общем, пишу небольшое приложение на С++ в Qt, которое сможет отрисовывать графы, использую стороннюю библиотеку Graphviz в QtПри дебаге приложения...