Página 1 de 1

oFtp:DownloadFile( MMDrv, xMMDrv ) MUITO lento

Enviado: 03 Jan 2022 10:09
por paiva
BOM dia

DUVIDA

Porque o consegue := oFtp:DownloadFile( MMDrv, xMMDrv ) em alguns clientes fica uma CARROÇA ?

se transfiro via Team ou Khelp ou Anny é quase Instataneo ?

será porque a NET desses cliente são RAPIDAS ?

Paiva

oFtp:DownloadFile( MMDrv, xMMDrv ) MUITO lento

Enviado: 04 Jan 2022 08:41
por sygecom
Se o link for HTTP, tente usar um novo link HTTPS.
Percebi faz um tempo que link HTTP vai ser eliminado, então devem está restringindo ao máximo os anti-virus.

oFtp:DownloadFile( MMDrv, xMMDrv ) MUITO lento

Enviado: 04 Jan 2022 13:32
por Itamar M. Lins Jr.
Olá!
Team ou Khelp ou Anny é quase Instataneo ?
Porquê, não é FTP! FTP é um protocolo, SFTP é outro, HTTP outro, HTTPS outro.
Tem que ver a configuração da função TIP p/ ver o tamanho do arquivo a ser lido/transportado, se lê 1024, 2048... do arquivo de origem.
No caso o Annydesk(http)... deve lê partes maiores do arquivo e a classe FTP deve ler pedaços menores.

Saudações,
Itamar M. Lins Jr.

oFtp:DownloadFile( MMDrv, xMMDrv ) MUITO lento

Enviado: 04 Jan 2022 13:50
por Itamar M. Lins Jr.
Olá!
Dei uma olhada na classe ftp(tip)

Código: Selecionar todos

...
   ::nDefaultSndBuffSize := ::nDefaultRcvBuffSize := 65536
...
 /* Set internal socket send buffer to 64 KiB, this should
      resolve the speed problems some users have reported */
   IF HB_ISNUMERIC( ::nDefaultSndBuffSize )
      ::InetSndBufSize( ::SocketCon, ::nDefaultSndBuffSize )
   ENDIF
   IF HB_ISNUMERIC( ::nDefaultRcvBuffSize )
      ::InetRcvBufSize( ::SocketCon, ::nDefaultRcvBuffSize )
   ENDIF

   RETURN .T.
Então ele lê isso ai de cada vez por padrão.
client.prg

Código: Selecionar todos

* Methods to manage buffers */
METHOD InetRcvBufSize( SocketCon, nSizeBuff ) CLASS TIPClient

   IF HB_ISNUMERIC( nSizeBuff ) .AND. nSizeBuff > 0
      hb_inetSetRcvBufSize( SocketCon, nSizeBuff )
   ENDIF

   RETURN hb_inetGetRcvBufSize( SocketCon )

METHOD InetSndBufSize( SocketCon, nSizeBuff ) CLASS TIPClient

   IF HB_ISNUMERIC( nSizeBuff ) .AND. nSizeBuff > 0
      hb_inetSetSndBufSize( SocketCon, nSizeBuff )
   ENDIF

   RETURN hb_inetGetSndBufSize( SocketCon )
Saudações,
Itamar M. Lins Jr.