Hola t...@s;
Carlos y Pedro, estoy siguiendo este tema en el cual estoy interesado
también; entonces, si no es molestia, es factible que puedan
facilitarnos como ejemplo inicial el programa cliente de socket del cual
hablan?
Desde ya muchas gracias - Salu2 cordiales.
Nelson Brizuela Garcete
--
Carlos Pedrozo escribió:
Pedro
Gracias por tu ayuda y consejo; cada dia se aprende algo nuevo; de hecho
hoy me sucedio eso y aprendi muchisimo.
Tus conocimientos me van ayudar a subsanar una serie de dramas
que tengo; de nuevo agradezco profundamente tu gran ayuda.
Te envio un fuerte abrazo desde Paraguay.
Carlos Pedrozo
------------------------------------------------------------------------
From: [email protected]
To: [email protected]
Subject: RE: TCP/IP y sockets en System i
Date: Thu, 22 Oct 2009 13:16:09 +0000
Hola Carlos.
Ojalá te hayan servido los programas.
En lo que respecta al instanciamiento, en la parte donde se lee:
// *Obtain a socket descriptor*
SD = Socket(AF_INET: SOCK_STREAM: 0);
// If socket failed - End the client program with dump
If SD < 0;
ErrorHdlr ('ClientSocket');
Return;
EndIf;
*_// Allow socket description to be reusable_*
RC = SetSockOpt(SD: SOL_SOCKET
: SO_REUSEADDR
: %Addr(OptVal)
: %Size(OptVal));
*// If SetSockOpt failed - End the server with dump
If RC < 0;
* ErrorHdlr ('SetSockOpt');
Return;
EndIf;
Pero también funciona haciendo un CALL extra a otro programa socket que
de hecho es la nueva instancia, obviamente pasandole parámetros.
Con este programa de socket NUNCA he tenido problemas de ninguna clase,
porque para lo que más lo he utilizado es para la banca, y la prueba es
que imagínate la cantidad de transacciones que se llevan a cabo en un
banco (no todas claro, solo las que utilizan el socket).
Por otra parte, a veces me he encontrado de que al momento de convertir
la trama de edbcdic a ascii y viceversa me he encontrado con algunos
problemitas de conversión de caracteres, porque? no lo sé y básicamente
me ocurrió con QDCXLATE utilizando como parámetros XLATELIB,
ETOATABL/ATOETABL, por lo que inclusive puse esto en el foro, pero me
encontré con otra forma siempre utilizando QDCXLATE con los parámetros
QTCPEBC/QTCPASC y me funciona perfecto.
Gracias por tus consejos, los tomaré muy en cuenta.
Saludos!!
------------------------------------------------------------------------
From: [email protected]
To: [email protected]
Subject: RE: TCP/IP y sockets en System i
Date: Thu, 22 Oct 2009 08:34:28 -0300
Pedro
Como estas?
Estuve mirando los programas que me enviaste y esta excelente. Me
gustaria compartir contigo algunos trucos para mejorar en FREE.
1.-Tengo por ejemplo; como tomar el nombre del HOST
wkHostName = 'COMSVR ';
wkHostName = %trim(wkHostName) + x'00' ;
p_hostent = gethostnam(wkHostName);
wkIP = h_addr;
sin_addr = h_addr;
2.-
o mismo la conversion de ASCII o EBDCIC o viceversa;
// Convierte datos de EBCDIC a ASCII
QDCXLATE(BufferLen: buffer : 'QASCII': 'QSYS');
y varios trucos que es de suma importancia.
El tema de nucleo e instancia si me gustaria que me indique por donde va
la mano.
Te envio un fuerte abrazo.
Carlos Pedrozo
------------------------------------------------------------------------
From: [email protected]
To: [email protected]
Subject: RE: TCP/IP y sockets en System i
Date: Fri, 16 Oct 2009 18:06:16 +0000
Hola Carlos:
Estoy en deuda contigo, mira te voy a mandar un programa de socket que
es cliente y funciona excelente y ahi maneja lo de las instancias.
1. Crea un archivo fuente llamado SCKSRC dentro de alguna biblioteca
2. Copia los fuentes que te mandé via FTP o como juzgues conveniente
3. El fuente sclient4b es tipo CLLE, lo compilas con opción 14
4. Una vez que hayas compilado el CLLE, lo corres porque este te hace la
creación de los otros programas y módulos.
Obviamente antes de todo, verifica el programa sclient4xy para ver que
puerto y que IP le vas a asignar.
No sé si ya no lo ocupas, pero disculpa que te lo mando demaiado tarde.
Saludos!!
Saludos
____________________________________________________
© Publicaciones Help400, S.L. - Todos los
derechos reservados http://www.help400.es
----------------------------------------------------
Para darte de baja visita la siguente URL:
http://listas.combios.es/mailman/listinfo/forum.help400