Windows XP 任務列出現怪異現象:無論開啟何程式,任務列皆顯示兩個相同標籤 (上下重疊)。經確認係登錄機碼損毀導致,執行以下 VBS 修復腳本可快速修正。
Set WSHShell 至 End If)。FixTaskbar.vbs)。explorer.exe),完成後任務列恢復正常。Set WSHShell = WScript.CreateObject("WScript.Shell")
Message = "本腳本用於修復 Windows XP 中當最小化程序時,無法在任務列顯示圖示的問題。" & vbCR & vbCR
Message = Message & "為了正常工作,本腳本將關閉和重啟 Windows Explorer 外殼,這個操作不會損壞你的系統。" & vbCR & vbCR
Message = Message & "請關閉所有防毒軟體的即時監控!並儲存所有開啟的文件。" & vbCR & vbCR
Message = Message & "是否繼續?"
X = MsgBox(Message, vbYesNo+vbExclamation, "注意")
If X = 6 Then
On Error Resume Next
WshShell.RegDelete "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\StuckRects2"
WshShell.RegDelete "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\StreamsMRU"
WshShell.RegDelete "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\StreamsDesktop"
WshShell.RegDelete "HKCU\Software\Microsoft\Internet Explorer\Explorer Bars\{32683183-48a0-441b-a342-7c2a440a9478}\BarSize"
P1 = "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer"
WshShell.RegWrite p1 & "\NoBandCustomize", 0, "REG_DWORD"
WshShell.RegWrite p1 & "\NoMovingBands", 0, "REG_DWORD"
WshShell.RegWrite p1 & "\NoCloseDragDropBands", 0, "REG_DWORD"
WshShell.RegWrite p1 & "\NoSetTaskbar", 0, "REG_DWORD"
WshShell.RegWrite p1 & "\NoToolbarsOnTaskbar", 0, "REG_DWORD"
WshShell.RegWrite p1 & "\NoSaveSettings", 0, "REG_DWORD"
WshShell.RegWrite p1 & "\NoToolbarsOnTaskbar", 0, "REG_DWORD"
WshShell.RegWrite p1 & "\NoSetTaskbar", 0, "REG_DWORD"
WshShell.RegWrite p1 & "\NoActiveDesktop", 0, "REG_DWORD"
WshShell.RegWrite p1 & "\ClassicShell", 0, "REG_DWORD"
p1 = "HKCU\Software\Microsoft\Windows\CurrentVersion\Group Policy Objects\LocalUser\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer"
WshShell.RegWrite p1 & "\NoCloseDragDropBands", 0, "REG_DWORD"
WshShell.RegDelete p1 & "\NoMovingBands"
p1 = "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell"
WshShell.RegWrite p1, "explorer.exe", "REG_SZ"
p1 = "HKCU\Software\Microsoft\Internet Explorer\Explorer Bars\{32683183-48a0-441b-a342-7c2a440a9478}"
WshShell.RegDelete p1 & "\BarSize"
WshShell.RegWrite p1, "媒體區", "REG_SZ"
On Error Goto 0
For Each Process in GetObject("winmgmts:").ExecQuery("select * from Win32_Process where name='explorer.exe'")
Process.Terminate(0)
Next
MsgBox "完成!" & vbcr & vbcr & "© Kelly Theriot and Doug Knox", 4096, "完成"
Else
MsgBox "沒有對你的系統進行任何改變。" & vbcr & vbcr & "© Kelly Theriot and Doug Knox", 4096, "用戶取消了"
End If


原理:腳本刪除損毀的 Explorer 相關登錄機碼 (StuckRects2、StreamsMRU、StreamsDesktop 等),重設任務列相關原則值,並重啟 Explorer 進程使變更生效。操作僅需「新建文字、貼上、存檔、執行」四步驟。