На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Соблюдайте общие правила форума
Пожалуйста, выделяйте текст программы тегом [сode=pas] ... [/сode]. Для этого используйте кнопку [code=pas] в форме ответа или комбобокс, если нужно вставить код на языке, отличном от Дельфи/Паскаля.
Указывайте точные версии Delphi и используемых сетевых библиотек.

Не приветствуется поднятие старых тем. Если ваш вопрос перекликается со старой темой, то для вопроса лучше создать новую тему, а старую указать в первом сообщении с описанием взаимосвязи.

Внимание:
попытки открытия обсуждений реализации вредоносного ПО, включая различные интерпретации спам-ботов, наказывается предупреждением на 30 дней.
Повторная попытка - 60 дней. Последующие попытки бан.
Мат в разделе - бан на три месяца...

Полезные ссылки:
user posted image MSDN Library user posted image FAQ раздела user posted image Поиск по разделу user posted image Как правильно задавать вопросы


Выразить свое отношение к модераторам раздела можно здесь: user posted image Krid, user posted image Rouse_

Модераторы: Krid, Rouse_
  
> Ip-адрес, имя компа, IdIcmpClient
    Как узнать: апишник по имени компьютера, имя компьютера по айпишнику и еще вопрос:
    Почему в компоненте IdIcmpClient когда в поле host вводишь апишник, он нормально все пингует, ну если ввести имя компьютера то он выдает отрицательный результат в любом случаи?
      а как ты по имини компа собрался узнать IP ?  ;D
      lamer <=> 127.0.0.1
      xakep <=> 31.33.7.0 ? ? ? ;D ;D ;D
        я имелл ввиду в сети.
        ну ты когда пишешь выполнить:
        "ping lamer"
        он пингует комп, а когда компа нет в сети он пишет, что невозможно определить IP-дрес компьютера, значит есть какая то возможность определять таким образом.

        А на вторую чать вопроса что не ответил!?? ;), меня она больше интересует
        Сообщение отредактировано: KoDi -
          и кстати наоборот

          lamer <=> 31.33.7.0
          xakep <=> 127.0.0.1
            GetHostByName
            Сообщение отредактировано: P.O.D -
              а вааще как Говориться
              Цитата
              я сегодня добрый
               ;D
              ExpandedWrap disabled
                <br>uses Winsock; <br><br>function GetIPFromHost<br>(var HostName, IPaddr, WSAErr: string): Boolean; <br>type <br>  Name = array[0..100] of Char; <br>  PName = ^Name; <br>var <br>  HEnt: pHostEnt; <br>  HName: PName; <br>  WSAData: TWSAData; <br>  i: Integer; <br>begin <br>  Result := False;     <br>  if WSAStartup($0101, WSAData) <> 0 then begin <br>    WSAErr := 'Winsock is not responding."'; <br>    Exit; <br>  end; <br>  IPaddr := ''; <br>  New(HName); <br>  if GetHostName(HName^, SizeOf(Name)) = 0 then<br>  begin <br>    HostName := StrPas(HName^); <br>    HEnt := GetHostByName(HName^); <br>    for i := 0 to HEnt^.h_length - 1 do <br>     IPaddr :=<br>      Concat(IPaddr,<br>      IntToStr(Ord(HEnt^.h_addr_list^[i])) + '.'); <br>    SetLength(IPaddr, Length(IPaddr) - 1); <br>    Result := True; <br>  end<br>  else begin <br>   case WSAGetLastError of<br>    WSANOTINITIALISED:WSAErr:='WSANotInitialised'; <br>    WSAENETDOWN      :WSAErr:='WSAENetDown'; <br>    WSAEINPROGRESS   :WSAErr:='WSAEInProgress'; <br>   end; <br>  end; <br>  Dispose(HName); <br>  WSACleanup; <br>end; <br>......<br>procedure TForm1.Button1Click(Sender: TObject); <br>var <br>  Host, IP, Err: string; <br>begin <br>  if GetIPFromHost(Host, IP, Err) then begin <br>    Edit1.Text := Host; <br>    Edit2.Text := IP; <br>  end <br>  else <br>    MessageDlg(Err, mtError, [mbOk], 0); <br>end; <br>


                Как узнать: апишник по имени компьютера, имя компьютера по айпишнику и еще вопрос:
                Почему в компоненте IdIcmpClient когда в поле host вводишь апишник, он нормально все пингует, ну если ввести имя компьютера то он выдает отрицательный результат в любом случаи?
                  а как ты по имини компа собрался узнать IP ?  ;D
                  lamer <=> 127.0.0.1
                  xakep <=> 31.33.7.0 ? ? ? ;D ;D ;D
                    я имелл ввиду в сети.
                    ну ты когда пишешь выполнить:
                    "ping lamer"
                    он пингует комп, а когда компа нет в сети он пишет, что невозможно определить IP-дрес компьютера, значит есть какая то возможность определять таким образом.

                    А на вторую чать вопроса что не ответил!?? ;), меня она больше интересует
                    Сообщение отредактировано: KoDi -
                      и кстати наоборот

                      lamer <=> 31.33.7.0
                      xakep <=> 127.0.0.1
                        GetHostByName
                        Сообщение отредактировано: P.O.D -
                          а вааще как Говориться
                          Цитата
                          я сегодня добрый
                           ;D
                          ExpandedWrap disabled
                            <br>uses Winsock; <br><br>function GetIPFromHost<br>(var HostName, IPaddr, WSAErr: string): Boolean; <br>type <br>  Name = array[0..100] of Char; <br>  PName = ^Name; <br>var <br>  HEnt: pHostEnt; <br>  HName: PName; <br>  WSAData: TWSAData; <br>  i: Integer; <br>begin <br>  Result := False;     <br>  if WSAStartup($0101, WSAData) <> 0 then begin <br>    WSAErr := 'Winsock is not responding."'; <br>    Exit; <br>  end; <br>  IPaddr := ''; <br>  New(HName); <br>  if GetHostName(HName^, SizeOf(Name)) = 0 then<br>  begin <br>    HostName := StrPas(HName^); <br>    HEnt := GetHostByName(HName^); <br>    for i := 0 to HEnt^.h_length - 1 do <br>     IPaddr :=<br>      Concat(IPaddr,<br>      IntToStr(Ord(HEnt^.h_addr_list^[i])) + '.'); <br>    SetLength(IPaddr, Length(IPaddr) - 1); <br>    Result := True; <br>  end<br>  else begin <br>   case WSAGetLastError of<br>    WSANOTINITIALISED:WSAErr:='WSANotInitialised'; <br>    WSAENETDOWN      :WSAErr:='WSAENetDown'; <br>    WSAEINPROGRESS   :WSAErr:='WSAEInProgress'; <br>   end; <br>  end; <br>  Dispose(HName); <br>  WSACleanup; <br>end; <br>......<br>procedure TForm1.Button1Click(Sender: TObject); <br>var <br>  Host, IP, Err: string; <br>begin <br>  if GetIPFromHost(Host, IP, Err) then begin <br>    Edit1.Text := Host; <br>    Edit2.Text := IP; <br>  end <br>  else <br>    MessageDlg(Err, mtError, [mbOk], 0); <br>end; <br>


                            А все же кто нибудь ответит или нет??
                            QUOTE
                            Почему в компоненте IdIcmpClient когда в поле host вводишь апишник, он нормально все пингует, ну если ввести имя компьютера то он выдает отрицательный результат в любом случаи?
                            0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                            0 пользователей:


                            Рейтинг@Mail.ru
                            [ Script execution time: 0,0345 ]   [ 16 queries used ]   [ Generated: 27.04.24, 21:05 GMT ]