Esto a veces se debe a una limitación de diseño en Windows x64 con respecto a la interacción entre las aplicaciones de 32 bits y los controladores de 64 bits. Además de los cuadros de diálogo de impresión, otro escenario común en el que esto ocurre es cuando se utiliza Internet Explorer de 32 bits y cuadros de diálogo para tarjetas inteligentes.
Microsoft proporciona información básica sobre la causa aquí:
El cuadro de diálogo Guardar como aparece detrás de una aplicación de 32 bits cuando imprime en una impresora XPS Document Writer en una versión de Windows 7 de 64 bits
http://support.microsoft.com/kb/2567869
Los controladores de impresora se implementan como bibliotecas de enlace dinámico (DLL) que se cargan en un proceso que se está imprimiendo. Los controladores de impresora se implementan como archivos DLL de 64 bits en versiones de Windows de 64 bits. Los controladores de impresora se implementan como archivos DLL de 32 bits en versiones de Windows de 32 bits.
Un proceso de 32 bits no puede cargar archivos DLL de 64 bits. Por lo tanto, las versiones de Windows de 64 bits admiten la impresión desde procesos de 32 bits a través del proceso Splwow64.exe. Splwow64.exe es un proceso de 64 bits que puede cargar controladores de impresora de 64 bits y maneja la impresión en nombre de procesos de 32 bits.
Cuando una aplicación llama a la función StartDoc para imprimir en la impresora XPS Document Writer, el controlador de impresora XPS Document Writer muestra un cuadro de diálogo Guardar como para que los usuarios puedan especificar el nombre y la ubicación del archivo XPS. La ventana del propietario del cuadro de diálogo suele ser la ventana activa del subproceso que llama a la función StartDoc, y el cuadro de diálogo aparecerá sobre la ventana activa.
Cuando una aplicación de 32 bits llama a la función StartDoc en una versión de Windows de 64 bits, el proceso Splwow64.exe llama al controlador de impresora XPS Document Writer en nombre de la aplicación de 32 bits. En este escenario, el cuadro de diálogo Guardar como no es propietario porque el subproceso en el proceso Splwow64.exe no tiene una ventana activa. Además, el cuadro de diálogo puede aparecer detrás de la aplicación que se está imprimiendo porque el proceso Splwow64.exe no tiene permiso para establecer la ventana de primer plano.
La llamada StartDoc no regresa hasta que se cierra el cuadro de diálogo, por lo que puede parecer que la aplicación deja de responder.
El cuadro de diálogo Guardar como tiene su propio botón en la barra de tareas del Explorador de Windows si es creado por el proceso Splwow64.exe. Esto se debe a que el cuadro de diálogo no es propietario. El botón de la barra de tareas también parpadea cuando el proceso Splwow64.exe no puede establecer la ventana de primer plano.