请教大家:如果机器名为sComputerName的远程机器有两个IP,一个内网IP,一个外网IP,我在本地执行下面的函数,请问返回的IP是外网IP还是内网IP??谢谢指教!function ComputerNameToIP(sComputerName:String):String;
var
WSAData: TWSAData;
HostEnt: PHostEnt;
begin
result:='';
WSAStartup(2, WSAData);
HostEnt := GetHostByName(PChar(sComputerName));
if HostEnt <> nil then
begin
with HostEnt^ do
result:= Format('%d.%d.%d.%d', [Byte(h_addr^[0]), Byte(h_addr^[1]), Byte(h_addr^[2]), Byte(h_addr^[3])]);
end;
WSACleanup;
end;
var
WSAData: TWSAData;
HostEnt: PHostEnt;
begin
result:='';
WSAStartup(2, WSAData);
HostEnt := GetHostByName(PChar(sComputerName));
if HostEnt <> nil then
begin
with HostEnt^ do
result:= Format('%d.%d.%d.%d', [Byte(h_addr^[0]), Byte(h_addr^[1]), Byte(h_addr^[2]), Byte(h_addr^[3])]);
end;
WSACleanup;
end;
解决方案 »
- 怎样用delphi编写个电子琴程序?
- 利用父类指针如何调用继承类对象方法
- TClientDataSet初始化打开一个数据表很慢,请问怎么解决!?!?
- 请教d7,SP51如何调用其它语音库?
- MDI子窗体问题。
- 高薪诚聘:Delphi/C++开发人员
- 哪有下载像优化大师界面一样的控件?
- 我想在dbgrid正常连接数据库后,其指针指向的那一行用另外的一种顔色显示。请指教!!!
- QQ群:210596141 delphi高层论坛 闲人止步!
- 菜鸟,紧急问题!如何判断ListBox里的任意一项被选中?!! (在线等待!)
- 为何调试时提示ADOQuery没有设置为读写的权限,急,请问这是什么?
- 请问如何将成批的数据插入到数据库表中?
function DomainToIp(Domain :PChar):String;
var
HostEnt: PHostEnt;
begin
Result := '';
HostEnt := gethostbyName(domain);
if HostEnt = nil then
Exit;
with hostEnt^ do
Result := PChar(Format('%d.%d.%d.%d', [Byte(h_addr^[0]), Byte(h_addr^[1]),
Byte(h_addr^[2]), Byte(h_addr^[3])]));
end;