Ciò è talvolta dovuto a una limitazione di progettazione in Windows x64 per quanto riguarda l'interazione tra applicazioni a 32 bit e driver a 64 bit. Oltre alle finestre di dialogo di stampa, un altro scenario comune in cui ciò si verifica è quando si utilizza Internet Explorer a 32 bit e le finestre di dialogo per le smart card.
Microsoft fornisce alcune informazioni di base sulla causa qui:
La finestra di dialogo Salva con nome viene visualizzata dietro un'applicazione a 32 bit quando si stampa su una stampante XPS Document Writer su una versione a 64 bit di Windows 7
http://support.microsoft.com/kb/2567869
I driver di stampa sono implementati come librerie a collegamento dinamico (DLL) che vengono caricate in un processo in fase di stampa. I driver di stampa sono implementati come DLL a 64 bit nelle versioni a 64 bit di Windows. I driver di stampa sono implementati come DLL a 32 bit nelle versioni a 32 bit di Windows.
Un processo a 32 bit non può caricare DLL a 64 bit. Pertanto, le versioni a 64 bit di Windows supportano la stampa dai processi a 32 bit attraverso il processo Splwow64.exe. Splwow64.exe è un processo a 64 bit che può caricare i driver della stampante a 64 bit e gestisce la stampa per conto dei processi a 32 bit.
Quando un'applicazione chiama la funzione StartDoc per stampare sulla stampante XPS Document Writer, il driver della stampante XPS Document Writer visualizza una finestra di dialogo Salva con nome in modo che gli utenti possano specificare il nome e il percorso del file XPS. La finestra del proprietario della finestra di dialogo è in genere la finestra attiva del thread che chiama la funzione StartDoc e la finestra di dialogo verrà visualizzata sulla finestra attiva.
Quando un'applicazione a 32 bit chiama la funzione StartDoc su una versione a 64 bit di Windows, il processo Splwow64.exe chiama il driver della stampante XPS Document Writer per conto dell'applicazione a 32 bit. In questo scenario, la finestra di dialogo Salva con nome non è nota perché il thread nel processo Splwow64.exe non ha una finestra attiva. Inoltre, potrebbe essere visualizzata la finestra di dialogo dietro l'applicazione in fase di stampa poiché il processo Splwow64.exe non dispone dell'autorizzazione per impostare la finestra di primo piano.
La chiamata StartDoc non viene restituita fino a quando la finestra di dialogo non viene chiusa, pertanto l'applicazione potrebbe non rispondere.
La finestra di dialogo Salva con nome ha il proprio pulsante nella barra delle applicazioni di Windows Explorer se viene creata dal processo Splwow64.exe. Questo perché la finestra di dialogo è sconosciuta. Il pulsante della barra delle applicazioni lampeggia anche quando il processo Splwow64.exe non è in grado di impostare la finestra di primo piano.