diff --git a/InstructorsAndTrainees/connectorToServer/Core/sendsystem.cpp b/InstructorsAndTrainees/connectorToServer/Core/sendsystem.cpp index 299aece..c39f12f 100644 --- a/InstructorsAndTrainees/connectorToServer/Core/sendsystem.cpp +++ b/InstructorsAndTrainees/connectorToServer/Core/sendsystem.cpp @@ -96,8 +96,14 @@ void SendSystem::sendFolderBlock(QString path) void SendSystem::sendQTConnect() { - QString value = QString::number(PacketType::TYPE_QT); - socket->write(value.toUtf8()); + QByteArray container; + int numPackage = (int)PacketType::TYPE_QT; + container.append(numPackage & 0x000000ff); + container.append((numPackage >> 8) & 0x000000ff); + container.append((numPackage >> 16) & 0x000000ff); + container.append((numPackage >> 24) & 0x000000ff); + + socket->write(container); socket->waitForBytesWritten(); } diff --git a/ServerLMS/Systems/recognizesystem.cpp b/ServerLMS/Systems/recognizesystem.cpp index d68a756..9556042 100644 --- a/ServerLMS/Systems/recognizesystem.cpp +++ b/ServerLMS/Systems/recognizesystem.cpp @@ -51,10 +51,15 @@ void RecognizeSystem::recognize() if(!isPackageTypeInited) //первичная инициализация для типа клиента { - char *read = new char[0]; - stream.readRawData(read,1); - packetType = static_cast(QString(read[0]).toInt()); +// char *read = new char[0]; +// stream.readRawData(read,1); +// packetType = static_cast(QString(read[0]).toInt()); + char *read = new char[4]; + stream.readRawData(read,4); + + int numPackage = *((int*)read); + packetType = static_cast(numPackage); packetTypeInit(packetType,client); if(!stream.commitTransaction()) continue; @@ -63,9 +68,13 @@ void RecognizeSystem::recognize() if(client->getIsUnity()) { - char *read = new char[0]; - stream.readRawData(read,1); - packetType = static_cast(QString(read[0]).toInt()); + char *read = new char[4]; + stream.readRawData(read,4); + int numPackage = *((int*)read); + packetType = static_cast(numPackage); + + socket->peek(read,4); + //data = socket->readAll(); if(!stream.commitTransaction()) continue; continue;