Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-04-2016
darkamerico darkamerico is offline
Miembro
 
Registrado: dic 2010
Posts: 229
Poder: 14
darkamerico Va por buen camino
Unhappy Usando componentes RealThin para crear un WebServer y enviar archivos grandes

Saludos amigos,

La fuente de la duda se encuentra en el siguiente tutorial:
http://www.realthinclient.com/realth...rge-files-out/

Seguí todos los pasos al pie de la letra pero no se realiza el trabajo de enviar el archivo: El código de los métodos involucrados CheckRequest y DataReceived es:

Código Delphi [-]
procedure TForm1.rdpArchivosCheckRequest(Sender: TRtcConnection);
var
  nombreArchivo:string;
  rdsServer: TRTCDataServer absolute Sender;
begin
  nombreArchivo:=GetFullFileName(rdsServer.Request.FileName);
  rdsServer.Accept;
  rdsServer.Request.Info['FName']:=nombreArchivo;
  rdsServer.Response.ContentLength:=File_Size(nombreArchivo); // 1
  rdsServer.WriteHeader(); // 2
end;

Código Delphi [-]
procedure TForm1.rdpArchivosDataReceived(Sender: TRtcConnection);
var
  nombreArchivo: string;
  viSent: integer;
  rdsServer: TRTCDataServer absolute Sender;
begin
  if rdsServer.Request.Complete then
  begin
    if rdsServer.Response.ContentLength>rdsServer.Response.ContentOut then // 1
    begin
      nombreArchivo:=rdsServer.Request.Info['FName'];

      if File_Exists(nombreArchivo) then
      begin
        if File_Size(nombreArchivo)=rdsServer.Response.ContentLength then // 2
        begin
          viSent:=rdsServer.Response.ContentLength - rdsserver.Response.ContentOut; // 3

          if viSent > 16000 then viSent:=16000;  // 4

          rdsServer.Write(Read_File(nombreArchivo, rdsServer.Response.ContentOut, viSent)); //5
        end
        else
          rdsServer.Disconnect; // 6
      end
      else
        rdsServer.Write('Archivo No Encontrado!');
    end;
  end;
end;

El navegador se queda cargando eternamente y no descarga el archivo del servidor.
El único paso que no esta claro en ese tutorial es el Punto 4 titulado: Implement OnDataReceived event in OnDataSent event.

Agradezco la ayuda.


Americo
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Usar TServerSocket y TClientSocket para enviar "streams" más o menos "grandes" dec Internet 9 04-08-2015 16:11:50
Transferir archivos usando los componentes Indy cacu Varios 2 16-02-2015 09:35:24
Se busca: biblioteca para números grandes (muy grandes) Lord Delfos Varios 7 06-02-2010 01:26:35
Ayuda para enviar pdf por fax, usando Delphi 7 manolop Varios 6 15-03-2007 12:48:19
Enviar archivos con componentes Indy- Cliente _Servidor b3nyis Internet 1 05-04-2006 11:08:25


La franja horaria es GMT +2. Ahora son las 10:26:09.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi