Estimados
La funcion GetIp() return 0.0.0.0 cuando la direccion es estatica, hay alguna manera de repararlo
adjunto la funcion
La funcion GetIp() return 0.0.0.0 cuando la direccion es estatica, hay alguna manera de repararlo
adjunto la funcion
HB_FUNC( GETIP ) // nSocket
{
SOCKADDR_IN sa;
int iLen = sizeof( sa );
BYTE addr[ 20 ];
#ifdef UNICODE
LPWSTR pW1, pW2;
#endif
memset( ( char * ) &sa, 0, sizeof( sa ) );
getsockname( hb_parni( 1 ), ( SOCKADDR * ) &sa, &iLen );
strcpy( ( char * ) addr, "error" );
#ifndef UNICODE
wsprintf( ( char * ) addr, "%i.%i.%i.%i",
( BYTE ) sa.sin_addr.s_net, ( BYTE ) sa.sin_addr.s_host,
( BYTE ) sa.sin_addr.s_lh, ( BYTE ) sa.sin_addr.s_impno );
#else
pW1 = AnsiToWide( ( char * ) addr );
pW2 = AnsiToWide( "%i.%i.%i.%i" );
wsprintf( pW1, pW2,
( BYTE ) sa.sin_addr.s_net, ( BYTE ) sa.sin_addr.s_host,
( BYTE ) sa.sin_addr.s_lh, ( BYTE ) sa.sin_addr.s_impno );
hb_xfree( pW1 );
hb_xfree( pW2 );
#endif
hb_retc( ( char * ) addr );
}Saludos
Patricio
__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl
Patricio
__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl