Invalid TypeCast es porque en algún paso la instrucción
screen.forms[i] as TMiForm
no es correcta.
Puede suceder que no todas los formularios sean de tipo TMiForm, por ejemplo el formulario principal. Si esto sucede se genera el error. Y creo que el código se ejecutó sólo hasta que se necontró el error. Quizá falló cuando ya había cambiado el Caption de tus formularios pero se detuvo en el incorrecto. Para evitarte problemas será mejor que hagas algo así:
Código:
if screen.forms[i] is TMiForm then
with TMiForm(screen.forms[i]) do
...
Nota que debido a la primera comprobación el "typecast" puedes hacerlo de la forma en que lo puse.
// Saludos