Я не буду описывать саму проблему — она отражена в названии статьи. И эта тема уже обсуждалась, вот онa.

Однако, с тех пор прошло уже 6 лет, а воз и ныне там. Как и отмечалось, стопроцентного решения проблемы действительно не существует: кому‑то помогает обновление драйверов, кто‑то и вовсе отключает из‑за этого спящий режим, а у кого‑то хватает смелости физически перерубить сигнал HotPlugDetect (а его, судя по написанному, нужно не просто перерубить, а еще и подтянуть к логической единице). Предлагаются и более радикальные методы — от навесных адаптеров, блокирующих вышеуказанных сигнал, до встраивания в монитор микроконтроллера, позволяющего отключать и включать его «с умом».

Лично я бы на внесение изменений в монитор не решился, ибо прекрасно знаю, что после моих «изменений» он работать уже точно не будет ?.

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

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

И вот что мне удалось обнаружить, играясь со входом‑выходом из спящего режима.

  1. Windows начинает перебрасывать окна далеко не сразу по выходе из спящего режима. Сначала он пытается обнаружить подключенные мониторы. И лишь примерно через через 10 секунд, если какой‑то монитор не обнаружен, он сначала кидает все окна на опознанный монитор, а потом, когда обнаруживает второй, перебрасывает всё на него.

  2. При загрузке системы сначала Windows активирует DisplayPort, потом HDMI, потом VGA. Причем задержка между активацией DisplayPort и остальных весьма существенная.

  3. Пункты 1–2 дают ответ на вопрос, почему проблема проявляет себя далеко не у всех. Дело в том, что разные мониторы обладают разной «тормознутостью». И вы с ней можете столкнуться, если более «шустрый» (по времени включения) монитор подключен к DisplayPort.

Чтобы убедиться в этом, введите искусственно компьютер в спящий режим (из меню Пуск или установив время входа через 1 минуту бездействия) и, как только он уснет, попробуйте физически отключить монитор, подключенный к DisplayPort. Иногда для этого достаточно просто нажать кнопку выключения, но можно и выдернуть кабель питания для верности. Выводя компьютер из спящего режима, пробуйте включать этот монитор с определенной задержкой. В моей конфигурации приемлемым временем оказались 6–10 секунд, и перефутболивание окон закончилось. Бывало даже, что он вроде как и сбросит окна на один монитор, но тут же восстанавливает все как было до засыпания, в той же последовательности и с теми же установками масштаба и выделенных фрагментов графических окон.

В моем случае решение проблемы оказалось простым — достаточно было поменять подключение мониторов местами: более тормозной 4K подключил к DisplayPort, а более шустрый (тоже 4K) к HDMI. Понимаю, что кому‑то это не поможет. Но поскольку ждать от виндоуса, что они‑таки сделают время обнаружения мониторов настраеваемым, или, еще лучше, встроят в реестр запоминание времени обнаружения мониторов в конкретной данной конфигурации при прежнем выходе из спящего режима не приходится, ищите решение исходя из конкретного вашего случая и написанного здесь.

Приемлемым вариантом может оказаться даже выключать‑включать DisplayPort монитор перед выходом из сна физически: всё ж лучше, чем после этого каждый раз перетаскивать обратно все окна, да еще и меняя их размеры, если мониторы у вас разного разрешения или один из них расположен вертикально. Если компьютер рабочий, то может удастся и попросить администратора поэкспериментировать с заменой мониторов HDMI и Display Port. Если домашний, то можно и вовсе спаять релейную схему подачи питания на монитор с задержкой, купив предварительно переходник питания SATA-2SATA и воспользовавшись тем, что питание дисков в спящем режиме отключается. Или взять, скажем, питание с одного из разъемов вентиляторов на материнке, которое тоже будет отключаться на время сна. И все же вначале поэкспериментируйте с включением мониторов вручную.

Комментарии (20)


  1. Ascard
    16.01.2025 08:55

    У тебя хотя бы спящий режим работает, завидую.
    А я уже который год не могу найти решения проблему о том что мой системник сам включается, после выключения в любом режиме. Всякие WOL, таймеры, usb и прочие системные настройки перепробованы по третьему кругу. Решения так и нет, приходится каждый раз его за 2 секунды промежутка между включением и выключением сзади физической кнопкой тушить.


    1. Wolf4D
      16.01.2025 08:55

      Биос обновляли? У меня такая проблема поправилась после апдейта. А до того делал также - гибернация, подождать две секунды, включение, нажать на power (не сзади, а на лицевой панели). После этого ПК уже находится в режиме обычного Power Off, из которого его никакие прерывания не выводят.


      1. Ascard
        16.01.2025 08:55

        Обновлял :(


    1. NikolayO Автор
      16.01.2025 08:55

      У меня была аналогичная проблема, когда впервые поставил Windows 10. Только системник включался не сам, а по любому чиху (напр. щелчку мышью). Помог совет типа этого: https://answers.microsoft.com/ru-ru/windows/forum/all/включени/6aeea041-1dae-4827-b165-6883bc01726b

      т.е. нужно поискать, где закопана функция "Быстрый запуск"


      1. Ascard
        16.01.2025 08:55

        Вроде натыкался на это, но ещё раз проверю как дома буду, хоть у меня и 11 винда, спасибо.


        1. NikolayO Автор
          16.01.2025 08:55

          Проверьте на всякий случай. Мне реально помогло. Удачи!


    1. NZakh61
      16.01.2025 08:55

      Стойки материнки не могут укоротить чего-то на корпус?


  1. CitizenOfDreams
    16.01.2025 08:55

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

    Несколько лет я обходил эту проблему симулятором дисплея на свободном порту HDMI, а потом оно все как-то само устаканилось. То ли в Винде что-то исправили, то ли в драйверах видеокарточки, но теперь все работает без костылей.


  1. CitizenOfDreams
    16.01.2025 08:55

    P. S. Или может я все-таки у кабеля пин HotPlug заизолировал? Уже не помню...


  1. vindy
    16.01.2025 08:55

    У меня обратная проблема - в офисе поработал на ноуте с вторым hdmi моником, приходишь домой - и все окна, которые были на втором ныне отсутствующем экране, где-то там и остаются, вместо того, чтобы перекинуться на единственный экран ноута. Приходится вслепую их клавиатурой с зажатым шифтом перетягивать в зону видимости. Ужасно бесит.


    1. NikolayO Автор
      16.01.2025 08:55

      Конечно, неисповедимы пути майкрософта... Можно, конечно, попробовать разрубить ненужный HDMI кабель или раздобыть какой-то вставляющийся в порт адаптер и попробовать вручную замкнуть сигнал HotPlugDetect на ноль. А если не поможет, то на единицу. Сгореть по идее ничего не должно, но и поручиться за успех невозможно. Может тогда винда решит, что второй монитор выключен.

      Вот на всякий случай распиновка:

      http://spektr-s.ru/content/распиновка-hdmi


    1. igorm01
      16.01.2025 08:55

      Такая же проблема, только периодечески при смене разрешения на основном монитре (например запуск игры с DLDSR) все окна с него улетают на второй монитор, который подключен, но всегда выключен кнопкой. Периодически приходится включать и возвращать какие-то особо упертые и не реагирующие на win+стрелка приложения


      1. NikolayO Автор
        16.01.2025 08:55

        Получается, что он у вас даже выключенный монитор считает включенным... Тяжелый случай. Т.е. меня не удивляет, что при смене разрешения на какой-то момент может пропадать HotPlugDetect. Но странно, что он при этом присутствует на втором мониторе. Просто на всякий случай попробуйте выдернуть из последнего кабель питания. Вдруг поможет... Хотя в моих экспериментах было достаточно выключить монитор кнопкой.


    1. vchernik
      16.01.2025 08:55

      У меня была такая же проблема. Не помню подробности, но можете попробовать такие действия: щёлкнуть на линейке задач скрытое окно (левой? правой кнопкой?), должен появиться пункт меню "перетащить". После этого контролом (или шифтом?) со стрелкой в нужную сторону перетащить окно на рабочий монитор.


      1. vindy
        16.01.2025 08:55

        Именно так и делаю, но хотелось бы чтобы винда сама как то разруливала это


  1. Heggi
    16.01.2025 08:55

    У меня ситуация была аналогичная, но немного не такая.
    Один монитор подключен по HDMI, другой по DP. Когда монитор DP гасит экран, он тупо пропадает из системы. Лечится это отключением DDC/CI, теперь монитор, когда экран гасит, не пропадает из системы. И окна остаются на своих местах. (У HDMI мониторов такого эффекта я не наблюдал)

    Проблема в том, что далеко не у всех мониторов есть возможность отключить DDC/CI


  1. aik
    16.01.2025 08:55

    Дома у меня как-то само наладилось, основной монитор DP, второй DVI через переходник с HDMI. И DP временами отваливался во сне. По-моему, заменой кабеля вылечилось, перестал экономить и взял что-то за 30-40$, а не за 10$.

    А вот на работе HDMI + DVI и нередко всё улетает на DVI. Но далеко не всегда.


    1. NikolayO Автор
      16.01.2025 08:55

      Обратите внимание, перед тем, как улетает на DVI, эти окна появляются на короткое время на HDMI мониторе?


      1. aik
        16.01.2025 08:55

        Так оно в спящем режиме происходит. Я подозреваю, что там просто монитор отваливается и окна переходят на оставшийся. А потом в какой-то момент монитор возвращается. А вот окна - нет.

        По идее, нужна какая-нибудь софтина, которая будет периодически расположение окон записывать и потом по команде их восстанавливать. А может и автоматом, если доверяете (я обычно автоматам не доверяю).


        1. NikolayO Автор
          16.01.2025 08:55

          Просто ваш случай очень похож на мой. Переброска окон происходит не в спящем режиме, а через некоторое время по выходе из него. Другой вопрос, отображает ли в этот момент что-либо ваш монитор. Лично я подозреваю, что в вашей системе первым включается HDMI, а потом, через какое-то время, DVI. И если при этом DVI монитор входит в режим полноценного отображения информации медленнее первого, то очень возможно, что окна перебрасываются на HDMI, а когда проснется DVI, то уже оттуда все перебрасывается на него. И не исключено, что это может удаться даже пронаблюдать воочию.

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