Ver Mensaje Individual
  #3  
Antiguo 03-03-2012
Avatar de Héctor Randolph
[Héctor Randolph] Héctor Randolph is offline
Miembro Premium
 
Registrado: dic 2004
Posts: 882
Reputación: 20
Héctor Randolph Va por buen camino
Probablemente el error se presenta al llamar la función ProcessMessages en intervalos tan reducidos de tiempo.
Te propongo espaciar las llamadas para que en lugar de hacerlo en cada ciclo se hagan cada 400 ciclos por poner un ejemplo, el número lo decides tu mismo.

Quedaría algo como esto:

Código Delphi [-]
   for itemId := 100 to ItemCount - 100 do
      begin
        // con esta linea no me da error y carga más de 30000+ objetos del archivo binario
        // sin ella, me dá error!
        //sleep(1);
         if itemId mod 400 = 0 then // Solamente se procesan los mensajes cada 400 ciclos
            application.ProcessMessages;
        SetItem(itemId-100, ReadItem(itemId));
        //writeln(flogfile, 'Successfully readed Item #' + inttostr(itemId) + '.');

      end;

Saludos
Responder Con Cita