Russian Qt Forum
Ноябрь 23, 2024, 05:57 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QTcpServer не слушает порт  (Прочитано 3700 раз)
niklep
Гость
« : Апрель 22, 2011, 12:11 »

Доброго времени суток. Пишу службу под windows, которая должна, помимо других действий, создавать серверный сокет и слушать его на предмет соединений. С этим казалось бы проблем быть не должно. Однако, несмотря на то, что объект класса QTcpServer говорит мне, что он слушает порт, этого не происходит. Т.е. меня обманывают=)
Вот кусок кода:
Код:
tcpServer = new QTcpServer(this);
        if (!tcpServer->listen(QHostAddress::LocalHost, nPort))
        {
                qDebug() << "Unable to start Server: " << tcpServer->errorString();
                tcpServer->close();
                return;
        }
        connect(tcpServer, SIGNAL(newConnection()),
                this, SLOT(slotNewConnection()));
        qDebug() << tcpServer->isListening() << "TCPSocket listen on port" << nPort;

Так вот. Ошибки не происходит, сокет создается. Последняя строка с qDebug() говорит следующее:
Код:
true TCPSocket listen on port 6667

Тем временем netstat не видит открытого порта, nmap также, telnet также о_0
Что не так? Службе нужны какие-то привилегии для открытия порта? Так я ей уже указал под админом запускаться, без толку.
P.S. Данный код для создания сокета прекрасно работает в моем маленьком тестовом проекте, здесь не хочет.
Записан
niklep
Гость
« Ответ #1 : Апрель 23, 2011, 09:08 »

Возможно, стоит переместить эту тему в раздел "Работа с сетью". Просто разместил я ее сюда из-за того, что подозреваю что проблема в том, что мое приложение - служба.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.32 секунд. Запросов: 20.