Para ello vamos a añadir en el evento OnCreate del formulario principal de nuestra aplicación lo siguiente:
procedure TFPrincipal.FormCreate(Sender: TObject);
begin
// Hacemos que el formulario sea invisible poniendolo en la
// esquina superior izquierda, tamaño cero y aplicación invisible
BorderStyle := bsNone;
Left := 0;
Top := 0;
Width := 0;
Height := 0;
Visible := False;
Application.Title := '';
Application.ShowMainForm := False;
// Lo ocultamos de la barra de tareas
ShowWindow( Application.Handle, SW_HIDE );
SetWindowLong( Application.Handle, GWL_EXSTYLE,
GetWindowLong(Application.Handle, GWL_EXSTYLE) or
WS_EX_TOOLWINDOW and not WS_EX_APPWINDOW);
end;
Esto nos puede ser util para crear programas residentes ocultos al usuario para administración de copias de seguridad, reparación automática de bases de datos y envío de mailing automátizado.
Pruebas realizadas en Delphi 7.
Funciona perfectamente. Me ha sido muy útil.
ResponderEliminarMuchas gracias.
Hay que tener presente que este código sólo funciona hasta la versión 2006 de Delphi. Para que funcione a partir de la versión 2007 hay que ir al .dpr y poner a false el Application.MainFormOnTaskbar. Luego ya puede usarse
ResponderEliminar// para ocultar
ShowWindow( Application.Handle, SW_HIDE );
// para mostrar
ShowWindow(Application.Handle, SW_SHOW);
Nos leemos
cadetill
Muchas gracias por la información.
ResponderEliminarGracias
ResponderEliminarEstoy creando un programa de Control Paterno para mi hija y me viene perfecto.
Gracias
ResponderEliminarEstoy creando un programa de Control Paterno para mi hija y me viene perfecto.