Windows 10 ถูกออกแบบมาให้มีการอัปเดตอัตโนมัติ เพื่อให้ผู้ใช้ได้รับฟีเจอร์ใหม่ การแก้ไขปัญหา และการอัปเดตด้านความปลอดภัยอย่างต่อเนื่อง ซึ่งเป็นเรื่องดีสำหรับผู้ใช้ทั่วไป แต่ในบางกรณี การอัปเดตอัตโนมัติกลับสร้างปัญหา เช่น ทำให้โปรแกรมหรืออุปกรณ์บางอย่างใช้งานไม่ได้ เกิดบั๊กหลังอัปเดต หรือเปลืองอินเทอร์เน็ตโดยไม่จำเป็น

สำหรับผู้ใช้บางคน โดยเฉพาะเครื่องที่ใช้ในงานเฉพาะทาง (เช่น ตู้ Kiosk, เครื่อง Server ภายใน, หรือเครื่องที่ต้องคงสภาพระบบเดิมไว้) การปิดการอัปเดตอัตโนติถาวรจึงเป็นทางเลือกที่เหมาะสม และในบทความนี้ เราจะมาสอน วิธีปิด Windows 10 Update แบบขั้นสูงสุด (Ultimate Method) ซึ่งปิดทุกช่องทางที่ Windows ใช้ในการอัปเดต


ความแตกต่างของการปิดแบบทั่วไปกับแบบขั้นสูง

  • ปิดแบบทั่วไป
    ใช้การปิด Service หรือ Pause Updates ใน Settings สามารถกลับมาเปิดได้ง่าย แต่ Windows มักจะพยายามเปิดเองเมื่อรีสตาร์ทหรืออัปเดตระบบอื่น ๆ

  • ปิดแบบขั้นสูง (Ultimate Method)
    ปิดทั้ง Service, Scheduled Tasks, Registry, Firewall และล็อกไฟล์ระบบของ Windows Update เพื่อให้ไม่สามารถเปิดกลับมาได้เอง ซึ่งต้องการสิทธิ์ Administrator และการแก้กลับทำได้ยากกว่า


ข้อควรระวังก่อนทำ

  1. คุณจะไม่ได้รับการอัปเดตด้านความปลอดภัยจาก Microsoft ทำให้มีความเสี่ยงถ้าเชื่อมต่ออินเทอร์เน็ต

  2. Driver และฟีเจอร์ใหม่จะไม่ถูกติดตั้ง เว้นแต่ติดตั้งด้วยมือ

  3. แก้กลับยาก หากต้องการกลับมาอัปเดต ต้องปลดล็อกสิทธิ์ไฟล์ระบบด้วยมือ หรือรีเซ็ต/ติดตั้ง Windows ใหม่

  4. ควร สำรองข้อมูล ก่อนทำทุกครั้ง


ขั้นตอนการปิด Windows 10 Update แบบขั้นสูง

1. เตรียมไฟล์สคริปต์ .bat

เปิด Notepad แล้ววางโค้ดนี้ลงไป

bat
@echo off echo ============================================ echo  ปิด Windows 10 Update แบบขั้นสูง (ถาวร) echo ============================================ :: หยุดและปิด Service หลักทั้งหมด net stop wuauserv sc config wuauserv start= disabled net stop WaaSMedicSvc sc config WaaSMedicSvc start= disabled net stop DoSvc sc config DoSvc start= disabled :: ปิดผ่าน Registry reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /f reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" /v NoAutoUpdate /t REG_DWORD /d 1 /f :: ปิด Scheduled Tasks ที่เกี่ยวข้อง schtasks /Change /TN "Microsoft\Windows\WindowsUpdate\Scheduled Start" /Disable schtasks /Change /TN "Microsoft\Windows\WindowsUpdate\Automatic App Update" /Disable schtasks /Change /TN "Microsoft\Windows\UpdateOrchestrator\Schedule Scan" /Disable schtasks /Change /TN "Microsoft\Windows\UpdateOrchestrator\Maintenance Install" /Disable schtasks /Change /TN "Microsoft\Windows\UpdateOrchestrator\Reboot" /Disable :: บล็อกไฟร์วอลล์ netsh advfirewall firewall add rule name="Block Windows Update (TCP 80)" dir=out protocol=TCP localport=80 action=block netsh advfirewall firewall add rule name="Block Windows Update (TCP 443)" dir=out protocol=TCP localport=443 action=block :: ล็อกไฟล์ระบบ Windows Update takeown /f C:\Windows\System32\wuaueng.dll /a icacls C:\Windows\System32\wuaueng.dll /inheritance:r /grant:r SYSTEM:R Administrators:R takeown /f C:\Windows\System32\wuapi.dll /a icacls C:\Windows\System32\wuapi.dll /inheritance:r /grant:r SYSTEM:R Administrators:R takeown /f C:\Windows\System32\wups.dll /a icacls C:\Windows\System32\wups.dll /inheritance:r /grant:r SYSTEM:R Administrators:R takeown /f C:\Windows\System32\wups2.dll /a icacls C:\Windows\System32\wups2.dll /inheritance:r /grant:r SYSTEM:R Administrators:R echo. echo  เสร็จสิ้น! Windows Update ถูกปิดและล็อกขั้นสูงแล้ว echo  กรุณารีสตาร์ทเครื่อง pause

2. บันทึกไฟล์

  • ไปที่ File → Save As

  • ตั้งชื่อไฟล์ disable_winupdate_ultimate.bat

  • เลือก Save as type: All Files

  • Encoding เลือก ANSI หรือ UTF-8 ก็ได้


3. รันสคริปต์

  • คลิกขวาที่ไฟล์ → เลือก Run as administrator

  • รอจนสคริปต์ทำงานเสร็จ แล้วกด Enter เพื่อปิดหน้าต่าง

  • รีสตาร์ทเครื่อง


วิธีตรวจสอบว่า Windows Update ถูกปิดถาวรแล้ว

  1. เช็กใน Services

    • กด Windows + R → พิมพ์ services.msc → Enter

    • หา Windows Update → ต้องอยู่ในสถานะ Disabled และไม่กำลังทำงาน

  2. ลองเข้า Windows Update

    • ไปที่ Settings → Update & Security → Windows Update

    • ควรแสดงข้อความ error หรือไม่มีการค้นหาอัปเดต

  3. ตรวจสอบไฟร์วอลล์

    • กด Windows + R → พิมพ์ wf.msc → Enter

    • ไปที่ Outbound Rules → ควรมี rule ชื่อ Block Windows Update


การเปิดกลับ (ถ้าจำเป็น)

เนื่องจากวิธีนี้เป็นขั้นสูง การเปิดกลับต้องปลดสิทธิ์ไฟล์ระบบ และเปิด Service ด้วยคำสั่ง sc config + net start หรือวิธีที่ง่ายที่สุดคือ ติดตั้ง Windows ใหม่

สคริปต์เปิด Windows Update กลับมา

bat
@echo off echo ============================================ echo  เปิด Windows 10 Update กลับมาใช้งาน echo ============================================ :: ปลดล็อกไฟล์ระบบ Windows Update takeown /f C:\Windows\System32\wuaueng.dll /a icacls C:\Windows\System32\wuaueng.dll /reset takeown /f C:\Windows\System32\wuapi.dll /a icacls C:\Windows\System32\wuapi.dll /reset takeown /f C:\Windows\System32\wups.dll /a icacls C:\Windows\System32\wups.dll /reset takeown /f C:\Windows\System32\wups2.dll /a icacls C:\Windows\System32\wups2.dll /reset :: เปิด Service กลับมา sc config wuauserv start= auto net start wuauserv sc config WaaSMedicSvc start= manual net start WaaSMedicSvc sc config DoSvc start= auto net start DoSvc :: ลบค่า NoAutoUpdate ใน Registry reg delete "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" /v NoAutoUpdate /f :: เปิด Scheduled Tasks กลับมา schtasks /Change /TN "Microsoft\Windows\WindowsUpdate\Scheduled Start" /Enable schtasks /Change /TN "Microsoft\Windows\WindowsUpdate\Automatic App Update" /Enable schtasks /Change /TN "Microsoft\Windows\UpdateOrchestrator\Schedule Scan" /Enable schtasks /Change /TN "Microsoft\Windows\UpdateOrchestrator\Maintenance Install" /Enable schtasks /Change /TN "Microsoft\Windows\UpdateOrchestrator\Reboot" /Enable :: ลบกฎไฟร์วอลล์ที่บล็อก Windows Update netsh advfirewall firewall delete rule name="Block Windows Update (TCP 80)" netsh advfirewall firewall delete rule name="Block Windows Update (TCP 443)" echo. echo เสร็จสิ้น! Windows Update เปิดกลับมาแล้ว echo กรุณารีสตาร์ทเครื่องเพื่อให้การตั้งค่ามีผล pause

วิธีใช้

  1. เปิด Notepad

  2. วางโค้ดด้านบน

  3. กด Save As → ตั้งชื่อ enable_winupdate.bat

  4. เลือก Save as type: All Files

  5. คลิกขวาที่ไฟล์ → เลือก Run as administrator

  6. รอจนสคริปต์ทำงานเสร็จ → รีสตาร์ทเครื่อง