Clipper/FiveWin - Nunca he sabido

 
Vista:

Nunca he sabido

Publicado por Rafa (5 intervenciones) el 04/11/2007 16:07:57
Hola a todos: Llevo programando en Clipper 5.2 desde el año 1994 y todavía sigo. Pero lo que nunca he sabido aplicar han sido las famosas y dichosas librerías. Simpre he creado mis ejecutables con el típico "cl <nombredeprograma>" y punto final.

Me gustaría saber aplicar alguna libreria y cómo adjuntarla al programa. Tener algún programa en el que se puedan visualizar los "efectos" de las correspondientes librerias para saber si puede servirme o no dicha función.

¿Alguien puede ayudarme, por favor?. ¿Sería mucho pedir el intercambiar dicha información a través de correo electrónico o a través de msn?.

Mi correo: [email protected]

Muchísimas gracias desde YA.

Saludos cordiales.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Nunca he sabido

Publicado por El Duro (121 intervenciones) el 04/11/2007 18:57:53
Rafa:

Utilizar librerias, propias y de terceros, no es cosa del otro mundo, vayamos por partes.

Dijiste (ojo no es dijisteSSSSSSSSS, no lo escribiste tú !) intercambiar la información a traves de correo o msn cosa en la que no estoy de acuerdo, para eso son estos foros, para que quien lea aprenda y el que ya sabe aporte, si se hace de manera privada tendria que haber un cargo ($$$$) y no creo que eso sea lo que prefieras.

Aclarado el punto vayamos al tema, primero ¿ Que son la librerias ?, pues son simplemente funciones, ¿ cualquier funcion puede estar en una Lib?, yo diría que sí aunque lo recomendable es que sean funciones de uso común, es decir funciones que uses un uno y otro PRG y en una y otra aplicación.

Pongamos un ejemplo, yo acostumbro poner las fechas en el formato dd/mmm/aaaa, por ejemplo hoy aparecería como 4/Nov/2007 lo siento más claro que el simple 4/11/2007, va en gustos, para convertir cualquier fecha a mi formato preferido tengo una función incluida en una LIB que puedo usar en cualquiera de mis aplicaciones, de acuerdo ?

Entonces cuando voy a mostrar una fecha, simplemente llamo a la función enviandole como parámetro la fecha a convertir ? Date2Txt(DATE())
y la funcion se encarga de convertir la fecha enviada y me devuelve la fecha en mi formato preferido.

Le seguimos o ahi la dejamos ? dudas ?

El Duro
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Nunca he sabido

Publicado por Rafa (5 intervenciones) el 04/11/2007 20:55:14
Seguimos, seguimos...Gracias por la respuesta:

Voy a detallar más concretamente mi pregunta:

1º.- Tengo mi Clipper metido en C:\Clipper5\
2º.- Dentro de esa dirección tengo otras carpetas como Bin, Obj, Pll, Lib, Fastlib, Ng, etc.
3º.- A la hora de compilar el programa lo hago de una manera un poco "rara, pero lo hago.
4º.- Quiero, a cualquiera de mis ficheros ".prg" incluirles alguna libreria; que sepa yo lo que me va a hacer; que sepa el efecto visual que me va a producir...¿cómo consigo eso y cómo compilo mi programa con mi típico "cl <nombredeprograma>" para que me incluya los efectos de la libreria que acabo de incluir al principio de mi ".prg"?
5º.- Imagino que en la "Fastlib" que tengo habrá ciertos ficheros que serán los que tendré que adjuntar en mi ".prg" para conseguir determinados efectos.
6º.- ¿Cómo sé lo que hace cada una de esas librerias incluidas dentro del fichero "Fastlib"?
7º.- ¿Cual ha de ser la linea de comando para compilar todo junto y obtener el ejecutable deseado?.

Repito que yo siempre he compilado igual: "cl <nombredeprograma.prg>", sin los rtlink, sin los obj añadidos, sin los FI y sin adjuntar ni librerias ni nada. Todo me lo "construyo a mano", y todo eso posicionándome dentro del correspondiente programa, dentro de su directorio y dentro de sus ficheros y, desde allí, dándole la instrucción "cl <nombredeprograma.prg>" y teniendo, todos los path en el "autoexec.bat", lo que pasa es que ahora, en Windows, no tengo el autoexec.bat y tengo ese camino, es decir, los path, en el "autoexec.net" pero no me funciona, y es por ese motivo que tengo que compilarlo de una manera un poco rara, puesto que me daba un mensaje así: " "cl" no se reconoce como un comando interno o externo, programa o archivo por lotes ejecutable".

Perdón por todo este "rollo". Lo siento, pero es que me gustaría realmente aplicar el tema de las librerias a mis programas.

MUCHAS GRACIAS DE NUEVO.

Saludos cordiales.

Esto tengo yo en mi autoexec.net:

SET PATH=C:\CLIPPER5\BIN;%PATH%
SET OBJ=C:\CLIPPER5\OBJ
SET LIB=C:\CLIPPER5\LIB\
SET FASTLIB=C:\CLIPPER5\FASTLIB\
SET BIN=C:\CLIPPER5\BIN\
SET INCLUDE=C:\CLIPPER5\INCLUDE\
SET PLL=C:\CLIPPER5\PLL\
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Nunca he sabido

Publicado por El Duro (121 intervenciones) el 05/11/2007 02:17:21
Rafa:

Uuufffffff, hasta me agoté :-)

Nuevamente, como diriia Jack "El destripador", vamos por partes. Por lo que entiendo son varias preguntas en muy poco texto, voy a tratar de explicarme, a ver si lo logro:

1.- Como saber que hace cada LIB ?
supongo que si no lo sabes es porque tienes una copia de la LIB original y así va a ser dificil conocer que hace cada lib, regularmente cuando adquieres una lib de terceros es porque ya sabes lo que hace y que va a cumplir con tus necesidades especificas, si no es así para que la adquieres ?. Junto con la lib te deben entregar la suficiente DOC con ejemplos para poder sacarle provecho.
Resumiendo, no te puedo responder que hace cada lib que hay en el mercado a menos que alguien que la tenga y use cada lib nos explique lo que hace y lo que no hace y sobre todo como usarla.

2.- Para compilar usas el CL.BAT, y alguna vez has visto que contiene ese archivo ?, no ?, esto es lo que contiene:

clipper %1 /m/n
if not errorlevel 1 blinker file %1 LIB DBFCDX,_DBFCDX

3.- Que no utlizar los RTLINK ni los FI ni LIbs añadidas ?, jejejeje mira lo que contiene el archivo CL.BAT y veras que sí los usas, al menos en las líneas de arriba se esta usando las libs DBFCDX y _DBFCDX y se esta utilizando BLINKER en lugar de RTLINK, ya ves que sí los usas ?

4.- Aunque no existe el archivo AUTOEXEC.BAT ahora existe su sutituto AUTOEXEC.NET y parece que ya lo identificaste, ahi puedes agregar los PATHs que te hagan falta, en lo particular yo he configurado las variables de entorno desde MI PC y funciona bien.

Como ves son varias pequeñas cosas que hay que resolver.

El Duro
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Nunca he sabido

Publicado por Rafa (5 intervenciones) el 05/11/2007 12:36:06
Muchas gracias de nuevo por tu aporte. Voy a seguir "investigando" por esos derroteros que me acabas de señalar.

La verdad es que NUNCA había abierto el CL.BAT. Yo me limitaba (y me limito) a meterme dentro de la carpeta del programa en cuestión y una vez hechas las modificaciones o añadidos pertinentes, guardo el fichero ".prg" y acontinuación le doy a "cl <nombredelprograma>" y asunto arreglado. Eso me genera el ".obj" y el ".exe" del programa que estoy tratando.

Hasta ahora me ha ido así muy bien, pero ahora quiero meterle alguna libreria y es cuando me vienen los "¿problemas?", porque es que, como bien dices, las que tengo son copias de algún amigo y que las tenía por ahí perdidas, sin información de ningún tipo y sin saber cómo emplearlas. Voy a tratar de, como decimos por aquí, "meterles mano"

Y, una última pregunta: dices que has configurado las variables de entorno (imagino que te refieres a los PATH de las LIB, OBJ, PLL, INCLUDE....) desde MI PC...¿puedes decirme cómo lo tienes y cómo lo has hecho?.

Perdona por tanta molestia. Reconozco que soy un pesado.

Muchas gracias por todo de nuevo.

Saludos cordiales.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Nunca he sabido

Publicado por El Duro (121 intervenciones) el 05/11/2007 13:41:22
Rafa:

Antes de explicarte lo de las variables de entorno déjame decirte que una vez que hayas investigado sobre el uso de las libs que tienes, te recomiendo que busques en google por el nombre de la lib tal vez en la página del desarrollador haya algo de documentación que te pueda servir, pues bien una vez que tengas lo necesario solo te va a hacer falta incluir la lib en tu CL.BAT y eso es más fácil que quitarle su dinero a una borracha, le agregas el nombre de la lib en el archivo CL.BAT, mira el ejemplo:

clipper %1 /m/n
if not errorlevel 1 blinker file %1 LIB FASTLIB,DBFCDX,_DBFCDX

Esta forma te obliga a tener la FASTLIB.LIB en la misma carpeta donde estan la otras libs (DBFCDX y _DBFCDX) o en alguna carpeta que este incluida en el path especificado en el AUTOEXEC.NET o bien puedes especificar la ruta en este momento:

clipper %1 /m/n
if not errorlevel 1 blinker file %1 LIB C:\Fastlib\FASTLIB,DBFCDX,_DBFCDX

Ves que es muy sencillo ?

Por último, para configurar las variables de entorno basta con darle clic con el boton derecho del ratón sobre el ícono MIPC, en el menú que se muestra dar clic sobre la opción PROPIEDADES, despues clic sobre la pestaña OPCIONES AVANZADAS y luego al botón VARIABLES DE ENTORNO, de la pantalla que te muestra la parte superior es para las variables de entorno del usuario, en la parte inferior estan las VARIABLES DEL SISTEMA, ahí es donde debes meterle mano, ahí encuentras las variables PATH, OBJ, PLL etc que son las mismas que hay en el AUTOEXEC.NET ademas fijate que se definen exactamente igual que en el autoexec.net, utliza los botones NUEVA MODIFICAR ELIMINAR para ajustar las variables a tus necesidades.

Pensando un poco, si son exactamente igual que las que hay en el autoexec.net entonces para que hacer los cambios por aquí ????, ah, la gran ventaja es que los cambios que hagas aqui surten efecto inmediatamente mientras que por el autoexec.net necesita reiniciar tu PC, de acuerdo ?

El Duro
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar