Работает сокет стрим

This commit is contained in:
2026-02-26 17:59:17 +03:00
parent a0e54c0e18
commit 2b656c2959

View File

@@ -364,8 +364,7 @@ void SendSystem::slot_sendFileBlock_forQtClient(QString path)
void SendSystem::slot_sendFileBlockByteArray(QByteArray array, PacketType packetType) void SendSystem::slot_sendFileBlockByteArray(QByteArray array, PacketType packetType)
{ {
if(client->getClientType() == TypeClientAutorization::TYPE_QT_CLIENT || if(client->getClientType() == TypeClientAutorization::TYPE_GUI)
client->getClientType() == TypeClientAutorization::TYPE_GUI)
{ {
QDataStream stream(socket); QDataStream stream(socket);
stream.setVersion(QDataStream::Qt_DefaultCompiledVersion); stream.setVersion(QDataStream::Qt_DefaultCompiledVersion);
@@ -388,6 +387,37 @@ void SendSystem::slot_sendFileBlockByteArray(QByteArray array, PacketType packet
{ {
QByteArray chunk = array.mid(bytesSended, sendFileBlockSize); QByteArray chunk = array.mid(bytesSended, sendFileBlockSize);
stream << chunk; stream << chunk;
//bytesSended = socket->write(chunk);
waitWrittenData("sendFileBlockByteArray");
bytesSended += chunk.length();
}
}
else if(client->getClientType() == TypeClientAutorization::TYPE_QT_CLIENT)
{
QDataStream stream(socket);
stream.setVersion(QDataStream::Qt_DefaultCompiledVersion);
qint64 size = array.size();
qint64 bytesSended = 0;
if (size == 0)
{
Logger::instance().log(" WARNING! Zero size ",LogLevel::ERROR);
return;
}
stream << packetType; //Отправляем тип блока
stream << size;
waitWrittenData("sendFileBlockByteArray");
while (bytesSended < size)
{
QByteArray chunk = array.mid(bytesSended, sendFileBlockSize);
//stream << chunk;
bytesSended = socket->write(chunk);
waitWrittenData("sendFileBlockByteArray"); waitWrittenData("sendFileBlockByteArray");