Hola progmaq, todos los objetos de la biblioteca de componentes visuales creados en tiempo de diseño pertenecen al programa principal, por lo que no es posible que desde el método execute de un hilo pueda accederse de forma directa a sus propiedades o realizar llamadas a sus métodos. En estos casos es necesario utilizar el procedimiento synchronize () al que pasaremos como parámetro un método definido por nosotros. Dicho esto prueba lo siguiente (en la parte private declaras el procedimiento):
Código Delphi
[-]private
procedure MuestraVentana;
end;
luego haces en él lo que querías y lo llamas desde Execute a través de Synchronize:
Código Delphi
[-]procedure MuestraVentana;
begin
with TForm2.Create(nil) do
Try
ShowModal;
finally
Free;
end;
end;
procedure Hilo_Cliente.Execute;
begin
synchronize (MuestraVentana);
end;
Espero que así se solucionen trus problemas.Saludos.