怎样获取本机在LAN下的IP?在VB中用WinSocket的 .localhost可以,Delphi有没有类似的方法??? Thanks

解决方案 »

  1.   

    function GetLocalIP(var LocalIp: string): Boolean;varHostEnt: PHostEnt;Ip: string;addr: pchar;Buffer: array [0..63] of char;GInitData: TWSADATA;beginResult := False;tryWSAStartup(2, GInitData);GetHostName(Buffer, SizeOf(Buffer));HostEnt := GetHostByName(buffer);if HostEnt = nil then Exit;addr := HostEnt^.h_addr_list^;ip := Format('%d.%d.%d.%d', [byte(addr [0]),byte (addr [1]), byte (addr [2]), byte (addr [3])]);LocalIp := Ip;Result := True;finallyWSACleanup;end;end;
      

  2.   


    楼上的兄弟,
    程序运行时出错。是
    HostEnt: PHostEnt;
    GInitData: TWSADATA;
    怎么解决?