2026年1月29日

在 Windows 下,如何關閉遠端桌面的硬體繪圖支援?

在 Windows 中,關閉遠端桌面 (RDP) 的硬體繪圖支援主要可以透過 群組原則 (GPO) 或 登錄編輯器 來達成。這通常用於解決遠端連線時出現的畫面閃爍、格線或效能異常問題。






方法一:透過群組原則編輯器 (推薦)
這是最常見且系統化的方式,適用於 Windows 專業版以上版本:按下 Win + R,輸入 gpedit.msc 並按確認。
導航至:電腦設定 > 系統管理範本 > Windows 元件 > 遠端桌面服務 > 遠端桌面工作階段主機 > 遠端工作階段環境。
尋找 「為遠端桌面連線使用 WDDM 圖形顯示驅動程式」 (Use WDDM graphics display driver for Remote Desktop Connections)。
將其設定為 「已停用」 (Disabled)。
重新啟動電腦或在命令提示字元執行 gpupdate /force 以套用變更。
Microsoft Learn +1

方法二:透過登錄編輯器 (Registry)
如果您使用的是家用版 Windows,或偏好直接修改登錄檔:按下 Win + R,輸入 regedit。
移至路徑:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services。
若沒有對應項目,請右鍵新建一個 DWORD (32 位元) 值,命名為 fEnableWddmDriver。
將數值資料設為 0 以停用 WDDM 驅動程式支援。
針對部分應用程式渲染問題,也可嘗試在 HKEY_CURRENT_USER\Software\Microsoft\Avalon.Graphics 下建立 DisableHWAcceleration (DWORD) 並設為 1。
Microsoft Learn +1

方法三:調整遠端桌面用戶端設定
如果是「用戶端」端造成的卡頓,可在連線前調整:開啟 遠端桌面連線 (mstsc) > 顯示選項 > 體驗。
取消勾選 「永續性點陣圖快取」。
在連線軟體設定中尋找並關閉 「若可用則使用硬體加速」 選項。

您目前的遠端連線是否遇到了特定的顯示異常(如畫面格線或閃爍),需要我針對該現象提供進一步的優化建議嗎?

2026年1月23日

遠端 RDP Windows 10 更新畫面刷新率與延遲改善


要在 2026 年的環境下優化 Windows 10 的遠端桌面 (RDP) 畫面刷新率並降低延遲,核心目標是從「軟體渲染」轉向「硬體加速」,並優化傳輸協議。以下是具體實作步驟:


1. 強制啟用硬體 GPU 加速 (最有效)

預設情況下,RDP 使用 CPU 來處理圖像。透過群組原則強制遠端主機使用顯卡進行編碼,可顯著提升刷新率:

在 Windows 10 遠端主機上,按下 Win + R 輸入 gpedit.msc。

導航至:電腦設定 > 系統管理範本 > Windows 元件 > 遠端桌面服務 > 遠端桌面連線工作階段主機 > 遠端工作階段環境。

設定以下項目:

「針對遠端桌面連線使用硬體圖形配接器」:設為 已啟用。

「針對遠端桌面連線啟用 H.264/AVC 硬體編碼」:設為 已啟用。

「優先使用 H.264/AVC 繪圖模式進行遠端桌面連線」:設為 已啟用。

2. 解鎖 RDP 刷新率限制 (FPS)

Windows 10 預設將 RDP 限制在 30 FPS。若要達到 60 FPS 或更高:

在遠端主機開啟「登錄編輯程式 (regedit)」。

前往:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp

按右鍵新增一個 DWORD (32 位元) 值。

命名為 DWMFRAMEINTERVAL。

修改數值(基底選 十進位):

15 (對應 60 FPS)

10 (對應 100 FPS)

重啟電腦。

3. 確保 UDP 傳輸已啟用 (減少延遲)

TCP 雖然穩定但延遲高,UDP 則是降低輸入滯後感的關鍵:

在 本地端電腦 的 RDP 連線視窗,點擊「顯示選項」>「體驗」。

確認已選取 「自動偵測連線品質」。

檢查方法:連線成功後,點擊畫面上方藍色列的「連線品質圖示(收訊符號)」,若顯示「已啟用 UDP」,表示反應速度已優化。

注意:若透過 VPN 連線,請確保防火牆已開啟 UDP 3389 埠。

4. 停用 WDDM 繪圖驅動程式 (針對舊款或虛擬機)

在某些 Windows 10 版本中,新的 WDDM 驅動會導致 RDP 畫面卡頓:

在 gpedit.msc 導航至同上的「遠端工作階段環境」。

找到 「針對遠端桌面連線使用 WDDM 繪圖顯示驅動程式」。

將其設為 已停用(這會強制系統退回到 XDDM 模式,有時能解決莫名的延遲問題)。

5. 調整本機端遠端桌面設定 (MSTSC)

色彩深度:在「顯示」分頁,將色彩改為 「增強色 (16 位元)」。這能極大減少網路頻寬負擔,提升畫面更新反應。

停用快取:如果網路極快但有殘影,嘗試在「體驗」取消勾選「持續性點陣圖快取」;若網路慢,則務必勾選。

總結最佳配置

硬體編碼 (H.264) = 減少 CPU 負擔。

DWMFRAMEINTERVAL (15) = 解鎖 60 FPS。

UDP 協議 = 解決輸入跟不上畫面的問題。

如果完成上述設定後仍感慢速,請檢查遠端主機的 Windows 更新,確保顯示卡驅動程式已更新至 2026 年最新版本。










提出問題

2026年1月22日

要在 Windows 11 中將鍵盤重複速度提升至超過系統設定上限




要在 Windows 11 中將鍵盤重複速度提升至超過系統設定上限(每秒約 30 次),必須透過 登錄編輯程式 (Registry Editor) 或第三方工具進行強制修改。

方法一:修改登錄表 (Registry)
這是最直接的內建方法,可突破控制台的極限值。按下 Win + R,輸入 regedit 並按 Enter。
導航至以下路徑:
HKEY_CURRENT_USER\Control Panel\Accessibility\Keyboard Response
尋找並修改以下數值(建議將「基底」選為 十進位):

AutoRepeatRate:重複間隔(毫秒)。若要超過每秒 30 次,請設為 10 到 20 之間(值越小越快)。


AutoRepeatDelay:觸發重複前的延遲時間。建議設為 200 到 300。
Flags:將此值改為 59 以啟用設定。

2026年1月21日

利用 Windows 的輔助使用功能「篩選鍵」來覆蓋標準的鍵盤速度設定

 核心步驟:修改註冊表以超越限制

這項技巧是利用 Windows 的輔助使用功能「篩選鍵」來覆蓋標準的鍵盤速度設定。 

按下 Win + R 鍵,輸入 regedit 並按下 Enter 開啟登錄編輯器。

導航至以下路徑:

HKEY_CURRENT_USER\Control Panel\Accessibility\Keyboard Response

在右側視窗中修改(或建立)以下字串值(REG_SZ):

AutoRepeatRate:設定為更小的值。此數值代表重複的時間間隔(單位為毫秒)。例如:

設定為 10:每秒重複約 100 次。

設定為 6:每秒重複約 160 次。

AutoRepeatDelay:設定重複前的延遲時間。建議設定為 200 或 300 毫秒。

DelayBeforeAcceptance:設定為 0。

BounceTime:設定為 0。

Flags:設定為 59(十進制)。這個數值會強制啟動篩選鍵並套用自定義速率。

重新登入或重啟電腦以使設定生效。 

2025年6月5日

[WORD][VBA] 頁首與頁尾

 Sub ¥¨¶°1()

'

' ¥¨¶°1 ¥¨¶°

'

'

    If ActiveWindow.View.SplitSpecial <> wdPaneNone Then

        ActiveWindow.Panes(2).Close

    End If

    If ActiveWindow.ActivePane.View.Type = wdNormalView Or ActiveWindow. _

        ActivePane.View.Type = wdOutlineView Then

        ActiveWindow.ActivePane.View.Type = wdPrintView

    End If

    ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader

    Selection.Tables(1).Columns(2).SetWidth ColumnWidth:=397.7, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(2).SetWidth ColumnWidth:=416.05, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(2).SetWidth ColumnWidth:=458.6, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(2).SetWidth ColumnWidth:=486.95, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(2).SetWidth ColumnWidth:=508.2, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(2).SetWidth ColumnWidth:=529.45, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(2).SetWidth ColumnWidth:=557.8, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(2).SetWidth ColumnWidth:=586.15, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(2).SetWidth ColumnWidth:=593.25, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(2).SetWidth ColumnWidth:=600.35, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(2).SetWidth ColumnWidth:=607.4, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(2).SetWidth ColumnWidth:=614.5, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(2).SetWidth ColumnWidth:=621.6, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(2).SetWidth ColumnWidth:=628.7, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(2).SetWidth ColumnWidth:=635.75, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(2).SetWidth ColumnWidth:=635.75, RulerStyle:= _

        wdAdjustNone

    Selection.HeaderFooter.LinkToPrevious = Not Selection.HeaderFooter. _

        LinkToPrevious

End Sub

Sub ¥¨¶°2()

'

' ¥¨¶°2 ¥¨¶°

'

'

    If ActiveWindow.View.SplitSpecial <> wdPaneNone Then

        ActiveWindow.Panes(2).Close

    End If

    If ActiveWindow.ActivePane.View.Type = wdNormalView Or ActiveWindow. _

        ActivePane.View.Type = wdOutlineView Then

        ActiveWindow.ActivePane.View.Type = wdPrintView

    End If

    ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageFooter

    Selection.HeaderFooter.LinkToPrevious = Not Selection.HeaderFooter. _

        LinkToPrevious

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=178.9, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=186, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=207.25, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=221.4, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=242.7, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=249.75, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=271.05, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=292.3, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=320.65, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=341.9, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=356.1, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=370.25, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=377.35, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=384.45, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=391.5, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=398.6, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=405.7, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=419.85, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=426.95, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=434.05, RulerStyle:= _

        wdAdjustNone

    Selection.Tables(1).Columns(3).SetWidth ColumnWidth:=434.05, RulerStyle:= _

        wdAdjustNone

End Sub


[VBA][WORD] 插入分隔符號

 插入分隔符號: 自下頁起

    Selection.InsertBreak Type:=wdSectionBreakNextPage

 插入分隔符號: 接續本頁

    Selection.InsertBreak Type:=wdSectionBreakContinuous

2024年12月24日

[Windows] FSUTIL - File system Utility

 fsutil 

---- 支援的命令 ----


8dot3name         8.3 名稱管理

behavior          控制檔案系統行為

dax               Dax 磁碟區管理

dirty             管理磁碟區的已變更位元

file              檔案特定命令

fsInfo            檔案系統資訊

hardlink          永久連結管理

objectID          物件識別碼管理

quota             配額管理

repair            自我修復管理

reparsePoint      重新分析點管理

storageReserve    儲存空間保留管理

resource          交易資源管理員管理

sparse            疏鬆檔案控制

tiering           存放裝置階層處理屬性管理

transaction       交易管理

usn               USN 管理

volume            磁碟區管理

wim               透明的 WIM 裝載管理

 

2024年9月17日

透過更改Registry的方式達成恢復舊版選單的功能。

 透過更改Registry的方式達成恢復舊版選單的功能。

2024年5月9日

Rufus - 輕鬆製作可開機的 USB 磁碟機

輕鬆製作可開機的 USB 磁碟機

2024年4月10日

[VBS] Winword 的增益集 (Addin)

 https://learn.microsoft.com/zh-tw/office/vba/api/word.addin

Word (AddIn) 物件


代表已安裝或未安裝的單一增益集。 AddIn 物件是 AddIns 集合的成員。 AddIns 集合包含所有增益集可不論是否目前載入 Microsoft Word。 AddIns 集合包含全域範本或 Word 增益集程式庫 (Wll) 顯示在 [ 範本與增益集] 對話方塊。