Otra solución a parte de las ya propuestas, pudiera ser, si es que el formulario no se cierra durante la vida de la aplicación, utilizar su propiedad
Tag.
Código:
procedure TForm2.FormPaint(Sender: TObject);
begin
form2.tag:=form2.tag+1;
if form2.Tag < 2 then
ShowMessage('Salut Cadetill');
end;
Si se cierra con la opciona CaFree, se destruiría todo por lo tanto no servirá lo propuesto, pero quizás haya un formulario que no se cierre en toda la aplicación y que se abra antes que este, entonces también podríamos utilizar la propiedad Tag de este.
Un Saludo.