Foxpro no reconoce constantes sin definir (#DEFINED) anteriormente

Estoy intentando incluir, en un proyecto pequeño y personal, el gran trabajo desarrollado por Guillermo Carrero llamado FOXSCHEDULER. Este desarrollo corresponde a una clase calendario 100% Foxpro y utiliza en su código, varias constantes aparentemente no definidas con anterioridad.

Si esta clase la ejecuto desde el propio Foxpro, funciona perfectamente. El problema se da cuando la intento utilizar en mi proyecto, ya que empiza a soltar errores relacionados con que no reconoce las constantes. Es decir, si directamente pongo el número correspondiente a esa constante, Foxpro lo interpreta correctamente, el problema es si dejo el código original con el nombre de las constantes (por ej. GWL_WNDPROC).

También he observado que en vez de utilizar el valor para falso .F., utiliza directamente 'FALSE' y foxpro se lo traga, siempre y cuando se ejecute en el propio entorno de foxpro.

Mi pregunta es, ¿por qué en su entorno, foxprop interpreta todas esas constantes sin definir previamente y fuera de él, no? ¿Qué solución tengo? Definir todas esas constantes, me pueden volver loco y de algunas incluso, no encuentro su valor numérico!

En fin, espero haberme explicado con claridad y que alguien pueda darme algo de luz al respecto.

1 Respuesta

Respuesta
1

Yo me lo guiso y yo me lo como... Eso me pasa por no leer más! Jejeje... En fin, escribo la respuesta a mi propia pregunta por si a alguien más le surge la duda...

Pues bien, las constantes deben ser definidas, sí o sí, ya que es la única manera de que cualquier lenguaje interprete los valores correspondientes a cada constante. Mi problema era que las definiciones se encuentran en un archivo de extensión .H, llamado 'de inclusión', en el cual se recogen todos los DEFINED necesarios. Es por ello que sólo habrá que hacer un llamada al archivo mediante #INCLUDE 'archivo.H' Y ya se encontrarán referenciados todas las constantes.

Espero sea de utilidad para aquellos que no tengan claro el uso de constantes y cómo referenciarlos.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas