通过IP远程获取其他工作站主机名
//我通过以下代码实现通过IP远程获取其他工作站主机名功能
Function TF_Main.IPAd(IPAddr:string):String;
Var
?SockAddrin:TSockAddrin;
?HostEnt:PHostEnt;
?WSADate:TWSAData;
Begin
?WSAStartup($0101,WSAData);
?SockAddrin.sin_addr.s_addr:=iNet_addr(PChar(IPAddr));
?HostEnt:=gethostbyaddr(@SockAddrin.sin_addr.S_addr,4,AF_INEt);
?if HostEnt<>nil then
? result:=StrPas(Hostent^.h_name)
?Else
?Result:='';
end;
procedure TF_Main.SpeedButton5Click(Sender: TObject);
begin
?Label8.Caption:='该IP地址的主机名为:'+IPAd(Edit2.Text);
end;
//但编译时系统提示错误:'('expect but ')'found
[解决办法]
局域网的应该没有问题,但是英特网的就有点问题了
不过你可以通过三层获取远程电脑名称后再返回给
服务器即可
[解决办法]
这个编译错误意思是:括号错了,应该是 '('但用了 ')'
但错误不在你这些代码里面
双击此错误提示,会定位到错误的位置,自己仔细看看