Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การแก้ไขปัญหา >> ข้อผิดพลาด Windows

วิธีแก้ไขข้อผิดพลาด 'Function Address Caused a Protection Fault' ใน Microsoft Office

ผู้ใช้หลายคนรายงานว่าไม่สามารถพิมพ์เอกสารจากโปรแกรม Office เช่น Word, Excel, Publisher ได้ ข้อความข้อผิดพลาดที่แสดงคือ ‘Function Address Caused a Protection Fault’ ผู้ใช้ส่วนใหญ่ระบุว่าข้อผิดพลาดไม่เกิดขึ้นเมื่อพิมพ์แบบปกติ – เกิดขึ้นเฉพาะเมื่อพิมพ์จากภายในแอปพลิเคชัน Office ปัญหานี้ไม่เฉพาะเจาะจง Windows เวอร์ชันใดเวอร์ชันหนึ่ง เนื่องจากยืนยันแล้วว่าเกิดขึ้นบน Windows 7, 8.1 และ 10

วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office

สาเหตุของข้อผิดพลาด 'Function Address Caused a Protection Fault'

เราสืบสวนปัญหานี้จากรายงานผู้ใช้และกลยุทธ์แก้ไขที่พบบ่อย พบว่ามีสถานการณ์หลายอย่างที่อาจก่อให้เกิดข้อผิดพลาดนี้ รายการสาเหตุที่เป็นไปได้:

  • ไม่ได้ตั้งค่าเครื่องพิมพ์ที่ถูกต้องเป็นค่าเริ่มต้น – หากพยายามพิมพ์จากเครื่องพิมพ์ที่ไม่ได้ตั้งเป็น Default ใน OS ข้อผิดพลาดนี้จะเกิดขึ้น แก้ไขได้โดยเข้า Printer Properties ตั้งเครื่องพิมพ์ที่ถูกต้องเป็น Default
  • ไดรเวอร์เครื่องพิมพ์เก่ามาก – ไดรเวอร์เกาหรือไม่เข้ากับเวอร์ชัน Windows (อาจเกิดหลังย้าย OS) แก้ไขได้โดยอัปเดตไดรเวอร์อัตโนมัติ (ผ่าน Device Manager) หรือดาวน์โหลดจากเว็บผู้ผลิต
  • Printer Subkeys ใน Registry ชำรุด – หากปัญหาเกิดกับเครื่องพิมพ์ทุกตัวในเครือข่าย อาจเป็น Subkeys ชำรุด แก้ไขได้โดยลบไดรเวอร์ปัจจุบัน ติดตั้งเครือข่ายใหม่ และอัปเดตไดรเวอร์เวอร์ชันล่าสุด
  • ไฟล์ระบบชำรุด (System file corruption) – เป็นสาเหตุที่น้อยกว่า แต่อาจเกิดจาก Security Scan กักกันไฟล์ของ Print Service แก้ไขได้โดยใช้ System Restore

หากคุณกำลังเผชิญปัญหานี้ บทความนี้มีคู่มือ Troubleshooting หลายวิธี ที่ยืนยันแล้วว่าทำงานได้จากผู้ใช้จริง แนะนำให้ทำตามลำดับที่จัดไว้ เพื่อประสิทธิภาพสูงสุด

วิธีที่ 1: เปลี่ยนเครื่องพิมพ์ค่าเริ่มต้น (Changing the default printer)

ปัญหานี้อาจเกิดจากเครื่องพิมพ์ที่ต้องการใช้ไม่ได้ตั้งเป็น Default ใน Windows ผู้ใช้หลายคนแก้ไขได้โดยตั้งค่า Default Printer ใหม่ ขั้นตอนแตกต่างกันไปตามเวอร์ชัน Windows

Windows 10

  1. กด Windows + R พิมพ์ ms-settings:printers กด Enter เปิดหน้าต่าง Printers & scanners ใน Settings
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office
  1. ในแท็บ Printers & scanners เลือกเครื่องพิมพ์ที่ต้องการ คลิก Set as default จากเมนูที่ปรากฏ
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office
  1. รีสตาร์ทคอมพิวเตอร์ และทดสอบพิมพ์อีกครั้ง

Windows 7, 8.1

  1. กดปุ่ม Windows เปิด Start Menu คลิก Devices and Printers ด้านขวา (หรือเปิด Control Panel → Devices and Printers)
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office
  1. ในหน้าต่าง Devices and Printers คลิกขวาที่เครื่องพิมพ์ที่ต้องการ เลือก Set as default printer
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office
  1. รีสตาร์ทคอมพิวเตอร์ และทดสอบอีกครั้ง

หากปัญหายังคงอยู่ ให้ไปที่วิธีถัดไป

วิธีที่ 2: อัปเดตไดรเวอร์เครื่องพิมพ์เป็นเวอร์ชันล่าสุด

ไดรเวอร์เครื่องพิมพ์เก่าเป็นสาเหตุอีกอย่างหนึ่ง ผู้ใช้หลายคนแก้ไขได้โดยอัปเดตผ่าน Device Manager หรือดาวน์โหลดจากเว็บผู้ผลิต

  1. กด Windows + R พิมพ์ devmgmt.msc กด Enter เปิด Device Manager
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office
  1. ขยาย Print queues คลิกขวาที่เครื่องพิมพ์ที่มีปัญหา เลือก Update driver
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office
  1. เลือก Search automatically for updated driver software รอสแกนเสร็จ หากพบไดรเวอร์ใหม่ ทำตามขั้นตอนติดตั้ง แล้วรีสตาร์ท
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office
  1. หาก Device Manager ไม่พบไดรเวอร์ใหม่ ให้ไปที่เว็บผู้ผลิต ดาวน์โหลดและติดตั้งไดรเวอร์ล่าสุดด้วยตนเอง
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office
  1. หลังติดตั้งเสร็จ รีสตาร์ท และทดสอบอีกครั้ง

หากยังเห็นข้อผิดพลาดเดิม ให้ไปวิธีถัดไป

วิธีที่ 3: ลบไดรเวอร์และ Subkeys การพิมพ์ (Removing driver & deleting printing subkeys)

วิธีนี้เป็นการแก้ไขที่นิยม โดยลบไดรเวอร์ปัจจุบันออกจากทุกเครื่องที่เกี่ยวข้อง แล้วติดตั้งเครือข่ายใหม่พร้อมไดรเวอร์อัปเดต เหมาะสำหรับกรณีที่ปัญหากระจายตัวไปหลายเครื่อง

แม้ขั้นตอนด้านล่างทำได้บน Windows 8.1 และ 10 แต่เรายืนยันได้เฉพาะ Windows 7 หากต้องการลองทำตามขั้นตอนด้านล่าง:

  1. ล็อกอินเข้าคอมพิวเตอร์ที่มีปัญหา
  2. กด Windows + R พิมพ์ devmgmt.msc เปิด Device Manager
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office
  1. ขยาย Print queues คลิกขวาไดรเวอร์เครื่องพิมพ์ที่ต้องการลบ เลือก Uninstall Device → กด Uninstall อีกครั้งเพื่อยืนยัน
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office

หมายเหตุ: หลังขั้นตอนนี้ปิด Device Manager ได้แล้ว

  1. กด Windows + R พิมพ์ printui.exe /s /t2 กด Enter เปิด Printer Server Properties UI
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office
  1. ในหน้าจอ Print Server Properties ไปแท็บ Drivers เลือกไดรเวอร์ที่เป็นปัญหา กด Remove
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office
  1. จะมีหน้าต่าง Remove Driver And Package เลือก Remove driver only กด OK
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office
  1. ปิด Print Server Properties
  2. กด Windows + R พิมพ์ regedit กด Enter เปิด Registry Editor (กด Yes หาก UAC ถาม)
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office
  1. ใน Registry Editor ไปที่ Subkey:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Environments\Windows x64\Print Processors\

หมายเหตุ: สามารถวางที่อยู่ข้างบนใน Navigation Bar แล้วกด Enter ได้เลย

  1. เปลี่ยนชื่อ Subkey หรือ Key ใดๆ ที่มี副檔名 .old (เช่น winprint → winprint.old) เพื่อให้ Windows สร้างโฟลเดอร์และค่าใหม่แทน
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office

หมายเหตุ: ในกรณีตัวอย่างมีแค่ Subkey เดียวคือ winprint จึงเปลี่ยนเป็น winprint.old

  1. ปิด Registry Editor
  2. กด Windows + R พิมพ์ services.msc กด Enter เปิด Services
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office
  1. หา Print Spooler คลิกขวาเลือก Restart
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office
  1. รีสตาร์ทคอมพิวเตอร์อีกครั้ง และติดตั้งไดรเวอร์เครื่องพิมพ์ที่จำเป็นตอนบูท
  2. ทดสอบพิมพ์จากแอป Office ดูว่าข้อผิดพลาดหายไปแล้วหรือยัง

หากข้อผิดพลาดยังคงอยู่ ให้ไปวิธีถัดไป

วิธีที่ 4: ใช้ System Restore Point

หากข้อผิดพลาดเริ่มเกิดขึ้นเมื่อเร็วๆ นี้ อาจเป็นเพราะการเปลี่ยนแปลงของระบบล่าสุด หากไม่ทราบว่าอะไรทำให้การพิมพ์เสียหาย วิธี "แก้ทุกอย่าง" คือใช้ System Restore คืนสู่จุดก่อนหน้าที่พิมพ์ได้ปกติ วิธีนี้ยืนยันแล้วว่าทำงานได้กับผู้ใช้หลายคน

สำคัญ: กระบวนการนี้จะคืนสถานะเครื่องให้เหมือนตอนสร้าง Restore Point การเปลี่ยนแปลง เช่น การติดตั้งแอป, การตั้งค่าผู้ใช้ และอื่นๆ ในช่วงเวลานั้นจะหายไป

  1. กด Windows + R พิมพ์ rstrui กด Enter เปิด System Restore Wizard
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office
  1. ที่หน้าจอแรก กด Next
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office
  1. ติ๊กถูก Show more restore points เลือกจุดที่มีวันที่เก่ากว่าเมื่อเริ่มเจอข้อผิดพลาด กด Next
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office
  1. กด Finish และยืนยันอีกครั้งเพื่อเริ่มกระบวนการ
วิธีแก้ไขข้อผิดพลาด  Function Address Caused a Protection Fault  ใน Microsoft Office
  1. หลังบูทเสร็จ ลองพิมพ์จาก Office อีกครั้ง ดูว่าปัญหาแก้ไขแล้วหรือยัง