← All posts English version →

DP 螢幕一關,Windows 以為你拔了它——視窗亂跳與遠端斷線的元兇

忙完一天,你伸手把旁邊那顆副螢幕關掉,只留主螢幕繼續看。下一秒,攤在副螢幕上排好的視窗全部擠回主螢幕,圖示重排,版面全亂。你只是關個螢幕,怎麼整個桌面都亂了?

先說結論:這通常不是螢幕壞了,也不是線鬆了。Windows 沒有把這當成「螢幕關暗」,它以為你把整顆螢幕從電腦上拔走了。這個誤會來自 DisplayPort(簡稱 DP)的設計,早在 2006 年的規格就有了。

遠端連回一台螢幕全關的機器會出現黑畫面,也是同一個原因。解法有三個,各自處理不同的狀況:Windows 11 的一個設定、螢幕 OSD 選單(螢幕上用按鈕叫出來的設定畫面)裡的一個開關,以及一顆百元的假負載插頭。

HDMI 說「我關了」,DP 什麼都不說

兩種介面都有一條 hot-plug 偵測線(HPD),也就是告訴電腦「有螢幕接著」的那根訊號。差別在螢幕休眠或關機時的行為:

  • HDMI 螢幕通常保持 HPD 訊號。Windows 知道螢幕還在,只是暗了。桌面的螢幕配置不會改變。
  • DisplayPort 螢幕常常在關機或深度休眠時完全停止送出 HPD 訊號。對 Windows 來說,這跟你拔線沒有差別:螢幕不是關了,是不見了。

螢幕「不見了」,Windows 就做它對拔除螢幕該做的事:重排桌面。視窗會搬到還連著的螢幕上,解析度可能改變;等螢幕醒來,Windows 會重新偵測一次所有螢幕,這就是螢幕回來時畫面黑掉、閃爍的那一段。你的 DP 螢幕會不會這樣,取決於型號和螢幕內建的控制程式(韌體):有的會持續送出 HPD 訊號,很多不會,有些則讓你在 OSD 選單裡選擇。

想像一張兩個人共用的辦公桌。HDMI 螢幕休眠,像同事關掉檯燈但人還坐在位子上,辦公室仍當他那半邊桌子有人,沒有人會去移動他的物品。DisplayPort 螢幕休眠,則像那位同事收拾東西整個走人。辦公室自然把他那半邊桌子收掉、把他的文件挪到你這邊。等他回來,全部又得重新整理一次。那場大搬家,就是你的視窗在螢幕間亂跳。

遠端版的同一個問題

一台只用 DP 接螢幕的桌機,如果螢幕全部關掉,電腦會判斷自己沒有接任何顯示器。擷取實體畫面來串流的工具(例如 Parsec、Moonlight/Sunshine、部分 AnyDesk 模式)會突然沒有畫面可擷取,或改為擷取一塊迷你的虛擬面板。(傳統的遠端桌面 RDP 不受影響,因為它自己會建立虛擬螢幕。)所以玩遠端遊戲的人,常會用 HDMI 假負載(dummy plug)。它是一顆百元的電阻插頭,假裝自己是螢幕,讓系統一直認為「接著一顆顯示器」。

攝影師只能拍「有布景、有打燈」的舞台,把布景拆了、燈關了,就沒有畫面可拍。遠端串流工具就是那位攝影師,只能把「存在的畫面」拍給你看。假負載就像一塊不會撤掉的小紙板舞台,就算真正的螢幕全暗了,台上還是留著一個可以拍的場景。

解法工具箱

  • Windows 11 的視窗位置記憶。設定 → 系統 → 顯示器 → 多部顯示器 → 開啟「根據監視器連線記住視窗位置」。螢幕回來時,視窗會回到原本的位置。這個設定不會阻止螢幕被視為斷線,但能把視窗放回原位。
  • 在螢幕的 OSD 選單裡找「DP 深度睡眠」。有些 Dell、LG、BenQ 型號有這個開關(有時叫 DP 省電)。把深度睡眠關掉,螢幕休眠時會持續送出 HPD 訊號,表現得跟 HDMI 螢幕一樣。代價是待機多耗一兩瓦。
  • 經常遠端連線的人:在沒用到的 HDMI 孔插一顆假負載,或改用 RDP,不用擷取畫面的工具。長期不接螢幕運作的機器,假負載是比較穩的選擇。

PowerDoze 在這件事裡的位置

PowerDoze 的電源模式可以設定多久沒動作後關閉螢幕,用的是 Windows 標準的「關閉顯示器」,在行為正常的螢幕上能恢復原狀。但如果你的 DP 螢幕一休眠就停止送出 HPD 訊號,視窗就可能被搬動。不論是 Windows 自己的自動關閉螢幕、PowerDoze 的自動關閉螢幕,還是你按螢幕的電源鍵,只要螢幕關閉,都會這樣。PowerDoze 改變不了螢幕韌體處理 HPD 訊號的方式。我們能做的,是告訴你解法:開啟 Windows 11 的視窗位置記憶設定,並在 OSD 選單裡調整,多螢幕 DP 配置多半就能恢復正常。(睡眠設定的完整說明與各種特殊狀況,見 Windows 睡眠設定完整指南。)

短版結論

對 Windows 來說,DP 螢幕關閉就像螢幕被拔掉,這是 DisplayPort 的運作方式。視窗位置記憶處理事後的視窗位置,OSD 的深度睡眠開關處理根本原因,假負載解決遠端連線的問題。把視窗位置記憶、OSD 的深度睡眠開關或假負載設定一次,通常就能改善這個問題。

從 Microsoft Store 取得 PowerDoze從 Microsoft Store 取得 PowerDoze

Nisonxi

我是 Nisonxi,PowerDoze 的開發者。當初純粹因為我自己受夠了 Windows 桌機整天全速發呆吃電、卻找不到一個能「看懂情況、自動切換」的工具,乾脆自己做。這個部落格就是我一路上的筆記。

關於作者與 PowerDoze →