Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Temas relacionados > Redes
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-02-2012
neokobu neokobu is offline
Registrado
 
Registrado: jul 2006
Posts: 6
Poder: 0
neokobu Va por buen camino
Ayuda,Al obtener una ip con winsock no es la ip correcta

Al cambiar un codigo de delphi7 a delphi XE en ves de obtener la ip 192.168.1.6 me da como resultado 5.2.12.26. , el hostname si lo regresa correctamente.

Alguien tiene alguna idea?

Este es el codigo que tengo:
Cita:
procedure TfrmLogin.FormCreate(Sender: TObject);
var
wVersionRequested : WORD;
wsaData : TWSAData;
begin
{Start up WinSock}
wVersionRequested := MAKEWORD(1, 1);
WSAStartup(wVersionRequested, wsaData);
end;

procedure TfrmLogin.FormShow(Sender: TObject);
var
p : PHostEnt;
s : array[0..128] of char;
p2 : pAnsichar;
begin
{Get the computer name}
GetHostName(@s, 128);
p := GetHostByName(@s);
hostname1:=p^.h_Name;
{Get the IpAddress}
p2 :=iNet_ntoa(PInAddr(p^.h_addr_list^)^);
ipaddress:=p2;

end;
Responder Con Cita
  #2  
Antiguo 27-02-2012
Avatar de olbeup
olbeup olbeup is offline
Miembro
 
Registrado: jul 2005
Ubicación: Santiago de la Ribera (España)
Posts: 685
Poder: 19
olbeup Va camino a la fama
Hola neokobu,

Esta función que yo utilizo funciona correctamente
Código Delphi [-]
function GetIPComputer: String;
var
  wVersionRequested: Word;
  wsaData: TWSAData;
  pHostName: PHostEnt;
  sComputerName: Array[0..128] of Char;
  pIPComputer: PChar;
begin
  {Iniciar el WinSock}
  wVersionRequested := MakeWord(1, 1);
  WSAStartup(wVersionRequested, wsaData);

  {Obtener el nombre del ordenador}
  gethostname(@sComputerName, 128);
  pHostName := gethostbyname(@sComputerName);

  {Obtener la dirección IP}
  pIPComputer := inet_ntoa(PInAddr(pHostName^.h_addr_list^)^);
  Result := pIPComputer;

  {Cerrar el WinSock}
  WSACleanup;
end;
Un saludo.
__________________
Al hacer una consulta SQL, haz que los demás te entiendan y disfruten de ella, será tú reflejo de tú saber.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
[Ayuda] Winsock packet _F3R_ Internet 0 22-12-2009 07:31:42
Winsock? b2k Internet 0 14-09-2007 01:24:26
WinSock DML Internet 9 07-10-2003 22:27:56
Winsock Descendents Varios 1 25-09-2003 13:41:26
WinSock DML Internet 0 13-08-2003 04:13:35


La franja horaria es GMT +2. Ahora son las 15:29:54.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi