本机有多个网卡,其中有一个网卡的IP是192.168.1.100,是连接访问互联网的网卡。 而其它的网卡是连接局域网其它电脑的。
用delphi怎么得到192.168.1.100这个网卡的IP呢(当前使用连接网络网卡的IP)。
注:不要调用dos命令。

解决方案 »

  1.   


    procedure TForm1.Button1Click(Sender: TObject);
    var
      aa: TWsadata;
      host: Phostent;
      name,bb: string;
    begin
      name := edit1.Text ;
      wsastartup(2,aa);
      host := gethostbyname(pchar(name));
      if host<>nil then
      begin
        with host^ do
        bb := format('%d.%d.%d.%d',[byte(h_addr^[0]),byte(h_addr^[1]),byte(H_addr^[2]),byte(h_addr^[3])]);
      end;
      wsacleanup;
      edit2.Text := bb;
    end;EDIT2可以获取IP