Ver Mensaje Individual
  #1  
Antiguo 01-12-2005
arantzal arantzal is offline
Miembro
 
Registrado: oct 2004
Posts: 80
Reputación: 20
arantzal Va por buen camino
Error THilo QueryInterface

Buenas,
tengo un error que no consigo solucionar, os lo explico para ver si alguien me puede ayudar.

En el código creo un hilo de la siguiente forma:
Código Delphi [-]
 
type
  THilo = class(TThread)
    ModoAdm : boolean;
    protected
      procedure Execute; override; // Main thread execution
    published
      constructor CreateIt (Modo : boolean); 
      destructor Destroy; override;
     public
  end;
 
El procedimiento execute lo tengo así:
 
procedure THilo.Execute;
var
  Conn : string;
  Can: boolean;
  Manejador: INTEGER;
begin
      Manejador := LoadLibrary('Library1.dll');
      if Manejador <> 0 then
        begin
            Can:= GetProcAddress(Manejador, 'Gestion')<> nil;
            if Can then
            Gestion(Id, Conn);
        end
      else
        begin
          CopyFichero('Library.dll');
          //Y vuelvo a empezar...
          Execute;
        end;
end;
 
 
Y llamo al hilo de la siguiente forma:
....... 
if (MiHilo = nil) or (HiloActivo = false) then // make sure its not already running
begin
          MiHilo:= THilo.CreateIt(false);
          HiloActivo := true;
end
else//Le conduzco al proceso
begin//La dll está cargada, sólo tengo que ejecutar la función
        ............................... 
end;

Pero a hacer el createit(false) me da el siguiente error:
QueryInterface for Interface Borland.Vcl.IMalloc failed. ¿Alguna idea? Si quito el hilo me va bien, así que supongo que será que algo del hilo que está mal. Si a alguien se le ocurre algo.....


Gracias de antemano.
Saludos.

Última edición por jachguate fecha: 01-12-2005 a las 15:36:58. Razón: Añadir etiqueta [delphi]
Responder Con Cita