Error al Compilar CLASES en Harbour (repregunta)

Error al Compilar CLASES en Harbour (repregunta)

Postby lubin » Mon Apr 23, 2007 10:27 pm

Buenas Tardes

Disculpen mi insistencia.. He retornado con La misma pregunta

En el Link ..... de http://fivetechsoft.com/forums/viewtopic.php?t=6775
..... podran ver como fueron pasando las cosas.... las cuales aqui he hecho un RESUMEN por un motivo de apremio les agradesco soportar mi insistencia para resolver esto, ya que debo de pasar mis sistemas a Harbour... al menos era creo la mejor idea para salir de los 16 Bitssssss

Sucede que tengo problemas al usar una CLASE creada por mi , la cual funcionaba bien en CLIPPER , El resumen esto es lo que a pasado:

1ro. No me compilaba bien la clase, yo la tenia : CLASS KDAT_SYS()
Lo solucione poniendo CLASS KDAT_SYS sin los parentisis y paso ese error de compilacion.
PREGUNTA : ESA SOLUCION DE SINTXSIS ES CORRECTA ???

2do Luego me salio error en la defincion de DEFAULT de las Variables, no pude resolverlo y solo se me ocurrio ponerlo con Astericos mientras se resolvia,,
PREGUNTA : COMO FUNCIONAN EL COMANDO DEFAULT USADO EN LAS CLASES O HAY ALGO MAS QUE DEFINIR ANTES????

3.ro. Finalmente llego a compilar e inclusive Linkearlo (Ilink) del VERCE, y sucede que no corre por un aparente problema en la clase, sale lo siguiente :

Error Description Error Base/1040 Class: NIL has not exported Method SYS_PATHEXE

Y el SYS_PATHEXE es una variable DATA de la Clase la cual se carga la RUTA del sistema. Esta definicion y variable funcionaba correctamente en Clipper.



PREGUNTA FINAL: SE DEBE CREAR LA CLASE CON ALGUNA INDICACION ADICIONAL A LA QUE SE USABA EN CLIPPER CON FW16 BITS???


Gracias
Lubin
User avatar
lubin
 
Posts: 449
Joined: Fri Dec 09, 2005 12:41 am
Location: Lima, Peru

Postby Antonio Linares » Mon Apr 23, 2007 10:47 pm

Los paréntesis sobran.

Haz incluido esta línea al comienzo de tu clase ?

#include "FiveWin.ch"

y el método New() de tu clase debe devolver Self:

return Self
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41947
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby lubin » Tue Apr 24, 2007 2:08 am

Hola Antonio

Gracias por tu respuesta.

1. Solo habia puesto el INCLUDE de objects.ch , ya agrege la de fivewin.ch

2. En la Clase, El Metodo NEW() retornaba NIL y no SELF , Hice el cambio para que retorne SELF.. y fue oki....
una Pregunta del Caso... Solo la Clase NEW() debe retornar SELF ???

3. Finalmente, al aumentar el INCLUDE FIVEWIN.CH en la Clase, funciono normalmente el
comando DEFAULT (problema tambien comentado en la consulta).

Realice la Compilacion y Link.. y ya paso... y no salio el Error cuando se ejecuta la clase.... asi que CASO : AJUSTES EN LA CLASE ... YA ESTA LISTO.


Gracias por la Ayuda. seguro esta HISTORIA DE IMPLEMENTAR DE 16BITS A 32BITSS CONTINUA...


Lubin
User avatar
lubin
 
Posts: 449
Joined: Fri Dec 09, 2005 12:41 am
Location: Lima, Peru

Postby Antonio Linares » Tue Apr 24, 2007 6:55 am

Cualquier método puede devolver Self si quieres, pero en el caso del método New() es obligatorio :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41947
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby lubin » Wed Apr 25, 2007 12:50 am

esta claro y confirmado
Gracias antonio
User avatar
lubin
 
Posts: 449
Joined: Fri Dec 09, 2005 12:41 am
Location: Lima, Peru


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 82 guests