[BCB]Pobieranie nr.IP (tłum. z Delphi do BCB)

0

czesc
probuje przetłumaczyc sobie kawałek kodu DriveX'a do pobierania własnego ip

function GetIP:String;
var p : PHostEnt;
s : array[0..128] of char;
p2 : pchar;
begin
GetHostName(@s, 128);
p := GetHostByName(@s);
p2 := iNet_ntoa(<font color="red">PInAddr</span>(p.h_addr_list)^);
Result:=String(p2);
end;

to zaznaczone na czerowno nie wiem do czego jest [???] i własnie w tym miejscu sie zatrzymałem

String TForm1::GetIP(void)
{
char buff[128];
char *addr;
hostent *s;

gethostname(buff,128);

s = gethostbyname(buff);
addr = inet_ntoa( ??? s->h_addr_list );

}

0

Nie moge ci pomóc ale ja to robie tak :

Na formę wstaw Button i Edit.

W include dopisz :
#include

W OnClick Buttona wpisz :
char buff[100];
hostent *lphe;
WSADATA WSAData;

WSAStartup(MAKEWORD(2, 0), &WSAData);

gethostname(buff, 100);
lphe = gethostbyname(buff);
Edit1->Text= AnsiString(inet_ntoa((in_addr)*lphe->h_addr_list));
WSACleanup();

0

((in_addr)*lphe->h_addr_list));

co to za rzutowanie?
wyskakuje mi blad ze brakuje średnika ( ; ) a on jest oczywiscie :-)

0

((in_addr)*lphe->h_addr_list)); <font color="green"></span>

Tu w ogóle jest cos pokrecone, a brak srednika wyskakuje bo jest bląd gdzies w tym miejscu.

0

Niewiem.Umnie wszystko działa,może niemasz wstawione na forme edit i buttona,albo niemasz dopisane w include

1 użytkowników online, w tym zalogowanych: 0, gości: 1