Cuadro de diálogo Cuadro de mensaje a veces oculto detrás del formulario principal

Algunos de nuestros usuarios no técnicos están teniendo problemas cuando un cuadro de diálogo MessageBox en nuestra aplicación a veces se puede mostrar detrás del formulario principal y la aplicación no acepta ninguna entrada hasta que se descarta el cuadro de mensaje (que no pueden ver).

La aplicación está escrita en C # y los cuadros de mensaje son estándar, por ejemplo, el código puede ser tan simple como MessageBox.Show (mensaje, título) y los cuadros de mensaje pueden ser creados por el hilo principal de la interfaz de usuario (es decir, no un hilo de fondo). La aplicación no tiene que ejecutarse en pantalla completa, pero el 90% de nuestros usuarios sí la ejecutan en pantalla completa.

La mayoría de las veces ((quizás> 99%) los cuadros de mensaje se muestran correctamente y nunca he logrado ver cómo sale mal, pero he visto una máquina cuando ha salido mal.

Una cosa que noté es que si tiene una aplicación que muestra un cuadro de diálogo, cuando mira su administrador de tareas, normalmente solo verá una entrada en la lista de aplicaciones. Siempre que el cuadro de mensaje esté oculto, verá dos entradas, una para la aplicación principal y otra entrada para este cuadro de mensaje.

Es bastante fácil solucionar el problema una vez que sabe lo que sucedió, pero algunos de nuestros usuarios no técnicos se confunden y terminan apagando sus computadoras. (Y los que usan Escritorio remoto están aún más confundidos cuando eso no resuelve el problema).

No creo que esté relacionado con el sistema operativo, ya que he visto que sucede en Vista y me han dicho que también ocurre en una sesión de terminal en un servidor Windows 2003.

¿Algo sabe por qué sucede esto y, lo que es más importante, si se puede hacer algo para evitarlo?

Respuestas a la pregunta(5)

Su respuesta a la pregunta