Enviar/Recibir archivos via ftp [ SOLVED ]

User avatar
Raymundo Islas M.
Posts: 590
Joined: Tue Mar 14, 2006 11:34 pm
Location: Acapulco, Gro. MEXICO

Enviar/Recibir archivos via ftp [ SOLVED ]

Post by Raymundo Islas M. »

Antonio,

Llevo varios dias peleando con este tema, me pregunto si hay algun ejemplo en concreto que funcione correctamente.

Ya lei y probe todos los hilos : Los de Enrico, el icopyfil y el de varios compañeros , y en todos me estanco cuando se verifica si se genero el objeto tInternet:new()

Si uso hIntCon := LoadLib32( "WinInet.dll" ) me regresa 0 puesto que estoy incluyendo la lib, pero ya cuando quiero realizar la operacion SIEMPRE me dice que no se puede cargar y nomas no continua.
Ya intente registrarla y nop, igual.

Hay algo que no este haciendo bien o que me falte realizar ?

PD : Conexion a Internet la tengo en todo momento

Saludos
Last edited by Raymundo Islas M. on Wed Dec 22, 2010 10:34 pm, edited 1 time in total.
FWH 10.6 + xHarbour + Borland 582
User avatar
Manuel Aranda
Posts: 561
Joined: Wed Oct 19, 2005 8:20 pm
Location: España

Re: Enviar/Recibir archivos via ftp

Post by Manuel Aranda »

Hola Raimundo:

Has visitado el bolg de BielSys ? Quizá ahí encuentres lo que buscas en la entrada "Actualización automatica de aplicaciones via FTP"

http://bielsys.blogspot.com/
Un saludo,
Manuel

xH 1.2.3, FWH 14.09, BC++ 5.8.2, xVerce CW 1.0, PellesC
User avatar
Raymundo Islas M.
Posts: 590
Joined: Tue Mar 14, 2006 11:34 pm
Location: Acapulco, Gro. MEXICO

Re: Enviar/Recibir archivos via ftp

Post by Raymundo Islas M. »

Manuel,

Gracias por contestar,

Efectivamente, la opcion que ofrece Biel fue mi primera opcion a probar, ya que estoy es proceso de liberar la nueva version de la app y estoy actualizando a muchas pcs de los clientes. Sin embargo tambien me tope con el bloqueo que genera la wininet.dll

No se que este pasando, recuerdo hace algun tiempo hacer pruebas satisfactorias en mandar emails desde FWH y esto del ftp y ahora nop, no quiere funcar nada.

Voy a desemplovar mi vieja version 8.12 que tengo para probar.

Te agradezco de todos modos tu sugerencia y si alguna tiene la receta de como resolver este detalle con la dll se lo agradeceria enormemente.

Saludos
FWH 10.6 + xHarbour + Borland 582
User avatar
Raymundo Islas M.
Posts: 590
Joined: Tue Mar 14, 2006 11:34 pm
Location: Acapulco, Gro. MEXICO

Re: Enviar/Recibir archivos via ftp

Post by Raymundo Islas M. »

Ok,

La solucion a esto fue algo que nunca imagine : un archivo .bat

Code: Select all

@echo off
echo user xxuserxx> ftpcmd.dat
echo xxpasswordxx>> ftpcmd.dat
echo ascii>> ftpcmd.dat
echo put %1>> ftpcmd.dat                       <------ Aqui tambien se puede poner la ruta y nombre remoto del archivo a subir al ftp
echo quit>> ftpcmd.dat
ftp -n -s:ftpcmd.dat xxnombre_o_ip_del_ftpxx
del ftpcmd.dat
 
Cambian los valores reales de su ftp en los datos con xxalgoxx

Y tan simple como : nombredelarchivo.bat xxxxx <---- nombre del archivo a subir, se le puede poner ruta

Y listo !!!

Probado en mi ftp y con el de un proveedor autorizado para fact. electronica

Si bien NO es la solucion a mi problema, al menos puedo continuar en lo que tengo que hacer.

Saludos
FWH 10.6 + xHarbour + Borland 582
User avatar
Armando
Posts: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Contact:

Re: Enviar/Recibir archivos via ftp [ SOLVED ]

Post by Armando »

Raymundo:

Excelente !, y me acabas de dar una idea para solucionar el post de innosetup.

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
russimicro
Posts: 179
Joined: Sun Jan 31, 2010 3:30 pm
Location: Bucaramanga - Colombia

Re: Enviar/Recibir archivos via ftp [ SOLVED ]

Post by russimicro »

FUNCTION ConectaServerFTP(cNomSer,cNomUsr,cClaUsr,cDocNit,oFtp)
cServer := cNomSer //change ftpserver to the real name or ip of your ftp server
cUser := cNomUsr // change ftpuser to an valid user on ftpserer
cPassword := cClaUsr // change ftppass to an valid password for ftpuser
cUrl := "ftp://" + cUser + ":" + cPassword + "@" + cServer

cUser:= strtran(cUser,"@","&at;")

oUrl := tUrl():New( cUrl )
IF At( "@", cUser ) > 0
oUrl:cUserID := strtran(cUser,"&at;","@")
oUrl:cPassword := cPassword
ENDIF


oFTP := tIPClientFtp():New( oUrl, .T. )
oFTP:nConnTimeout := 20000
oFTP:bUsePasv := .T.


oFTP:Open( )

IF oFtp <> NIL
RETURN .T.
ENDIF

RETURN .F.

******************************************************************************


FUNCTION SubeTablasFacturasFtp(cNitEmp,cCiaDes,cCodVen,oFtp)

LOCAL cLocFil := ""
LOCAL cRemFil := ""
LOCAL cUniLoc := "\zerusmovil\"+cCiaDes+"\"+cCodVen+"\temp\"
LOCAL cUniRem := "moviles/"+cNitEmp+"/"+cCiaDes+"/"+cCodVen+"/"

cLocFil := cUniLoc+"FACTURAS.CSV"
cRemFil := cUniRem+"FACTURAS.CSV"

SELECT MOV_FAC
MOV_FAC->( DBGOTOP() )
IF MOV_FAC->( !EOF() )
COPY TO &(cLocFil) DELIMITED WITH ( { [], [,] } )
IF HB_FSize(cLocFil) > 0
oFtp:UpLoadFile( cLocFil, cRemFil )
ENDIF
ENDIF

RETURN .T.

***************************************************************************

FUNCTION BajaTablasFtp(cNitEmp,cCiaDes,cCodVen)

LOCAL cUniFtp := "moviles/"+cNitEmp+"/"+cCiaDes+"/"+cCodVen+"/"
LOCAL cUniDes := "C:\TEMP"
LOCAL aVecArc := oFtp:listFiles(cUniFtp + "/" + "*.TXT")
LOCAL J := 0, cNomArc := ""
LOCAL nLonArc := 27 // TAMA¥O DEL NOMBRE DE ARCHIVOS.TXT

FOR J := 1 TO LEN(aVecArc)

cArcOri := aVecArc[J,1]
cNomArc := SUBS(aVecArc[J,1],LEN(aVecArc[J,1]) - nLonArc )
cArcDes := cUniDes+"\"+cNomArc

IF ( oFtp:fileSize(cArcOri) > 0 )
oFtp:DownLoadFile( cArcDes, cArcOri )
AnexarTxtTem(cUniDes,cArcDes,cNomArc,"PEDIDOS",oFtp,cArcOri) // FUNCTION PROPIA
ENDIF

NEXT J

RETURN

********************************************************************************



Johnson Russi
User avatar
Raymundo Islas M.
Posts: 590
Joined: Tue Mar 14, 2006 11:34 pm
Location: Acapulco, Gro. MEXICO

Re: Enviar/Recibir archivos via ftp [ SOLVED ]

Post by Raymundo Islas M. »

Jhonson,

Muchas gracias por la aportacion, hare pruebas con tu codigo, pero te tengo una pequeña pregunta :

Funciona directa/indirectamente con la WinInet.Dll ??

Ya que ese ha sido mi gran problema, he visto/leido que varios colegas la usan sin problemas. En mi caso, simple y sencillamente me bloquea.

Y hasta la fecha no he encontrado algun post que indique que tratamiento ( si es que lo requiera ) aplicarle para que pueda funcionar.
Ya que como comente previamente, hice algunos copy/paste de otras opciones y en todas, al momento de crear el objeto de conexion, siempre de devuelve que no hay, cuando claramente la tengo.

Te agradezco mucho, ojala y se pueda realizar el envio/recepcion que necesito.

Saludos
FWH 10.6 + xHarbour + Borland 582
User avatar
Raymundo Islas M.
Posts: 590
Joined: Tue Mar 14, 2006 11:34 pm
Location: Acapulco, Gro. MEXICO

Re: Enviar/Recibir archivos via ftp [ SOLVED ]

Post by Raymundo Islas M. »

Jhonson,

Excelente !!!

Funciona Perfecto.


Muchas Gracias y Saludos
FWH 10.6 + xHarbour + Borland 582
User avatar
QAZWSX2K
Posts: 359
Joined: Tue Oct 25, 2005 7:06 pm
Location: Bogota - Caracas

Re: Enviar/Recibir archivos via ftp [ SOLVED ]

Post by QAZWSX2K »

AMIGO Jhonson, ando probando tu rutina y me da error en estas funciones

tIPClientFtp()
turl()

esas son propias tuyas o de que serian, gracias
Software especializado para oficinas contables con grandes volumenes de Informacion
Impresion de todos los formularios del Seniat, Dian

alex_patino74@hotmail.com
whatsapp 57+3214777217
User avatar
Raymundo Islas M.
Posts: 590
Joined: Tue Mar 14, 2006 11:34 pm
Location: Acapulco, Gro. MEXICO

Re: Enviar/Recibir archivos via ftp [ SOLVED ]

Post by Raymundo Islas M. »

Alex,

Son propias de XHarbour, solo te falta agregar una lib a tu proyecto : tip.lib


Saludos
FWH 10.6 + xHarbour + Borland 582
User avatar
QAZWSX2K
Posts: 359
Joined: Tue Oct 25, 2005 7:06 pm
Location: Bogota - Caracas

Re: Enviar/Recibir archivos via ftp [ SOLVED ]

Post by QAZWSX2K »

gracias a todos, ya esta funcionando 100% ok
Software especializado para oficinas contables con grandes volumenes de Informacion
Impresion de todos los formularios del Seniat, Dian

alex_patino74@hotmail.com
whatsapp 57+3214777217
User avatar
QAZWSX2K
Posts: 359
Joined: Tue Oct 25, 2005 7:06 pm
Location: Bogota - Caracas

Re: Enviar/Recibir archivos via ftp [ SOLVED ]

Post by QAZWSX2K »

amigos

sobre la rutina he encontrado un detalle que me parece peligroso y es que generan un archivo log llamado ftp1, ftp2, y asi sucesivamente cada vez que se ejecuta y en este archivito log pone hasta la clave, etc, parece que fuera de la propia libreria de harbour, habra algun paramentro no documentado que haga que no lo genere?

gracias
Software especializado para oficinas contables con grandes volumenes de Informacion
Impresion de todos los formularios del Seniat, Dian

alex_patino74@hotmail.com
whatsapp 57+3214777217
User avatar
RodolfoRBG
Posts: 253
Joined: Tue May 16, 2006 4:46 pm
Location: San Luis Potosi, SLP, Mexico
Contact:

Re: Enviar/Recibir archivos via ftp

Post by RodolfoRBG »

Hola mis cuates,

Tomando el ejemplo de Johnson Russi, a mi se me congela el sistema en la instruccion:

oUrl := tUrl():New( cUrl )

Alguna idea del porque?

Salu2
RodolfoRBG
FWH 1307, xHarbour123 BCC582
rodolfoerbg@gmail.com
User avatar
Raymundo Islas M.
Posts: 590
Joined: Tue Mar 14, 2006 11:34 pm
Location: Acapulco, Gro. MEXICO

Re: Enviar/Recibir archivos via ftp [ SOLVED ]

Post by Raymundo Islas M. »

Rodolfo,

si agregaste las libs requeridas ?

Con las funciones de Russi todo estuvo ok desde la primera !!


Saludos
FWH 10.6 + xHarbour + Borland 582
User avatar
RodolfoRBG
Posts: 253
Joined: Tue May 16, 2006 4:46 pm
Location: San Luis Potosi, SLP, Mexico
Contact:

Re: Enviar/Recibir archivos via ftp [ SOLVED ]

Post by RodolfoRBG »

Compadre, gracias por responder.

Si tengo la libreria Tip.LIB incluida pero se trato de un problema con la forma en que tenia los archivos en el servidor.

Ya puedo bajar archivos, lo unico que no me funciona es que al dar la instruccion:

xbrowse(oFtp:DIRECTORY('*.*'))

me da un solo elemento por cada archivo con el nombre de "Binary"
RodolfoRBG
FWH 1307, xHarbour123 BCC582
rodolfoerbg@gmail.com
Post Reply