HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 02.02.2009, 23:25
awdrg
Участник форума
Регистрация: 30.01.2009
Сообщений: 196
С нами: 9094175

Репутация: 66
По умолчанию

Подскажте пожалуйста, возможно и реализовать на C++ такую фишку (для компиляции под никсами и последующим запуском в консоли):
Открывается сокет.
В массив считывается часть определенной странички из интернета (или некоторые переменные).
Если возможно, то приведите в пример простейшую реализацию. Если вопрос поставлен не слишком корректно - сорри, я еще учусь

Последний раз редактировалось awdrg; 02.02.2009 в 23:30..
 
Ответить с цитированием

  #2  
Старый 03.02.2009, 01:21
n4e/\@
Участник форума
Регистрация: 06.05.2008
Сообщений: 161
С нами: 9480791

Репутация: 59
По умолчанию

2awdrg
http://www.linuxhowtos.org/C_C++/socket.htm и еще посмотри в сторону cURL
 
Ответить с цитированием

  #3  
Старый 03.02.2009, 16:32
awdrg
Участник форума
Регистрация: 30.01.2009
Сообщений: 196
С нами: 9094175

Репутация: 66
По умолчанию

Цитата:
Сообщение от n4e/\@  
2awdrg
http://www.linuxhowtos.org/C_C++/socket.htm и еще посмотри в сторону cURL
Спасибо
 
Ответить с цитированием

  #4  
Старый 03.02.2009, 01:45
herfleisch
Участник форума
Регистрация: 07.01.2009
Сообщений: 237
С нами: 9126697

Репутация: 97
По умолчанию

Цитата:
Сообщение от awdrg  
Подскажте пожалуйста, возможно и реализовать на C++ такую фишку (для компиляции под никсами и последующим запуском в консоли):
Открывается сокет.
В массив считывается часть определенной странички из интернета (или некоторые переменные).
Если возможно, то приведите в пример простейшую реализацию. Если вопрос поставлен не слишком корректно - сорри, я еще учусь
Думаю, что для начала тебе нужно будет разобраться с HTTP-протоколом. Научиться Netcat'ом посылать запросы и получать ответы...
 
Ответить с цитированием

  #5  
Старый 02.02.2009, 23:26
vikseriq
Участник форума
Регистрация: 31.07.2008
Сообщений: 207
С нами: 9356941

Репутация: 107
По умолчанию

2arser
Код:
C#
     private void button1_Click(object sender, EventArgs e)
        {
            this.webBrowser1.Navigate("http://forum.antichat.ru/");
        }
 
Ответить с цитированием

  #6  
Старый 03.02.2009, 16:13
arser
Новичок
Регистрация: 02.02.2009
Сообщений: 8
С нами: 9089462

Репутация: 0
По умолчанию

Цитата:
Сообщение от vikseriq  
2arser
Код:
C#
     private void button1_Click(object sender, EventArgs e)
        {
            this.webBrowser1.Navigate("http://forum.antichat.ru/");
        }
спасибо
 
Ответить с цитированием

  #7  
Старый 02.02.2009, 23:30
vikseriq
Участник форума
Регистрация: 31.07.2008
Сообщений: 207
С нами: 9356941

Репутация: 107
По умолчанию

2awdrg
Ну, почитай хоть тут: http://cs.baylor.edu/~donahoo/practi...ets/practical/
Гугли по фразе "work with sockets in c++" и подобным.
 
Ответить с цитированием

  #8  
Старый 03.02.2009, 19:19
Glazz
Участник форума
Регистрация: 09.08.2008
Сообщений: 139
С нами: 9344432

Репутация: 15
По умолчанию

Здраствуйте.
Вот тут решил с WinSock попробовать. В Си я не силен.

Вышел вот такой код :

...
char buff[1000];
printf("Program start.\n");
WSADATA WsaData;
WSAStartup (MAKEWORD(2,2), &WsaData);

SOCKET s;
s = socket(AF_INET,SOCK_STREAM,0);
SOCKADDR_IN dest_addr;
dest_addr.sin_family=AF_INET;
dest_addr.sin_port=htons(PORT);
dest_addr.sin_addr.s_addr=inet_addr(SERVERADDR);

int r = connect(s,(SOCKADDR_IN *) &dest_addr,sizeof(dest_addr));
if(r < 0)
printf("Failed.\n");
....

При компилировании выдает:
[Warning] passing arg 2 of `connect' from incompatible pointer type (указывает на int r = connect(..)

Пробовал struct sockaddr_in dest_addr; connect(.., (sockaddr_in *)..., ..); , но всяко эта ошибка вылазит :{

использую Dev-Cpp под WinXp
 
Ответить с цитированием

  #9  
Старый 03.02.2009, 19:47
xismyname
Познающий
Регистрация: 07.09.2008
Сообщений: 79
С нами: 9302336

Репутация: 10
По умолчанию

Цитата:
Сообщение от Glazz  
Здраствуйте.
Вот тут решил с WinSock попробовать. В Си я не силен.

Вышел вот такой код :

...
char buff[1000];
printf("Program start.\n");
WSADATA WsaData;
WSAStartup (MAKEWORD(2,2), &WsaData);

SOCKET s;
s = socket(AF_INET,SOCK_STREAM,0);
SOCKADDR_IN dest_addr;
dest_addr.sin_family=AF_INET;
dest_addr.sin_port=htons(PORT);
dest_addr.sin_addr.s_addr=inet_addr(SERVERADDR);

int r = connect(s,(SOCKADDR_IN *) &dest_addr,sizeof(dest_addr));
if(r < 0)
printf("Failed.\n");
....

При компилировании выдает:
[Warning] passing arg 2 of `connect' from incompatible pointer type (указывает на int r = connect(..)

Пробовал struct sockaddr_in dest_addr; connect(.., (sockaddr_in *)..., ..); , но всяко эта ошибка вылазит :{

использую Dev-Cpp под WinXp
Цитата:
connect(s,(SOCKADDR *) &dest_addr,sizeof(dest_addr));
или

Цитата:
connect(s,(struct sockaddr *) &dest_addr,sizeof(dest_addr));
SOCKADDR_IN != SOCKADDR
 
Ответить с цитированием

  #10  
Старый 04.02.2009, 14:46
Glazz
Участник форума
Регистрация: 09.08.2008
Сообщений: 139
С нами: 9344432

Репутация: 15
По умолчанию

Цитата:
Сообщение от xismyname  
или



SOCKADDR_IN != SOCKADDR
таак , попробовал пустую структуру sockaddr передать в коннект , скомпилилось и написало Done , тока вот как правильно заполнить структуру не нашел :\ не подскажите как? и на sockaddr получаются те же программы , что и на sockaddr_in или же в первом соккаддр нет того , что позволит полноценно работать с сетью?
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Часто задаваемые вопросы по MySQL Серый PHP 5 28.12.2006 18:26
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости. Обсуждения. 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Уязвимости CMS / форумов 26 15.02.2005 22:57



Здесь присутствуют: 52 (пользователей: 0 , гостей: 52)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.