PDA

Ver la Versión Completa : obtener dirección IP y mostrarla en un EditText


robertillo
23-05-2007, 02:36:53
Hola;

Como ya he buscado en todo el foro y no hay respuesta sobre el tópico que pregunto, quisiera saber si se puede extraer de una computadora la dirección IP por medio de código claro está y pintar dicha dirección en un EditText.

Quiero que se "pinte" la IP en el campo de texto para no digitarla. hay alguna forma de hacer esto, una librería, una función etc? :confused:

Gracias.

seoane
23-05-2007, 03:06:30
Obtener la dirección es sencillo:

Uses Winsock;

function GetIp: string;
var
Buffer: array[0..127] of char;
WSAData: TWSADATA;
HostEnt: phostent;
begin
Result:= '';
FillChar(Buffer,Sizeof(Buffer),#0);
if WSAStartup(MAKEWORD(1, 1), WSADATA) = 0 then
begin
if GetHostName(@Buffer,Sizeof(Buffer)) = 0 then
begin
HostEnt:= gethostbyname(@Buffer);
if HostEnt <> nil then
Result:= String(inet_ntoa(PInAddr(HostEnt.h_addr_list^)^));
end;
WSACleanup;
end;
end;

Lo que no entiendo es que quieres decir con "pintar". Para mostrar la ip en un TEdit, seria algo como esto:

Edit1.Text:= GetIp;

:confused: ¿Es eso lo que buscas?

robertillo
23-05-2007, 17:27:50
Perfecto seoane, exactamente eso es lo que buscaba, cuando digo pintar es mostrar la ip en un campo de texto cuando se cargue la aplicación :)

Excelente y gracias por tu ayuda.