Форум программистов, компьютерный форум, киберфорум
C++: Сети
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Разработка взаимодействующих клиента и сервера(устанавливаются на 2 разных компа) Доброго времени суток всем. У меня стоит задача разработать клиент и сервер. Они между собой обмениваются камандами и данными. Устанавливаются на 2 разных компьютера. Подскажите, пожалуйста,... https://www.cyberforum.ru/ cpp-networks/ thread425175.html C++ VS c++ sockets (errors), Пример реализации TCP эхо-сервера https://www.cyberforum.ru/ cpp-networks/ thread425301.html
начал узучать сокеты в с++ , нашёл пример клиент серверного приложения. но возникают ошибки ,не могу понять в чём ошибка. // Пример простого TCP-эхо-сервера #pragma comment ( lib, "ws2_32.lib" )... создаёшь приложение типа win32, а надо console win32
Создание экземпляра класса, разрушение экземпляра класса C++
Не могу найти информацию про разрущение экземпляра класса. Объясните пожалуйста, что это? Зависит от того, виртуальный ли деструктор. Если да - то экземпляр уничтожится. Если я еще не путаюсь в великом множестве терминологий, при процессе, называемом "уничтожение экзепляра", буде то...
C++ c++ winsock non-blocking https://www.cyberforum.ru/ cpp-networks/ thread415500.html
Помогите. Пожалуйста. :wall: Как этот код на c# napisat в c/c++? на сколько я понял создается non-blocking i/o socket, c# код нормально работает посылать и получает, а вот в c++ не как, в чем я...
"Первый блин" при работе с сокетами C++
Всем здрасьте. Начал учится работы с сокетами. Конечная цель: автоматизация процессов через порт телнета разных модемов/роутеров. Но до этого длинный путь, не могу тупо приконнектиться к устройству.... Heidel, Спасибо! Осталось совсем чуть чуть: 36 no match for 'operator=' in 'dest_addr.sockaddr_in::sin_addr = inet_addr(((const char*)"192.168.1.1"))' note %\include\winsock2.h:223...
C++ Сокеты - Авторизация на 23-м порту https://www.cyberforum.ru/ cpp-networks/ thread415223.html
Подключаюсь к D-Link роутеру, подключается удачно, но проблема с кириллицей и аутентификацией. Результат: TCP Client ╤юхфшэхэшх ё 192.168.1.1 єёях°эю єёЄрэютыхэю S=>C:... :D Действительно не зная поденных данных войти трудно. Но устройство как ни странно на заводских (сброшенных) настройках и с помощью стандартных средств Windows и Linux входит удачно. Проблема, увы...
C++ Магия в сокетах. Проблемка с моментальным разрывом и восстановлением подключения. https://www.cyberforum.ru/ cpp-networks/ thread420167.html
У меня такая проблема: Программа работает себе работает, сервер создался слушает, клиент подключился, живут дружно, обменялись сообщениями, в общем, все отлично. И тут бац, ни с того, ни с сего...
C++ c++ winsock non-blocking https://www.cyberforum.ru/ cpp-networks/ thread415517.html
Помогите. Пожалуйста. Как этот код на c# napisat в c/c++? на сколько я понял создается non-blocking i/o socket, c# код нормально работает посылать и получает, а вот в c++ не как, в чем я ошибся??...
C++ сокеты https://www.cyberforum.ru/ cpp-networks/ thread419762.html
вот интересует такой вопрос 1 для отправки raw сокета (протокол tcp/ip)нужно объявить структуры IP_Header и TCP_Header а как собственно привязать эти две структуры к сокету и нужно ли это вообще, ...
C++ Многопоточный сервер Доброго времени суток. Во время новогодних праздников, решил себя развлечь написанием небольшого приложения на C++ под дебианом. Приложению нужен веб интерфейс, который сможет обработать сразу... Я в аналогичной программе после accept вызывал fork() для создания дочернего процесса. Этот процесс будет работать с клиентом, а цикл приема запросов опять перейдет на accept. https://www.cyberforum.ru/ cpp-networks/ thread423794.html
Вывести на экран значения специальных IP-адресов INADDR_ANY и INADDR_BROADCAST C++
Нужно вывести на экран значения специальных IP-адресов INADDR_ANY и INADDR_BROADCAST. Вот что сделал: #ifndef WIN32_LEAN_AND_MEAN #define WIN32_LEAN_AND_MEAN #endif #include <windows.h>... а чего их выводить ? #define INADDR_ANY (u_long)0 #define INADDR_BROADCAST (u_long)0xffffffff
C++ с++ и прокси мне нужно заходить и скачивать сайт( его html код) через прокси нарыл вот такой код //тип прокси сервера HTTP #include <iostream.h> #include <conio.h> #include <stdio.h> #include <windows.h>... https://www.cyberforum.ru/ cpp-networks/ thread414951.html
5 / 5 / 0
Регистрация: 14.10.2010
Сообщений: 104
14.01.2012, 14:55 0

Sockets! Connection fail. - C++ - Ответ 2386668

14.01.2012, 14:55. Показов 1176. Ответов 4
Метки (Все метки)

Ответ

Брендмауэр тут не причём, у меня тоже такая проблема была и я долго не мог её решить, пока я не нашарил где-то на мсдне код серверного сокета, после чего доработал свой код и всё заработало. Вот воспользуйся этим кодом многопоточного сервера, у меня работает всё через белый ИП на разных машинах.

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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#include <WinSock2.h>
#pragma comment(lib, "ws2_32.lib")
#define MAX_CLIENTS 4
 
DWORD WINAPI ClientThread(void * lpvParam)
{
    SOCKET _sock = (SOCKET)lpvParam;
    char RecvBuf[1024];
    char SendBuf[1024];
    int ret;
 
    while (1)
    {
        ret = recv(_sock, RecvBuf, 1024, 0);
 
        if (ret == 0)
            break;
 
        if (ret == SOCKET_ERROR)
        {
            MessageBoxA(0, "Ошибка сокета", "Serer", MB_ICONSTOP);
            break;
        }
 
        RecvBuf[ret] = '\0';
 
        //Отослать обратно клиенту
        strcpy(SendBuf, "Привет");
        ret = send(_sock, SendBuf, sizeof(SendBuf), 0);
 
        if (ret == SOCKET_ERROR)
        {
            MessageBoxA(0, "Ошибка отправки ответа", "Serer", MB_ICONSTOP);
            break;
        }
        return 0;
    }
}
 
DWORD WINAPI NetThread(void * lpvParam)
{
    SOCKET _sServer;
    SOCKET _sClient;
    struct sockaddr_in _localaddr, _clientaddr;
    HANDLE hThread;
    DWORD dwThreadId;
    int _size;
 
    _sServer = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
    _localaddr.sin_addr.s_addr = htonl(INADDR_ANY);
    _localaddr.sin_family = AF_INET;
    _localaddr.sin_port = htons(5050);
    if (bind(_sServer, (struct sockaddr *)&_localaddr, sizeof(_localaddr)) == SOCKET_ERROR)
    {
        MessageBoxA(0, "Невозможно забиндить сервер",0, MB_ICONSTOP);
        return 1;
    }
    MessageBoxA(0, "Сервер запущен", "Serer", MB_ICONINFORMATION);
 
    listen(_sServer, MAX_CLIENTS);
    while (1)
    {
        _size = sizeof(_clientaddr);
        _sClient = accept(_sServer, (struct sockaddr *)&_clientaddr, &_size);        
        if (_sClient == INVALID_SOCKET)
        {        
            MessageBoxA(0, "Accept filed", "Error", 0);
            break;
        }
 
        hThread = CreateThread(NULL, 0, ClientThread, 
            (LPVOID)_sClient, 0, &dwThreadId);
        if (hThread == NULL)
        {
            MessageBoxA(0, "Create thread filed", "Error", 0);
            break;
        }
        CloseHandle(hThread);
    }
    closesocket(_sServer);
    return 0;
}
 
INT WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
    MSG msg;
    WSADATA wsd;
 
    if (WSAStartup(MAKEWORD(2,2), &wsd) != 0)
    {
        MessageBoxA(0, "Can't load WinSock", "Error", 0);
        return 0;
    }
    HANDLE        hNetThread;
    DWORD         dwNetThreadId;
    hNetThread = CreateThread(NULL, 0, NetThread, 0, 0, &dwNetThreadId);
 
    while (GetMessage(&msg, NULL, 0, 0))
    {
        TranslateMessage(&msg);
        DispatchMessage(&msg);
    }
    WSACleanup();
    return (INT)msg.wParam;
}


Вернуться к обсуждению:
Sockets! Connection fail. C++
1
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.01.2012, 14:55
Готовые ответы и решения:

С++ sockets
Всем привет, изучаю сокеты по книгу &quot;Самоучитель игры на WinSock&quot;. Все отлично, но есть как всегда ошибки :) В общем: Клиент: //...

C++, sockets, Linux
Здравствуйте. Прошу прощения что не засунул тему в linux, так как тема больше имеет отношение к сетевому кодингу. Тем не менее она под...

sockets vs2010
Доброго времени суток. Решил написать небольшой месседжер на с++. Возник вопрос, а есть ли уже написанные асинхронные сокеты или надо...

4
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
14.01.2012, 14:55
Помогаю со студенческими работами здесь

epoll: trouble with sockets
Ниже представлен код. Суть проста: создаем сокет, делаем его неблокирующим, соединяемся, отдаем управление в epoll (читаем EPOLLIN и...

Маны по SSL sockets
Есть ли хорошие маны (желательно с примерами использования) по SSL сокетам SSL помимо официальной документации?

RAW Sockets - Литература
Подскажите пожалуйста литературу по Raw Sockets.

Pimpl + std::thread + linux sockets?
Доброго времени суток. Есть задача постоянно слушать сокеты, ну и что-то с этим всем делать, класс назван Transport. Т.к. типы сокетов...

sockets - получение данных в реальном времени?
Добрый день. Народ, объясните мне, как описать(какое выбрать) событие, чтоб получать данные с sockets в реальном времени, вот данные...

0
Новые блоги и статьи
Неблокируемый стек в C++26: реализуем простой сборщик мусора
stackOverflow 02.03.2025
Многопоточные приложения требуют надежных и производительных структур данных, способных эффективно работать в условиях конкурентного доступа. Неблокируемые структуры данных представляют собой особый. . .
Шаблон REQ/REP в ZeroMQ: сверхбыстрый обмен сообщениями в C++ и Python
stackOverflow 02.03.2025
Построение высоконагруженных распределенных систем требует надежного и производительного механизма обмена сообщениями. ZeroMQ выделяется среди прочих решений своей невероятной скоростью работы и. . .
Нестандартные приемы работы с итераторами в C++
stackOverflow 02.03.2025
Итераторы - один из краеугольных камней C++, предоставляющий универсальный механизм обхода и манипуляции данными в контейнерах. Появившись как замена небезопасным указателям, они эволюционировали от. . .
Лексический анализ и регулярные выражения в C++26
stackOverflow 02.03.2025
Лексический анализ - ядро любого компилятора и инструмента обработки текста. Каждый программист сталкивается с задачами парсинга строк, обработки файлов конфигурации или анализа пользовательского. . .
Подробно о std::mdspan в C++23
stackOverflow 02.03.2025
Работа с многомерными массивами данных традиционно была одной из сложных задач в C++. Программистам приходилось создавать собственные абстракции или использовать сторонние библиотеки для эффективной. . .
Колмогоровская сложность в C++: Путь к совершенному коду
stackOverflow 02.03.2025
Абстрактная математическая теория Колмогорова стала мощным средством оценки и улучшения программного кода. Сложность алгоритма - не только в его вычислительной эффективности, но и в том, насколько. . .
Изменения в C# 14
stackOverflow 02.03.2025
Одно из самых значимых изменений в C# 14 - поддержка коллекционных выражений, которые позволяют создавать и инициализировать коллекции с помощью нового лаконичного синтаксиса. Это нововведение. . .
Разработка кроссплатформен­­­­ного мобильного приложения для iOS/Android на C++
bytestream 02.03.2025
C++ как язык программирования высокого уровня с прямым доступом к аппаратным ресурсам позволяет создавать приложения, работающие одинаково быстро как на iOS, так и на Android устройствах. Ни для кого. . .
Аутентификация/авторизация на Golang
bytestream 02.03.2025
Go предлагает множество возможностей для создания надежных систем аутентификации. Встроенные криптографические пакеты, высокая производительность и простота параллельной обработки запросов делают его. . .
Нововведения TypeScript 5.8
bytestream 02.03.2025
TypeScript 5. 8 приносит много возможностей и оптимизаций, которые существенно расширяют границы типобезопасного программирования на JavaScript. Эта версия включает ряд значительных улучшений в работе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru