Windows 7 內建/安裝 Adobe Flash Player 後,直接雙擊本地 .swf 檔案 (或拖入 IE) 卻彈出錯誤、白畫面、無法播放。主因是 IE/Flash 的「本機電腦區域鎖定」安全機制,預設禁止本地 SWF 存取網路/檔案系統/跨域資料。本文教您透過群組原則 gpedit.msc 啟用「允許所有程序在本機電腦區域鎖定下執行」,一鍵解決本地 SWF 播放限制,附註冊表替代方案與安全性提醒。
gpedit.msc → 開啟本機群組原則編輯器。使用者設定 → 系統管理範本 → Windows 元件 → Internet Explorer → 安全性功能 → 本機電腦區域鎖定。gpupdate /force 或重新登入/重開機生效。# 管理員 CMD 執行
reg add "HKCU\Software\Policies\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\0" /v "1200" /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\0" /v "1200" /t REG_DWORD /d 0 /f
# 重開 IE/重開機生效
說明: Zone 0 = 本機電腦區域,1200 = "允許所有程序在本機電腦區域鎖定下執行",0 = 啟用 (0=啟用, 1=停用, 3=提示)。
.swf 檔案 (或拖入 IE 視窗)。| 風險 | 說明 | 緩解建議 |
|---|---|---|
| 本地惡意 SWF 可存取檔案系統/網路 | 啟用後,任何本地 SWF 擁有 Medium 權限,可讀寫檔案、發送網路請求 | 僅播放信任來源 SWF;播放完成後可改回「提示」或「停用」 |
| Flash Player 已停止支援 (2020/12/31) | 無安全更新,已知漏洞不再修補 | 改用 Ruffle (Rust 寫的 Flash 模擬器, ruffle.rs) 或 BlueMaxima's Flashpoint 封存版離線播放 |
| IE 安全區域機制被削弱 | 影響不只 SWF,含 ActiveX、本地 HTML/JS 等 | 考慮改用獨立 SWF 播放器 (如 SWF File Player, Flash Player Projector 官方獨立版) 而非 IE |
啟用群組原則/註冊表可快速解決 Win7 本地 SWF 播放報錯,但鑑於 Flash 已停止支援,強烈建議遷移至 Ruffle/Flashpoint 等現代安全替代方案,徹底消除安全隱患。