Форум: "Сети";
Текущий архив: 2002.03.11;
Скачать: [xml.tar.bz2];
ВнизОпределение IP Найти похожие ветки
← →
BWG (2001-12-23 19:28) [0]Необходимо определить собственный IP.
Делаю так:
var
WSAData : TWSAData;
p : PHostEnt;
Name : array [0..$FF] of Char;
WSAStartup($0101, WSAData);
GetHostName(name, $FF);
p := GetHostByName(Name);
Writeln("Your IP is : ",inet_ntoa(PInAddr(p.h_addr_list^)^));
WSACleanup;
Получаю "1.0.0.1" Фигня, естественно.
Как мне нормально получить собственный IP?
← →
BWG (2001-12-24 03:25) [1]Ау, господа разработчики!!!
← →
Ghost_Old. (2001-12-24 10:46) [2]В от у меня так работает:
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;
← →
BWG (2001-12-24 14:45) [3]Огромное спасибо! Все работает!
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2002.03.11;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.005 c