C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 Как получить (т.е. какой функцией) собственный IP ? / Общие вопросы / Сеть

WSADATA wsaData;
WSAStartup(MAKEWORD (1,1),&wsaData);

char HostName[1024];
DWORD m_HostIP = 0;
if(!gethostname(HostName, 1024))
{
if(LPHOSTENT lphost = gethostbyname(HostName))
m_HostIP = ((LPIN_ADDR)lphost->h_addr)->s_addr;
}
Развивая ответ Олега, если тебе нужно строковое представление IP адреса например "195.124.13.1" то используй тот же код +
szIPAddr=char[17];
strcpy(szIPAddr,inet_ntoa(*((in_addr*)lpHostEnt->h_addr_list[0]))); 
Это работает наверняка. Или
strcpy(szIPAddr,inet_ntoa(*((in_addr*)lphost->h_addr_list)));
Если нужны числа, в смысле по байтам: a1=195,a2=124,a3=13,a4=1 то в последнюю строку, предложенную Олегом поменяй на
a1=((LPIN_ADDR)lphost->h_addr)->s_b1
a2=((LPIN_ADDR)lphost->h_addr)->s_b2
a3=((LPIN_ADDR)lphost->h_addr)->s_b3
a4=((LPIN_ADDR)lphost->h_addr)->s_b4
или
a1=lphost->h_addr_list[0]
a2=lphost->h_addr_list[1]
a3=lphost->h_addr_list[2]
a4=lphost->h_addr_list[3]