Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Определение IP-адреса по домену.

Market Networks

Описывается функция, которая показывает, как вычислить IP адрес компьютера в интернете по его доменному имени.

Совместимость: Delphi 3.x (или выше)

Объявляем Winsock, для использования в функции 
............ 
function HostToIP(Name: string; var Ip: string): Boolean; 
var 
  wsdata : TWSAData; 
  hostName : array [0..255] of char; 
  hostEnt : PHostEnt; 
  addr : PChar; 
begin 
  WSAStartup ($0101, wsdata); 
  try 
    gethostname (hostName, sizeof (hostName)); 
    StrPCopy(hostName, Name); 
    hostEnt := gethostbyname (hostName); 
    if Assigned (hostEnt) then 
      if Assigned (hostEnt^.h_addr_list) then begin 
        addr := hostEnt^.h_addr_list^; 
        if Assigned (addr) then begin 
          IP := Format ('%d.%d.%d.%d', [byte (addr [0]), 
          byte (addr [1]), byte (addr [2]), byte (addr [3])]); 
          Result := True; 
        end 
        else 
          Result := False; 
      end 
      else 
        Result := False 
    else begin 
      Result := False; 
    end; 
  finally 
    WSACleanup; 
  end 
end; 
................................ 

Вы можете разметстить на форме EditBox, Кнопку и Label и добавить к кнопке следующий обработчик события OnClick:

procedure TForm1.Button1Click(Sender: TObject); 
var 
IP: string; 
begin 
if HostToIp(Edit1.Text, IP) then Label1.Caption := IP; 
end; 

Оставить комментарий

Комментарий:
можно использовать BB-коды
Максимальная длина комментария - 4000 символов.
 

Комментарии

1.
91K
31 мая 2013 года
oleary.lee
0 / / 31.05.2013
Мне нравитсяМне не нравится
31 мая 2013, 18:51:29
Не канает.
Delphi Rad sTUDIOS 2009

[DCC Error] Unit3.pas(32): E2010 Incompatible types: 'Array' and 'PAnsiChar'
[DCC Error] Unit3.pas(34): E2010 Incompatible types: 'Array' and 'PAnsiChar'
[DCC Error] Unit3.pas(37): E2010 Incompatible types: 'AnsiChar' and 'Char'
2.
Аноним
+0 / -1
Мне нравитсяМне не нравится
18 февраля 2006, 17:55:40
3.
Аноним
+0 / -1
Мне нравитсяМне не нравится
18 февраля 2006, 17:17:10
поскажите, как можно определять айпи и как можно найти человека, организацию на которую он зарегестрирован. Очень серйозно!!! Связано просто из кражей большой сумы денег!
4.
Аноним
Мне нравитсяМне не нравится
11 февраля 2006, 15:12:55
это писал сишник.
ибо не так люди паскальные делають
5.
Аноним
Мне нравитсяМне не нравится
12 сентября 2005, 00:41:09
Литл просьба, опишите подробней как обьявить Winsock,
и как фобще правильно вписать этот код в дельфи.
Заранее спасибо.
6.
Аноним
Мне нравитсяМне не нравится
17 февраля 2005, 16:21:20
Спасибо очень пригодилось
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог