局域网通过硬件网关上网,想在局域网中知道当前的WAN IP,不知道用DELPHI如何实现?
解决方案 »
- 难题,如何让EDIT粘住DBGRIDEH的Column
- 怎么实现在form1上用鼠标点击下,出现个红点。
- 请教----------一个DELPHI的问题?
- 关于左右声道切换的问题 CDSoftwareWj 进来
- 重新输入用户名和密码后再提交时,就会报错,请问是哪里的问题?
- ADOQuery连接的数据源,如何刷新?
- 在DELPHI 中这么实现监听串口数据,但是不占用串口资源。在线等待100分求助!!!
- 此功能查询语句怎么写
- 怎样限制同一个程序同时打开两次?
- 请教高手!!如何取得directorylistbox的目录路径值到一个文本框!!
- 请教有关中文字符的字符串处理
- socket连接问题,请高手一定要指教
转贴自大富翁某处(忘了是谁的了):
function LocalIP : string;
type
TaPInAddr = array [0..10] of PInAddr;
PaPInAddr = ^TaPInAddr;
var
phe : PHostEnt;
pptr : PaPInAddr;
Buffer : array [0..63] of char;
I : Integer;
GInitData : TWSADATA;
begin
WSAStartup($101, GInitData);
Result := ``;
GetHostName(Buffer, SizeOf(Buffer));
phe :=GetHostByName(buffer);
if phe = nil then Exit;
pptr := PaPInAddr(Phe^.h_addr_list);
I := 0;
while pptr^[I] <> nil do begin
result:=StrPas(inet_ntoa(pptr^[I]^));
Inc(I);
end;
WSACleanup;
end;
http://expert.csdn.net/Expert/topic/1863/1863501.xml?temp=.3904993
里面介绍了一个反弹,呵呵,偶也刚看到。
就是DOWN一个有IP地址的网页,然后解析得到IP,呵呵。