Errores con Tsocket en Windows Vista

Post Reply
User avatar
Andrés G.
Posts: 33
Joined: Fri Jun 29, 2007 7:38 am
Location: Tarragona, Catalunya

Errores con Tsocket en Windows Vista

Post by Andrés G. »

Hola a todos,

Tengo un programa que se conecta a un FTP para cargar y descargar un archivo y para ello uso la clase Tsocket.

Funciona perfectamente en todos los sistemas pero cuando lo pongo en Windows Vista me sale el siguiente error:

You must create a main window in order to use Tsocket object

No se a que puede deberse, lo bueno es que luego hace la descarga del fichero, pero hay que aceptar este error. Si hago una carga al FTP pasa lo mismo, primero el error y luego al aceptar funciona.

A ver si alguien tiene alguna pista de como solucionar éste problema.

Gracias de antemano.

Andrés González
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Andrés,

Tienes una ventana principal en tu aplicación ?

O la aplicación no usa ninguna ventana ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Andrés G.
Posts: 33
Joined: Fri Jun 29, 2007 7:38 am
Location: Tarragona, Catalunya

Post by Andrés G. »

Hola Antonio,

Tengo una ventana principal en la aplicacion. De hecho la funcion la llamo cuando se carga esta:

ACTIVATE WINDOW PRINCIPAL MAXIMIZED VALID SORTIR() ON INIT (BUSCAVER(),PRINCIPAL:UPDATE()) ON PAINT PalBmpDraw(hDC,MFS,MFE,PTC:hBitmap)

y la funcion es la siguiente:

FUNCTION BUSCAVER()

LOCAL VDES,ARCH,L,NOTA,SE
IF INTERNET() .AND. (!FILE(ARREL+"versio") .OR. DIRECTORY("versio")[1][3]<>DATE())
OKSOR=.F.
OKSOR=FetchFile("ftp.hhhhh.hhh","uuuuu","ppppp","programa","versio",,,.F.)
ELSE
OKSOR:=.T.
ENDIF
SE=MEMOREAD("versio")
.....

Lo que hago es descargar un fichero de texto donde me indica la version mas actual y si el programa no esta actualizado propone al usuario que se actualice.

Saludos,

Andrés
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Andrés,

Para solucionarlo, modifica la clase TSocket. Busca esta línea:

MsgAlert( "You must create a main window in order to use a TSocket object" )

y coméntala
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Andrés G.
Posts: 33
Joined: Fri Jun 29, 2007 7:38 am
Location: Tarragona, Catalunya

Post by Andrés G. »

Gracias Antonio asi lo haré.
Post Reply