Come posso interrompere il riposizionamento di Windows dopo il risveglio dal sonno?


116

Metto in pausa il mio sistema multi-monitor quando non è in uso. Dopo averlo svegliato, tutte le finestre vengono riposizionate su una schermata diversa. Il modello più vicino a cui riesco a pensare è che le finestre presenti sullo schermo principale passano al secondo schermo. Sembra che disconnette la schermata principale prima di andare in modalità di sospensione, che a sua volta passa tutte le finestre alla seconda o terza schermata.

Modifica: ecco la scheda video che sto usando -> SAPPHIRE FleX 100322FLEX Radeon HD 6450


1
Devi specificare gli adattatori grafici che stai usando, probabilmente è colpa loro.
Shinrai,

3
Ho trovato la soluzione definitiva a questo: fai come Stephen, ( st99 ), dice qui nella nona risposta
Soldeplata Saketos

lo stesso problema è su Kubuntu, qualcuno ha una soluzione per questo?
Waqleh,

Impossibile aggiungere come risposta, ma dopo aver letto questa risposta e questa risposta , ho trovato la soluzione una manipolazione di HKLM \ SYSTEM \ CurrentControlSet \ Control \ GraphicsDrivers \ Configuration. Con tutti i monitor aggiuntivi scollegati, eliminare tutte le chiavi in ​​questo percorso e riavviare il PC. Nota nuova chiave aggiunta a questo percorso (A). Ricollegare i monitor e annotare ulteriori nuove chiavi aggiunte (B). Configurare le impostazioni di visualizzazione come desiderato. La nuova chiave verrà aggiunta di nuovo (C). Ogni tasto rappresenta una configurazione di visualizzazione. Elimina la chiave indesiderata (probabilmente la chiave B).
Neo,

Risposte:


34

Il problema è molto probabilmente con il driver grafico. Ogni volta che un singolo monitor viene disconnesso da un'impostazione multimonitor in Windows, Windows tenterà di spostare qualsiasi cosa da quella schermata alle schermate rimanenti. Di solito, ciò non si verifica quando si sospende / ibernazione / spegnimento del computer. Pertanto, è probabilmente a causa del driver grafico che esegue una delle seguenti operazioni:

  • "Disconnettere" i monitor quando si mette il computer in modalità sospensione, quindi quando Windows si risveglia, è necessario determinare nuovamente dove posizionare tutto.
  • Riconoscere i monitor in un ordine diverso ogni volta che si spegne il computer, costringendo Windows a riorganizzare le finestre dell'applicazione.

Verificare se è presente un aggiornamento per il driver grafico andando sul sito Web del produttore del chipset.


1
Cordiali saluti: I miei driver sono di Intel, quindi ho pensato che fossero firmati e distribuiti con gli aggiornamenti di Windows, ma non lo erano.
Leone,

1
Problema simile qui. Ho un laptop Dell con adattatore grafico nVidia. L'installazione di un driver più recente da nVidia invece del driver Dell ha risolto il problema.
Chris Jones,

1
problema simile qui. i più recenti driver OEM HD 4600 OEM. potrei essere che dovrei controllare Driver from PC Vendor (HP)?
Falco Alexander,

2
Stesso problema con un NUC da 7i5 miliardi di dollari - ho gli ultimi driver Intel
niico

46

Questa è una vecchia domanda, ma se qualcuno arriva qui con lo stesso problema, suggerisco di provare la soluzione pubblicata qui:

http://answers.microsoft.com/en-us/windows/forum/windows_7-hardware/windows-7-movesresizes-windows-on-monitor-power/1653aafb-848b-464a-8c69-1a68fbd106aa

Sto eseguendo Windows 8.1 con due display 2560x1440 su DisplayPort. Al risveglio dal sonno, tutte le mie finestre erano state spostate su un display e alcune di esse si ridimensionavano. Questo risolve il problema per me; ora tutte le posizioni e le dimensioni della mia finestra sono conservate. Ecco il contenuto del collegamento pertinente:

Ho trovato una soluzione. Utilizzando Sysinternals ProcessMonitor ho scoperto che Windows stava accedendo al seguente percorso di registro:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Configuration

Il mio sistema aveva tre voci:

  • DELF003YY7707BR0MUL_30_07D7_6A^9A3774EB79DEE3E3E38496CC7DF4D936
  • QHD32000001_31_07D6_D5^63E1ABDD175E7871DCAEB710418A0F75
  • SIMULATED_8086_2A42_00000000_00020000_1010100^CDE365D1B3F0942F0CF38BFB8E127AB4

Sotto ognuno c'è un albero chiamato 00. Due delle chiavi sono:

  • PrimSurfSize.cx
  • PrimSurfSize.cy

Sotto 00c'era anche un altro ramo chiamato 00. Due delle chiavi sono:

  • ActiveSize.cx
  • ActiveSize.cy

Nelle prime due configurazioni (cioè DELF00...& QHD3...), le chiavi sopra erano 1440x900, quindi non erano coinvolte.

Il terzo ( SIMULATED...) era impostato su 1024x768.

Ho cambiato questi in 1600x900 e il problema è stato risolto.

Inoltre ho modificato la risoluzione (tramite il pannello di controllo) su 1920x1080, il problema relativo allo spostamento / ridimensionamento è tornato, ma l'angolo inferiore destro era impostato su 1600x900, ovvero le SIMULATED...impostazioni.

Quindi, per qualche motivo, una delle configurazioni non viene impostata correttamente.

Non so perché ci sono tre configurazioni, ho sempre usato un solo monitor.


15
Basta eliminare l'intero HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ GraphicsDrivers \ Configuration, funziona anche ed è più veloce.
FarO,

3
L'eliminazione della voce non funziona per me (Windows 10). Non appena ho spento il monitor, la voce "SIMULATA" viene nuovamente creata. La soluzione originale funziona (ovvero modifica ogni occorrenza di 1024.768 con la risoluzione effettiva).
FractalSpace

2
Ecco un altro post correlati ho trovato su Microsoft Answers per Windows 10. answers.microsoft.com/en-us/windows/forum/windows_10-hardware/...
Chiramisu

1
L'eliminazione dell'intera configurazione come suggerito da @OlafM funziona perfettamente. Nel mio caso, Windows ha circa 30 voci. Dopo il riavvio, solo uno è stato ricreato, contenente solo i monitor che ho effettivamente inserito int.
Maja,

1
Ero preoccupato di eliminare tutto nella cartella Configurazione, ma prima ho fatto un'esportazione e cancellato tutto risolto il problema, dopo aver ripreso ho dovuto impostare l'ordine del monitor e non appare fisso.
drooh,

13

Se il tuo computer ha una grafica Intel HD, devi impostare le opzioni di estensione del display (e le impostazioni di risoluzione) dal pannello di controllo della grafica Intel. Se lo fai dalle impostazioni di visualizzazione di Windows, verrà ripristinato dopo averlo riattivato dalla modalità di sospensione.

Ecco uno screenshot.

inserisci qui la descrizione dell'immagine


Non ha cambiato nulla per me. O devo cancellare completamente le impostazioni di Windows prima di farlo con il software Intel?
Christophe Drevet-Droguet,

1
Ha funzionato per me dopo aver ripristinato le impostazioni e quindi applicato dalla grafica Intel.
Tidhar Klein Orbach,

Ho semplicemente cambiato qualche opzione e poi l'ho ripristinata. Ha abilitato il bouton "applica" e ha salvato la configurazione dal driver. Funziona alla grande dopo il blocco manuale. Vedrò cosa succede dopo un lungo periodo
Aldian l'

Questo ha funzionato per me su Windows 10 e ha salvato la mia sanità mentale.
shoelzer,

9

Penso di aver trovato una soluzione per questo problema combinando le idee di questi post .

(il mio PC è Windows 10 TH2, Intel HD4600 con porta HDMI, monitor Changhong 4k)

Ecco la procedura.

  1. Elimina tutte le voci di registro aggiuntive in ... GraphicDrivers \ Configuration and GraphicDrivers \ Connectivity, lasciando solo la voce corrispondente al mio monitor (MST00301 ...)

  2. Prima di mettere in pausa il monitor, basta digitare il tasto combinato "WIN" + "D" per ridurre a icona tutte le finestre del desktop.

  3. Dopo aver acceso il monitor, digitare nuovamente "WIN" + "D" per ripristinare tutte le finestre.


1
Penso che Win + D non sia necessario. Dopo aver eliminato tutte le voci e riavviato il PC, il monitor esterno viene nuovamente aggiunto alla registrazione. Dopodiché sembra funzionare come previsto. Forse Windows era confuso con molte configurazioni diverse. Nel mio caso avevo 12 voci e ora ce ne sono solo 2: maxrev.de/…
mgutt

Questo ha funzionato per me, ma solo dopo aver corretto la nuova chiave SIMULATED_ .... Dopo il riavvio, avevo due nuove voci in Configurazione e Connettività. La voce SIMULATED_ 00 aveva 1024, 768 e 4096 per i valori cx, cy e stride, che erano errati. Ho copiato solo quei valori dall'altra chiave, che sembrava essere corretta per il mio monitor, e riavviato. Ho un singolo monitor 4K da 40 ", un Wasabi Mango UHD400 e il problema è stato risolto.
PixelGrease

Per me, il trucco Win + D funziona, anche senza alterare il registro, che non ha funzionato. Si noti che non è necessario ridurre a icona il desktop: le icone del desktop esterne alla casella 1024x768 non verranno spostate dopo aver spento e riacceso il monitor. Inoltre, le finestre ingrandite non presentano il problema di ridimensionamento / spostamento.
Roland,

4

Non tutte le schede NVidia supportano la possibilità di falsificare l'EDID, e non è solo il sonno a causare questo problema. Se un monitor viene spento o si disconnette brevemente, può provocare danni su un layout dello schermo accuratamente configurato. Poiché nessuna delle soluzioni qui ha funzionato per me, ho scritto un'utilità per ripristinare le posizioni della finestra quando cambia il numero di monitor. È disponibile con il codice sorgente qui .


1
Ho testato il programma di @GarrGodfrey e ha funzionato come un incantesimo.
Kita,

2

Di solito ciò è causato dal driver grafico che non supporta correttamente le modalità di sospensione e quindi disabilita la capacità di rilevare uno schermo collegato quando il computer entra in modalità di sospensione.

Aggiorna i driver di grafica dal produttore per risolvere il problema.

Se il problema persiste dopo l'aggiornamento dei driver, potrebbe essere dovuto a un ID di visualizzazione (EDID) insolitamente segnalato. Di solito è possibile forzare il rilevamento di un monitor nel pannello di controllo del driver grafico.

Tuttavia, se questo non è disponibile, è possibile utilizzare la finestra Risoluzione di Windows per rilevare i dispositivi mentre il monitor è disconnesso, quindi selezionare il display che riporterà "Un altro display non connesso", quindi in Più schermi, è possibile scorrere verso il basso e selezionare "Prova a connetti comunque ”che trasmetterà un segnale al monitor sul tipo di porta che hai selezionato (il segnale non sarà interattivo), quindi collega il display che dovrebbe interpretare correttamente i segnali inviati.

La risoluzione forzata sovrascriverà il rilevamento dello schermo e dovrebbe persistere durante il sonno.


2

Stesso problema qui con Windows 8.1 e Macbook Air 2013 (Intel HD Graphics 5000). Provo tutto Alla fine sono passato a Intel aggiornato con i driver più recenti per la mia scheda grafica e il problema persiste. Quindi sono passato alla proprietà grafica, con il mio secondo display acceso in Visualizzazione multipla ho scelto "Disconnetti questo display", quindi dopo aver disconnesso il secondo schermo seleziono estendi il desktop e il problema scompare. Spero che questo funzioni per te.


Ho anche un Macbook Air 2013 con i driver più recenti e questo non ha risolto il mio problema. Hai qualche idea su come posso risolverlo?
Andrew,

2

Nel mio caso, con tre monitor 1920x1080 disposti orizzontalmente, sembra che sia stato risolto andando alla chiave di registro menzionata in altre risposte ( HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Configuration), trovando la chiave che inizia con SIMULATED, quindi cambiando tutti i valori di 1920 sotto quella chiave in 5760 (1920 tre volte, per i tre monitor).

Immagino che la SIMULATEDchiave venga utilizzata quando il PC va in modalità di sospensione, ma Windows deve ancora mantenere un desktop in procinto di andare / riprendere dalla modalità di sospensione, anche quando i monitor effettivi potrebbero non segnalarsi ancora.


Questo è ciò che mi ha aiutato di più. Il tuo secondo paragrafo in particolare sembra essere corretto. Anche se ho ancora Windows spostare su altri monitor quando lo schermo è spento.
Andrew,

1

Per me, la correzione era https://superuser.com/a/908156/238666 . Riepilogo: Windows non riesce a leggere le informazioni EDID dal monitor al risveglio e nel pannello di controllo di Nvidia è possibile salvare le informazioni EDID in un file e impostare il PC per leggerle da quel file, sotto l'attività: Workstation, Visualizza sistema Topologia, fonte EDID.

Nella mia visione limitata, il problema alla radice potrebbe essere la scheda Nvidia, ma anche Windows, DisplayPort o il monitor (Lenovo X1 4K)



-1

Piaccia o no, ma in base al problema noto di Dell con il collegamento di monitor 4K specifici: http://www.dell.com/support/Article/us/en/19/SLN295708/EN ho dovuto passare da 59 / 60Hz a 30Hz sul mio 3 x Dell P2415Q 4K UHD su Intel 4600 collegato con DP / mDP di serie del display e mi ha aiutato - come dice l'articolo di Dell KB. Si applica anche a UP3214Q e P2715Q.

Il problema non si è manifestato su Dell U2515H con risoluzione QHD inferiore + stesso video / PC

La rimozione delle chiavi di registro e gli aggiornamenti dei driver non sono stati utili.

Aggiornamento 2018/08: E l'aggiornamento della scheda grafica a NVIDIA Quadro P600 non ha risolto il problema, quindi rimanendo su 30Hz.


1
Urgh, 30Hz è terribile da usare, quindi balbuzie.
Simon East,

@SimonEast, è passato un anno da quando ho pubblicato questa risposta e utilizzo questi 4K-s a 30Hz, essendo sensibile allo sfarfallio fluorescente e LED e preferendo l'illuminazione alogena DC 12V ove possibile, direi che 30Hz è OK su questi monitor Dell 4K . I video d'azione di Youtube sono relativamente fluidi, ma uso principalmente questi schermi per codici, terminali, mail e chat - non mi sento stanco dopo 10-12 ore al giorno ..
kuz8
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.