題 從睡眠中醒來後如何阻止窗口重新定位?


當我的多顯示器系統不使用時,我將其置於睡眠狀態。喚醒後,所有窗口都重新定位到不同的屏幕。我能想到的最接近的模式是主屏幕上的窗口切換到第二個屏幕。看起來它在進入睡眠狀態之前斷開了主屏幕,而主屏幕又將所有窗口切換到第二或第三屏幕。

編輯:這是我正在使用的視頻卡 - > SAPPHIRE FleX 100322FLEX Radeon HD 6450


99
2017-07-25 15:15


起源


您需要指定您正在使用的圖形適配器,這可能是他們的錯。 - Shinrai
我找到了最終的解決方案:做斯蒂芬,(ST99),說 這裡 在第九個答案 - Soldeplata Saketos
同樣的問題是關於kubuntu,有人有解決方案嗎? - Waqleh


答案:


問題很可能出在圖形驅動程序上。每當從Windows中的多監視器設置斷開單個監視器時,Windows將嘗試將所有內容從該屏幕移動到剩餘的屏幕上。通常,暫停/休眠/關閉計算機時不會發生這種情況。因此,可能是因為圖形驅動程序執行以下操作之一:

  • 當您將計算機置於睡眠狀態時“斷開”監視器,因此當Windows喚醒時,它必須重新確定將所有內容放在何處。
  • 每次使計算機退出睡眠狀態時,都會以不同的順序識別監視器,從而強制Windows重新排列應用程序窗口。

訪問芯片組製造商的網站,檢查您的圖形驅動程序是否有更新。


30
2017-07-25 18:55



僅供參考:我的驅動程序來自英特爾,因此我推測它們已經與Windows更新一起簽名和分發,但事實並非如此。 - Leo
類似的問題在這裡我的戴爾筆記本電腦配有nVidia圖形適配器。從nVidia而不是Dell驅動程序安裝較新的驅動程序修復了該問題。 - Chris Jones
類似問題在這裡。最新的OEM Intel HD 4600驅動程序。可能我應該檢查PC供應商(HP)的驅動程序? - Falco Alexander
與7i5bnk NUC相同的問題 - 獲得最新的英特爾驅動程序 - niico


這是一個老問題,但是如果有人帶著同樣的問題來到這裡,我建議嘗試在這裡發布的解決方案:

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

我在DisplayPort上運行帶有兩個2560x1440顯示器的Windows 8.1。從睡眠中醒來時,我的所有窗戶都被推到一個顯示器上,其中一些已經調整大小。這為我解決了這個問題;現在我所有的窗口位置和大小都保留了下來。以下是相關鏈接內容:

我找到了解決辦法。使用Sysinternals ProcessMonitor我找到了   Windows正在訪問以下註冊表​​路徑;   HKEY_LOCAL_MACHINE \系統\ CurrentControlSet \控制\ GraphicsDrivers \配置

我的系統有三個條目;   DELF003YY7707BR0MUL_30_07D7_6A ^ 9A3774EB79DEE3E3E38496CC7DF4D936   QHD32000001_31_07D6_D5 ^ 63E1ABDD175E7871DCAEB710418A0F75   SIMULATED_8086_2A42_00000000_00020000_1010100 ^ CDE365D1B3F0942F0CF38BFB8E127AB4

每個下面都有一棵名為“00”的樹,其中兩把鑰匙都是
  PrimSurfSize.cx
  PrimSurfSize.cy

在“00”下是另一個分支也稱為“00”的兩個鍵是;
  ActiveSize.cx
ActiveSize.cy

前兩個配置(即DELF00 ...&QHD3 ......)上面的鍵   是1440x900,所以他們沒有參與。

第三個(SIMULATED ...)設置為1024x768。

我將這些更改為1600x900,問題解決了。

此外,我將分辨率(通過控制面板)更改為1920x1080,即   返回移動/調整大小問題,但右下角設置為   1600x900,即SIMULATED ...設置。

所以由於某種原因,其中一個配置沒有正確設置。

我不知道為什麼有三個配置,我只使用過一個   監控。


40
2017-12-06 15:01



這種方式適合我。我有一個具有175%縮放率的4K監視器,並且這些設置使得它的行為就好像模擬監視器沒有縮放(窗口大小調整為屏幕大小的最大值100/175)。 - Ouroborus
只需刪除整個HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ GraphicsDrivers \ Configuration,它也可以正常工作,速度更快。 - FarO
我的筆記本電腦沒有SIMULATED鍵。我是Windows 10的新手,我想知道它是否被刪除了?如果沒有,有沒有辦法讓它進入我的系統? - rythos42
刪除該條目對我不起作用(Windows 10)。一旦我關閉顯示器,就會再次創建“SIMULATED”條目。原始解決方案有效(即,使用實際分辨率修改1024,768的每次出現)。 - FractalSpace
這是我在Microsoft Answers for Windows 10上找到的另一篇相關文章。 answers.microsoft.com/en-us/windows/forum/windows_10-hardware/... - Chiramisu


如果您的計算機具有Intel HD Graphics,則必須從Intel圖形控制面板設置擴展顯示選項(和分辨率設置)。如果從Windows顯示設置執行此操作,它將在從睡眠模式喚醒後重置。

這是一個截圖。

enter image description here


10
2018-01-12 15:18



它對我沒有任何改變。或者在使用英特爾軟件之前,我是否必須完全擦除Windows設置? - Christophe Drevet-Droguet
重置設置然後從英特爾圖形應用後,它對我有用。 - Tidhar Klein Orbach
我只是切換了一些選項,然後將其還原。它啟用了“apply”bouton並從驅動程序中保存了配置。手動鎖定後效果很好。我會看到很長一段時間後會發生什麼 - Aldian
這在Windows 10上對我有用,並且保存了我的理智。 - shoelzer


我想我通過結合來自的想法找到了解決這個問題的方法 這些帖子

(我的PC是Windows 10 TH2,帶HDMI端口的Intel HD4600,長虹4k顯示器)

這是程序。

  1. 刪除... GraphicDrivers \ Configuration和GraphicDrivers \ Connectivity下的所有額外註冊表項,只留下與我的顯示器對應的條目(MST00301 ...)

  2. 在將監視器置於睡眠狀態之前,只需鍵入“WIN”+“D”組合鍵即可最小化所有桌面窗口。

  3. 打開顯示器後,再次鍵入“WIN”+“D”以恢復所有窗口。


8
2017-11-22 06:14



我認為不需要Win + D.刪除所有條目並重新啟動電腦後,外部監視器將再次添加到註冊中。之後它似乎按預期工作。也許windows與許多不同的配置混淆了。在我的情況下,我有12個條目,現在只有2個: maxrev.de/... - mgutt
這對我有用,但只有在糾正了新的SIMULATED_ ...鍵之後。重啟後,我在配置和連接下有兩個新條目。對於cx,cy和stride值,SIMULATED_ 00條目有1024,768和4096,這是錯誤的。我從另一個鍵中復制了那些值,這對我的顯示器來說似乎是正確的,然後重新啟動。我有一台40“4K顯示器,一台Wasabi Mango UHD400,問題現已解決。 - pixelgrease
對我來說,即使沒有改變註冊表,Win + D技巧也能正常工作。請注意,桌面不必最小化:關閉並再次打開顯示器後,不會移動1024x768框外的桌面圖標。此外,最大化的窗口不會遇到調整大小/移動問題。 - Roland


與Windows 8.1和Macbook Air 2013(英特爾高清顯卡5000)相同的問題。我嘗試了一切。最後我去了英特爾更新了我的顯卡的最新驅動程序,問題仍在繼續。然後我去了圖形屬性,我的第二個顯示器在多顯示器中打開我選擇'斷開此顯示器',然後在第二個顯示器斷開後我選擇擴展我的桌面並解決問題。希望這對你有用。


2
2018-04-18 12:34



我還有一個帶有最新驅動程序的Macbook Air 2013,但這並沒有解決我的問題。你有什麼想法我該如何解決? - arormoser


通常這是由於圖形驅動程序不能正確支持睡眠模式,因此在計算機進入睡眠狀態時無法檢測連接的顯示器。

從製造商更新您的圖形驅動程序以解決此問題。

如果在更新驅動程序後問題仍未解決,則可能是由於異常報告的顯示ID(EDID)。您通常可以強制在圖形驅動程序控制面板中檢測監視器。

但是,如果此選項不可用,您可以使用Windows分辨率窗口在顯示器斷開連接時檢測設備,然後選擇將顯示“另一個顯示未連接”的顯示,然後在多個顯示器下,您可以下拉並選擇“嘗試到無論如何連接“將通過您選擇的端口類型向監視器廣播信號(信號不是交互式的),然後連接顯示器,該顯示器應正確解釋發送給它的信號。

強制解決方案將覆蓋屏幕的檢測,並應在睡眠中持續存在。


1
2017-07-25 16:37





在我的情況下,水平排列的三個1920x1080監視器似乎已通過轉到其他答案中提到的註冊表項來修復(HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Configuration),找到鑰匙開頭 SIMULATED然後將該密鑰下的所有1920的值更改為5760(三次監視器為1920次,三次監視器)。

我在猜測 SIMULATED 密鑰用於PC進入休眠狀態,但Windows仍然需要在進入/從休眠狀態恢復的過程中維護桌面,即使實際的監視器可能尚未報告。


1
2018-05-24 17:55



這對我最有幫助。你的第二段似乎是正確的。雖然當屏幕關閉時我仍然有窗戶移動到其他顯示器。 - Andrew


對我來說,修復是 https://superuser.com/a/908156/238666 。簡介:Windows無法在喚醒時從監視器讀取EDID信息,在Nvidia控制面板中,您可以將EDID信息保存到文件中,並將PC設置為從該文件中讀取,在任務:工作站,查看系統下拓撲,EDID來源。

在我有限的觀點中,根本問題可能是Nvidia卡,還有Windows,DisplayPort或顯示器(聯想X1 4K)


0
2018-02-22 15:26