Powershell 指令
# =========================================================================
# Windows 11 虛擬機效能最佳化腳本
# 來源影片:Windows 11 虛擬機效能最佳化教學|必關設定完整整理
# 注意事項:請以「系統管理員身分」執行此腳本
# =========================================================================
# 1. 停用 SysMain 服務
# 說明:SysMain 在虛擬機中會不停在背景進行磁碟讀寫,增加磁碟使用量,關閉可讓系統變順。
Write-Host "正在停用 SysMain 服務..." -ForegroundColor Cyan
Stop-Service -Name "SysMain" -Force -ErrorAction SilentlyContinue
Set-Service -Name "SysMain" -StartupType Disabled -ErrorAction SilentlyContinue
Write-Host "已停用 SysMain 服務`n" -ForegroundColor Green
# 2. 停用開始功能表的網路搜尋
# 說明:避免 Windows 將搜尋內容傳送到 Bing 並顯示線上建議與廣告,減少網路流量與介面卡頓。
Write-Host "正在停用開始功能表網路搜尋..." -ForegroundColor Cyan
$explorerPolicyPath = "HKCU:\Software\Policies\Microsoft\Windows\Explorer"
If (!(Test-Path $explorerPolicyPath)) { New-Item -Path $explorerPolicyPath -Force | Out-Null }
New-ItemProperty -Path $explorerPolicyPath -Name "DisableSearchBoxSuggestions" -Value 1 -PropertyType DWORD -Force | Out-Null
Write-Host "已停用開始功能表網路搜尋`n" -ForegroundColor Green
# 3. 關閉工作列「小工具」
# 說明:小工具會在背景抓取新聞與天氣,佔用記憶體與 CPU,在虛擬機中不需要。
Write-Host "正在關閉工作列小工具..." -ForegroundColor Cyan
$advancedPath = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced"
New-ItemProperty -Path $advancedPath -Name "TaskbarDa" -Value 0 -PropertyType DWORD -Force | Out-Null
Write-Host "已關閉工作列小工具`n" -ForegroundColor Green
# 4. 停用不必要的背景工作排程
# 說明:關閉收集應用程式相容性、磁碟檢查、客戶體驗改善計畫、地圖更新等虛擬機用不到的排程。
Write-Host "正在停用不必要的背景工作排程..." -ForegroundColor Cyan
$tasksToDisable = @(
"\Microsoft\Windows\Application Experience\ProgramDataUpdater",
"\Microsoft\Windows\Autochk\Proxy",
"\Microsoft\Windows\Customer Experience Improvement Program\Consolidator",
"\Microsoft\Windows\Customer Experience Improvement Program\UsbCeip",
"\Microsoft\Windows\DiskDiagnostic\Microsoft-Windows-DiskDiagnosticDataCollector",
"\Microsoft\Windows\Maps\MapsToastTask",
"\Microsoft\Windows\RetailDemo\CleanupOfflineContent",
"\Microsoft\Windows\Windows Error Reporting\QueueReporting"
)
foreach ($task in $tasksToDisable) {
$taskPath = Split-Path $task
$taskName = Split-Path $task -Leaf
Disable-ScheduledTask -TaskPath "$taskPath\" -TaskName $taskName -ErrorAction SilentlyContinue | Out-Null
}
Write-Host "已停用不必要的背景工作排程`n" -ForegroundColor Green
# 5. 關閉隱私權與個人化廣告推廣
# 說明:關閉針對使用者的廣告追蹤、提示與推薦內容,並關閉開始功能表最近開啟的項目。
Write-Host "正在關閉隱私權與個人化廣告推廣..." -ForegroundColor Cyan
# 停用廣告 ID
$advertisingPath = "HKCU:\Software\Microsoft\Windows\CurrentVersion\AdvertisingInfo"
If (!(Test-Path $advertisingPath)) { New-Item -Path $advertisingPath -Force | Out-Null }
New-ItemProperty -Path $advertisingPath -Name "Enabled" -Value 0 -PropertyType DWORD -Force | Out-Null
# 停用開始功能表顯示最近開啟的項目
Set-ItemProperty -Path $advancedPath -Name "Start_TrackDocs" -Value 0 -Force | Out-Null
Write-Host "已關閉隱私權與個人化廣告推廣`n" -ForegroundColor Green
# 6. 關閉開機自動啟動的 OneDrive
# 說明:避免每次開機都在背景執行浪費資源 (若您需要使用 OneDrive,請在前方加上 # 註解此段)。
Write-Host "正在關閉 OneDrive 開機自動啟動..." -ForegroundColor Cyan
Remove-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Run" -Name "OneDrive" -ErrorAction SilentlyContinue
Write-Host "已關閉 OneDrive 開機自動啟動`n" -ForegroundColor Green
# 7. 最佳化視覺效果
# 說明:關閉多餘動畫與特效減少負擔,但手動保留平滑字型、拖曳顯示視窗內容與縮圖,維持基本視覺體驗。
Write-Host "正在最佳化視覺效果..." -ForegroundColor Cyan
# 設定為自訂視覺效果 (調整為最佳效能的基礎)
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\VisualEffects" -Name "VisualFXSetting" -Value 3 -Force | Out-Null
# 啟用平滑螢幕字型邊緣
Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "FontSmoothing" -Value "2" -Force | Out-Null
# 拖曳時顯示視窗內容
Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "DragFullWindows" -Value "1" -Force | Out-Null
# 顯示縮圖而非圖示 (0 為顯示縮圖)
Set-ItemProperty -Path $advancedPath -Name "IconsOnly" -Value 0 -Force | Out-Null
# 關閉視窗縮放與工作列動畫
Set-ItemProperty -Path "HKCU:\Control Panel\Desktop\WindowMetrics" -Name "MinAnimate" -Value "0" -Force | Out-Null
Set-ItemProperty -Path $advancedPath -Name "TaskbarAnimations" -Value 0 -Force | Out-Null
Write-Host "已套用最佳化視覺效果設定`n" -ForegroundColor Green
# =========================================================================
Write-Host "=======================================" -ForegroundColor Yellow
Write-Host "所有最佳化設定已執行完畢!" -ForegroundColor Yellow
Write-Host "請重新啟動 Windows,讓所有設定完整生效。" -ForegroundColor Yellow
Write-Host "=======================================" -ForegroundColor Yellow