Несколько мониторов: Windows перемещается (иногда) после пробуждения мониторов

9

Замечания:

Я прочитал несколько решений этой проблемы, каждый из которых, кажется, связан с поиском ключа в реестре HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Configuration, с префиксом SIMULATED_. У меня там нет такого ключа. У меня есть только два ключа: один представляет два из трех моих мониторов, а другой - все три.

Я попытался удалить все в HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Configurationи в HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Connectivityи перезагрузил. Это сбросило мои настройки монитора, и мне пришлось соответствующим образом переставить рабочие столы ... но проблема все еще возникает время от времени.

Изменить 1:

Я только что заметил, что когда я просыпался от мониторов, мой центральный монитор был настроен на разрешение 1920x1080, а боковые мониторы были 2560x1440. Так или иначе, разрешение меняется случайным образом, и (в большинстве случаев) оно возвращается обратно, что вызывает сдвиг в окнах.

Несколько раз я заметил, что все значки на рабочем столе были перенесены на другой экран (я держу их в центре), несмотря на то, что центральный экран является «основным» в Windows. Так что тут вроде бы два монитора просто случайно поменялись местами в настройках.

Вот скриншот моих соответствующих настроек реестра. Я выбрал один из ключей реестра, но другие два, похоже, точно такие же.

введите описание изображения здесь


У меня есть три монитора ASUS PB278Q (27 дюймов 2560x1440), и у меня были проблемы с тех пор, как я обновил Windows 8.1 до Windows 10 в прошлом году. Я часто прикрепляю два конкретных окна рядом друг с другом на одном мониторе, и когда я возвращаюсь к своему компьютеру через длительный период времени, я обнаруживаю, что иногда (но не всегда) окна больше не располагаются правильно. Они находятся на одном мониторе, но как будто разрешение изменилось за одну ночь, и теперь окна не там, где они были.

На одном из моих других мониторов я обнаружил, что иногда (но, опять же, не всегда) окна полностью перемещаются к моему центральному монитору.

Мой самый левый монитор подключен через Dual Link DVI, а средний (основной) и правый мониторы подключены через DisplayPort.

DDC / CI включен для всех трех мониторов.

У меня есть NVidia GTX 960 с довольно свежими (если не новыми) драйверами.

Mirrana
источник
2
Я имел это когда-нибудь. Это разные модели? Я убежден, что это происходит потому, что мониторам требуется разное время для запуска после сна
Путешественник Geek
2
Проблема может быть из-за использования разных типов портов. У вас есть эта проблема в основном с DP? Энергосбережение DP отключает монитор, затем Windows «обнаруживает» его при пробуждении. Посмотрите на мои ответы: answer1 и answer2 . Попробуйте также в Панели управления / Параметры электропитания / Изменить параметры плана / Изменить дополнительные / Параметры электропитания / Настройки USB, чтобы отключить настройку выборочной приостановки USB. Убедитесь, что у вас установлена ​​последняя версия Nvidia с GeForce Experience (требуется регистрация).
Harrymc

Ответы:

3

Согласно вашему описанию, похоже, что ваша проблема в основном с портами DisplayPort. Порты DisplayPort в Windows реализованы не так, как порты VGA и DVI, поскольку при переходе в состояние сна Windows обрабатывает их так, как если бы они были удалены, даже смещая отображаемые окна на другие мониторы. Когда монитор просыпается, Windows воспринимает его как обнаруженное новое устройство. Такое поведение может быть причиной ваших проблем.

Одним из решений может быть отключение монитора от сна:

  • Открыть Панель управления / Параметры электропитания
  • Для вашего плана питания нажмите на Change plan settings
  • Измените Turn off displayраскрывающийся список наNever
  • Нажмите на Save changes

Я также видел сообщения о том, что это помогает сбросить USB Selective suspend в Панели управления / Параметры электропитания / Изменить параметры плана / Изменить дополнительные / Параметры питания / Настройки USB. Эти отчеты являются подозрительными, поскольку монитор не является устройством USB, но, возможно, стоит попробовать.

Другое решение, которое не позволит Windows проверять постоянное присутствие мониторов DisplayPort и, следовательно, не обнаруживать, что они находятся в спящем режиме, заключается в сохранении свойств EDID мониторов DisplayPort.

Для этого решения см. Эти мои ответы:

harrymc
источник
Раньше у меня был Radeon R9 290, и эта проблема никогда не возникала. В то время я использовал одну и ту же комбинацию портов: один DVI и два DP. В то время я мог оставлять окна открытыми на любом экране и возвращаться через какое-то время, и окна все равно были бы именно там, где я их оставил. Не было бы произвольного изменения размера моей области экрана
Миррана
1
Интересно. Я вижу, что все мои связанные ответы относятся к NVIDIA GeForce GTX, как и ваши. Так что проблема на самом деле может быть между NVIDIA и Windows. Тем не менее, R9 имеет два двухканальных порта DVI, один HDMI, но только один DisplayPort, поэтому проблема могла быть менее заметной.
harrymc
Вы можете поставить свой основной монитор на DVI - это должно минимизировать проблему.
Harrymc
2

Честно говоря, все, что я могу сказать, это то, что сработало для меня.

Мне кажется, что вы ищете решение, и это хорошее реальное решение. Вам действительно не нужно возиться в реестре, чтобы получить то, чего вы хотите достичь.

Это инструмент: http://dualmonitortool.sourceforge.net

и вот скриншот инструмента моих текущих настроек. Вы можете видеть, что у меня установлено несколько разрешений и много мониторов. Ничего не меняется для меня, я просто настроил один раз и никаких проблем снова.

введите описание изображения здесь

Недавно я даже отключил автоматический запуск с Windows, и проблема не вернулась. Мне кажется, что инструмент каким-то образом вносит те изменения в регистр, которые вы ищете.

DeerSpotter
источник
Я только что проверил инструмент, и он, похоже, не предоставляет какого-либо механизма для изменения чего-либо, кроме основного монитора или яркости. Что это должно сделать?
Миррана
@ agent154 позволяет настроить первичные мониторы и запоминает эту информацию.
DeerSpotter