Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Сети > Как в Delphi узнать свой IP? IPWatch не предлагать


Автор: Delphin1024 27.3.2016, 06:14
Здравствуйте. Меня интересует, как узнать свой IP в Delphi 7. Сразу скажу, что IdIPWatch мне не  подходит, так как он позволяет узнать только локальный IP, а мне нужен настоящий. 

Автор: bySawka 28.3.2016, 13:34
Отправляй запрос на сервер ( например 2ip) и парси результат

Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Kak-v-Delphi-uznat-svoy-IP-IPWatch-ne-predlagat-id56f75050ae20152e798b4567#findElement_E7045_56f9089aae2015af5cd5874b_0

Автор: kami 28.3.2016, 19:44
У меня на компьютере 5 IP:
1. Lan. 192.168.1.120. Используется в локалке
2. Wi-Fi. 192.168.0.165. Вторая локалка и выход в интернет через роутер. У роутера свой IP.
3. 3 штуки виртуальных VM-Ware  и т.п.

Какой из них считать "настоящим"?

Автор: mikeyess 28.3.2016, 20:43
function TForm_Login.Get_LocalIP: string;
const WSVer = $101;
var
  wsaData: TWSAData;
  P: PHostEnt;
  Buf: array [0..127] of Char;
begin
  Result := '';
  if WSAStartup(WSVer, wsaData) = 0 then begin
    if GetHostName(@Buf, 128) = 0 then begin
      P := GetHostByName(@Buf);
      if P <> nil then Result := iNet_ntoa(PInAddr(p^.h_addr_list^)^);
    end;
    WSACleanup;
  end;
end;


Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Kak-v-Delphi-uznat-svoy-IP-IPWatch-ne-predlagat-id56f75050ae20152e798b4567#findElement_E7045_56f96d2bae2015624cd587d5_0

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)