Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > C/C++ Сетевое программирование
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.12.2014, 15:03   #11
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,493
По умолчанию

Цитата:
Сообщение от SAMOUCHKA Посмотреть сообщение
От куда я знаю сколько строк надо принимать?
Все строки за раз все равно принять не сможете. Лучше всего принимать строка за строкой и в конце посылать типа "пустой строки" как индикатор окончания.
waleri вне форума Ответить с цитированием
Старый 06.12.2014, 17:35   #12
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,618
По умолчанию

То ты передать новые записит не можешь, то оказывается, что и старые тоже не можешь. То вроде как передал, но не получил...

Информация из БД передается и получается точно также как любая другая информация.


Клиент прислал запрос, указал интервал, за который ему нужна выборка из БД. Ты формируешь выборку - это что-то типа массива строк, и а передаешь ее клиенту. Что не получается?

Я бы передавал как предлагает waleri, но можно сначала передать количество строк, а затем сами сообщения.

Ближе к названию темы, про работу с сетью можно прочитать тут:
Работа с сетью в Qt
Многопоточный сервер

Если ты прочитаешь эти статьи внимательно, я думаю все получится.
rrrFer вне форума Ответить с цитированием
Старый 07.12.2014, 09:40   #13
SAMOUCHKA
Форумчанин
 
Регистрация: 07.08.2011
Сообщений: 576
По умолчанию

Все получилось, дошло на конец как надо делать.

У меня еще вопрос на счет IP получаю его так:
Код:
void Widget::getIP()
{
    //QString ip_address ="";
    QHostInfo info = QHostInfo::fromName( QHostInfo::localHostName() );
    QList<QHostAddress> list_addr= info.addresses();
    ip_address = "-------   IP Address   ------- \n";
    for( int i = 0; i < list_addr.size(); i ++ )
    {
        if( list_addr.at(i).protocol() == QAbstractSocket::IPv4Protocol )
        {
        ip_address += "ip: ";
        ip_address += list_addr.at(i).toString();
        ip_address += '\n';
        //qDebug()<<ip_address;
        }
    }
    m_ptxt->setText(ip_address);
}
получаю адрес 127.0.1.1
скажите я могу использовать его для соеденения через интернет? Или только по локальной сети?
SAMOUCHKA вне форума Ответить с цитированием
Старый 07.12.2014, 11:29   #14
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,493
По умолчанию

А зачем вам IP адрес?
Принимайте подключения по адресу 0.0.0.0 и будет принимать отовсюду.
waleri вне форума Ответить с цитированием
Старый 07.12.2014, 11:44   #15
SAMOUCHKA
Форумчанин
 
Регистрация: 07.08.2011
Сообщений: 576
По умолчанию

Цитата:
Сообщение от waleri Посмотреть сообщение
А зачем вам IP адрес?
.
Так в книге написано
Но я все же хотел бы получтить ответ на мой вопрос

Последний раз редактировалось SAMOUCHKA; 07.12.2014 в 21:43.
SAMOUCHKA вне форума Ответить с цитированием
Старый 16.12.2014, 14:06   #16
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,618
По умолчанию

Цитата:
скажите я могу использовать его для соеденения через интернет? Или только по локальной сети?
Для любого компьютера 127.0.0.1 это тоже самое, что локалхост. Ни по какой сети ты его использовать не можешь - соединяешься только сам с собой.
Мне кажется это дети знают, в школьном курсе информатики проходили же (хоть и читал мне этот курс лет 10 назад вечноукуренный чувак).
rrrFer вне форума Ответить с цитированием
Старый 17.12.2014, 13:36   #17
SAMOUCHKA
Форумчанин
 
Регистрация: 07.08.2011
Сообщений: 576
По умолчанию

Цитата:
Сообщение от rrrFer Посмотреть сообщение
Для любого компьютера 127.0.0.1 это тоже самое, что локалхост. Ни по какой сети ты его использовать не можешь - соединяешься только сам с собой.
Мне кажется это дети знают, в школьном курсе информатики проходили же (хоть и читал мне этот курс лет 10 назад вечноукуренный чувак).
это я знаю. Я же писал, что нужно соеденение через интернет. Сервер и клиенты не на одном компе, вообще могут в разных городах находится.
В примерах на эту тему в основном локалхост. КАК НАДО СДЕЛАТЬ ЧТО БЫ СОЕДЕНЕНИЕ ЧЕРЕЗ ИНТЕРНЕТ БЫЛО?
SAMOUCHKA вне форума Ответить с цитированием
Старый 17.12.2014, 14:17   #18
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Сообщение от SAMOUCHKA Посмотреть сообщение
это я знаю. Я же писал, что нужно соеденение через интернет. Сервер и клиенты не на одном компе, вообще могут в разных городах находится.
В примерах на эту тему в основном локалхост. КАК НАДО СДЕЛАТЬ ЧТО БЫ СОЕДЕНЕНИЕ ЧЕРЕЗ ИНТЕРНЕТ БЫЛО?
на уровне ПО, либо слушайте все интерфейсы, либо берите внешний.
тока на уровне сети требования есть
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 17.12.2014, 15:03   #19
SAMOUCHKA
Форумчанин
 
Регистрация: 07.08.2011
Сообщений: 576
По умолчанию

Цитата:
Сообщение от SAMOUCHKA Посмотреть сообщение
Все получилось, дошло на конец как надо делать.

У меня еще вопрос на счет IP получаю его так:
Код:
void Widget::getIP()
{
    //QString ip_address ="";
    QHostInfo info = QHostInfo::fromName( QHostInfo::localHostName() );
    QList<QHostAddress> list_addr= info.addresses();
    ip_address = "-------   IP Address   ------- \n";
    for( int i = 0; i < list_addr.size(); i ++ )
    {
        if( list_addr.at(i).protocol() == QAbstractSocket::IPv4Protocol )
        {
        ip_address += "ip: ";
        ip_address += list_addr.at(i).toString();
        ip_address += '\n';
        //qDebug()<<ip_address;
        }
    }
    m_ptxt->setText(ip_address);
}
получаю адрес 127.0.1.1
скажите я могу использовать его для соеденения через интернет? Или только по локальной сети?
на уровне ПО это что то вроде этого?
Вообще что можно почитать про это? толковое
SAMOUCHKA вне форума Ответить с цитированием
Старый 17.12.2014, 15:18   #20
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Сообщение от SAMOUCHKA Посмотреть сообщение
на уровне ПО это что то вроде этого?
Вообще что можно почитать про это? толковое
это вариант с внешним интерфейсом, там надо тока исключать 127.0.0.1
а так проще слушать все(а при клиенте и сервере на одной машине даже лучше).

да вроде кидали ссылки же...
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поддержка на экзамене Владилена Фриланс 1 15.06.2011 13:10
Справка и поддержка strong78 Операционные системы общие вопросы 12 24.01.2011 11:28
Socket: Подключение клиента из глобальной сети к серверу, расположенному в локальной сети Дамир Общие вопросы .NET 4 01.12.2010 12:12
Поддержка плагинов Altera Общие вопросы Delphi 4 29.07.2009 18:03