web-dev-qa-db-fra.com

Comment arrêter le redimensionnement des fenêtres lorsque le canal d’affichage du moniteur est désactivé / commuté sur une source différente

J'ai un nouvel adaptateur 6870 AMD Radeon avec ses pilotes réglés sur une résolution 1080p 60Hz connectée à un téléviseur haut de gamme HDMI de 47 "2008 de 47".

Toutefois, lorsque le téléviseur passe sur une autre entrée HDMI (lorsque je reviens dans Windows), Windows décide de redimensionner toutes les applications ouvertes à une résolution inférieure, y compris certaines des fenêtres contextuelles masquées. Quand il les redimensionne - il ne fait que coller les fenêtres contextuelles au milieu de l'écran et toutes les fenêtres redimensionnées des applications ouvertes situées dans le coin supérieur gauche - toutes empilées les unes sur les autres et redimensionnées à la résolution inférieure.

Les éléments qui semblent convenir après le retour sont les icônes sur le bureau, la barre des tâches et la barre latérale.

Tout le monde sait 1) comment cela se produit 2) pourquoi cela se produit-il 3) comment l’empêcher de redimensionner les applications et certaines des fenêtres pop-out ancrées (elles ne sont pas vraiment redimensionnées à leur retour; elles sont simplement bloquées au milieu de l’écran approximativement où ils se trouveraient si la barre latérale droite ou inférieure devait être si l’écran était redimensionné à cette résolution plus basse).

Mon hypothèse est que, en cas de perte du signal HDMI - quelque chose (pilote ou Windows lui-même) indique à Windows que la résolution est sans signal (en remarquant que les signaux HDMI et les poignées de main sont bidirectionnels sur les périphériques HDMI. le signal ou le téléviseur est commuté sur un autre périphérique - la carte graphique doit alors comprendre cela et informer Windows ou le calculer et créer de manière aléatoire la modification de la taille de l'écran).

Toute aide est la plus appréciée. J'ai demandé à AMD/ATI - mais ils ont dit qu'ils ne savaient pas pourquoi ni comment cela se passait. J'espérais que c'est peut-être l'endroit où les super-utilisateurs se rendent vraiment - ceux qui développent des pilotes de cartes graphiques ou qui plongent profondément dans ces zones de Windows. S'il y a de meilleurs sites ou seulement des sites concurrents - veuillez en aviser - sachant que j'ai déjà écrit AMD/ATI.

Réponse/Ajouts 4/7/2011

C'est vraiment agréable d'avoir votre réponse Shinrai. (BTW est-il approprié que les discussions sur ces forums donnent lieu à une discussion?) Pourtant, "un seul problème" - J'utilise un affichage uniquein Dans ce cas, Windows ne déplace pas les fenêtres d’application sur un autre bureau. Windows (ou quelque chose) décide de réduire le bureau actuel et de redimensionner toutes les fenêtres à la taille maximale du bureau. En tant que tel, je serais heureux si Windows ne conservait que la taille actuelle du bureau en cours d’exploitation.

Je sais aussi que cela ne se produit PAS sur les moniteurs connectés avec DVI. Là, j'ai installé un et deux moniteurs et il ne redimensionne pas du tout ces écrans lorsque éteints, peu importe ... ils restent solides - tout est en place - à un point tel que si vous oubliez que l'autre moniteur est éteint - vous aurez du mal à trouver certaines fenêtres sans utiliser l'un des utilitaires de l'application de contrôle.

Donc, si je pouvais même obtenir la gestion HDMI par Windows (ou le pilote d’affichage) (1], qui le fait de toute façon, le pilote d’affichage ou Windows - et 2], d'où provient cette autre taille de résolution (1024x768) - ce n'est pas la plus petite et ce n’est pas le plus important?) comme DVI - La vie serait en or (pour cet aspect quand même).

** trouve d'autres personnes avec le même problème dans ce fil de discussion: http://hardforum.com/showthread.php?t=1507324

40
Heartspeace

J'ai creusé autour de ce problème pendant deux jours et trouvé peu de solutions:

  1. Solution universelle, logiciel PersistentWindows , qui enregistre toutes les positions de la fenêtre et l’affichage des moniteurs. Si la résolution est modifiée et rétablie, les mêmes tailles et positions sont restaurées! Exactement ce que je voulais. La dernière version ne fait que son travail, et se repose silencieusement dans systray. Lien

  2. Pour certains utilisateurs d’ATI, pour d’autres pas, il existe des confirmations indiquant que cela fonctionne. La solution consiste à utiliser le hack de registre avec la clé DMMEnableDDCPolling, pour désactiver la scrutation des connexions de surveillance sous Windows. Le problème, c'est que vous devez redémarrer le système après les modifications. Si vous devez simplement connecter rapidement un écran externe, ce n'est pas pratique. Lien

  3. Heureusement, les propriétaires de cartes NVIDIA. La solution consiste à coder en dur les informations EDID de moniteur sur un fichier de pilotes VGA. Le système pense donc que cela ne change pas. Lien

  4. Solution matérielle pour la connexion HDMI, ils vendent leurs adaptateurs sur le Web et sur eBay. Lien

  5. Un utilitaire supplémentaire Windows Layout Manager pour enregistrer les dispositions et les restaurer à la demande (gestion de différentes dispositions). Beaucoup plus complexe et plus puissant, mais peut être excessif pour l'utilisateur à domicile. Lien

Je reste avec # 1 pendant un certain temps (déjà depuis 2015 :)), et si trouverai plus, alors partagerai.

23
Arunas Bartisius

J'ai eu ce problème avec ma Radeon R9, tout ce que je faisais était de désactiver le sculling du GPU chez AMD Catalyst.

Mais pour quelque raison que ce soit, vous devez d’abord sauvegarder votre base de registre! Ensuite, ouvrez votre registre Windows et allez à:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Configuration

Seulement sous les touches "SIMULÉES", modifiez les décimales de la touche en:

PrimSurfSize.cx = 1920
PrimSurfSize.cy = 1080

Sous "00":

ActiveSize.cx = 1920
ActiveSize.cy = 1080

Changez quelle que soit la résolution que vous utilisez. Cela empêchera votre fenêtre de se rétrécir ou de se déplacer d’un côté à l’autre lorsque vous éteignez votre moniteur.

9
Nomura

Votre intuition est correcte; le moniteur est essentiellement en train de couper la poignée de main sur ce canal HDMI lorsque vous changez d’entrée. Windows 7 voit ceci comme "Il n'y a plus de moniteur connecté ici", à quel point il désactive cette sortie. Depuis que cet écran n'existe plus, tout ce qui y était doit aller QUELQUE PART, de sorte qu'il mélange tout sur vos écrans restants, et ce n'est pas gracieux. Lorsque l'affichage réapparaîtra, Windows 7 se souviendra de la manière dont vous aviez arrangé les choses, mais il ne va pas remuer vos fenêtres (vous avez peut-être fermé, ouvert ou déplacé de toute autre manière!).

Vous ne pouvez rien faire avec les pilotes d’affichage pour résoudre ce problème; c’est le comportement du système d’exploitation et bien que cela soit gênant pour votre situation, cela a du sens. (L'alternative consiste à afficher sur des moniteurs des éléments inexistants, ce que XP a parfois fait et laissez-moi vous dire que c'était un cauchemar.) Il est possible qu'un logiciel tiers puisse empêcher cela de se produire. , mais je n’en connais pas de façon désinvolte et j’imagine que vous courriez le risque de causer d’autres problèmes. (Si quelqu'un peut en poster, je serai ravi de faire remonter ces réponses.)

3
Shinrai

Aucun matériel supplémentaire requis

  1. Installez TeamViewer ou le bureau à distance de Chrome sur l'ordinateur présentant le problème, et activer les connexions à distance.
  2. Éteignez le téléviseur/moniteur.
  3. La résolution change d'elle-même .
  4. Connectez-vous à l'ordinateur à distance à l'aide du logiciel de l'étape 1. Comme indiqué dans la question, la résolution a été modifiée.
  5. Augmentez la résolution de retour à la normale (comme lorsque le téléviseur/moniteur est allumé), en utilisant votre connexion à distance.
  6. La résolution ne changera plus lorsque le téléviseur/moniteur sera éteint.
3
brismuth

Après des mois de frustration et enfin de trouver ce fil, j'ai trouvé une solution de contournement qui semble fonctionner pour mon installation à écran unique (Windows 7 x64 + 24 "Insignia TV). Il s'agit d'une généralisation de la solution de David M., avec les avantages suivants: :

  • Adaptateur HDMI/DVI non requis
  • Peut utiliser un câble VGA au lieu d'un câble DVI + adaptateur
  • Conservez la sortie audio HDMI (indispensable pour mon téléviseur, qui prend en charge uniquement l'entrée audio pour son entrée VGA analogique floue)

Cependant, une entrée VGA (PC) libre sur le téléviseur est nécessaire et deux câbles sont validés pour la configuration:

  1. Connecter un PC à la télévision avec un câble HDMI
  2. Connectez également le PC à la télévision avec un câble VGA
  3. Panneau de configuration> Affichage> Plusieurs écrans> Dupliquer ces écrans

Vous pouvez également utiliser un câble DVI + un adaptateur DVI/HDMI à l'étape 2; David M. soulignait que DVI fonctionnait bien.

Désormais, lorsque je mets en marche ou que je change de source sur mon téléviseur, les fenêtres ne se réduisent pas et ne s'empilent pas en haut à gauche. Je ne sais pas si tout a fonctionné parce que mon téléviseur est si bas de gamme ...

2
ypeels

Votre problème sonne comme une variante de celle décrite ici , qui est également causée par la perte de la liaison HDMI. La même solution matérielle pourrait fonctionner pour vous: placez un mini-commutateur HDMI Apogee 3x1 entre le PC et le téléviseur et le PC pensera qu'il n'est pas déconnecté. Je ne sais pas si un commutateur HDMI fonctionnera ou si le Apogee est recommandé sur le lien ci-dessus.

2
gatkin

Le problème est causé par une "fonctionnalité" gênante de Windows 7/8 pour réorganiser les fenêtres d'application lorsque le moniteur/téléviseur connecté au port HDMI/Display est "désactivé" ou "commuté" sur une entrée différente.

Il existe une solution matérielle si vous utilisez une connexion HDMI. Effectuez une recherche sur eBay pour "monitor detection" et obtenez-en environ 20 $. Cela fonctionne pour moi sur un téléviseur Seiki 39 "4K avec connexion HDMI.

2
free2go

Pas une solution, mais une solution de contournement. J'ai remarqué que si vous réduisez les fenêtres avant la mise hors tension de l'écran et que vous ne les restaurez pas tant que l'affichage n'est pas revenu, les fenêtres ne sont pas réorganisées.

Je profite de ce fait pour fournir une expérience "transparente" pour moi-même, comme je l'ai documenté ici: http://thelamprechts.blogspot.com/2014/09/a-windows-workaround-to- keep-window.html

1
shjibby

En recherchant le même problème, j'ai trouvé ce fil affirmant qu'il pouvait être réparé en fouillant dans le registre. J'ai également trouvé un fil par un type qui prétend que c'est le résultat de l'utilisation de DisplayPort.

J'ai essayé le correctif de registre et cela ne semblait pas fonctionner (bien que je n'ai pas redémarré, si cela fait une différence). De plus, mon périphérique défectueux est connecté à un port d'affichage sur ma carte graphique à partir d'un port DVI de mon moniteur et, malheureusement, je ne peux pas confirmer le deuxième compte car je n'ai pas les adaptateurs appropriés. Mais j'ai pensé que cela pourrait être utile.

Edit: ok, je suis désespéré et je suis sorti pour emprunter un câble pour cette tentative. Le passage d'un câble DVI-I avec un câble adaptateur DVI/DisplayPort à un câble DVI-I/HDMI à un seul câble a résolu ce problème. Pour moi, cela suggère que c’est bien un problème avec DisplayPort, comme l’a suggéré le gars de HardForum, ou que c’est un effet secondaire de l’utilisation d’adaptateurs de câbles. Quoi qu'il en soit, heureux d'en avoir fini.

1
bwerks

Je rencontrais le même problème sur mon téléviseur LG 42 ". Après avoir lu les posts sur le fait de falsifier le signal sous Windows, j'ai pensé à quelque chose. J'avais un adaptateur supplémentaire DVI-HDMI que je n'utilisais plus. dans le port DVI de ma carte vidéo, puis via HDMI dans celui-ci et ne plus avoir le problème du redimensionnement de Windows, etc. C'est donc une solution vraiment simple. Vous pouvez les obtenir à RadioShack ou dans n'importe quel magasin d'électronique. Je suis heureux d’avoir réglé ce problème, espérons que cela fonctionne pour les autres.

1
David M.

J'ai pu arrêter ce changement de résolution en entrant dans le centre de contrôle du catalyseur et en activant l'émulation forcée. Fixé!! Bien sûr, vous avez besoin d’une carte AMD et cette fonctionnalité doit être présente, mais je suppose que NVIDIA devrait également proposer quelque chose comme cela.

0
VmroFan1

Si vous utilisez ATI, vous devrez créer une nouvelle clé dans le registre sous HKEY_LOCAL_MACHINE > System appelée DMMEnableDDCPolling. Définissez la valeur sur 0. La carte vidéo est désactivée pour interroger le système afin de déterminer si un élément est toujours connecté.

Si vous utilisez autre chose qu'ATI, recherchez la clé DMMEnableDDCPolling dans le registre et définissez la valeur sur zéro. REMARQUE: LA CLÉ PEUT EXISTER À PLUS D'UN ENDROIT. D'après ce que j'ai lu, vous devez remplacer la valeur par 0 pour chaque instance de cette clé.

Source .

0
Tyler

J'ai eu un problème similaire depuis la mise à niveau d'une machine Windows 10 vers TH2 en novembre 2016.

En raison des divers effets secondaires liés à un cycle d'alimentation du téléviseur sur mes applications et mon ordinateur de bureau, j'ai finalement réalisé que le fait d'allumer et d'allumer le téléviseur entraînait un changement de résolution et/ou de taille de police/DPI.

Après quelques recherches, j'ai forcé le même DPI pour tous mes affichages, virtuel et physique, en procédant comme suit:

  • Allez dans Control Panel\Appearance and Personalization\Display.
  • Cliquez sur set custom scaling level.
  • Réglez-le sur ce qui fonctionne pour vous. 100% fonctionnait bien pour moi.

Ici est un lien sur la façon de régler la mise à l'échelle.

0
Slion

C'est une très vieille question, mais j'ai en fait un correctif très simple pour les utilisateurs de Windows 10 (cela peut fonctionner pour 7 et 8, pas sûr).

Je voulais spécifiquement que mes fenêtres se souviennent de leurs positions et utilisais un KVM pour passer d'un ordinateur à un autre, mais chaque fois que je revenais, toutes les fenêtres revenaient au moniteur principal.

J'ai constaté que si vous cliquez sur le petit éclat "Réduire toutes les fenêtres" en bas à droite de la barre des tâches, avant de basculer, lorsque vous revenez, vous pouvez simplement cliquer à nouveau dessus pour que les fenêtres reprennent leur position précédente.

0
Ecksters

J'ai eu ce problème avec un ordinateur qui passe à l'économiseur d'écran. Quand il a repris, mes fenêtres ont été redimensionnées. Je l'ai résolu en passant à un autre économiseur d'écran, puis en revenant à l'économiseur d'écran "photos diaporama".

0
Austin M.

Si quelqu'un d'autre le rencontre, je vais simplement ajouter mon "correctif". J'ai découvert que Windows 8.1 redimensionnait toutes mes fenêtres/programmes et autres, lorsque je les mettais sur mon téléviseur. (Connecté à mon ordinateur portable, via un port HDMI.) Je devais accéder au menu de résolution d'écran, choisissez "Rendre le texte et d'autres éléments plus grands ou plus petits", choisissez "Choisissez moi une taille pour tous les moniteurs", puis laissez-les rester à l'écran. 100% TERMINÉ!

0
Stefan Ejegod