Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Karegon221
0 / 0 / 0
Регистрация: 19.10.2013
Сообщений: 14
#1

Telnet не connect к порту - C++

20.10.2013, 19:49. Просмотров 550. Ответов 13
Метки нет (Все метки)

Telnet не connect к порту 1338 при запущенном сервере от администратора.

Отключены все стены и антивирусы.
Все компилет без ошибок. И проверяет.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#pragma comment(lib, "ws2_32.lib")
#include <sdkddkver.h>
#include <conio.h>
#include <Winsock2.h>
#include <Winsock.h>
#include <Windows.h>
#include <iostream>
#include <string>
using namespace std;
 
int main() {
    cout << "Server V1.0 Srart..." << endl;
    WSADATA wsa;
    WORD Version = MAKEWORD(2,1);
 
    WSAStartup(Version, &wsa);
 
    if (WSAStartup(Version, &wsa) != 0)
    {
        cout << "WAS Start wos Error!!!" << endl;
    }
    else
    {
        cout << "WAS lib Start..." << endl;
    }
 
    SOCKET Listen  = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
    SOCKET Connect = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
    if (Listen == SOCKET_ERROR || Connect == SOCKET_ERROR)
    {
        cout << "SOCKET CREATE ERROR!!!" << endl;
    }
    else
    {
        cout << "SOCKET Start..." << endl;
    }
 
    SOCKADDR_IN Server;
 
    Server.sin_family = AF_INET;
    Server.sin_port = htons(1337);
    Server.sin_addr.s_addr = INADDR_ANY; //   <-------   !!!!!
 
    if (bind(Listen, (SOCKADDR*)&Server, sizeof(Server)) == SOCKET_ERROR)
    {
        cout << "SOCKET BIND ERROR!!!" << endl;
    }
    else
    {
        cout << "SOCKET bind.." << endl;
    }
 
    Listen = (Listen, SOMAXCONN);
 
    while (true)
    {
 
        if (Connect == accept(Listen, NULL, NULL))
        {
            cout << "SOCKET CREATE ERROR!!!" << endl;
            break;
        }
        Sleep(100);
    }
    closesocket(Listen);
    closesocket(Connect);
    
    system("pause");
    return 0;
}
Я на 8 Win.

Telnet :o 127.0.0.1 1338 -->> невозможно подключится к 1338
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.10.2013, 19:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Telnet не connect к порту (C++):

C++ telnet - C++
Добрый день! как из программы запустить telnet и передать команду например Help Спасибо

indy Telnet server - C++
Я что то разобраться немогу как послать сообщение с Indy Telnet Server TelnetServer-&gt;Connection-&gt;Items-&gt; ???????? :( :( :( ...

Вызов telnet и передача параметров - C++
Возникли некоторые трудности. Каким образом можно запустить стандартный клиент telnet.exe и передать ему параметры (ip/port) для...

Как разорвать соединение на определённом порту - C++
Хех, продолжаю извращаться. Попробую описать задачу: Есть 2 программы: игровой сервер, и программа проверяющая запущена ли у игроков...

Обмен данными по COM порту на нестандартной скорости - C++
подскажите пожалуйста, как написать программу для обмена данными по COM порту на не стандартной скорости, например 10400бод.

Как отправить почту через Telnet? - C++
Не получается оправка почты через telnet. Пробую mail, yandex не работает. Возможно ли отправить?

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Avazart
Эксперт С++
7187 / 5361 / 280
Регистрация: 10.12.2010
Сообщений: 23,653
Записей в блоге: 17
20.10.2013, 20:01 #2
1338
у телнета вроде другой порт, стандартный 23 кажется
0
Karegon221
0 / 0 / 0
Регистрация: 19.10.2013
Сообщений: 14
20.10.2013, 20:06  [ТС] #3
Да 23 но я Запускаю сервер и он мне открывает порт 1338

Server.sin_port = htons(1337);

Вот я через Telnet туда и ломлюсь.

Telnet :o 127.0.0.1 1338

А он мне невозможно подключится к 1338.
0
Avazart
Эксперт С++
7187 / 5361 / 280
Регистрация: 10.12.2010
Сообщений: 23,653
Записей в блоге: 17
20.10.2013, 20:09 #4
Через стандартной утилитой телнета пробовали проверить, конектица?
0
Karegon221
0 / 0 / 0
Регистрация: 19.10.2013
Сообщений: 14
20.10.2013, 20:16  [ТС] #5
Ой нет 1 сек.

Да через стандартный cmd Telnet у меня вин 8. Добавил как всегда через установку Программ. Сервак и клиент. Все как всегда где-то я касячу. И не могу увидит. Код компилит ваще без ошибок. ))

Добавлено через 5 минут
Я там себе ещё установил.

Server.sin_addr.s_addr = INADDR_ANY;

Telnet должен зайти.
0
Avazart
Эксперт С++
7187 / 5361 / 280
Регистрация: 10.12.2010
Сообщений: 23,653
Записей в блоге: 17
20.10.2013, 20:32 #6
Откуда вы вообще такой код сервера брали ?

Если я не ошибаюсь, должен быть вызов ф-ции int listen( SOCKET s, int backlog) в коде

Добавлено через 5 минут
C++
1
Sleep(100);
Зачем ?
0
Karegon221
0 / 0 / 0
Регистрация: 19.10.2013
Сообщений: 14
20.10.2013, 20:39  [ТС] #7
Ну сама Listen у меня есть.

Listen, (SOCKADDR*)&Server, sizeof(Server)

если Telnet connect должен случится bind и я его сразу проверяю на ошибку. )

bind(Listen, (SOCKADDR*)&Server, sizeof(Server)) == SOCKET_ERROR)

Я может где-то не так понимаю разясните если вам не сложно.

C++
1
Sleep(100);
Думал проверять раз в 100 чтобы не терять connect.
Точнее знать есть он или нет.
0
Avazart
Эксперт С++
7187 / 5361 / 280
Регистрация: 10.12.2010
Сообщений: 23,653
Записей в блоге: 17
20.10.2013, 20:41 #8
Цитата Сообщение от Karegon221 Посмотреть сообщение
Ну сама Listen у меня есть.
Listen, (SOCKADDR*)&Server, sizeof(Server)
Чет не вижу ...
0
Karegon221
0 / 0 / 0
Регистрация: 19.10.2013
Сообщений: 14
20.10.2013, 20:51  [ТС] #9
45 строка

Я так могу делать может в этом проблема?
0
Avazart
Эксперт С++
7187 / 5361 / 280
Регистрация: 10.12.2010
Сообщений: 23,653
Записей в блоге: 17
20.10.2013, 20:56 #10
бред, ИМХО...
Цитата Сообщение от Avazart Посмотреть сообщение
должен быть вызов функции int listen( SOCKET s, int backlog) в коде
Но возможно я ошибаюсь.
Цитата Сообщение от Avazart Посмотреть сообщение
Откуда вы вообще такой код сервера брали ?
0
Karegon221
0 / 0 / 0
Регистрация: 19.10.2013
Сообщений: 14
20.10.2013, 21:06  [ТС] #11
Да вот учу Winsock2.h пробую все подряд набиваю руку. Именно этот с ютуба.

http://www.youtube.com/watch?v=MOYHZ6Fa8Ro

И у него кстате все работает )))
0
Avazart
Эксперт С++
7187 / 5361 / 280
Регистрация: 10.12.2010
Сообщений: 23,653
Записей в блоге: 17
20.10.2013, 21:14 #12
Нашел по чему учится, читать уже не в моде ?


C++
1
2
3
4
5
6
7
iResult = listen(ListenSocket, SOMAXCONN);
    if (iResult == SOCKET_ERROR) {
        printf("listen failed with error: %d\n", WSAGetLastError());
        closesocket(ListenSocket);
        WSACleanup();
        return 1;
    }
Источник : http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx
1
Karegon221
0 / 0 / 0
Регистрация: 19.10.2013
Сообщений: 14
20.10.2013, 21:20  [ТС] #13
Цитата Сообщение от Avazart Посмотреть сообщение
Нашел по чему учится, читать уже не в моде ?
Да я читаю, читаю. И смотрю. И делаю.

Спасибо за ссылку щас начну кавыряться.
0
Avazart
Эксперт С++
7187 / 5361 / 280
Регистрация: 10.12.2010
Сообщений: 23,653
Записей в блоге: 17
20.10.2013, 21:23 #14
Опираться надо на несколько источников, часто в статьях и книгах ошибки, а местами вообще чушь.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.10.2013, 21:23
Привет! Вот еще темы с ответами:

connect QT to NetBeans 6.9 - C++
не могу запустить скомпиленый файл.. когда он его запускает вылетает ошибка что не может найти файт QTCorer4.dll.. что делать? ...

connect,slots - C++
connect(networkManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(serviceRequestFinished(QNetworkReply*))); опишите смысл работы. ...

This program cannot run in DOS mode. Мигать светодиодами в LPT порту - C++
В интернете нашел программу, которая управляет параллельным портом, написанную на с++. Скомпилировал ее и создал EXE- файл запустил на...

Problem 2: Connect the Cows [Brian Dean, 2012] - C++
Problem 2: Connect the Cows Каждый день Фермер Джон обходит свою ферму, чтобы проведать N (1 &lt;= N &lt;= 10) своих коров. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
20.10.2013, 21:23
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru