Hola a todos:
necesito usar las clases btnget y sbrowse al mismo tiempo, inicio el programa asi
# include "FiveWin.ch"
# include "Tsbrowse.ch"
# include "Btnget.ch"
cuando quito el segundo o el tercero funciona bien
si lo pongo asi me marca:
Btnget.ch(66) fatal C3048 Preprocessor table overflow
que significa eso ???
como seria la manera correcta de hacerlo ??
gracias por su ayuda
veracruz, ver
Error "Preprocessor table overflow"
-
- Posts: 17
- Joined: Mon Oct 31, 2005 6:16 pm
Tienes que "capar" (con perdon) el archivo FIVEWIN.CH
El problema se debe a que Clipper, al ser una aplicacion DOS de 16 bits, siempre compila sobre los primeros 64 kbytes de memoria RAM. Esto ocasiona que solo dispongas de esa cantidad de memoria para compialr cada programa.
El error que mencionas se debe a que tienes demasiados archivos INCLUDE que se estan acabando la memoria que tienes disponible para compilar, obviamente esto en Harbour no sucede, no hay limitaciones de memoria en compilacion, pero eso es harina de otro costal.
La solucion es editar el FIVEWIN.CH y quitar de este algunos INCLUDE que no estes utilizando, lo mas comun es quitar OBJECTS.CH, DDE.CH, para quitarlos simplmente pon entre comentarios las lineas donde se hace la llamada al INCLUDE.
OJO, el quitar alguno de estos componentes hace que algunos comandos no esten disponibles, revisa que los archivos que quitas no tengan comandos que utilices en tu programa
El problema se debe a que Clipper, al ser una aplicacion DOS de 16 bits, siempre compila sobre los primeros 64 kbytes de memoria RAM. Esto ocasiona que solo dispongas de esa cantidad de memoria para compialr cada programa.
El error que mencionas se debe a que tienes demasiados archivos INCLUDE que se estan acabando la memoria que tienes disponible para compilar, obviamente esto en Harbour no sucede, no hay limitaciones de memoria en compilacion, pero eso es harina de otro costal.
La solucion es editar el FIVEWIN.CH y quitar de este algunos INCLUDE que no estes utilizando, lo mas comun es quitar OBJECTS.CH, DDE.CH, para quitarlos simplmente pon entre comentarios las lineas donde se hace la llamada al INCLUDE.
OJO, el quitar alguno de estos componentes hace que algunos comandos no esten disponibles, revisa que los archivos que quitas no tengan comandos que utilices en tu programa
Saludos
R.F.
R.F.
-
- Posts: 159
- Joined: Fri Nov 18, 2005 7:34 pm
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Tienes varias formas de solucionarlo:
1. Si tienes a mano Clipper 5.2, puedes usarlo para compilar en vez de usar 5.3, ya que su capacidad de preprocesado es mayor. Luego puedes enlazar con las librerías de 5.3 sin problemas.
2. Puedes evitar incluir algunos de los ficheros de cabecera que usa FW, para no consumir tanta memoria de preprocesado. Para conseguir esto pasa este parámetro /dCLIPPER501 al llamar a Clipper:
clipper myapp.prg /n /dCLIPPER501
3. En vez de usar rmake.exe de Clipper que consume mucha memoria y se la quita a Clipper.exe, usa el maker.exe de Borland que permite liberar toda la memoria antes de llamar a Clipper.exe
1. Si tienes a mano Clipper 5.2, puedes usarlo para compilar en vez de usar 5.3, ya que su capacidad de preprocesado es mayor. Luego puedes enlazar con las librerías de 5.3 sin problemas.
2. Puedes evitar incluir algunos de los ficheros de cabecera que usa FW, para no consumir tanta memoria de preprocesado. Para conseguir esto pasa este parámetro /dCLIPPER501 al llamar a Clipper:
clipper myapp.prg /n /dCLIPPER501
3. En vez de usar rmake.exe de Clipper que consume mucha memoria y se la quita a Clipper.exe, usa el maker.exe de Borland que permite liberar toda la memoria antes de llamar a Clipper.exe