Русское сообщество по скриптингу

Сокеты: Как узнать IP адрес?

Все вопросы по скриптингу для Metamod, помощь в редактировании плагинов.
Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только скриптинга для
Metamod.


Правила при создании новой темы:
1. При вставке кода плагина необходимо использовать тег [pawn], в противном случае, если тег [pawn] не отображает ваш код, можно использовать тег [code].
2. Любые изображения должны быть загружены, как вложения к вашему сообщению.
3. При описании проблемы или запросе на помощь в редактировании плагина обязательно выкладывайте исходник плагина.

Сокеты: Как узнать IP адрес?

Сообщение Chuvi » 05 авг 2013, 11:39

Нашёл в сети пример (немного переделал под "свои" реалии, ибо в примере был cout<<)
Код: Выделить всё
int SockTest()
{
   WSADATA wsaData;
       int errcod;
       errcod = WSAStartup(MAKEWORD(2, 2), &wsaData);
           if(errcod!=0)
           {
            G_Console->Printf("WS not found\n");
            return 0;
           }
       SOCKET sock1;
       sock1 = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
       if(sock1<0)
       {
           G_Console->Printf("Socket create error:%i\n",WSAGetLastError());
       }
       sockaddr_in der_addr;
       der_addr.sin_family = AF_INET;
       der_addr.sin_addr.s_addr = inet_addr("94.100.181.156");
       der_addr.sin_port = htons(80);
           if(connect(sock1, (sockaddr*)&der_addr, sizeof(der_addr))<0)
           {
               G_Console->Printf("Error connect\n");
           }
           char *data2;
           char *data1="GET Вы должны зарегистрироваться, чтобы видеть ссылки. HTTP/1.0\r\n\HOST: api.rutvit.ru/\r\n\r\n";
           send(sock1, data1, sizeof(data1), 0);
           recv(sock1, data2, sizeof(data2), 0);
         G_Console->Printf("%s\n",data2);
       }

Собственно, вопрос. Как можно заменить "94.100.181.156" на "api.rutvit.ru"?
Плагинами на заказ не занимаюсь.
Своих дел хватает.
Аватара пользователя
Chuvi
Модератор
 
Сообщения: 2253
Зарегистрирован: 24 ноя 2011, 08:03
Благодарил (а): 127 раз.
Поблагодарили: 562 раз.

Re: Сокеты: Как узнать IP адрес?

Сообщение quckly » 05 авг 2013, 12:20

Вы должны зарегистрироваться, чтобы видеть ссылки.

Добавлено спустя 26 секунд:
struct hostent* FAR gethostbyname(
_In_ const char *name
);
Аватара пользователя
quckly
Скриптер
 
Сообщения: 403
Зарегистрирован: 20 ноя 2009, 10:03
Благодарил (а): 41 раз.
Поблагодарили: 243 раз.
Опыт программирования: Около 6 месяцев
Языки программирования: Counter-Strike 1.6


Вернуться в Скриптинг

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2