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

namelysweet 2003-08-25 11:05:32
怎样获取本机在LAN下的IP?在VB中用WinSocket的 .localhost可以,Delphi有没有类似的方法??? Thanks
...全文
19 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
solonet 2003-08-25
  • 打赏
  • 举报
回复

楼上的兄弟,
程序运行时出错。是
HostEnt: PHostEnt;
GInitData: TWSADATA;
怎么解决?
hch_45 2003-08-25
  • 打赏
  • 举报
回复
function GetLocalIP(var LocalIp: string): Boolean;

var

HostEnt: PHostEnt;

Ip: string;

addr: pchar;

Buffer: array [0..63] of char;

GInitData: TWSADATA;

begin

Result := False;

try

WSAStartup(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;

finally

WSACleanup;

end;

end;

namelysweet 2003-08-25
  • 打赏
  • 举报
回复
加上WinSocket
namelysweet 2003-08-25
  • 打赏
  • 举报
回复
没有直接属性可以应用吗???

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧