Comment puis-je empêcher le repositionnement des fenêtres après le réveil?


116

Je mets mon système multi-moniteurs en veille lorsqu'il n'est pas utilisé. Après mon réveil, toutes les fenêtres sont repositionnées sur un écran différent. Le motif le plus proche auquel je puisse penser est que les fenêtres présentes sur l’écran principal basculent vers le deuxième écran. Il semble que l’écran principal se déconnecte avant de s’endormir, ce qui fait passer toutes les fenêtres au 2e ou 3e écran.

Edit: Voici la carte vidéo que j'utilise -> SAPPHIRE FleX 100322FLEX Radeon HD 6450


1
Vous devez spécifier les cartes graphiques que vous utilisez, c'est probablement leur faute.
Shinrai

3
J'ai trouvé la solution définitive à cela: faites comme Stephen, ( st99 ), dit ici dans la neuvième réponse
Soldeplata Saketos

le même problème est sur kubuntu, tout le monde a une solution pour cela?
Waqleh

Impossible d'ajouter une réponse, mais après avoir lu cette réponse et cette réponse , j'ai trouvé que la solution était une manipulation de HKLM \ SYSTEM \ CurrentControlSet \ Control \ GraphicsDrivers \ Configuration. Tous les moniteurs supplémentaires étant déconnectés, supprimez toutes les clés de ce chemin et redémarrez le PC. Notez la nouvelle clé ajoutée à ce chemin (A). Reconnectez les moniteurs et notez la nouvelle clé ajoutée (B). Configurez les paramètres d'affichage comme vous le souhaitez. Une nouvelle clé sera ajoutée à nouveau (C). Chaque touche représente une configuration d’affichage. Supprimez la clé indésirable (probablement la touche B).
Neo

Réponses:


34

Le problème est probablement lié au pilote graphique. À chaque fois qu'un seul moniteur est déconnecté d'une configuration multimoniteur sous Windows, Windows tente de tout déplacer de cet écran vers le ou les écrans restants. Généralement, cela ne se produit pas lors de la suspension / hibernation / arrêt de l'ordinateur. C'est donc probablement à cause du pilote graphique qui effectue l'une des opérations suivantes:

  • 'Déconnecter' les moniteurs lorsque l'ordinateur est mis en veille. Lorsque Windows se réveille, il doit alors déterminer à nouveau où placer le tout.
  • Reconnaître les moniteurs dans un ordre différent chaque fois que vous sortez l'ordinateur de son état de veille, obligeant Windows à réorganiser les fenêtres de vos applications.

Vérifiez s'il existe une mise à jour de votre pilote graphique en vous rendant sur le site Web du fabricant du chipset.


1
FYI: Mes pilotes sont d’Intel, donc j’ai présumé qu’ils avaient été signés et distribués avec les mises à jour Windows, mais ils ne l’ont pas été.
Léo

1
Problème similaire ici. J'ai un ordinateur portable Dell avec l'adaptateur graphique NVIDIA. L'installation d'un pilote plus récent de nVidia au lieu du pilote Dell a résolu le problème.
Chris Jones

1
Problème similaire ici. derniers pilotes OEM OEM Intel HD 4600. peut-être devrais-je vérifier les pilotes du fournisseur de PC (HP)?
Falco Alexander

2
Même problème avec un 7i5bnk NUC - a obtenu les derniers pilotes intel
niico

46

C'est une vieille question, mais si quelqu'un arrive ici avec le même problème, je suggère d'essayer la solution affichée ici:

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

J'utilise Windows 8.1 avec deux écrans 2560x1440 sur DisplayPort. Au réveil, toutes mes fenêtres avaient été placées sur un seul écran et certaines d’entre elles avaient été redimensionnées. Cela corrige le problème pour moi; maintenant toutes mes positions et tailles de fenêtre sont préservées. Voici le contenu du lien pertinent:

J'ai trouvé un moyen de contourner le problème. À l'aide de Sysinternals ProcessMonitor, j'ai découvert que Windows accédait au chemin de registre suivant:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Configuration

Mon système avait trois entrées:

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

Sous chacun se trouve un arbre appelé 00. Deux des clés sont:

  • PrimSurfSize.cx
  • PrimSurfSize.cy

Sous 00était une autre branche a également appelé 00. Deux des clés sont:

  • ActiveSize.cx
  • ActiveSize.cy

Dans les deux premières configurations (ie DELF00...& QHD3...), les clés ci-dessus étaient de 1440x900, elles n'étaient donc pas impliquées.

Les troisièmes ( SIMULATED...) étaient réglés sur 1024x768.

J'ai changé ceux-ci en 1600x900 et le problème a été résolu.

De plus, j'ai changé la résolution (via le panneau de commande) en 1920x1080, le problème de déplacement / redimensionnement est revenu, mais le coin inférieur droit était réglé sur 1600x900, c'est-à-dire les SIMULATED...paramètres.

Donc, pour une raison quelconque, l’une des configurations n’est pas configurée correctement.

Je ne sais pas pourquoi il y a trois configs, je n'ai jamais utilisé qu'un seul moniteur.


15
Supprimez simplement l'ensemble de HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ GraphicsDrivers \ Configuration, il fonctionne également et est plus rapide.
FarO

3
La suppression de l'entrée ne fonctionne pas pour moi (Windows 10). Dès que j'ai éteint le moniteur, l'entrée 'SIMULATED' est créée à nouveau. La solution originale fonctionne (c'est-à-dire, modifiez chaque occurrence de 1024 768 avec la résolution réelle).
FractalSpace

2
Voici un autre poste lié j'ai trouvé sur Microsoft Answers pour Windows 10. answers.microsoft.com/en-us/windows/forum/windows_10-hardware/...
Chiramisu

1
Supprimer la configuration complète comme suggéré par @OlafM fonctionne parfaitement. Dans mon cas, Windows a environ 30 entrées. Après le redémarrage, un seul a été recréé, contenant uniquement les moniteurs que j'ai réellement branchés.
maja

1
J'étais nerveux à l'idée de supprimer tout ce qui se trouvait dans le dossier de configuration, mais j'ai d'abord effectué une exportation, puis tout corrigé, après avoir repris mon travail, je devais définir l'ordre du moniteur.
drooh

13

Si votre ordinateur est doté de la technologie Intel HD Graphics, vous devez définir les options d’extension d’affichage (et les paramètres de résolution) à partir du panneau de configuration Intel Graphics. Si vous le faites à partir des paramètres d'affichage Windows, il sera réinitialisé une fois que vous l'avez sorti du mode veille.

Voici une capture d'écran.

entrez la description de l'image ici


Cela n'a rien changé pour moi. Ou dois-je complètement effacer les paramètres de Windows avant de le faire avec le logiciel Intel?
Christophe Drevet-Droguet le

1
Cela a fonctionné pour moi après la réinitialisation des paramètres, puis appliqué à partir du graphique Intel.
Tidhar Klein Orbach

Je me suis contenté de changer d’option, puis de revenir en arrière. Il a activé le bouton "Appliquer" et enregistré la configuration du pilote. Fonctionne très bien après le verrouillage manuel. Je vais voir ce qui se passe après une longue période
Aldian

Cela a fonctionné pour moi sur Windows 10 et a sauvé ma santé mentale.
Shoelzer

9

Je pense avoir trouvé une solution de contournement à ce problème en combinant les idées de ces articles .

(Mon PC est Windows 10 TH2, Intel HD4600 avec port HDMI, moniteur Changhong 4k)

Voici la procédure.

  1. Supprimez toutes les entrées de registre supplémentaires sous ... GraphicDrivers \ Configuration et GraphicDrivers \ Connectivity, en ne laissant que l'entrée correspondant à mon moniteur (MST00301 ...)

  2. Avant de mettre le moniteur en veille, tapez simplement "WIN" + "D" combo pour réduire toutes les fenêtres du bureau.

  3. Après avoir allumé le moniteur, tapez "WIN" + "D" à nouveau pour restaurer toutes les fenêtres.


1
Je pense que Win + D n'est pas nécessaire. Après avoir supprimé toutes les entrées et redémarré le PC, le moniteur externe est ajouté à l'enregistrement. Après cela, il semble fonctionner comme prévu. Peut-être que Windows a été confondu avec de nombreuses configurations différentes. Dans mon cas, j'ai eu 12 entrées et maintenant il n'y en a que 2: maxrev.de/…
mgutt

Cela a fonctionné pour moi, mais seulement après avoir corrigé la nouvelle clé SIMULATED_ .... Après le redémarrage, j'ai eu deux nouvelles entrées sous Configuration et connectivité. L'entrée SIMULATED_ 00 contenait 1024, 768 et 4096 pour les valeurs cx, cy et stride, qui sont incorrectes. J'ai copié uniquement ces valeurs de l'autre clé, ce qui semblait être correct pour mon moniteur, puis j'ai redémarré. J'ai un seul moniteur 40 "4K, un Wasabi Mango UHD400 et le problème est maintenant résolu.
pixelgrease

Pour moi, l'astuce Win + D fonctionne, même sans modifier le registre, ce qui n'a pas fonctionné. Notez qu'il n'est pas nécessaire de minimiser le bureau: les icônes du bureau situées en dehors de la zone 1024x768 ne seront pas déplacées après la mise hors tension puis la réactivation du moniteur. En outre, les fenêtres agrandies ne souffrent pas du problème de redimensionnement / déplacement.
Roland

4

Toutes les cartes NVidia ne prennent pas en charge la possibilité de simuler l'EDID, et ce n'est pas seulement le mode veille qui cause ce problème. Si un moniteur est éteint ou se déconnecte brièvement, il peut causer des dégâts sur une disposition d'écran soigneusement configurée. Comme aucune des solutions ici ne fonctionnait pour moi, j'ai écrit un utilitaire permettant de restaurer les positions des fenêtres lorsque le nombre de moniteurs change. Il est disponible avec le code source ici .


1
J'ai testé le programme de @GarrGodfrey et cela a fonctionné à merveille.
Kita

2

En règle générale, cela est dû au fait que le pilote graphique ne prend pas correctement en charge les modes de veille et empêche donc la possibilité de détecter un écran connecté lorsque l'ordinateur se met en veille.

Mettez à jour vos pilotes graphiques auprès du fabricant pour résoudre le problème.

Si le problème n'est toujours pas résolu après la mise à jour des pilotes, cela peut être dû à un ID d'affichage inhabituellement signalé (EDID). Vous pouvez généralement forcer la détection d'un moniteur dans le panneau de configuration du pilote graphique.

Toutefois, si cette option n’est pas disponible, vous pouvez utiliser la fenêtre Résolution de Windows pour détecter les périphériques lorsque le moniteur est déconnecté, puis sélectionner l’affichage qui affichera «Un autre affichage non connecté», puis sous Affichage multiple, vous pouvez choisir «Essayer de connect anyway ”qui transmettra un signal au moniteur via le type de port que vous avez sélectionné (le signal ne sera pas interactif), puis connectez l'écran qui doit interpréter correctement les signaux qui lui sont envoyés.

La résolution forcée annulera la détection de l'écran et devrait persister pendant le sommeil.


2

Même problème ici avec Windows 8.1 et Macbook Air 2013 (Intel HD Graphics 5000). J'essaie tout. Enfin, je suis allé à Intel pour mettre à jour les derniers pilotes pour ma carte graphique et le problème persiste. Ensuite, je suis allé à la propriété graphics. Mon deuxième écran étant allumé, dans l'affichage multiple, j'ai choisi 'Déconnecter cet écran', puis après le deuxième affichage déconnecté, j'ai choisi d'étendre mon bureau et le problème disparaît. J'espère que cela fonctionne pour toi.


J'ai aussi un Macbook Air 2013 avec les derniers pilotes et cela n'a pas résolu mon problème. Avez-vous des idées comment puis-je le résoudre?
Andrew

2

Dans mon cas, avec trois écrans 1920x1080 disposés horizontalement, il semble avoir été corrigé en allant à la clé de registre mentionnée dans d’autres réponses ( HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Configuration), en trouvant la clé en commençant par SIMULATED, puis en modifiant toutes les valeurs de 1920 sous cette clé en 5760 (1920). fois trois, pour les trois moniteurs).

J'imagine que la SIMULATEDclé est utilisée lorsque le PC se met en veille, mais Windows doit tout de même conserver un ordinateur de bureau en train de passer au mode veille / de le quitter, même lorsque le ou les écrans réels peuvent ne pas encore se rapporter.


C'est ce qui m'a le plus aidé. Votre deuxième paragraphe semble en particulier être correct. Bien que mes fenêtres soient toujours déplacées vers d'autres moniteurs lorsque l'écran est éteint.
Andrew

1

Pour moi, le correctif était https://superuser.com/a/908156/238666 . Résumé: Windows ne parvient pas à lire les informations EDID sur le moniteur lors du réveil et, dans le panneau de configuration de Nvidia, vous pouvez enregistrer les informations EDID dans un fichier et configurer le PC pour qu'il puisse les lire à partir de ce fichier, sous la Tâche: Poste de travail, Afficher le système. Topologie, source EDID.

De mon point de vue limité, le problème fondamental pourrait être la carte Nvidia, mais également Windows, DisplayPort ou le moniteur (Lenovo X1 4K)



-1

Qu'on le veuille ou non, mais selon le problème connu de Dell avec un lien spécifique sur les moniteurs 4k: http://www.dell.com/support/Article/us/en/19/SLN295708/EN j'ai dû passer de 59 / 60Hz à 30Hz sur mes 3 x UHD 4K Dell P2415Q sur Intel 4600 connecté au stock d’affichage DP / mDP et cela m’a aidé - comme le dit l’article de la base de connaissances Dell. Cela s'applique aussi aux UP3214Q et P2715Q.

Le problème ne s'est pas manifesté en résolution inférieure QHD Dell U2515H + même vidéo / PC

La suppression des clés de registre et les mises à jour de pilotes ne servaient à rien.

Mise à jour 2018/08: la mise à niveau de la carte graphique vers NVIDIA Quadro P600 n'a pas résolu le problème. Restez donc sur 30Hz.


1
Urgh, 30Hz est horrible à utiliser, donc stuttery.
Simon East

@SimonEast, cela fait un an que j'ai posté cette réponse et j'utilise ces 4K-s en 30Hz, étant sensible au scintillement des lampes fluorescentes et des LED, et préférant l'éclairage halogène DC 12V dans la mesure du possible, je dirais que 30Hz convient, sur ces moniteurs Dell 4K . Les vidéos d'action sur Youtube sont relativement fluides, mais j'utilise principalement ces écrans pour le code, les terminaux, les e-mails et les discussions - ne vous sentez pas fatigué après 10 à 12 heures par jour ..
kuz8
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.