ผู้ใช้หลายคนสังเกตเห็นว่าตอนรันหรือติดตั้งโปรแกรมบางตัวใน Windows 10 จะมีข้อผิดพลาด "This app has been blocked for your protection" ปรากฏขึ้นและป้องกันไม่ให้รันหรือติดตั้งแอปพลิเคชันได้อย่างปกติ น่าสนใจที่ปัญหานี้เกิดขึ้นไม่ได้กับไฟล์ exe หรือ msi ของบุคคลที่สามอย่างเดียว แตeyกับสแนปอิน msc มาตรฐานของ Microsoft ที่เปิดผ่าน mmc.exe ด้วย ดังนั้นแม้แต่ผู้ใช้ที่มีสิทธิ์ Local Administrator ก็ไม่สามารถรันหรือติดตั้งแอปพลิเคชันดังกล่าวได้
This app has been blocked for your protection An administrator has blocked you from running this app. For more information, contact the administrator.
ข้อผิดพลาด "This publisher has been blocked from running software on your machine" ก็อาจปรากฏขึ้นเช่นกัน
Windows 10 User Account Control (UAC) บล็อกการรัน/ติดตั้งแอปพลิเคชันที่มีลายเซ็นดิจิทัลหมดอายุหรือถูกเพิกถอน สามารถตรวจสอบได้ในคุณสมบัติของไฟล์ executable บนแท็บ Digital Signatures น่าจะเป็นเพราะ Code Signing certificate หมดอายุแล้ว
หากคุณมั่นใจว่าแอปพลิเคชันปลอดภัยและมาจากแหล่งที่เชื่อถือได้ สามารถข้ามการแจ้งเตือนนี้และรัน/ติดตั้งโปรแกรมได้ มีหลายวิธี:
รันแอปพลิเคชันจาก Command Prompt ที่มีสิทธิ์สูง
สามารถพยายามข้ามการบล็อกข้อจำกัดซอฟต์แวร์นี้ได้โดยการรัน Command Prompt ด้วยสิทธิ์ผู้ดูแลระบบและเริ่มแอปพลิเคชันที่นั่น
หรือสร้างไฟล์ bat/cmd ที่มีสตริงการเปิดแอปพลิเคชันและรันไฟล์ batch เป็นผู้ดูแลระบบ
Unblock ไฟล์ที่ดาวน์โหลดจากอินเทอร์เน็ต
หากดาวน์โหลดไฟล์ executable จากอินเทอร์เน็ต ตรวจสอบว่าถูกบล็อกโดยระบบความปลอดภัยของ Windows หรือไม่ โดยเปิดคุณสมบัติไฟล์และติ๊ก "Unblock"
ยังสามารถ unblock ไฟล์ด้วย PowerShell ได้:
Unblock-File install_filename.exe
ลบลายเซ็นดิจิทัลออกจากไฟล์
สามารถลองลบลายเซ็นโค้ดดิจิทัลของไฟล์ติดตั้ง (เช่น ใช้เครื่องมือภายนอก FileUnsigner)
ปิดใช้งาน UAC
เนื่องจากระบบ UAC คือสิ่งที่บล็อกการรันแอปพลิเคชัน จึงสามารถปิดใช้งานชั่วคราวได้
สามารถปิด UAC ผ่าน Group Policies การตั้งค่า UAC GPO อยู่ที่ Windows Settings → Security Settings → Security Options ชื่อนโยบาย UAC เริ่มต้นด้วย User Account Control เปิดตัวเลือก "User Account Control: Run all administrators in Admin Approval Mode" และตั้งค่าเป็น Disable
เพื่ออัปเดตการตั้งค่า Group Policy ต้องรีสตาร์ทคอมพิวเตอร์
สะดวกและง่ายกว่ามากที่จะปิด UAC ผ่าน Registry ไปที่ HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System ใน Registry Editor (regedit.exe) และเปลี่ยนค่า EnableLUA เป็น 0
หรือรันคำสั่ง:
reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f
เพื่อปิด User Account Control ระบบจะขอให้รีสตาร์ทคอมพิวเตอร์
ลองติดตั้งแอปพลิเคชันที่ถูกบล็อก หากสำเร็จ ให้เปิด UAC กลับคืนโดยตั้งค่า EnableLUA เป็น 1
รันแอปด้วยบัญชี Built-in Windows Administrator
หากวิธีก่อนหน้าไม่ช่วย สามารถลองรัน/ติดตั้งแอปพลิเคชันด้วยบัญชี Administrator built-in ไม่มี UAC สำหรับบัญชีนี้ วิธีเปิดใช้งานบัญชี Built-in Windows 10 Administrator อธิบายไว้ที่นี่
MMC.exe App Has Been Blocked for Your Protection
ในบางกรณี Windows 10 อาจเริ่มบล็อกการเปิดเครื่องมือและโปรแกรมในตัวของ Windows ตัวอย่างเช่น โปรแกรม mmc.exe ซึ่งใช้รัน Microsoft msc snap-ins ทั้งหมด (gpedit.msc, compmgmt.msc, services.msc, secpol.msc, devmgmt.msc ฯลฯ)
ลองรัน Process Explorer และเพิ่มคอลัมน์ Verified Signer น่าจะเห็นคำบรรยาย "No signature was present on the subject Microsoft Corporation" หน้าของแอปพลิเคชัน
ขั้นแรก ตรวจสอบว่า Windows ของคุณมี Root Certificates ล่าสุด อัปเดตหากจำเป็น
ปัญหาอีกอย่างที่เป็นไปได้คือข้อผิดพลาดใน Cryptographic Services ตรวจสอบว่าบริการ CryptSvc กำลังทำงานและตั้งค่าเริ่มต้นอัตโนมัติ
สามารถสร้างไฟล์ฐานข้อมูล EDB ของ Cryptographic Service ใหม่ได้ด้วยคำสั่ง PowerShell ต่อไปนี้:
Stop-Service cryptsvc
Rename-Item -Path "C:\Windows\System32\catroot2" -NewName catroot2.old
Restart-Computer
หากวิธีที่อธิบายทั้งหมดไม่ช่วย ลองตรวจสอบและกู้คืนความสมบูรณ์ของไฟล์ระบบ Windows ด้วยคำสั่ง:
Sfc.exe /scannow
Dism.exe /Online /Cleanup-Image /Restorehealth