Ver Mensaje Individual
  #9  
Antiguo 23-01-2009
Avatar de Chris
[Chris] Chris is offline
Miembro Premium
 
Registrado: abr 2007
Ubicación: Jinotepe, Nicaragua
Posts: 1.678
Reputación: 19
Chris Va por buen camino
Código Delphi [-]
..
 script.Session:=sesion;
 script.Lines.Add('select * from usuarios');
 script.Execute;
 resultado:=script.Output;
..
No si "script" es una variable, o es un objeto que esta ubicado en algún formulario. Si es el último caso, las anteriores líneas deben estar dentro de un procedimiento del Thread que sea llamado con synchronize:
Código Delphi [-]
TBarra.ActualizarScript;
begin
with formulario1.script do
  Session := sesion;
  lines.Add('select * from usuarios');
  script.Execute;  // esta línea podría moverse a otro método del thread (threaded), si es que no producen problemas al hacerlo.
  respaldo := script.Output;  // no quiero producir un bug al omitir "script"
end;

Lo puedes llamar así:
Código Delphi [-]
procedure TBarra.Execute;
begin
   try
      sesion.LogonUsername:='lg';
      sesion.LogonPassword:='lg';
      sesion.LogonDatabase:='bd.world';
      sesion.Connected:=true;
//      script.Session:=sesion;
//      script.Lines.Add('select * from usuarios');
//      script.Execute;
//      resultado:=script.Output;

//    Las líneas comentadas arriba fueron puestas en "ActualizarScript"
      Synchronize(ActualizarScript);

      sleep(2000);
      cont:=1;
   except
      on E : Exception do
      begin
         sleep(2000);
         cont:=1;
      end;
   end;
end;

Saludos.-
__________________
Perfil Github - @chrramirez - Delphi Blog - Blog Web
Responder Con Cita