crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> QT сервер и клиент на PHP
Zizilk
  опции профиля:
сообщение 26.7.2010, 18:21
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 33
Регистрация: 26.7.2010
Пользователь №: 1902

Спасибо сказали: 0 раз(а)




Репутация:   0  


Имеем простой код сервера (несолько переделанный код Fortune Server)
main.cpp
CODE

#include <QApplication>
#include <QtCore>

#include <stdlib.h>

#include "server.h"

int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
Server();
return a.exec();
}



Server.cpp
CODE
#include <QtNetwork>
#include <QTcpSocket>
#include <stdlib.h>
#include <stdio.h>
#include "server.h"

Server::Server()
{
tcpServer = new QTcpServer();
if (!tcpServer->listen(QHostAddress::LocalHost,5423)) {
printf("Server isn't works fine( \n");

}
else {
printf("Server works fine) \n");
}
connect(tcpServer, SIGNAL(newConnection()), this, SLOT(newuser()));
}

//! [4]
void Server::newuser()
{
QTcpSocket * Clientsocket=tcpServer->nextPendingConnection();
connect(Clientsocket,SIGNAL(disconnected()),Clientsocket,SLOT(deleteLater()));
Clientsocket->write("Hi");
printf("New user \n");
}


и Server.h

CODE
#ifndef SERVER_H
#define SERVER_H


#include <QTcpServer>


class Server: public QObject
{
Q_OBJECT

private slots:
void newuser();
public:
Server();

private:
QTcpServer *tcpServer;
};

#endif



Также имеется клиент на PHP который конектится к сокету и читает из него.
Тестировал клиент двумя способами первый без чтения, второй с чтением.

Через дебаг запускаю сервер.
Ошибок\предупреждений не получаю
дальше подключал клиент без чтения сокета. Клиент удачно подключился (ошибок нет)

Но на сервере не выполняется всё равно функция newuser() которая должна вывести в консоль сообщение о новом пользователе.
Соотвественное если запустить клиент с чтением из сокета, то есстественно он подвисает.

Не могу понять в чём моя косяк :unsure:
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 21.7.2019, 20:03