=>
Verificación, entiendo que es el de Usuario/Contraseña
=>
Otro, entiendo que es el de BACKUP, ROLES, USUARIOS,...
Lo único que se me ocurre es que hagas LOG de eventos importantes a ver si adivinas qué está pasando con los formularios de
Visualización y el
Otro.
O estás cerrando el
Otro (de forma involuntaria), o estás abriendo un segundo form de
Visualización (que tapa el otro) o el
Otro está perdiendo el padre y deja de verse...
(1) Por ejemplo, graba en un log, los eventos de Create, Close, Destroy,... de todos los forms, para ver el ciclo de vida de cada uno de ellos.
=> Te permitirá saber si alguno se está destruyendo sin tú saberlo (o ha quedado oculto, o sin parent,..)
(2) Haz un procedimiento que utilice
Screen.Forms, y coloca un botón en el Main para llamarlo. De forma que en cualquier momento te permita conocer (ya sea mostrando un ShowMessage o volcando al LOG) los formularios abiertos en cada momento.
=> Te permitirá saber si el form
Otro, realmente está destruído o es que no lo estás viendo...