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

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

Страниц: 1 [2]   Вниз
  Печать  
Автор Тема: Подключение к Telnet серверу  (Прочитано 13259 раз)
Serr500
Гость
« Ответ #15 : Январь 07, 2014, 12:41 »

Похоже, ошибка где-то в другом месте. Попробуйте подцепиться к smtp.yandex.ru:25 и посмотрите на ответ. Вот простейший пример, в котором всё работает как надо (Qt5.2.0).
Записан
Serr500
Гость
« Ответ #16 : Январь 07, 2014, 12:47 »

А вот и ответ Microsoft Telnet Server. По русски он может общаться.  Веселый
Записан
beginner
Гость
« Ответ #17 : Январь 07, 2014, 13:15 »

Не подключается, пинг проходит
Записан
Serr500
Гость
« Ответ #18 : Январь 07, 2014, 13:18 »

Хм... Вероятно, у провайдера 25-й порт закрыт. Тогда smtp.yandex.ru:587.

P.S. А я так и не понял, что там за кодировка...
Записан
beginner
Гость
« Ответ #19 : Январь 07, 2014, 13:23 »

Подключился и все нормально.
А вы с телнетом можете показать, плиз
Записан
beginner
Гость
« Ответ #20 : Январь 07, 2014, 13:29 »


А вы с телнетом можете показать, плиз
Или та же история как и у меня?
Записан
beginner
Гость
« Ответ #21 : Январь 07, 2014, 13:34 »

Мне по телнету надо проверять состояние потоков на системе передач, пробовал туда коннектится, получаю строку в таком же виде как и от своего сервера телнет, и что с этим делать Непонимающий
Записан
Serr500
Гость
« Ответ #22 : Январь 07, 2014, 13:39 »

Фу, блин!.. Разобрался. Wireshark forever! У M$ telnet-протокол какой-то нестандартный. Там нет передачи простых текстовых строк, он сразу пытается передать специальные данные, которые вообще не строки. Вероятно, telnet-клиент эту чертовщину понимает, а Вам её придётся расшифровывать.
Записан
Serr500
Гость
« Ответ #23 : Январь 07, 2014, 13:46 »

А вот я и неправ! Протокол-то стандартный. Это я его попутал с SMTP, который полностью текстовый. Wiki утверждает, что он изначально не текстовый http://ru.wikipedia.org/wiki/Telnet.
Записан
beginner
Гость
« Ответ #24 : Январь 07, 2014, 13:47 »

Есть уже готовый класс для работы с телнет QtTelnet, только вот он у меня при компиляции  ошибки выдает, я так понимаю из-за старой версии QT, может есть у кого рабочий вариант под QT5.2
 Вот тут http://qt-project.org/forums/viewthread/18711коллега заходит тоже по телнету, без дополнительных преобразований, почему у меня не выходит
Код:
void cisco2948::slotReadyRead()
{
    QDataStream in(m_pTcpSocket);
    for (;;) {
        if (!m_nNextBlockSize) {
            if (m_pTcpSocket->bytesAvailable() < sizeof(quint16)) {
                break;
            }
            in >> m_nNextBlockSize;
        }
 
        if (m_pTcpSocket->bytesAvailable() < m_nNextBlockSize) {
            break;
        }
        std::cout << "slotReadyRead\n";
        QTime time;
        QString str;
        in >> time >> str;
        qDebug() << time.toString() << " " << str;
        m_nNextBlockSize = 0;
    }
}
 
« Последнее редактирование: Январь 07, 2014, 14:04 от beginner » Записан
Serr500
Гость
« Ответ #25 : Январь 07, 2014, 17:07 »

почему у меня не выходит
Видимо, у цисок другой вариант протокола...
Записан
Страниц: 1 [2]   Вверх
  Печать  
 
Перейти в:  


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