tempad
Readygo技术搜索引擎 >>防火墙 >> 请教如何得到ip地址

请教如何得到ip地址

Readygo技术搜索引擎 网络搜索 efish 2008-1-17 18:20:26

请教如何得到ip地址

楼主huang1975(江湖路)2003-06-05 21:03:26 在 Delphi / 网络通信/分布式开发 提问

机器使用adsl   vlan方式联网请问如何得到本机的ip  
  问题点数:20、回复次数:17Top

1 楼Delphiandliu(我是新手我怕谁)回复于 2003-06-05 21:43:30 得分 0

gzTop

2 楼jun_01(无名小卒)回复于 2003-06-05 21:51:56 得分 0

ipconfig  
  但,如果你通过代理服务器上网,你得到的也是一个局域网内IP地址,你对外是:(服务器地址):(端口号).Top

3 楼huang1975(江湖路)回复于 2003-06-05 22:07:37 得分 0

要与其他机器p2p连接通讯,如何实现????Top

4 楼errorkiss()回复于 2003-06-05 23:06:13 得分 0

在DELPHI7.0中很简单,只要用到一个控件indymisc标签中的idipwatch  
  procedure   tform1.button1click(.....)  
  begin  
  showmessage("你的主机IP地址是"+idipwatch1.localip);  
  end;Top

5 楼jun_01(无名小卒)回复于 2003-06-06 22:29:51 得分 0

点对点?  
  只要双方其中一个知道另外一个的IP地址,就搞定了。Top

6 楼huang1975(江湖路)回复于 2003-06-07 17:29:03 得分 0

没错。但我j觉得得到自己的ip,较可行。通过moden上网的机器得到ip的方法很多。但是通过adsl上网的机器如何得到ip呢????Top

7 楼jun_01(无名小卒)回复于 2003-06-07 23:08:39 得分 0

gzTop

8 楼moyue(执子之手,与子携老)回复于 2003-06-08 15:57:52 得分 0

了解了解Top

9 楼longlonger(萧笑宇)回复于 2003-06-08 16:36:02 得分 0

想知道Top

10 楼WorldCreater(造化天尊)回复于 2003-06-08 16:54:53 得分 0

用api  
  gethostbynameTop

11 楼wjlsmail(小脖领)回复于 2003-06-08 16:55:22 得分 10

//试试返回本机   Ip   :  
   
  uses   WinSock   ;  
   
  function   GetIpAddressLIP:   string;  
  type  
      TaPInAddr   =   array   of   PInAddr;  
      PaPInAddr   =   ^TaPInAddr;  
  var  
      phe:   PHostEnt;  
      pptr:   PaPInAddr;  
      Buffer:   array   of   char;  
      I:   Integer;  
      GInitData:   TWSADATA;  
  begin  
      try  
          WSAStartup($101,   GInitData);  
          Result   :=   "";  
          GetHostName(Buffer,   SizeOf(Buffer));  
          phe   :=   GetHostByName(buffer);  
          if   phe   =   nil   then   Exit;  
          pptr   :=   PaPInAddr(Phe^.h_addr_list);  
          I   :=   0;  
          while   pptr^   <>   nil   do  
          begin  
              result   :=   StrPas(inet_ntoa(pptr^^));  
              Inc(I);  
          end;  
          WSACleanup;  
      except  
          on   Exception   do  
          begin  
              Beep;  
          end;  
      end;  
  end;  
   
  Top

12 楼rouqing(*冰雨&双子座奇缘*)回复于 2003-06-08 17:08:50 得分 0

在本机上,可以使用IPConfig、WinIPCFG,或者   arp   -a   查看IP地址。  
  或者上到某些论坛那里会显示你的IP地址,如果你是通过代理服务器上网,当然就只能看到代理服务器的IP地址啦。  
  http://www.lucn.net/bbs/ip.php  
  这是水晶动网论坛的ip查询地址,很准确,速度也很快,但是别干“坏事”,人家知道你从哪来,去看看啦!Top

13 楼huang1975(江湖路)回复于 2003-06-10 06:43:09 得分 0

我试用了"计算机质子"的函数.不行.只能得到网内的ip.对于ipconfig&arp&winipcfg都是如此.那位有更高的高见,或思路???请不吝赐教!!!Top

14 楼henry2003(阿波)回复于 2003-06-10 08:08:25 得分 0

Function   GetComputerIP:String;  
  Var   HostName:   ARRAY   OF   Char;  
          WSData:   TWSAData;  
          MyHost:   PHostEnt;  
  BEGIN  
      Result:="0.0.0.0";  
      WSAstartup(2,WSData);  
      gethostname(@HostName,SizeOf(HostName));  
      MyHost:=GetHostByName(@HostName);  
      IF   MyHost<>NIL   THEN  
            Result:=Format("%d.%d.%d.%d",),Ord(MyHost.h_addr^),Ord(MyHost.h_addr^),Ord(MyHost.h_addr^)]);Top

15 楼wjlsmail(小脖领)回复于 2003-06-10 09:11:53 得分 10

//   从网页取得    
   
  procedure   TForm1.Button1Click(Sender:   TObject);  
  var  
        StrAddr,StrBody,   StrIP,StrSearch   :   String;  
        Ts   :   TStrings   ;  
        i   :   Integer   ;  
  begin  
      Ts   :=   TStringList.Create   ;  
      StrAddr   :=   "http://www.iligia.com/dtc/index.asp";  
      StrSearch   :=   "本机地址:   ";  
      NMHTTP1.Get(strAddr);  
      StrBody   :=   NMHTTP1.Body;  
      Ts.Text   :=   StrBody   ;  
      for   i   :=   0   to   Ts.Count   -   1   do  
      begin  
          if   Pos(StrSearch,Ts.Strings)   >   0   then  
              Break   ;  
      end   ;  
      StrIP   :=   Copy(Ts.Strings,Pos("mono",Ts.Strings)   +   6,16)   ;  
      if   Pos(">",StrIP)   >   0   then  
          Delete(StrIp,Pos(">",StrIp),1)   ;     //   删除无效字符,还有其他  
      ShowMessage(StrIP)   ;  
  end   ;  
  Top

16 楼newyu(newyu)回复于 2003-06-12 10:21:51 得分 0

^_^,这么多办法。我就知道前两种,网页的不知道了,不过用D7了  
  另外你如果用代理服务器就用ioconfig,netshe     都可以得到  
  但是你如果用ADSL,而且是用路由器连接的话那么以上方法不能得到!  
  你用服务器连就可以得到  
  所以一办是你安装一个可以看IP的QQ,把自己添加为自己的好友  
  或者到论坛上去看也可以得到的拉  
  Top

17 楼huang1975(江湖路)回复于 2003-06-13 07:49:48 得分 0

感谢"计算机质子"也其他参与者.  
  经过测试"计算机质子"提供的代码完全正确.  
  再次感谢.各位.  
   
  下面给分   .呵呵.Top

责任编辑: efish 参与评论 查找更多:
相关文章
我想要网页中的一个表格里面上下左右各空3个像素出来… 我想要网页中的一个表格里面上下左右各空3个像素出来,那请问我应该怎样写呢?
数据库日志察看 数据库日志察看
用intraweb如何把几个窗体全并为一个窗体 用intraweb如何把几个窗体全并为一个窗体
vc学习的迷惑! vc学习的迷惑!
导出excel的问题 导出excel的问题
高份请教:在DELPHI中如何判断电脑是否联上了I… 高份请教:在DELPHI中如何判断电脑是否联上了INTERNET,是否断线啦.
用钩子实现进程防杀 用钩子实现进程防杀
如何恢复已经删除的文件,急 如何恢复已经删除的文件,急
请教两个问题,专家请进! 请教两个问题,专家请进!
谁会写文件上传的代码 谁会写文件上传的代码
2秒记住本站域名

玩过泡泡龙吗?Readygo?Go! 再加上.Com.Cn的后缀,那就是大名小顶的readygo.com.cn

分类导航
Readygo技术搜索引擎