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

Сокеты: после вызова send программа зависает на функции recv - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Запуск командной строки VS из конкретного каталога http://www.cyberforum.ru/cpp-beginners/thread1246995.html
Подскажите плиз, как запустить командную строку Visual Studio Command Promt (vsvars32.bat) из необходимого каталога, так как надоело постоянно использовать инструкцию cd.. для возврата из корневого каталога этого bat-файла. Я так понимаю, надо создать bat.файл и как-то указать путь, но все мои попытки завершились безуспешно.
C++ Json c++ send end write - существует ли готовая библиотека Здрасте, нужна такая штука которая бы умела посылать json обьекты методом post на кукую-нить страницу и получать оттуда json обьект в виде std::string т.е. у нас есть какой-нить string std::string pal = "{\"planet\":\"Tirella\"}" Мы его отправляем методом post на страницу localhost/core.php Там че-то обработать и вернуть ответ ввиде json//эт я и сам могу сделать std::string otvet =... http://www.cyberforum.ru/cpp-beginners/thread1246988.html
В дочерних классах компилятор сообщает об Undefined reference to pure virtual functions C++
Здравствуйте! Имеется базовый класс с чисто виртуальным деструктором (virtual ~Service() = 0). Однако в дочерних классах мне компилятор сообщает об undefined reference to ...::~Service(). Service (шаблон) целиком объявлен и реализован в hpp файле. Как это понимать?
Cannot convert from 'wchar_t' to 'const wchar_t *' C++
такой код, порылся в инете не помогло. ломать голову надоело может кто подскажет, буду благодарен. wchar_t * english = L"abvgdee ziyklmnoprstuf 'e " ; wchar_t TranslatedWord ; wcscat(TranslatedWord,english ) ;
C++ Нужен пример рекурсивной функции для понимания ее назначения и практической пользы http://www.cyberforum.ru/cpp-beginners/thread1246960.html
Не могу понять пользу рекурсии, может ли кто привести код в пример.
C++ Заменить все элементы, меньшие заданного числа, этим числом Использование функций-шаблонов: для работы с двумерными массивами арифметических типов данных разработать шаблоны ввода и вывода массива, а также шаблон для решения основной задачи:Заменить все элементы, меньшие заданного числа, этим числом. #include "iostream" #include "conio.h" using namespace std; template < typename Х> подробнее

Показать сообщение отдельно
mh-coder
24 / 23 / 2
Регистрация: 01.02.2014
Сообщений: 717
28.08.2014, 18:50  [ТС]     Сокеты: после вызова send программа зависает на функции recv
Столкнулся со следующей проблемой, несрабатывает функция дисконект, тоесть браузер уже получил все заголовки и html код, но серовно остаётся в стадии загрузки страницы, как ему дат понять что уже всё загрузилось и пора отключатся?



C++ (Qt)
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
#include "stdafx.h"
#include "Header.h"
#include "Server.h"
 
 
 
int _tmain(int argc, _TCHAR* argv[])
{
 
 
 
    char data[10240] = {NULL};
 
    Client c;
    Client c2;
    Server b;
    b.LoadWinsoсk();
    b.CreateSocket();
 
    c.LoadWinsoсk();
    c.CreateSocket();
 
    c2.LoadWinsoсk();
    c2.CreateSocket();
 
    b.Bind("127.0.0.1",2222,SOMAXCONN);
    b.Listen();
    
    Array ex;
    string url;
 
    while(true){
        b.Accept(c);
        c.RecvData(data,1024);  
 
        ex = explode("\r\n",data);
        url = str_replace("Host: ","",ex[1] );
        //тут получаем домен
 
 
        c2.Connect(url.c_str(),80);
        cout<<c.GetError()<<"\n"<<"\n";
        c2.SendData(data,c.GetRecvSize());
        cout<<c.GetError()<<"\n"<<"\n";
 
        while(true)
        {
        c2.RecvData(data,10240);
        if(c2.GetRecvSize() == 0 ){
        break;  
        }
        c.SendData(data,c2.GetRecvSize());
        memset(data,0,sizeof(data));
        }
        cout<<c.GetError()<<"\n"<<data<<"\n";
        
        c.Disconnect();
       c2.Disconnect();
    }
 
    return 0;
}
 
Текущее время: 02:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru